资金变动明细导出
parent
af1ff014cd
commit
040456e19a
|
|
@ -9,6 +9,8 @@ import lombok.RequiredArgsConstructor;
|
|||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
|
@ -65,4 +67,12 @@ public class MoneyChangeDetailController {
|
|||
return R.success(moneyChangeDetailService.paging(pageParam, moneyChangeDetailEntity));
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出资金明细
|
||||
*/
|
||||
@GetMapping(value = "/export")
|
||||
public void export(HttpServletResponse response, MoneyChangeDetailEntity entity) throws IOException {
|
||||
moneyChangeDetailService.export(response, entity);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,17 @@
|
|||
package com.njzscloud.supervisory.money.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.njzscloud.supervisory.money.pojo.entity.MoneyChangeDetailEntity;
|
||||
import com.njzscloud.supervisory.money.pojo.result.MoneyChangeDetailExportResult;
|
||||
import com.njzscloud.supervisory.order.pojo.result.OrderPagingResult;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 资金变动明细
|
||||
*/
|
||||
|
|
@ -17,4 +22,6 @@ public interface MoneyChangeDetailMapper extends BaseMapper<MoneyChangeDetailEnt
|
|||
*/
|
||||
IPage<MoneyChangeDetailEntity> page(Page<MoneyChangeDetailEntity> page, @Param("entity") MoneyChangeDetailEntity entity);
|
||||
|
||||
List<MoneyChangeDetailExportResult> exportList(@Param("entity") MoneyChangeDetailEntity entity);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,86 @@
|
|||
package com.njzscloud.supervisory.money.pojo.result;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.ToString;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@ToString
|
||||
@Accessors(chain = true)
|
||||
public class MoneyChangeDetailExportResult {
|
||||
|
||||
/**
|
||||
* 编号
|
||||
*/
|
||||
private Integer sort;
|
||||
|
||||
/**
|
||||
* 订单号
|
||||
*/
|
||||
private String sn;
|
||||
|
||||
/**
|
||||
* 车牌号
|
||||
*/
|
||||
private String licensePlate;
|
||||
|
||||
/**
|
||||
* 变动类型
|
||||
*/
|
||||
private String moneyChangeCategory;
|
||||
|
||||
/**
|
||||
* 变动金额; 有正负
|
||||
*/
|
||||
private BigDecimal delta;
|
||||
|
||||
/**
|
||||
* 余额; 有正负
|
||||
*/
|
||||
private BigDecimal newMoney;
|
||||
|
||||
/**
|
||||
* 产品名称
|
||||
*/
|
||||
private String goodsName;
|
||||
|
||||
/**
|
||||
* 单价; 单位:元
|
||||
*/
|
||||
private BigDecimal unitPrice;
|
||||
|
||||
/**
|
||||
* 入场磅重(吨)
|
||||
*/
|
||||
private String roughWeight;
|
||||
|
||||
/**
|
||||
* 皮重(吨)
|
||||
*/
|
||||
private String tareWeight;
|
||||
|
||||
/**
|
||||
* 净重(吨)
|
||||
*/
|
||||
private String settleWeight;
|
||||
|
||||
/**
|
||||
* 进场时间
|
||||
*/
|
||||
private String inTime;
|
||||
|
||||
/**
|
||||
* 出场时间
|
||||
*/
|
||||
private String outTime;
|
||||
|
||||
/**
|
||||
* 备注
|
||||
*/
|
||||
private String memo;
|
||||
|
||||
}
|
||||
|
|
@ -9,11 +9,18 @@ import com.njzscloud.common.mp.support.PageResult;
|
|||
import com.njzscloud.common.security.util.SecurityUtil;
|
||||
import com.njzscloud.supervisory.money.mapper.MoneyChangeDetailMapper;
|
||||
import com.njzscloud.supervisory.money.pojo.entity.MoneyChangeDetailEntity;
|
||||
import com.njzscloud.supervisory.money.pojo.result.MoneyChangeDetailExportResult;
|
||||
import com.njzscloud.supervisory.order.utils.FileUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 资金变动明细
|
||||
|
|
@ -62,4 +69,30 @@ public class MoneyChangeDetailService extends ServiceImpl<MoneyChangeDetailMappe
|
|||
return PageResult.of(result);
|
||||
}
|
||||
|
||||
public void export(HttpServletResponse response, MoneyChangeDetailEntity entity) throws IOException {
|
||||
List<MoneyChangeDetailExportResult> list = baseMapper.exportList(entity);
|
||||
List<Map<String, Object>> downList = new ArrayList<>();
|
||||
int i = 1;
|
||||
for (MoneyChangeDetailExportResult result : list) {
|
||||
Map<String, Object> map = new LinkedHashMap<>();
|
||||
map.put("编号", i);
|
||||
map.put("订单号", result.getSn());
|
||||
map.put("车牌号", result.getLicensePlate());
|
||||
map.put("变动类型", result.getMoneyChangeCategory());
|
||||
map.put("变动金额", result.getDelta());
|
||||
map.put("余额", result.getNewMoney());
|
||||
map.put("产品名称", result.getGoodsName());
|
||||
map.put("单价", result.getUnitPrice());
|
||||
map.put("入场磅重(吨)", result.getRoughWeight());
|
||||
map.put("皮重(吨)", result.getTareWeight());
|
||||
map.put("净重(吨)", result.getSettleWeight());
|
||||
map.put("进场时间", result.getInTime());
|
||||
map.put("出场时间", result.getOutTime());
|
||||
map.put("备注", result.getMemo());
|
||||
downList.add(map);
|
||||
i++;
|
||||
}
|
||||
FileUtil.downloadExcel(downList, response, "资金变动明细.xlsx");
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,16 +21,17 @@
|
|||
mcd.modify_time,
|
||||
mcd.deleted,
|
||||
CASE
|
||||
WHEN mcd.user_id IS NOT NULL THEN u.nickname
|
||||
WHEN mcd.company_id IS NOT NULL THEN bc.company_name
|
||||
ELSE NULL
|
||||
END as nickname
|
||||
WHEN mcd.user_id IS NOT NULL THEN u.nickname
|
||||
WHEN mcd.company_id IS NOT NULL THEN bc.company_name
|
||||
ELSE NULL
|
||||
END as nickname
|
||||
FROM money_change_detail mcd
|
||||
LEFT JOIN sys_user u ON mcd.user_id = u.id
|
||||
LEFT JOIN biz_company bc ON mcd.company_id = bc.id
|
||||
<where>
|
||||
<if test="entity.nickname != null and entity.nickname != ''">
|
||||
AND u.nickname LIKE CONCAT('%', #{entity.nickname}, '%')
|
||||
AND (u.nickname LIKE CONCAT('%', #{entity.nickname}, '%') or
|
||||
bc.company_name LIKE CONCAT('%', #{entity.nickname}, '%'))
|
||||
</if>
|
||||
<if test="entity.moneyChangeCategory != null">
|
||||
AND mcd.money_change_category = #{entity.moneyChangeCategory}
|
||||
|
|
@ -38,4 +39,45 @@
|
|||
</where>
|
||||
ORDER BY mcd.modify_time DESC
|
||||
</select>
|
||||
|
||||
<select id="exportList" resultType="com.njzscloud.supervisory.money.pojo.result.MoneyChangeDetailExportResult">
|
||||
SELECT
|
||||
oi.sn,
|
||||
bt.license_plate,
|
||||
sdi.txt AS money_change_category,
|
||||
mcd.delta,
|
||||
mcd.new_money,
|
||||
og.goods_name,
|
||||
og.unit_price,
|
||||
ROUND( ocio.rough_weight / 1000, 2 ) AS rough_weight,
|
||||
ROUND( ocio.tare_weight / 1000, 2 ) AS tare_weight,
|
||||
ROUND( ocio.settle_weight / 1000, 2 ) AS settle_weight,
|
||||
ocio.in_time,
|
||||
ocio.out_time,
|
||||
mcd.memo
|
||||
FROM
|
||||
money_change_detail mcd
|
||||
LEFT JOIN order_info oi ON oi.id = mcd.order_id
|
||||
LEFT JOIN biz_truck bt ON bt.id = oi.truck_id
|
||||
LEFT JOIN sys_dict_item sdi ON mcd.money_change_category = sdi.val
|
||||
AND sdi.dict_key = 'money_change_category'
|
||||
LEFT JOIN order_goods og ON og.id = oi.goods_id
|
||||
LEFT JOIN order_car_in_out ocio ON ocio.id = oi.car_in_out_id
|
||||
LEFT JOIN sys_user u ON mcd.user_id = u.id
|
||||
LEFT JOIN biz_company bc ON mcd.company_id = bc.id
|
||||
<where>
|
||||
<if test="entity.nickname != null and entity.nickname != ''">
|
||||
AND (u.nickname LIKE CONCAT('%', #{entity.nickname}, '%') or
|
||||
bc.company_name LIKE CONCAT('%', #{entity.nickname}, '%'))
|
||||
</if>
|
||||
<if test="entity.moneyChangeCategory != null">
|
||||
AND mcd.money_change_category = #{entity.moneyChangeCategory}
|
||||
</if>
|
||||
<if test="entity.companyId != null">
|
||||
AND mcd.company_id = #{entity.companyId}
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY
|
||||
mcd.create_time DESC
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
@ -231,7 +231,7 @@
|
|||
LEFT JOIN biz_company c ON c.id = a.trans_company_id
|
||||
LEFT JOIN biz_truck d ON d.id = a.truck_id
|
||||
LEFT JOIN sys_dict_item e ON d.truck_category = e.val
|
||||
AND dict_key = 'vehicle_type'
|
||||
AND e.dict_key = 'vehicle_type'
|
||||
LEFT JOIN order_car_in_out f ON f.id = a.car_in_out_id
|
||||
LEFT JOIN biz_company g ON a.user_id = g.user_id
|
||||
LEFT JOIN order_cargo_place h ON h.id = a.cargo_place_id
|
||||
|
|
|
|||
Loading…
Reference in New Issue