Browse Source

[CODE]: 收费、付费明细导出

maxianghua 4 năm trước cách đây
mục cha
commit
2993b9783d

+ 11 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/finance/TChargeController.java

@@ -14,6 +14,7 @@ import com.ruoyi.common.utils.spring.SpringUtils;
 import com.ruoyi.finance.domain.TFee;
 import com.ruoyi.finance.domain.TWareHouseFees;
 import com.ruoyi.finance.excel.Charge;
+import com.ruoyi.finance.excel.Detailed;
 import com.ruoyi.finance.service.ITFeeService;
 import com.ruoyi.framework.web.service.TokenService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -157,5 +158,15 @@ public class TChargeController extends BaseController {
         return tFeeService.revoke(tFee,tFeeDo,loginUser,billsType);
     }
 
+    /**
+     * 导出入库详情主表列表
+     */
+    @GetMapping("/exportItems/{fId}")
+    public AjaxResult exportItems(@PathVariable("fId") Long fId) {
+        List<Detailed> list = tFeeService.selectDetailedList(fId);
+        String exportName = tFeeService.findCtrlcorpid(fId);
+        ExcelUtil<Detailed> util = new ExcelUtil<Detailed>(Detailed.class);
+        return util.exportExcel(list, exportName);
+    }
 
 }

+ 163 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/finance/excel/Detailed.java

@@ -0,0 +1,163 @@
+package com.ruoyi.finance.excel;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+public class Detailed {
+
+    /** 提单号 */
+    @Excel(name = "序号")
+    private String fId;
+
+    /** 提单号 */
+    @Excel(name = "提单号")
+    private String fMblno;
+
+    /**
+     * 存货单号
+     */
+    @Excel(name = "存货单号")
+    private String fBscorpno;
+
+    /** 货名 */
+    @Excel(name = "货物品名")
+    private String fGoodsid;
+
+
+    /** 业务日期 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "业务日期", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date fBsdate;
+
+    /**
+     * 费用名称
+     */
+    @Excel(name = "费用名称")
+    private String fFeeid;
+
+    /**
+     * 收/付
+     */
+    @Excel(name = "收/付")
+    private String fSrcdc;
+
+    /** 业务类型 */
+    @Excel(name = "业务类型")
+    private String fBilltype;
+
+    /** 作业类型 */
+    @Excel(name = "作业类型")
+    private String fBusinessType;
+
+    /** 金额 */
+    @Excel(name = "金额")
+    private BigDecimal fAmtdr;
+
+    /** 本次金额 */
+    @Excel(name = "本次金额")
+    private BigDecimal fAmt;
+
+
+    /** 备注 */
+    @Excel(name = "备注")
+    private String fRemarks;
+
+    public String getfId() {
+        return fId;
+    }
+
+    public void setfId(String fId) {
+        this.fId = fId;
+    }
+
+    public String getfMblno() {
+        return fMblno;
+    }
+
+    public void setfMblno(String fMblno) {
+        this.fMblno = fMblno;
+    }
+
+    public String getfBscorpno() {
+        return fBscorpno;
+    }
+
+    public void setfBscorpno(String fBscorpno) {
+        this.fBscorpno = fBscorpno;
+    }
+
+    public String getfGoodsid() {
+        return fGoodsid;
+    }
+
+    public void setfGoodsid(String fGoodsid) {
+        this.fGoodsid = fGoodsid;
+    }
+
+    public Date getfBsdate() {
+        return fBsdate;
+    }
+
+    public void setfBsdate(Date fBsdate) {
+        this.fBsdate = fBsdate;
+    }
+
+    public String getfFeeid() {
+        return fFeeid;
+    }
+
+    public void setfFeeid(String fFeeid) {
+        this.fFeeid = fFeeid;
+    }
+
+    public String getfSrcdc() {
+        return fSrcdc;
+    }
+
+    public void setfSrcdc(String fSrcdc) {
+        this.fSrcdc = fSrcdc;
+    }
+
+    public String getfBilltype() {
+        return fBilltype;
+    }
+
+    public void setfBilltype(String fBilltype) {
+        this.fBilltype = fBilltype;
+    }
+
+    public String getfBusinessType() {
+        return fBusinessType;
+    }
+
+    public void setfBusinessType(String fBusinessType) {
+        this.fBusinessType = fBusinessType;
+    }
+
+    public BigDecimal getfAmtdr() {
+        return fAmtdr;
+    }
+
+    public void setfAmtdr(BigDecimal fAmtdr) {
+        this.fAmtdr = fAmtdr;
+    }
+
+    public BigDecimal getfAmt() {
+        return fAmt;
+    }
+
+    public void setfAmt(BigDecimal fAmt) {
+        this.fAmt = fAmt;
+    }
+
+    public String getfRemarks() {
+        return fRemarks;
+    }
+
+    public void setfRemarks(String fRemarks) {
+        this.fRemarks = fRemarks;
+    }
+}

+ 3 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/finance/mapper/TFeeMapper.java

@@ -2,6 +2,7 @@ package com.ruoyi.finance.mapper;
 
 import com.ruoyi.finance.domain.TFee;
 import com.ruoyi.finance.domain.TWareHouseFees;
+import com.ruoyi.finance.excel.Detailed;
 import com.ruoyi.warehouseBusiness.excel.TWareHouseExcelItem;
 import org.apache.ibatis.annotations.Param;
 
@@ -86,4 +87,6 @@ public interface TFeeMapper {
 
     public List<Map<String, Object>> selectFeeList(TFee tFee);
 
+    public List<Detailed> selectDetailedList(@Param("fId") Long fid);
+
 }

+ 3 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/finance/service/ITFeeService.java

@@ -6,6 +6,7 @@ import com.ruoyi.finance.domain.TFee;
 import com.ruoyi.finance.domain.TWareHouseFees;
 import com.ruoyi.finance.excel.Charge;
 import com.ruoyi.finance.excel.Contrast;
+import com.ruoyi.finance.excel.Detailed;
 import com.ruoyi.finance.excel.Payment;
 import com.ruoyi.reportManagement.excel.Payable;
 import com.ruoyi.reportManagement.excel.Profit;
@@ -129,4 +130,6 @@ public interface ITFeeService {
 
     public List<Charge> chargeExport(TFee tFee) throws Exception;
 
+    public List<Detailed> selectDetailedList(Long  fId);
+
 }

+ 34 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/finance/service/impl/TFeeServiceImpl.java

@@ -18,6 +18,7 @@ import com.ruoyi.finance.domain.TFeeDo;
 import com.ruoyi.finance.domain.TWareHouseFees;
 import com.ruoyi.finance.excel.Charge;
 import com.ruoyi.finance.excel.Contrast;
+import com.ruoyi.finance.excel.Detailed;
 import com.ruoyi.finance.excel.Payment;
 import com.ruoyi.finance.mapper.TFeeDoMapper;
 import com.ruoyi.finance.mapper.TFeeMapper;
@@ -640,6 +641,39 @@ public class TFeeServiceImpl implements ITFeeService {
         return list1;
     }
 
+    @Override
+    public List<Detailed> selectDetailedList(Long fId) {
+        List<Detailed> detailedList = tFeeMapper.selectDetailedList(fId);
+        List<Detailed> detailedList1 = new ArrayList<>();
+        for (Detailed tWareHouseExcelItem : detailedList){
+            if(StringUtils.isNotNull(tWareHouseExcelItem.getfBusinessType())){
+                List<SysDictData> sysDictDataListIn = new ArrayList<>();
+                SysDictData sysDictData =new SysDictData();
+                if(tWareHouseExcelItem.getfBilltype().equals("入库")){
+                    sysDictData.setDictType("st_in_type");
+                    sysDictData.setDictValue(String.valueOf(tWareHouseExcelItem.getfBusinessType()));
+                    sysDictData.setStatus("0");
+                    sysDictDataListIn = iSysDictDataService.selectDictDataList(sysDictData);
+                } else if (tWareHouseExcelItem.getfBilltype().equals("出库")){
+                    sysDictData.setDictType("st_out_type");
+                    sysDictData.setDictValue(String.valueOf(tWareHouseExcelItem.getfBusinessType()));
+                    sysDictData.setStatus("0");
+                    sysDictDataListIn = iSysDictDataService.selectDictDataList(sysDictData);
+                } else if (tWareHouseExcelItem.getfBilltype().equals("调拨") | tWareHouseExcelItem.getfBilltype().equals("货物通关") ){
+                    sysDictData.setDictType("st_trans_type");
+                    sysDictData.setDictValue(String.valueOf(tWareHouseExcelItem.getfBusinessType()));
+                    sysDictData.setStatus("0");
+                    sysDictDataListIn = iSysDictDataService.selectDictDataList(sysDictData);
+                }
+                if(null!=sysDictDataListIn && sysDictDataListIn.size()>0){
+                    tWareHouseExcelItem.setfBusinessType(sysDictDataListIn.get(0).getDictLabel());
+                }
+            }
+            detailedList1.add(tWareHouseExcelItem);
+        }
+        return detailedList1;
+    }
+
     /**
      *  更新费用明细
      * @param fid

+ 52 - 0
ruoyi-warehouse/src/main/resources/mapper/finance/TFeeMapper.xml

@@ -828,4 +828,56 @@
         </where>
         ${params.dataScope}
     </select>
+    <select id="selectDetailedList" resultType="com.ruoyi.finance.excel.Detailed">
+        SELECT
+            ( @ii := @ii + 1 ) AS fId,
+            wi.f_mblno AS fMblno,
+            wi.f_bsdate AS fBsdate,
+            t.f_bscorpno AS fBscorpno,
+            f.f_name AS fFeeid,
+            CASE
+                WHEN w.f_srcdc = 'D' THEN
+                    '收'
+                WHEN w.f_srcdc = 'C' THEN
+                    '付'
+                END AS fSrcdc,
+            w.f_amtdr AS fAmtdr,
+            dict.dict_label AS fFeeunitid,
+            wi.f_qty AS fBillingQty,
+            wi.f_unitprice AS fUnitprice,
+            w.f_amt AS fAmt,
+            wi.f_business_type AS fBusinessType,
+            CASE
+                wi.f_billtype
+                WHEN 'SJRK' THEN
+                    '入库'
+                WHEN 'SJCK' THEN
+                    '出库'
+                WHEN 'HQZY' THEN
+                    '货转'
+                WHEN 'CKDB' THEN
+                    '调拨'
+                WHEN 'HWTG' THEN
+                    '货物通关'
+                WHEN 'KCZZ' THEN
+                    '库存总账'
+                END AS fBilltype,
+            wi.f_product_name AS fGoodsid,
+            wi.f_marks AS fMarks,
+            w.f_remarks AS fRemarks
+        FROM
+            t_fee_do w
+                LEFT JOIN t_warehousebillsfees wi ON w.f_srcid = wi.f_id
+                LEFT JOIN t_warehousebills t ON wi.f_pid = t.f_id
+                LEFT JOIN t_fees  f ON wi.f_feeid = f.f_id
+                LEFT JOIN sys_dict_data dict ON dict.dict_value = wi.f_feeUnitid
+           ,(
+            SELECT
+                @ii := 0
+        ) AS ii
+        WHERE
+            dict.status = '0'
+          AND dict.dict_type = 'data_unitfees'
+          AND w.f_pid = #{fId}
+    </select>
 </mapper>