瀏覽代碼

增加仓储分析控制器请求端口:list,导出端口:export

nzf 3 年之前
父節點
當前提交
0435e9a051

+ 72 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TWarehouseAnalysisController.java

@@ -0,0 +1,72 @@
+package com.ruoyi.web.controller.warehouse.warehouseBusiness;
+
+import com.ruoyi.common.annotation.DataScope;
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
+import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitems;
+import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitemsNew;
+import com.ruoyi.warehouseBusiness.excel.StockTransfer;
+import com.ruoyi.warehouseBusiness.service.ITWarehouseBillsService;
+import com.ruoyi.warehouseBusiness.service.ITWarehousebillsitemsService;
+import com.ruoyi.warehouseBusiness.service.TWarehousebillsitemsNewService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 仓储分析 Controller
+ */
+@RestController
+@RequestMapping("/warehousing/analysis")
+public class TWarehouseAnalysisController extends BaseController {
+
+    @Autowired
+    private TWarehousebillsitemsNewService tWarehousebillsitemsNewService;
+
+    // 从主查询仓储分析全部数据
+    @PreAuthorize("@ss.hasPermi('Warehousing:analysis:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
+    @GetMapping("/list")
+    public TableDataInfo list(TWarehousebillsitemsNew tWarehousebillsitemsNew){
+        startPage();
+        if(tWarehousebillsitemsNew.getType().equals("1")){
+            tWarehousebillsitemsNew.setfBilltype("SJRK");
+        }else{
+            tWarehousebillsitemsNew.setfBilltype("SJCK");
+        }
+        List<TWarehousebillsitemsNew> list = tWarehousebillsitemsNewService.selectWarehouseBillItemsList(tWarehousebillsitemsNew);
+        return getDataTable(list);
+    }
+
+    // 导出仓储分析数据
+    @PreAuthorize("@ss.hasPermi('Warehousing:analysis:export')")
+    @Log(title = "仓储分析数据",businessType = BusinessType.EXPORT)
+    @DataScope(deptAlias = "d",userAlias = "u")
+    @GetMapping("/export")
+    public AjaxResult export(TWarehousebillsitemsNew tWarehousebillsitemsNew) throws Exception {
+        String exportName = null;
+        if (tWarehousebillsitemsNew.getType().equals("1")) {
+            tWarehousebillsitemsNew.setfBilltype("SJRK");
+            exportName = "在库";
+        } else {
+            tWarehousebillsitemsNew.setfBilltype("SJCK");
+            exportName = "出库";
+        }
+        List<TWarehousebillsitemsNew> list = tWarehousebillsitemsNewService.selectWarehouseBillItemsList(tWarehousebillsitemsNew);
+        ExcelUtil<TWarehousebillsitemsNew> util = new ExcelUtil<>(TWarehousebillsitemsNew.class);
+        return util.exportExcel(list,exportName);
+    }
+}

+ 251 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehousebillsitemsNew.java

@@ -0,0 +1,251 @@
+package com.ruoyi.warehouseBusiness.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * 创建仓库 从->主查询对象
+ */
+public class TWarehousebillsitemsNew extends BaseEntity {
+    /**
+     * $column.columnComment
+     */
+    private Long fId;
+
+    /**
+     * 单据类型(数据字典)SJRK(入库) SJCK(实际出库) CKDB(调拨) HQZY(货权转移)
+     */
+    //@Excel(name = "单据类型(数据字典)SJRK", readConverterExp = "入=库")
+    private String fBilltype;
+
+    /**
+     * 1: 出库,2:在库
+     */
+    private String type;
+
+    /** 是否计算仓储费(应对出库单是否计算过仓储费) */
+    //@Excel(name = "是否计算仓储费(应对出库单是否计算过仓储费)")
+    private String isCalculateStorageFees;
+
+    /**
+     * 客户名称,t_corps 中的no或 name,模糊查找选择后,存储id,显示name
+     */
+    private Long fCorpid;
+
+    /**
+     * 具体客户名称
+     */
+    @Excel(name = "客户名称")
+    private String fCName;
+
+    /**
+     * 名称
+     */
+    @Excel(name = "品名")
+    private String fName;
+
+    /**
+     * 提单号
+     */
+    @Excel(name = "提单号")
+    private String fMblno;
+
+    /**
+     * 件数
+     */
+    @Excel(name = "件数")
+    private Long fQty;
+
+    /**
+     * 毛重
+     */
+    @Excel(name = "毛重")
+    private BigDecimal fGrossweight;
+
+    /**
+     * 仓库
+     */
+    //@Excel(name = "仓库")
+    private Long fWarehouseid;
+
+    /** 仓库/库区/库位 */
+    @Excel(name = "仓库/库区/库位")
+    private String fWarehouseInformation;
+
+    /**
+     * 入库日期
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "入库日期", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date fOriginalbilldate;
+
+    /**
+     * 入(出)库日期
+     */
+    //@Excel(name = "入", readConverterExp = "出=")
+    private Date fBsdate;
+
+    /**
+     * 仓管人
+     */
+    @Excel(name = "仓管人")
+    private String fStorekeeper;
+
+    /** 仓储费截至日期 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "仓储费截至日期", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date fStorageFeeDeadline;
+
+    public Long getfId() {
+        return fId;
+    }
+
+    public void setfId(Long fId) {
+        this.fId = fId;
+    }
+
+    public String getfBilltype() {
+        return fBilltype;
+    }
+
+    public void setfBilltype(String fBilltype) {
+        this.fBilltype = fBilltype;
+    }
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public String getIsCalculateStorageFees() {
+        return isCalculateStorageFees;
+    }
+
+    public void setIsCalculateStorageFees(String isCalculateStorageFees) {
+        this.isCalculateStorageFees = isCalculateStorageFees;
+    }
+
+    public Long getfCorpid() {
+        return fCorpid;
+    }
+
+    public void setfCorpid(Long fCorpid) {
+        this.fCorpid = fCorpid;
+    }
+
+    public String getfCName() {
+        return fCName;
+    }
+
+    public void setfCName(String fCName) {
+        this.fCName = fCName;
+    }
+
+    public String getfName() {
+        return fName;
+    }
+
+    public void setfName(String fName) {
+        this.fName = fName;
+    }
+
+    public String getfMblno() {
+        return fMblno;
+    }
+
+    public void setfMblno(String fMblno) {
+        this.fMblno = fMblno;
+    }
+
+    public Long getfQty() {
+        return fQty;
+    }
+
+    public void setfQty(Long fQty) {
+        this.fQty = fQty;
+    }
+
+    public BigDecimal getfGrossweight() {
+        return fGrossweight;
+    }
+
+    public void setfGrossweight(BigDecimal fGrossweight) {
+        this.fGrossweight = fGrossweight;
+    }
+
+    public Long getfWarehouseid() {
+        return fWarehouseid;
+    }
+
+    public void setfWarehouseid(Long fWarehouseid) {
+        this.fWarehouseid = fWarehouseid;
+    }
+
+    public String getfWarehouseInformation() {
+        return fWarehouseInformation;
+    }
+
+    public void setfWarehouseInformation(String fWarehouseInformation) {
+        this.fWarehouseInformation = fWarehouseInformation;
+    }
+
+    public Date getfOriginalbilldate() {
+        return fOriginalbilldate;
+    }
+
+    public void setfOriginalbilldate(Date fOriginalbilldate) {
+        this.fOriginalbilldate = fOriginalbilldate;
+    }
+
+    public Date getfBsdate() {
+        return fBsdate;
+    }
+
+    public void setfBsdate(Date fBsdate) {
+        this.fBsdate = fBsdate;
+    }
+
+    public String getfStorekeeper() {
+        return fStorekeeper;
+    }
+
+    public void setfStorekeeper(String fStorekeeper) {
+        this.fStorekeeper = fStorekeeper;
+    }
+
+    public Date getfStorageFeeDeadline() {
+        return fStorageFeeDeadline;
+    }
+
+    public void setfStorageFeeDeadline(Date fStorageFeeDeadline) {
+        this.fStorageFeeDeadline = fStorageFeeDeadline;
+    }
+
+    @Override
+    public String toString() {
+        return "TWarehousebillsitemsNew{" +
+                "fId=" + fId +
+                ", fBilltype='" + fBilltype + '\'' +
+                ", type='" + type + '\'' +
+                ", isCalculateStorageFees='" + isCalculateStorageFees + '\'' +
+                ", fCorpid=" + fCorpid +
+                ", fName='" + fName + '\'' +
+                ", fMblno='" + fMblno + '\'' +
+                ", fQty=" + fQty +
+                ", fGrossweight=" + fGrossweight +
+                ", fWarehouseid=" + fWarehouseid +
+                ", fWarehouseInformation='" + fWarehouseInformation + '\'' +
+                ", fOriginalbilldate=" + fOriginalbilldate +
+                ", fBsdate=" + fBsdate +
+                ", fStorekeeper='" + fStorekeeper + '\'' +
+                ", fStorageFeeDeadline=" + fStorageFeeDeadline +
+                '}';
+    }
+}

+ 10 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/mapper/TWarehousebillsitemsNewMapper.java

@@ -0,0 +1,10 @@
+package com.ruoyi.warehouseBusiness.mapper;
+
+import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitemsNew;
+
+import java.util.List;
+import java.util.Map;
+
+public interface TWarehousebillsitemsNewMapper {
+    public List<TWarehousebillsitemsNew> selectWarehouseBillItemsList(TWarehousebillsitemsNew tWarehousebillsitemsNew);
+}

+ 9 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/TWarehousebillsitemsNewService.java

@@ -0,0 +1,9 @@
+package com.ruoyi.warehouseBusiness.service;
+
+import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitemsNew;
+
+import java.util.List;
+
+public interface TWarehousebillsitemsNewService {
+    List<TWarehousebillsitemsNew> selectWarehouseBillItemsList(TWarehousebillsitemsNew tWarehousebillsitemsNew);
+}

+ 20 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehousebillsitemsNewServiceImpl.java

@@ -0,0 +1,20 @@
+package com.ruoyi.warehouseBusiness.service.impl;
+
+import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitemsNew;
+import com.ruoyi.warehouseBusiness.mapper.TWarehousebillsitemsNewMapper;
+import com.ruoyi.warehouseBusiness.service.TWarehousebillsitemsNewService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class TWarehousebillsitemsNewServiceImpl implements TWarehousebillsitemsNewService {
+    @Autowired
+    private TWarehousebillsitemsNewMapper tWarehousebillsitemsNewMapper;
+
+    @Override
+    public List<TWarehousebillsitemsNew> selectWarehouseBillItemsList(TWarehousebillsitemsNew tWarehousebillsitemsNew) {
+        return tWarehousebillsitemsNewMapper.selectWarehouseBillItemsList(tWarehousebillsitemsNew);
+    }
+}

+ 78 - 0
ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsitemsNewMapper.xml

@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.warehouseBusiness.mapper.TWarehousebillsitemsNewMapper">
+
+    <resultMap type="TWarehousebillsitemsNew" id="TWarehousebillsitemsNewResult">
+        <result property="fId" column="f_id"/>
+        <result property="fBilltype" column="f_billtype"/>
+        <result property="isCalculateStorageFees" column="is_calculate_storage_fees"/>
+        <result property="fCorpid" column="f_corpid"/>
+        <result property="fCName" column="f_c_name"/>
+        <result property="fName" column="f_name"/>
+        <result property="fMblno" column="f_mblno"/>
+        <result property="fQty" column="f_qty"/>
+        <result property="fGrossweight" column="f_grossweight"/>
+        <result property="fWarehouseInformation" column="f_warehouse_information"/>
+        <result property="fWarehouseid" column="f_warehouseid"/>
+        <result property="fOriginalbilldate" column="f_originalbilldate"/>
+        <result property="fBsdate" column="f_bsdate"/>
+        <result property="fStorekeeper" column="f_storekeeper"/>
+        <result property="fStorageFeeDeadline" column="f_storage_fee_deadline"/>
+        <result property="createBy" column="create_by"/>
+        <result property="createTime" column="create_time"/>
+        <result property="updateBy" column="update_by"/>
+        <result property="updateTime" column="update_time"/>
+    </resultMap>
+
+    <sql id="selectTWarehousebillsitemsNewVo">
+        select a.f_id,
+               a.f_billtype,
+               a.is_calculate_storage_fees,
+               b.f_corpid,
+               tc.f_name as f_c_name,
+               t.f_name,
+               a.f_mblno,
+               a.f_qty,
+               b.f_grossweight,
+               a.f_warehouse_information,
+               b.f_warehouseid,
+               a.f_originalbilldate as f_originalbilldate,
+               a.f_bsdate,
+               b.f_storekeeper,
+               a.f_storage_fee_deadline,
+               a.create_by,
+               a.create_time,
+               a.update_by,
+               a.update_time
+        from t_warehousebillsitems a left join t_warehousebills b on a.f_pid = b.f_id
+                                     left join t_goods t on a.f_goodsid = t.f_id
+                                     left join t_corps tc on b.f_corpid=tc.f_id
+    </sql>
+
+    <select id="selectWarehouseBillItemsList" parameterType="TWarehousebillsitemsNew" resultMap="TWarehousebillsitemsNewResult">
+        <include refid="selectTWarehousebillsitemsNewVo"/>
+        <where>
+            <if test="fBilltype != null ">and a.f_billtype = #{fBilltype}</if>
+            <if test="isCalculateStorageFees != null ">and a.is_calculate_storage_fees = #{isCalculateStorageFees}</if>
+            <if test="fCorpid != null">and b.f_corpid = #{fCorpid}</if>
+            <if test="fCName != null">and f_c_name = #{fCName}</if>
+            <if test="fName != null">and t.f_name, = #{fName}</if>
+            <if test="fMblno != null ">and a.f_mblno = #{fMblno}</if>
+            <if test="fQty != null ">and a.f_qty = #{fQty}</if>
+            <if test="fGrossweight != null ">and b.f_grossweight = #{fGrossweight}</if>
+            <if test="fWarehouseInformation != null ">and a.f_warehouse_information like concat('%',#{fWarehouseInformation},'%')</if>
+            <if test="fWarehouseid != null ">and b.f_warehouseid=#{fWarehouseid}</if>
+            and f_originalbilldate!='null'
+            <if test="fBsdate != null ">and b.f_bsdate = #{fBsdate}</if>
+            <if test="fStorekeeper != null ">and b.f_storekeeper = #{fStorekeeper}</if>
+            <if test="fStorageFeeDeadline != null ">and a.f_storage_fee_deadline = #{fStorageFeeDeadline}</if>
+            <if test="createBy != null ">and a.create_by = #{createBy}</if>
+            <if test="createTime != null ">and a.create_time = #{createTime}</if>
+            <if test="updateBy != null ">and a.update_by = #{updateBy}</if>
+            <if test="updateTime != null ">and a.update_time = #{updateTime}</if>
+        </where>
+        order by a.create_time desc
+    </select>
+</mapper>