Browse Source

修改微信公众号模板,调整仓库问题

阿伏兔 4 years ago
parent
commit
a02b0ede64
24 changed files with 521 additions and 131 deletions
  1. 0 8
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/fleet/orderPlan/ftmsorderbillsplansController.java
  2. 0 1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/ProfitController.java
  3. 1 2
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TWarehousebillsfeesController.java
  4. 7 0
      ruoyi-fleet/src/main/java/com/ruoyi/basicData/mapper/FleetCarManageMapper.java
  5. 3 1
      ruoyi-fleet/src/main/java/com/ruoyi/basicData/service/impl/FleetCarManageServiceImpl.java
  6. 6 1
      ruoyi-fleet/src/main/java/com/ruoyi/orderManagement/finance/service/impl/FTmsaccbillsServiceImpl.java
  7. 217 1
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/domain/Ftmsorderbillsplans.java
  8. 0 1
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/IftmsorderbillsplansService.java
  9. 1 1
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillsServiceImpl.java
  10. 26 10
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillscarsServiceImpl.java
  11. 4 22
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillsplansServiceImpl.java
  12. 4 0
      ruoyi-fleet/src/main/resources/mapper/basicData/FleetCarManageMapper.xml
  13. 3 1
      ruoyi-fleet/src/main/resources/mapper/finance/FTmsaccbillsMapper.xml
  14. 4 4
      ruoyi-fleet/src/main/resources/mapper/orderPlan/ftmsorderbillscarsMapper.xml
  15. 16 1
      ruoyi-fleet/src/main/resources/mapper/orderPlan/ftmsorderbillsplansMapper.xml
  16. 9 16
      ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/WechatService.java
  17. 22 0
      ruoyi-shipping/src/main/java/com/ruoyi/shipping/service/impl/TCntrnoServiceImpl.java
  18. 26 0
      ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehousebillsfees.java
  19. 4 5
      ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/mapper/TWarehousebillsfeesMapper.java
  20. 11 11
      ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehouseBillsServiceImpl.java
  21. 109 15
      ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehousebillsfeesServiceImpl.java
  22. 1 0
      ruoyi-warehouse/src/main/resources/mapper/reportManagement/TWhgenlegMapper.xml
  23. 16 8
      ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsMapper.xml
  24. 31 22
      ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsfeesMapper.xml

+ 0 - 8
ruoyi-admin/src/main/java/com/ruoyi/web/controller/fleet/orderPlan/ftmsorderbillsplansController.java

@@ -41,14 +41,6 @@ public class ftmsorderbillsplansController extends BaseController {
     /**
      * 查询订单调度列表
      */
-    @GetMapping("/testt")
-    public void testt(String phone) {
-        ftmsorderbillsplansService.testt(phone);
-    }
-
-    /**
-     * 查询订单调度列表
-     */
     @GetMapping("/list")
     public TableDataInfo list(Ftmsorderbillsplans ftmsorderbillsplans) {
         startPage();

+ 0 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/ProfitController.java

@@ -35,7 +35,6 @@ public class ProfitController extends BaseController {
     /**
      * 查询应收总账列表
      */
-    @PreAuthorize("@ss.hasPermi('warehouseBusiness:profit:list')")
     @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo chargeList(TWareHouseFees tWareHouseFees) {

+ 1 - 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TWarehousebillsfeesController.java

@@ -70,10 +70,9 @@ public class TWarehousebillsfeesController extends BaseController {
     public AjaxResult exportExcel(TWarehousebillsfees tWarehousebillsfees) {
         LoginUser loginUser = SpringUtils.getBean(TokenService.class).getLoginUser(ServletUtils.getRequest());
         tWarehousebillsfees.setCreateBy(loginUser.getUser().getNickName());
-        List<String> fleetExcel = tWarehousebillsfeesService.selectFleetExcel(tWarehousebillsfees);
         List<FleetExcel> list = tWarehousebillsfeesService.selectFleetExcelList(tWarehousebillsfees);
         ExcelUtil<FleetExcel> util = new ExcelUtil<FleetExcel>(FleetExcel.class);
-        return util.feesExportExcel(list, "总账统计", fleetExcel);
+        return util.exportExcel(list, "总账统计");
     }
 
     /**

+ 7 - 0
ruoyi-fleet/src/main/java/com/ruoyi/basicData/mapper/FleetCarManageMapper.java

@@ -92,4 +92,11 @@ public interface FleetCarManageMapper
      * @return  结果
      */
     public int selectManageCount(Ftmsorderbills ftmsorderbills);
+
+    /**
+     *  检验车牌是否唯一
+     * @param carNum
+     * @return
+     */
+    public int checkCarNumUnique(String carNum);
 }

+ 3 - 1
ruoyi-fleet/src/main/java/com/ruoyi/basicData/service/impl/FleetCarManageServiceImpl.java

@@ -141,9 +141,11 @@ public class FleetCarManageServiceImpl implements IFleetCarManageService
         // 检验必填
         if(StringUtils.isNull(fleetCarManage1.getFleetCompanyId()) ||
                 StringUtils.isNull(fleetCarManage1.getCarNum()) ){
-            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             return AjaxResult.error("请填写必输项");
         }
+        if (fleetCarManageMapper.checkCarNumUnique(fleetCarManage1.getCarNum()) > 0) {
+            return AjaxResult.error("车牌号已存在,请确认");
+        }
         fleetCarManage1.setBillStatus(6L);
         if(null!=fleetCarManage1.getId() && !fleetCarManage1.getId().equals("")){
             fPid = fleetCarManage1.getId();

+ 6 - 1
ruoyi-fleet/src/main/java/com/ruoyi/orderManagement/finance/service/impl/FTmsaccbillsServiceImpl.java

@@ -9,6 +9,7 @@ import com.ruoyi.basicData.mapper.TFeesMapper;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.entity.SysDictData;
 import com.ruoyi.common.core.domain.model.LoginUser;
+import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.orderManagement.finance.domain.FTmsaccbills;
@@ -18,6 +19,7 @@ import com.ruoyi.orderManagement.finance.mapper.FTmsaccbillsMapper;
 import com.ruoyi.orderManagement.finance.mapper.FTmsaccbillsitemsMapper;
 import com.ruoyi.orderManagement.finance.service.IFTmsaccbillsService;
 import com.ruoyi.orderPlan.domain.Ftmsorderbills;
+import com.ruoyi.orderPlan.domain.Ftmsorderbillscars;
 import com.ruoyi.orderPlan.mapper.FtmsorderbillsMapper;
 import com.ruoyi.orderPlan.mapper.FtmsorderbillscarsMapper;
 import com.ruoyi.orderPlan.domain.Ftmsorderbillsfees;
@@ -98,13 +100,16 @@ public class FTmsaccbillsServiceImpl implements IFTmsaccbillsService {
                 if (null != ftmsorderbillsfees.getfFeeid()) {
                     tFees = tFeesMapper.selectTFeesById(ftmsorderbillsfees.getfFeeid());
                 }
+                if (ftmsorderbillsfees.getActId() == 1080L || ftmsorderbillsfees.getActId() == 1090L) {
+                    Ftmsorderbillscars ftmsorderbillscars = ftmsorderbillscarsMapper.selectftmsorderbillscarsById(ftmsorderbillsfees.getfPid());
+                    map1.put("carLoadDate", DateUtils.dateTime(ftmsorderbillscars.getLoadDate()));
+                }
                 // 字典宝
                 SysDictData sysDictData = new SysDictData();
                 sysDictData.setDictType("data_unitfees");
                 sysDictData.setDictValue(String.valueOf(ftmsorderbillsfees.getfFeeunitid()));
                 sysDictData.setStatus("0");
                 List<SysDictData> sysDictDataList = iSysDictDataService.selectDictDataList(sysDictData);
-
                 map1.put("fSrcpid", fees.getFSrcpid());  //  主表ID
                 map1.put("fName", ftmsorderbills.getCorpId());//  客户
                 corpsId.add(ftmsorderbills.getCorpId());

+ 217 - 1
ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/domain/Ftmsorderbillsplans.java

@@ -14,7 +14,6 @@ import com.ruoyi.common.core.domain.BaseEntity;
  * @author ruoyi
  * @date 2021-02-22
  */
-@Data
 public class Ftmsorderbillsplans extends BaseEntity {
     private static final long serialVersionUID = 1L;
 
@@ -132,4 +131,221 @@ public class Ftmsorderbillsplans extends BaseEntity {
     @Excel(name = "备注")
     private String remarks;
 
+    /**
+     * 运输性质1重去重回2重去空回3空去重回
+     */
+    @Excel(name = "运输性质1重去重回2重去空回3空去重回")
+    private String transProp;
+
+    /** 应收运价 */
+    @Excel(name = "应收运价")
+    private BigDecimal freightPriceDr;
+
+    /** 应付运价 */
+    @Excel(name = "应付运价")
+    private BigDecimal freightPriceCr;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getpId() {
+        return pId;
+    }
+
+    public void setpId(Long pId) {
+        this.pId = pId;
+    }
+
+    public Long getOrgId() {
+        return orgId;
+    }
+
+    public void setOrgId(Long orgId) {
+        this.orgId = orgId;
+    }
+
+    public Long getCntrId() {
+        return cntrId;
+    }
+
+    public void setCntrId(Long cntrId) {
+        this.cntrId = cntrId;
+    }
+
+    public Long getCntrQty() {
+        return cntrQty;
+    }
+
+    public void setCntrQty(Long cntrQty) {
+        this.cntrQty = cntrQty;
+    }
+
+    public Long getCarQty() {
+        return carQty;
+    }
+
+    public void setCarQty(Long carQty) {
+        this.carQty = carQty;
+    }
+
+    public Long getPlanCntrQty() {
+        return planCntrQty;
+    }
+
+    public void setPlanCntrQty(Long planCntrQty) {
+        this.planCntrQty = planCntrQty;
+    }
+
+    public Long getCarcorPid() {
+        return carcorPid;
+    }
+
+    public void setCarcorPid(Long carcorPid) {
+        this.carcorPid = carcorPid;
+    }
+
+    public String getPricecrType() {
+        return pricecrType;
+    }
+
+    public void setPricecrType(String pricecrType) {
+        this.pricecrType = pricecrType;
+    }
+
+    public BigDecimal getPricecr() {
+        return pricecr;
+    }
+
+    public void setPricecr(BigDecimal pricecr) {
+        this.pricecr = pricecr;
+    }
+
+    public String getIfNeedInvCr() {
+        return ifNeedInvCr;
+    }
+
+    public void setIfNeedInvCr(String ifNeedInvCr) {
+        this.ifNeedInvCr = ifNeedInvCr;
+    }
+
+    public String getCarnolist() {
+        return carnolist;
+    }
+
+    public void setCarnolist(String carnolist) {
+        this.carnolist = carnolist;
+    }
+
+    public Date getPlanDate() {
+        return planDate;
+    }
+
+    public void setPlanDate(Date planDate) {
+        this.planDate = planDate;
+    }
+
+    public String getPlanreMarks() {
+        return planreMarks;
+    }
+
+    public void setPlanreMarks(String planreMarks) {
+        this.planreMarks = planreMarks;
+    }
+
+    public Date getAcceptDate() {
+        return acceptDate;
+    }
+
+    public void setAcceptDate(Date acceptDate) {
+        this.acceptDate = acceptDate;
+    }
+
+    public String getAcceptRemarks() {
+        return acceptRemarks;
+    }
+
+    public void setAcceptRemarks(String acceptRemarks) {
+        this.acceptRemarks = acceptRemarks;
+    }
+
+    public Long getBillStatus() {
+        return billStatus;
+    }
+
+    public void setBillStatus(Long billStatus) {
+        this.billStatus = billStatus;
+    }
+
+    public String getDelFlag() {
+        return delFlag;
+    }
+
+    public void setDelFlag(String delFlag) {
+        this.delFlag = delFlag;
+    }
+
+    public String getRemarks() {
+        return remarks;
+    }
+
+    public void setRemarks(String remarks) {
+        this.remarks = remarks;
+    }
+
+    public BigDecimal getFreightPriceDr() {
+        return freightPriceDr;
+    }
+
+    public void setFreightPriceDr(BigDecimal freightPriceDr) {
+        this.freightPriceDr = freightPriceDr;
+    }
+
+    public BigDecimal getFreightPriceCr() {
+        return freightPriceCr;
+    }
+
+    public void setFreightPriceCr(BigDecimal freightPriceCr) {
+        this.freightPriceCr = freightPriceCr;
+    }
+
+    public String getTransProp() {
+        return transProp;
+    }
+
+    public void setTransProp(String transProp) {
+        this.transProp = transProp;
+    }
+
+    @Override
+    public String toString() {
+        return "Ftmsorderbillsplans{" +
+                "id=" + id +
+                ", pId=" + pId +
+                ", orgId=" + orgId +
+                ", cntrId=" + cntrId +
+                ", cntrQty=" + cntrQty +
+                ", carQty=" + carQty +
+                ", planCntrQty=" + planCntrQty +
+                ", carcorPid=" + carcorPid +
+                ", pricecrType='" + pricecrType + '\'' +
+                ", pricecr=" + pricecr +
+                ", ifNeedInvCr='" + ifNeedInvCr + '\'' +
+                ", carnolist='" + carnolist + '\'' +
+                ", planDate=" + planDate +
+                ", planreMarks='" + planreMarks + '\'' +
+                ", acceptDate=" + acceptDate +
+                ", acceptRemarks='" + acceptRemarks + '\'' +
+                ", billStatus=" + billStatus +
+                ", delFlag='" + delFlag + '\'' +
+                ", remarks='" + remarks + '\'' +
+                ", transProp='" + transProp + '\'' +
+                ", freightPriceDr=" + freightPriceDr +
+                ", freightPriceCr=" + freightPriceCr +
+                '}';
+    }
 }

+ 0 - 1
ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/IftmsorderbillsplansService.java

@@ -136,5 +136,4 @@ public interface IftmsorderbillsplansService {
      */
     AjaxResult schedulingChanges(Long id, LoginUser loginUser);
 
-    void testt(String phone);
 }

+ 1 - 1
ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillsServiceImpl.java

@@ -220,7 +220,7 @@ public class FtmsorderbillsServiceImpl implements IftmsorderbillsService {
                     return AjaxResult.error("更新调度数据失败,若多次失败请联系管理员");
                 }
                 if (Objects.equals(itemstatus, 6)) {
-                    Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(p.getPId());
+                    Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(p.getpId());
                     long qty = ftmsorderbillscntrs.getCntrPlanQty() + p.getCntrQty();
                     if (qty > ftmsorderbillscntrs.getCntrQty()) {
                         TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

+ 26 - 10
ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillscarsServiceImpl.java

@@ -9,7 +9,9 @@ import java.util.Map;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.ruoyi.basicData.domain.TCorps;
+import com.ruoyi.basicData.domain.TGoods;
 import com.ruoyi.basicData.mapper.TCorpsMapper;
+import com.ruoyi.basicData.mapper.TGoodsMapper;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.model.LoginUser;
@@ -46,6 +48,9 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport;
 public class FtmsorderbillscarsServiceImpl implements IftmsorderbillscarsService {
 
     @Autowired
+    private TGoodsMapper tGoodsMapper;
+
+    @Autowired
     private TFeeDoMapper tFeeDoMapper;
 
     @Autowired
@@ -792,11 +797,6 @@ public class FtmsorderbillscarsServiceImpl implements IftmsorderbillscarsService
             return AjaxResult.error("更新调度数据失败,若多次失败请联系管理员");
         }
         Ftmsorderbills ftmsorderbills = ftmsorderbillsMapper.selectftmsorderbillsById(ftmsorderbillsplans.getOrgId());
-        Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(ftmsorderbillsplans.getPId());
-        // 应收运价
-        ftmsorderbillscars.setFreightPriceDr(ftmsorderbillscntrs.getPriceDr());
-        // 应付运价
-        ftmsorderbillscars.setFreightPriceCr(ftmsorderbillsplans.getPricecr());
         ftmsorderbillscars.setQtyDr(new BigDecimal(ftmsorderbillscars.getCntrQty()));
         ftmsorderbillscars.setQtyCr(new BigDecimal(ftmsorderbillscars.getCntrQty()));
         BigDecimal amtDr = ftmsorderbillscars.getFreightPriceDr().multiply(ftmsorderbillscars.getQtyDr());
@@ -818,16 +818,32 @@ public class FtmsorderbillscarsServiceImpl implements IftmsorderbillscarsService
         map.put("plan", ftmsorderbillsplansMapper.selectftmsorderbillsplansById(ftmsorderbillsplans.getId()));
         SysUser sysUser = sysUserMapper.selectUserByTel(ftmsorderbillscars.getDriverTel());
         if (StringUtils.isNotNull(sysUser)) {
+            String loadAddr = "";
+            String mdLoadAddr = "";
+            String goodsName = "";
+            if (StringUtils.isNotEmpty(tmsorderbills.getLoadAddr())) {
+                loadAddr = tmsorderbills.getLoadAddr();
+            }
+            if (StringUtils.isNotEmpty(tmsorderbills.getMdLoadAddr())) {
+                loadAddr = tmsorderbills.getMdLoadAddr();
+            }
+            String route = loadAddr + " - " + mdLoadAddr;
+            if (StringUtils.isNotNull(tmsorderbills.getGoodsId())) {
+                TGoods goods = tGoodsMapper.selectTGoodsById(tmsorderbills.getGoodsId());
+                if (StringUtils.isNotNull(goods)) {
+                    goodsName = goods.getfName();
+                }
+            }
             String openId = sysUser.getOpenId();
-            String nickName = sysUser.getNickName();
             String mblno = ftmsorderbillscars.getMblno();
             String loadDate = null;
             if (StringUtils.isNotNull(tmsorderbills.getLoadDate())) {
                 loadDate = DateUtils.dateTime(tmsorderbills.getLoadDate());
             }
-            // 获得客户名
-            TCorps corps = tCorpsMapper.selectTCorpsById(tmsorderbills.getCorpId());
-            wechatService.newsPush(openId, nickName, mblno, amtDr + "", corps.getfName(), loadDate, "其他消息暂定", "备注暂定");
+            wechatService.newsPush(openId, mblno, route, goodsName, loadDate);
+        } else {
+            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+            return AjaxResult.error("未找到司机信息,请确认");
         }
         return AjaxResult.success(map);
     }
@@ -917,7 +933,7 @@ public class FtmsorderbillscarsServiceImpl implements IftmsorderbillscarsService
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             return AjaxResult.error("更新调度数据失败,若多次失败请联系管理员");
         }
-        Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(ftmsorderbillsplans.getPId());
+        Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(ftmsorderbillsplans.getpId());
         ftmsorderbillscntrs.setPlanQty(ftmsorderbillscntrs.getPlanQty() - tmsorderbillscars.getCntrQty() + ftmsorderbillscars.getCntrQty());
         ftmsorderbillscntrsMapper.updateftmsorderbillscntrs(ftmsorderbillscntrs);
         Ftmsorderbills ftmsorderbills = ftmsorderbillsMapper.selectftmsorderbillsById(ftmsorderbillsplans.getOrgId());

+ 4 - 22
ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillsplansServiceImpl.java

@@ -65,24 +65,6 @@ public class FtmsorderbillsplansServiceImpl implements IftmsorderbillsplansServi
     @Autowired
     private FtmsorderbillsattachsMapper ftmsorderbillsattachsMapper;
 
-
-    @Override
-    public void testt(String phone) {
-        SysUser sysUser = sysUserMapper.selectUserByTel(phone);
-        /*if (StringUtils.isNotNull(sysUser)) {
-            System.out.println("成功!!!" + phone);
-            String openId = sysUser.getOpenId();
-            String nickName = sysUser.getNickName();
-            // 提单号
-            String mblno = "提单号";
-            String loadDate = DateUtils.getDate();
-            // 获得客户名
-            wechatService.newsPush(openId, nickName, mblno, 1000.99 + "", "尊敬的客户A", loadDate, "其他消息暂定", "备注暂定");
-        }*/
-        String loadDate = DateUtils.getDate();
-        wechatService.newsPush(phone, "阿伏兔", "TDH-001", 1000.99 + "", "尊敬的客户A", loadDate, "其他消息暂定", "备注暂定");
-    }
-
     /**
      * 查询订单调度列表
      *
@@ -265,7 +247,7 @@ public class FtmsorderbillsplansServiceImpl implements IftmsorderbillsplansServi
             }
         }
         // 箱型箱量数据
-        Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(tmsorderbillsplans.getPId());
+        Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(tmsorderbillsplans.getpId());
         if (ftmsorderbillscntrs.getCntrBlcQty() < tmsorderbillsplans.getCntrQty()) {
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             return AjaxResult.error("调度数量超出计划箱量不可提交");
@@ -340,7 +322,7 @@ public class FtmsorderbillsplansServiceImpl implements IftmsorderbillsplansServi
             return AjaxResult.error("调度安排货量不得低于已派车数量");
         }
         // 箱型箱量数据
-        Ftmsorderbillscntrs tmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(tmsorderbillsplans.getPId());
+        Ftmsorderbillscntrs tmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(tmsorderbillsplans.getpId());
         if (StringUtils.isNull(tmsorderbillscntrs)) {
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             return AjaxResult.error("未找到计划箱量数据");
@@ -554,7 +536,7 @@ public class FtmsorderbillsplansServiceImpl implements IftmsorderbillsplansServi
             int line = 0;
             for (Ftmsorderbillsplans p : tmsorderbillsplansList) {
                 line++;
-                Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(p.getPId());
+                Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(p.getpId());
                 if (StringUtils.isNull(ftmsorderbillscntrs)) {
                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                     return AjaxResult.error("调度安排第" + line + "行未找到箱型箱量数据");
@@ -673,7 +655,7 @@ public class FtmsorderbillsplansServiceImpl implements IftmsorderbillsplansServi
         int line = 0;
         for (Ftmsorderbillsplans p : tmsorderbillsplansList) {
             line++;
-            Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(p.getPId());
+            Ftmsorderbillscntrs ftmsorderbillscntrs = ftmsorderbillscntrsMapper.selectftmsorderbillscntrsById(p.getpId());
             if (StringUtils.isNull(ftmsorderbillscntrs)) {
                 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                 return AjaxResult.error("调度安排第" + line + "行未找到箱型箱量数据");

+ 4 - 0
ruoyi-fleet/src/main/resources/mapper/basicData/FleetCarManageMapper.xml

@@ -450,4 +450,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="remarks != null  and remarks != ''"> and remarks = #{remarks}</if>
         </where>
     </select>
+
+    <select id="checkCarNumUnique" parameterType="String" resultType="int">
+        select count(1) from fleet_car_manage where car_num = #{carNum} limit 1
+    </select>
 </mapper>

+ 3 - 1
ruoyi-fleet/src/main/resources/mapper/finance/FTmsaccbillsMapper.xml

@@ -220,7 +220,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             w.f_amount AS fAmount,
             w.f_feeUnitid AS fFeeUnitid,
             t.load_date AS loadDate,
-            t.un_load_date AS unLoadDate
+            t.un_load_date AS unLoadDate,
+            date_format( car.load_date, '%Y-%m-%d' ) AS carLoadDate
         FROM
             F_TMSORDERBILLSFEES w
             LEFT JOIN t_fees f ON w.f_feeid = f.f_id
@@ -228,6 +229,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             LEFT JOIN F_TMSORDERBILLS AS t ON w.org_id = t.id
             LEFT JOIN t_goods g ON g.f_id = t.goods_id
             LEFT JOIN t_corps AS c1 ON t.corp_id = c1.f_id
+            LEFT JOIN F_TMSORDERBILLSCARS car ON car.id = w.f_pid
             LEFT JOIN sys_dict_data dict ON dict.dict_value = t.bill_type
         <where>
             dict.status = '0'

+ 4 - 4
ruoyi-fleet/src/main/resources/mapper/orderPlan/ftmsorderbillscarsMapper.xml

@@ -629,8 +629,6 @@
             c.cntr_weight AS cntrWeight,
             t.ysl,
             t.voy,
-            cntr.price_dr AS priceDr,
-            cntr.price_cr AS priceCr,
             t.pol_id AS polId,
             t.pod_id AS podId,
             c.oil_amt AS oilAmt,
@@ -641,8 +639,10 @@
             c.driver_tel AS driverTel,
             c.driver_name AS driverName,
             c.cost_remarks AS costRemarks,
-            c.odometer_from AS odometerFrom,
             c.odometer_end AS odometerEnd,
+            c.odometer_from AS odometerFrom,
+            c.freight_price_dr AS freightPriceDr,
+            c.freight_price_cr AS freightPriceCr,
             date_format( c.accept_date, '%Y-%m-%d' ) AS acceptDate,
             c.accept_remarks AS acceptRemarks,
             IFNULL( c.costom_amt_01, 0 ) AS costomAmt01,
@@ -664,7 +664,6 @@
         FROM
             F_TMSORDERBILLSCARS c
             LEFT JOIN F_TMSORDERBILLS t ON t.id = c.org_id
-            LEFT JOIN F_TMSORDERBILLSCNTRS cntr ON cntr.org_id = c.org_id AND cntr.cntr_id = c.cntr_id
             LEFT JOIN sys_user u ON u.user_id = t.plan_user_id
             LEFT JOIN sys_user driver ON driver.user_id = c.driver_user_id
             LEFT JOIN t_corps corp ON corp.f_id = t.corp_id
@@ -705,6 +704,7 @@
             LEFT JOIN t_corps t ON t.f_id = bill.corp_id
         <where>
             car.bill_status &gt;= 6
+            AND car.order_status != 80
             <if test="isFleet != null and isFleet == 1">
                 AND fleet.f_id = #{fleetId}
             </if>

+ 16 - 1
ruoyi-fleet/src/main/resources/mapper/orderPlan/ftmsorderbillsplansMapper.xml

@@ -16,9 +16,12 @@
         <result property="pricecrType" column="pricecr_type"/>
         <result property="pricecr" column="pricecr"/>
         <result property="ifNeedInvCr" column="if_need_inv_cr"/>
+        <result property="transProp" column="trans_prop"/>
         <result property="carnolist" column="carnolist"/>
         <result property="planDate" column="plan_date"/>
         <result property="planreMarks" column="planre_marks"/>
+        <result property="freightPriceDr" column="freight_price_dr"/>
+        <result property="freightPriceCr" column="freight_price_cr"/>
         <result property="acceptDate" column="accept_date"/>
         <result property="acceptRemarks" column="accept_remarks"/>
         <result property="billStatus" column="bill_status"/>
@@ -31,7 +34,9 @@
     </resultMap>
 
     <sql id="selectftmsorderbillsplansVo">
-        select id, p_id, org_id, cntr_id, cntr_qty, car_qty, plan_cntr_qty, carcor_pid, pricecr_type, pricecr, if_need_inv_cr, carnolist, plan_date, planre_marks, accept_date, accept_remarks, bill_status, del_flag, create_by, create_time, update_by, update_time, remarks from F_TMSORDERBILLSPLANS
+        select id, p_id, org_id, cntr_id, cntr_qty, car_qty, plan_cntr_qty, carcor_pid, pricecr_type, pricecr, if_need_inv_cr, trans_prop, carnolist,
+        plan_date, planre_marks, accept_date, accept_remarks, bill_status, del_flag, create_by, create_time, freight_price_dr, freight_price_cr,
+        update_by, update_time, remarks from F_TMSORDERBILLSPLANS
     </sql>
 
     <select id="selectftmsorderbillsplansList" parameterType="ftmsorderbillsplans"
@@ -48,6 +53,7 @@
             <if test="pricecrType != null  and pricecrType != ''">and pricecr_type = #{pricecrType}</if>
             <if test="pricecr != null ">and pricecr = #{pricecr}</if>
             <if test="ifNeedInvCr != null  and ifNeedInvCr != ''">and if_need_inv_cr = #{ifNeedInvCr}</if>
+            <if test="transProp != null  and transProp != ''">and trans_prop = #{transProp}</if>
             <if test="carnolist != null  and carnolist != ''">and carnolist = #{carnolist}</if>
             <if test="planDate != null ">and plan_date = #{planDate}</if>
             <if test="planreMarks != null  and planreMarks != ''">and planre_marks = #{planreMarks}</if>
@@ -196,6 +202,7 @@
             <if test="pricecrType != null">pricecr_type,</if>
             <if test="pricecr != null">pricecr,</if>
             <if test="ifNeedInvCr != null">if_need_inv_cr,</if>
+            <if test="transProp != null">trans_prop,</if>
             <if test="carnolist != null">carnolist,</if>
             <if test="planDate != null">plan_date,</if>
             <if test="planreMarks != null">planre_marks,</if>
@@ -208,6 +215,8 @@
             <if test="updateBy != null">update_by,</if>
             <if test="updateTime != null">update_time,</if>
             <if test="remarks != null">remarks,</if>
+            <if test="freightPriceDr != null">freight_price_dr,</if>
+            <if test="freightPriceCr != null">freight_price_cr,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="id != null">#{id},</if>
@@ -221,6 +230,7 @@
             <if test="pricecrType != null">#{pricecrType},</if>
             <if test="pricecr != null">#{pricecr},</if>
             <if test="ifNeedInvCr != null">#{ifNeedInvCr},</if>
+            <if test="transProp != null">#{transProp},</if>
             <if test="carnolist != null">#{carnolist},</if>
             <if test="planDate != null">#{planDate},</if>
             <if test="planreMarks != null">#{planreMarks},</if>
@@ -233,6 +243,8 @@
             <if test="updateBy != null">#{updateBy},</if>
             <if test="updateTime != null">#{updateTime},</if>
             <if test="remarks != null">#{remarks},</if>
+            <if test="freightPriceDr != null">#{freightPriceDr},</if>
+            <if test="freightPriceCr != null">#{freightPriceCr},</if>
         </trim>
     </insert>
 
@@ -249,8 +261,11 @@
             <if test="pricecrType != null">pricecr_type = #{pricecrType},</if>
             <if test="pricecr != null">pricecr = #{pricecr},</if>
             <if test="ifNeedInvCr != null">if_need_inv_cr = #{ifNeedInvCr},</if>
+            <if test="transProp != null">trans_prop = #{transProp},</if>
             <if test="carnolist != null">carnolist = #{carnolist},</if>
             <if test="planDate != null">plan_date = #{planDate},</if>
+            <if test="freightPriceDr != null">freight_price_dr = #{freightPriceDr},</if>
+            <if test="freightPriceCr != null">freight_price_cr = #{freightPriceCr},</if>
             <if test="planreMarks != null">planre_marks = #{planreMarks},</if>
             <if test="acceptDate != null">accept_date = #{acceptDate},</if>
             <if test="acceptRemarks != null">accept_remarks = #{acceptRemarks},</if>

+ 9 - 16
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/WechatService.java

@@ -210,23 +210,20 @@ public class WechatService {
      * 发送模板消息
      *
      * @param fromUser  接收此消息的openId
-     * @param name      接收人姓名
      * @param mblno     提单号
-     * @param amt       金额
-     * @param corpName  客户
+     * @param route     路线
+     * @param goodsName 商品
      * @param loadDate  装货时间
-     * @param otherNews 其他消息
-     * @param remark    备注
      * @return 结果
      */
-    public Objects newsPush(String fromUser, String name, String mblno, String amt, String corpName, String loadDate, String otherNews, String remark) {
+    public Objects newsPush(String fromUser, String mblno, String route, String goodsName, String loadDate) {
         String jsonBody = "{\n" +
                 "  \"touser\": \"" + fromUser + "\",\n" +
                 "  \"template_id\": \"PkeerRaAwBYrwvvrbKrXiGzYok0tehLa9huVxQ6vkco\",\n" +
                 "  \"url\": \"\",\n" +
                 "  \"data\": {\n" +
                 "    \"first\": {\n" +
-                "      \"value\": \"" + name + "\",\n" +
+                "      \"value\": \"靖润\",\n" +
                 "      \"color\": \"#173177\"\n" +
                 "    },\n" +
                 "    \"keyword1\": {\n" +
@@ -234,25 +231,21 @@ public class WechatService {
                 "      \"color\": \"#173177\"\n" +
                 "    },\n" +
                 "    \"keyword2\": {\n" +
-                "      \"value\": \"" + amt + "元\",\n" +
+                "      \"value\": \"" + route + "\",\n" +
                 "      \"color\": \"#173177\"\n" +
                 "    },\n" +
                 "    \"keyword3\": {\n" +
-                "      \"value\": \"" + corpName + "\",\n" +
+                "      \"value\": \"" + goodsName + "\",\n" +
                 "      \"color\": \"#173177\"\n" +
                 "    },\n" +
                 "    \"keyword4\": {\n" +
-                "      \"value\": \"" + loadDate + "\",\n" +
-                "      \"color\": \"#173177\"\n" +
-                "    },\n" +
-                "    \"keyword5\": {\n" +
-                "      \"value\": \"" + otherNews + "\",\n" +
+                "      \"value\": \"" + loadDate + "点发货\",\n" +
                 "      \"color\": \"#173177\"\n" +
                 "    },\n" +
                 "    \"remark\": {\n" +
-                "      \"value\": \"" + remark + "\",\n" +
+                "      \"value\": \"" + mblno + "\",\n" +
                 "      \"color\": \"#173177\"\n" +
-                "    }\n" +
+                "    },\n" +
                 "  }\n" +
                 "}";
         try {

+ 22 - 0
ruoyi-shipping/src/main/java/com/ruoyi/shipping/service/impl/TCntrnoServiceImpl.java

@@ -4,6 +4,7 @@ import java.util.*;
 
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.ruoyi.common.constant.UserConstants;
+import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
@@ -17,6 +18,7 @@ import org.springframework.stereotype.Service;
 import com.ruoyi.shipping.domain.TCntrno;
 import com.ruoyi.shipping.service.ITCntrnoService;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.multipart.MultipartFile;
 
 /**
  * 集装箱号Service业务层处理
@@ -272,6 +274,26 @@ public class TCntrnoServiceImpl implements ITCntrnoService
     }
 
     /**
+     *  后续维护
+     * @param fileName        更新箱信息数据列表
+     * @return
+     */
+    @Override
+    public AjaxResult importUpdateDataTcntrnoExcel(MultipartFile fileName) {
+        return null;
+    }
+
+    /**
+     *  后续维护
+     * @param fileName        更新箱信息数据列表
+     * @return
+     */
+    @Override
+    public AjaxResult importTcntrnoDataExcel(MultipartFile fileName) {
+        return null;
+    }
+
+    /**
      * set字段
      * @param tCntrno
      * @return

+ 26 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehousebillsfees.java

@@ -296,6 +296,32 @@ public class TWarehousebillsfees extends BaseEntity {
     //费用中文名
     private String feeName;
 
+    /**
+     * 年份
+     */
+    private String fYears;
+
+    /**
+     *  月份
+     */
+    private List<String> fMonth;
+
+    public String getfYears() {
+        return fYears;
+    }
+
+    public void setfYears(String fYears) {
+        this.fYears = fYears;
+    }
+
+    public List<String> getfMonth() {
+        return fMonth;
+    }
+
+    public void setfMonth(List<String> fMonth) {
+        this.fMonth = fMonth;
+    }
+
     public String getCorpName() {
         return corpName;
     }

+ 4 - 5
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/mapper/TWarehousebillsfeesMapper.java

@@ -101,17 +101,16 @@ public interface TWarehousebillsfeesMapper extends BaseMapper<TWarehousebillsfee
                          @Param("fDc") String fDc);
 
     /**
-     *  查询报表
+     *  查询总账统计报表
      * @param tWarehousebillsfees
      * @return
      */
-    List<FleetExcel> selectFleetExcelList(TWarehousebillsfees tWarehousebillsfees);
+    public List<FleetExcel> selectFleetExcelList(TWarehousebillsfees tWarehousebillsfees);
 
     /**
-     *  查询报表合计
+     *  查询总账统计报表月份总数
      * @param tWarehousebillsfees
      * @return
      */
-    FleetExcel selectFleetExcel(TWarehousebillsfees tWarehousebillsfees);
-
+    public FleetExcel  selectFleetExcelMonthList(TWarehousebillsfees tWarehousebillsfees);
 }

+ 11 - 11
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehouseBillsServiceImpl.java

@@ -193,6 +193,10 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             corpsId.add(tWarehousebills.getfSbu());
             map.put("warehousebills", tWarehousebills);
         }
+        // 查询箱型 箱量表
+        TWarehousebillsCntr cntr = new TWarehousebillsCntr();
+        cntr.setfPid(fId);
+        map.put("tCntrList", tWarehousebillsCntrMapper.selectTWarehousebillsCntrList(cntr));
         // 查询仓库明细从表数据
         TWarehousebillsitems tWarehousebillsitems = new TWarehousebillsitems();
         tWarehousebillsitems.setfPid(fId);
@@ -355,6 +359,8 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         } else {
             tWhgenleg.setfMblno(warehouseBills.getfMblno());
         }
+        // 原始入库日期
+        tWhgenleg.setfOriginalbilldate(warehousebillsitems.getfOriginalbilldate());
         // 箱号
         if (StringUtils.isNotEmpty(warehousebillsitems.getfBoxno())) {
             tWhgenleg.setfCntrno(warehousebillsitems.getfBoxno());
@@ -639,8 +645,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             }
         } else {
             TWarehouseBills tWarehouseBills = tWarehouseBillsMapper.selectTWarehousebillsById(warehouseBills.getfId());
-            if (!"2".equals(tWarehouseBills.getfBillstatus())
-                    || !"3".equals(tWarehouseBills.getfBillstatus())) {
+            if (!"2".equals(tWarehouseBills.getfBillstatus()) || !"3".equals(tWarehouseBills.getfBillstatus())) {
                 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                 return AjaxResult.error("当前数据不允许暂存");
             }
@@ -801,8 +806,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         JSONArray jsonCrArray = JSONArray.parseArray(tWarehousebillsCntritems);
         List<TWarehousebillsCntritems> tWarehousebillsCntrs = JSONObject.parseArray(jsonCrArray.toJSONString(), TWarehousebillsCntritems.class);
         TWarehouseBills tWarehouseBills = tWarehouseBillsMapper.selectTWarehousebillsById(warehouseBills.getfId());
-        if (!"7".equals(tWarehouseBills.getfBillstatus())
-                || !"8".equals(tWarehouseBills.getfBillstatus())) {
+        if (!"7".equals(tWarehouseBills.getfBillstatus()) || !"8".equals(tWarehouseBills.getfBillstatus())) {
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             return AjaxResult.error("当前数据不允许暂存");
         }
@@ -1131,7 +1135,6 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         } else {
             AjaxResult ajaxResult = warehouseFollow(fPid, 6L);
             String code = ajaxResult.get("code").toString();
-//                Long code = Long.valueOf(String.valueOf(ajaxResult.get("code"))).longValue();
             if ("500".equals(code)) {
                 TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             }
@@ -1273,16 +1276,12 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                 warehouseBills.setfProductName(warehouseBills.getfProductName() + "/" + goods.getfName());
             }
         }
-
         if (StringUtils.isNotNull(tWarehousebillsitems.getfGoodsid())) {
             TGoods goods = tGoodsMapper.selectTGoodsById(tWarehousebillsitems.getfGoodsid());
             if (!warehouseBills.getfProductName().contains(goods.getfName())) {
                 warehouseBills.setfProductName(warehouseBills.getfProductName() + "/" + goods.getfName());
             }
         }
-
-
-        tWarehousebillsitems.setfBillstatus(2L);
         if (StringUtils.isNull(tWarehousebillsitems.getfId())) {
             tWarehousebillsitems.setCreateTime(new Date());
             tWarehousebillsitems.setCreateBy(SecurityUtils.getUsername());
@@ -1957,8 +1956,9 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                     return AjaxResult.error("更新库存总账失败-->入库毛重大于库容");
                 }
+                item.setfOriginalbilldate(item.getfBsdate());
                 item.setfBillingway(tWarehouseBills.getfBillingway());
-                item.setfChargedate(tWarehouseBills.getfChargedate());
+                item.setfChargedate(item.getfBsdate());
                 TWhgenleg tWhgenle = queryTWhgenleg(tWarehouseBills, item);
                 if (StringUtils.isNotNull(tWhgenle)) {
                     int i1 = updateTWhgenlegData(item, tWhgenle.getfId(), billsType);
@@ -2978,6 +2978,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         tWarehouseBillsMapper.updateTWarehousebills(tWarehousebills);
         tEnclosureMapper.deleteByFPid(tWarehousebills.getfId());
         tWarehousebillsfeesMapper.deleteByFPid(tWarehousebills.getfId());
+        tWarehousebillsCntrMapper.deleteTWarehousebillsCntrfPid(tWarehousebills.getfId());
         JSONArray warehouseJSON = JSONArray.parseArray(warehousebillsitems);
         List<TWarehousebillsitems> warehousebillsitemsList = JSONObject.parseArray(warehouseJSON.toJSONString(), TWarehousebillsitems.class);
         /**
@@ -3095,7 +3096,6 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             billnoDel.setBillNo(item);
             billnoDelMapper.insertBillnoDel(billnoDel);
         });
-
         //  附件添加
         if (StringUtils.isNotEmpty(tEnclosure) && !"[]".equals(tEnclosure)) {
             JSONArray jsonDrArray = JSONArray.parseArray(tEnclosure);

+ 109 - 15
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehousebillsfeesServiceImpl.java

@@ -10,6 +10,7 @@ import com.ruoyi.warehouseBusiness.service.ITWarehousebillsfeesService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -92,6 +93,52 @@ public class TWarehousebillsfeesServiceImpl implements ITWarehousebillsfeesServi
         return tWarehousebillsfeesMapper.deleteTWarehousebillsfeesById(fId);
     }
 
+    public static void main(String[] args) {
+        List<FleetExcel> a = new ArrayList<>();
+        FleetExcel fleetExcel = new FleetExcel();
+        fleetExcel.setFeelMonth("一月");
+        fleetExcel.setCcf("100");
+        a.add(fleetExcel);
+        fleetExcel.setFeelMonth("一月");
+        fleetExcel.setCcf("200");
+        a.add(fleetExcel);
+        fleetExcel.setFeelMonth("二月");
+        fleetExcel.setCcf("300");
+        a.add(fleetExcel);
+        fleetExcel.setFeelMonth("二月");
+        fleetExcel.setCcf("400");
+        a.add(fleetExcel);
+        List<FleetExcel> b = new ArrayList<>();
+        FleetExcel excel = new FleetExcel();
+        excel.setFeelMonth("一月");
+        excel.setCcf("300");
+        excel.setCorpName("结果数据");
+        b.add(excel);
+        excel.setFeelMonth("二月");
+        excel.setCcf("700");
+        b.add(excel);
+
+        System.out.println(a);
+        System.out.println(b);
+        List<FleetExcel> excels = new ArrayList<>();
+
+
+
+        for (int m = 0; m <= b.size(); m++) {
+            for (int n = 0; n <= a.size(); n++) {
+                excels.add(a.get(n));
+                if (!b.get(m).getFeelMonth().equals(a.get(n).getFeelMonth())) {//如果存在这个数
+                    excels.add(b.get(m));
+                }
+            }
+        }
+
+
+        System.out.println("结果:" + excels);
+
+    }
+
+
     /**
      *  查询报表
      * @param tWarehousebillsfees
@@ -99,33 +146,80 @@ public class TWarehousebillsfeesServiceImpl implements ITWarehousebillsfeesServi
      */
     @Override
     public List<FleetExcel> selectFleetExcelList(TWarehousebillsfees tWarehousebillsfees) {
-        return tWarehousebillsfeesMapper.selectFleetExcelList(tWarehousebillsfees);
+        List<FleetExcel> fleetExcelList = new ArrayList<>();
+        // 开始月份
+        int  startMonth = 1;
+        // 结束月份
+        int  endMonth = 1;
+        if (StringUtils.isNotEmpty(tWarehousebillsfees.getfYears())) {
+            // 年份
+            List<String> month = tWarehousebillsfees.getfMonth();
+            if (StringUtils.isNotEmpty(month.get(0))) {
+                startMonth = Integer.parseInt(month.get(0));
+            }
+            if (StringUtils.isNotEmpty(month.get(1))) {
+                endMonth = Integer.parseInt(month.get(1));
+            }
+            if (endMonth < startMonth) {
+                return null;
+            }
+            for (int i = startMonth; i <= endMonth; i++) {
+                String firstDay = DateUtils.getFirstDay(Integer.parseInt(tWarehousebillsfees.getfYears()), i);
+                String lastDay = DateUtils.getLastDay(Integer.parseInt(tWarehousebillsfees.getfYears()), i);
+                month.set(0, firstDay);
+                month.set(1, lastDay);
+                tWarehousebillsfees.setfMonth(month);
+                List<FleetExcel> fleetExcels = tWarehousebillsfeesMapper.selectFleetExcelList(tWarehousebillsfees);
+                if (StringUtils.isNotEmpty(fleetExcels)) {
+                    for (FleetExcel e : fleetExcels) {
+                        fleetExcelList.add(e);
+                    }
+                    fleetExcelList.add(tWarehousebillsfeesMapper.selectFleetExcelMonthList(tWarehousebillsfees));
+                }
+            }
+        }
+        return fleetExcelList;
     }
 
     /**
      *  查询报表合计
-     * @param tWarehousebillsfees
+     * @param fleetExcelsList
      * @return
      */
     @Override
-    public List<String> selectFleetExcel(TWarehousebillsfees tWarehousebillsfees) {
-        FleetExcel fleetExcel = tWarehousebillsfeesMapper.selectFleetExcel(tWarehousebillsfees);
+    public List<String> selectFleetExcel(List<FleetExcel> fleetExcelsList) {
         List<String> stringList = new ArrayList<>();
-        if (StringUtils.isNotEmpty(fleetExcel.getCcf())) {
-            stringList.add(fleetExcel.getCcf());
-        } else {
+        if (StringUtils.isEmpty(fleetExcelsList)) {
             stringList.add("0");
-        }
-        if (StringUtils.isNotEmpty(fleetExcel.getfAmount())) {
-            stringList.add(fleetExcel.getfAmount());
-        } else {
             stringList.add("0");
-        }
-        if (StringUtils.isNotEmpty(fleetExcel.getTotalAmount())) {
-            stringList.add(fleetExcel.getTotalAmount());
-        } else {
             stringList.add("0");
+            return stringList;
+        }
+        BigDecimal ccf = new BigDecimal(0);
+        BigDecimal fAmount = new BigDecimal(0);
+        BigDecimal totalAmount = new BigDecimal(0);
+        for (FleetExcel f : fleetExcelsList) {
+            if (StringUtils.isEmpty(f.getUserName())) {
+                if (StringUtils.isNotEmpty(f.getCcf())) {
+                    ccf = ccf.add(new BigDecimal(f.getCcf()));
+                } else {
+                    ccf = ccf.add(new BigDecimal(0));
+                }
+                if (StringUtils.isNotEmpty(f.getfAmount())) {
+                    fAmount = fAmount.add(new BigDecimal(f.getfAmount()));
+                } else {
+                    fAmount = fAmount.add(new BigDecimal(0));
+                }
+                if (StringUtils.isNotEmpty(f.getTotalAmount())) {
+                    totalAmount = totalAmount.add(new BigDecimal(f.getTotalAmount()));
+                } else {
+                    totalAmount = totalAmount.add(new BigDecimal(0));
+                }
+            }
         }
+        stringList.add(ccf + "");
+        stringList.add(fAmount + "");
+        stringList.add(totalAmount + "");
         return stringList;
     }
 }

+ 1 - 0
ruoyi-warehouse/src/main/resources/mapper/reportManagement/TWhgenlegMapper.xml

@@ -89,6 +89,7 @@
             <if test="fCorpid != null ">and f_corpid = #{fCorpid}</if>
             <if test="fMblno != null ">and f_mblno = #{fMblno}</if>
             <if test="fCntrno != null ">and f_cntrno = #{fCntrno}</if>
+            <if test="fOriginalbilldate != null ">and f_originalbilldate = #{fOriginalbilldate}</if>
             <if test="fWarehouseLocationid != null ">and f_warehouse_locationid = #{fWarehouseLocationid}</if>
             <if test="fGoodsid != null ">and f_goodsid = #{fGoodsid}</if>
             <if test="fTrademodeid != null ">and f_trademodeid = #{fTrademodeid}</if>

+ 16 - 8
ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsMapper.xml

@@ -1705,6 +1705,10 @@
             w.f_mblno fMblno,
             w.f_qty fQty,
             w.f_cntval fCntval,
+            w.f_planqty fPlanqty,
+            w.f_planvolumn fPlanvolumn,
+            w.f_plannetweight fPlannetweight,
+            w.f_plangrossweight fPlangrossweight,
             w.f_grossweight fGrossweight,
             w.f_storekeeper fStorekeeper,
             w.create_by createBy,
@@ -1723,11 +1727,12 @@
             LEFT JOIN t_corps c ON c.f_id = w.f_corpid
             LEFT JOIN t_goods g ON g.f_id = w.f_goodsid
             LEFT JOIN t_warehouse t ON t.f_id = w.f_warehouseid
-            left join sys_user u on w.create_by = u.user_name or w.f_storekeeper
+            left join sys_user u on w.create_by = u.user_name
             left join sys_dept d on w.f_bsdeptid = d.dept_id
         where
             w.f_id != ''
             and w.f_billtype = #{fBilltype}
+            or w.f_storekeeper = u.user_name
         <if test="fBillstatus != null ">and w.f_billstatus = #{fBillstatus}</if>
         <if test='timeInterval != null and timeInterval[0] != null and timeInterval[0]!= ""'>
             and w.f_bsdate &gt;= #{timeInterval[0]}
@@ -1754,11 +1759,16 @@
             t.f_qty fQty,
             t.f_grossweight fGrossweight,
             t.f_cntqty fCntqty,
-            CASE WHEN t.f_billstatus = '10' THEN '计划'
-            WHEN t.f_billstatus = '20' THEN '待入库'
-            WHEN t.f_billstatus = '30' THEN '入库中'
-            WHEN t.f_billstatus = '40' THEN '已入库'
-            END fBillstatus
+        CASE
+		    WHEN t.f_billstatus = '10' THEN
+		        '计划'
+			WHEN t.f_billstatus = '20' THEN
+			    IF(w.f_billtype = 'SJRK', '待入库', IF(w.f_billtype = 'SJCK','待出库', IF(w.f_billtype = 'CKDB', '待调拨',IF(w.f_billtype = 'HWTG', '待通关', IF(w.f_billtype = 'HQZY', '待转移', '无')))))
+			WHEN t.f_billstatus = '30' THEN
+			    IF(w.f_billtype = 'SJRK', '入库中', IF(w.f_billtype = 'SJCK','出库中', IF(w.f_billtype = 'CKDB', '调拨中',IF(w.f_billtype = 'HWTG', '通关中', IF(w.f_billtype = 'HQZY', '转移中', '无')))))
+		    WHEN t.f_billstatus = '40' THEN
+			    IF(w.f_billtype = 'SJRK', '已入库', IF(w.f_billtype = 'SJCK','已出库', IF(w.f_billtype = 'CKDB', '已调拨',IF(w.f_billtype = 'HWTG', '已通关', IF(w.f_billtype = 'HQZY', '已转移', '无')))))
+	        END fBillstatus
         FROM
             t_warehousebills w
             LEFT JOIN t_warehousebillsitems t ON t.f_pid = w.f_id
@@ -1766,8 +1776,6 @@
             LEFT JOIN t_goods g ON g.f_id = t.f_goodsid
         where
             t.f_pid = #{fId}
-            AND t.f_billstatus &gt;= '20'
-            AND t.f_billstatus &lt; '40'
     </select>
 
 </mapper>

+ 31 - 22
ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsfeesMapper.xml

@@ -199,19 +199,16 @@
           AND f.f_billtype = 'FF'
     </select>
 
-    <select id="selectFleetExcelList" parameterType="TWarehousebillsfees" resultType="com.ruoyi.finance.excel.FleetExcel">
+    <select id="selectFleetExcelMonthList" parameterType="TWarehousebillsfees" resultType="com.ruoyi.finance.excel.FleetExcel">
         SELECT
-            #{createBy} userName,
+            CONCAT( MONTH ( s.f_bsdate ), '月份小计:' ) feelMonthName,
             CONCAT(
-            YEAR ( s.f_bsdate ),
-            '-',
+                YEAR ( s.f_bsdate ),
+                '-',
             MONTH ( s.f_bsdate )) feelMonth,
-            c.f_name corpName,
             sum( CASE WHEN s.f_feeid = 27 THEN s.f_amount ELSE 0 END ) ccf,
             sum( CASE WHEN s.f_feeid != 27 THEN s.f_amount ELSE 0 END ) fAmount,
             sum( s.f_amount ) totalAmount,
-            IF
-            ( f_invamount = 0, 'F', 'T' ) isInvoice,
             sum( s.f_invamount ) invamount,
             ROUND( sum( t.f_grossweightblc / 1000 ), 2 ) stock
         FROM
@@ -220,35 +217,47 @@
             LEFT JOIN t_whgenleg t ON t.f_corpid = s.f_corpid
         WHERE
             s.f_dc = 'D'
-            <if test='fBsdateList != null and fBsdateList[0] != null and fBsdateList[0]!= ""'>
-                and s.f_bsdate &gt;= #{fBsdateList[0]}
-            </if>
-            <if test='fBsdateList != null and fBsdateList[1] != null and fBsdateList[1]!= ""'>
-                and s.f_bsdate &lt;= #{fBsdateList[1]}
-            </if>
-            GROUP BY CONCAT( YEAR ( f_bsdate ), '-', MONTH ( f_bsdate )), s.f_corpid, c.f_name
+        <if test='fMonth != null and fMonth[0] != null and fMonth[0]!= ""'>
+            and s.f_bsdate &gt;= #{fMonth[0]}
+        </if>
+        <if test='fMonth != null and fMonth[1] != null and fMonth[1]!= ""'>
+            and s.f_bsdate &lt;= #{fMonth[1]}
+        </if>
+        GROUP BY
+            CONCAT(
+                YEAR ( f_bsdate ),
+            '-',
+            MONTH ( f_bsdate ))
     </select>
 
-    <select id="selectFleetExcel" parameterType="TWarehousebillsfees" resultType="com.ruoyi.finance.excel.FleetExcel">
+    <select id="selectFleetExcelList" parameterType="TWarehousebillsfees" resultType="com.ruoyi.finance.excel.FleetExcel">
         SELECT
+            #{createBy} userName,
             CONCAT(
             YEAR ( s.f_bsdate ),
             '-',
             MONTH ( s.f_bsdate )) feelMonth,
+            c.f_name corpName,
             sum( CASE WHEN s.f_feeid = 27 THEN s.f_amount ELSE 0 END ) ccf,
             sum( CASE WHEN s.f_feeid != 27 THEN s.f_amount ELSE 0 END ) fAmount,
-            sum( s.f_amount ) totalAmount
+            sum( s.f_amount ) totalAmount,
+            IF
+            ( f_invamount = 0, 'F', 'T' ) isInvoice,
+            sum( s.f_invamount ) invamount,
+            ROUND( sum( t.f_grossweightblc / 1000 ), 2 ) stock
         FROM
             t_warehousebillsfees s
             LEFT JOIN t_corps c ON s.f_corpid = c.f_id
+            LEFT JOIN t_whgenleg t ON t.f_corpid = s.f_corpid
         WHERE
             s.f_dc = 'D'
-            <if test='fBsdateList != null and fBsdateList[0] != null and fBsdateList[0]!= ""'>
-                and s.f_bsdate &gt;= #{fBsdateList[0]}
-            </if>
-            <if test='fBsdateList != null and fBsdateList[1] != null and fBsdateList[1]!= ""'>
-                and s.f_bsdate &lt;= #{fBsdateList[1]}
-            </if>
+        <if test='fMonth != null and fMonth[0] != null and fMonth[0]!= ""'>
+            and s.f_bsdate &gt;= #{fMonth[0]}
+        </if>
+        <if test='fMonth != null and fMonth[1] != null and fMonth[1]!= ""'>
+            and s.f_bsdate &lt;= #{fMonth[1]}
+        </if>
+            GROUP BY CONCAT( YEAR ( f_bsdate ), '-', MONTH ( f_bsdate )), s.f_corpid, c.f_name
     </select>
 
     <insert id="insertTWarehousebillsfees" parameterType="TWarehousebillsfees" useGeneratedKeys="true"