Browse Source

Merge remote-tracking branch 'origin/master'

lazhaoqian 4 years ago
parent
commit
09fd566cbd
40 changed files with 630 additions and 249 deletions
  1. 1 2
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/fleet/orderPlan/ftmsorderbillscarsController.java
  2. 0 14
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/fleet/orderPlan/ftmsorderbillsplansController.java
  3. 3 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/finance/TChargeController.java
  4. 3 1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/finance/TContrastController.java
  5. 3 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/finance/TPaymentController.java
  6. 2 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/PayableController.java
  7. 2 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/ProfitController.java
  8. 5 8
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/ReceivableController.java
  9. 6 6
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/TWarehousebillsitemsSummaryController.java
  10. 3 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/TWhgenlegController.java
  11. 30 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/AppletsController.java
  12. 3 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TStorageFeeCalculationController.java
  13. 1 1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TWarehouseGoodsTransferController.java
  14. 1 1
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TWarehouseOutStockController.java
  15. 51 12
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TWarehouseStockTransferController.java
  16. 9 0
      ruoyi-admin/src/main/resources/application.yml
  17. 5 0
      ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java
  18. 1 2
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/IftmsorderbillscarsService.java
  19. 0 8
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/IftmsorderbillsplansService.java
  20. 18 35
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillsServiceImpl.java
  21. 11 17
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillscarsServiceImpl.java
  22. 0 26
      ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillsplansServiceImpl.java
  23. 95 43
      ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/WechatService.java
  24. 10 3
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java
  25. 124 44
      ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
  26. 4 1
      ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
  27. 6 9
      ruoyi-warehouse/src/main/java/com/ruoyi/approvalFlow/service/impl/AuditPathsServiceImpl.java
  28. 2 1
      ruoyi-warehouse/src/main/java/com/ruoyi/finance/domain/TWareHouseFees.java
  29. 19 0
      ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/domain/TWhgenleg.java
  30. 1 0
      ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/mapper/TWhgenlegMapper.java
  31. 1 0
      ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/service/ITWhgenlegService.java
  32. 14 0
      ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/service/impl/TWhgenlegServiceImpl.java
  33. 24 0
      ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehouseBills.java
  34. 14 0
      ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehousebillsitems.java
  35. 2 0
      ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/BillnoSerialServiceImpl.java
  36. 46 7
      ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/TWarehouseBillsServiceImpl.java
  37. 1 0
      ruoyi-warehouse/src/main/resources/mapper/basicData/TWarehouseMapper.xml
  38. 16 1
      ruoyi-warehouse/src/main/resources/mapper/finance/TFeeMapper.xml
  39. 74 4
      ruoyi-warehouse/src/main/resources/mapper/reportManagement/TWhgenlegMapper.xml
  40. 19 3
      ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsMapper.xml

+ 1 - 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/fleet/orderPlan/ftmsorderbillscarsController.java

@@ -205,8 +205,7 @@ public class ftmsorderbillscarsController extends BaseController {
         if (StringUtils.isNull(id)) {
             return AjaxResult.error("未找到查询条件,请确认");
         }
-        LoginUser loginUser = SpringUtils.getBean(TokenService.class).getLoginUser(ServletUtils.getRequest());
-        return ftmsorderbillscarsService.vehicleOperationChanges(id, loginUser);
+        return ftmsorderbillscarsService.vehicleOperationChanges(id);
     }
 
     /**

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

@@ -171,20 +171,6 @@ public class ftmsorderbillsplansController extends BaseController {
     }
 
     /**
-     * 计划取消/撤回
-     */
-    @PreAuthorize("@ss.hasPermi('fleet:ftmsorderbillsplans:edit')")
-    @Log(title = "订单调度", businessType = BusinessType.INSERT)
-    @PostMapping(value = "/scheduleCancel")
-    public AjaxResult scheduleCancel(@RequestBody Ftmsorderbills ftmsorderbills) {
-        if (StringUtils.isNull(ftmsorderbills) || StringUtils.isNull(ftmsorderbills.getId())) {
-            return AjaxResult.error("未找到计划主表数据,请确认");
-        }
-        LoginUser loginUser = SpringUtils.getBean(TokenService.class).getLoginUser(ServletUtils.getRequest());
-        return ftmsorderbillsplansService.scheduleCancel(ftmsorderbills, loginUser);
-    }
-
-    /**
      * 保存订单调度
      */
     @PreAuthorize("@ss.hasPermi('fleet:ftmsorderbillsplans:add')")

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

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.warehouse.finance;
 
+import com.ruoyi.common.annotation.DataScope;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.annotation.RepeatSubmit;
 import com.ruoyi.common.core.controller.BaseController;
@@ -37,6 +38,7 @@ public class TChargeController extends BaseController {
      * 查询财务数据主列表
      */
     @PreAuthorize("@ss.hasPermi('finance:charge:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo list(TFee tFee) {
         tFee.setfBilltype("SF");
@@ -50,6 +52,7 @@ public class TChargeController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('finance:charge:export')")
     @Log(title = "财务数据主", businessType = BusinessType.EXPORT)
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     public AjaxResult export(TFee tFee) {
         List<TFee> list = tFeeService.selectTFeeList(tFee);

+ 3 - 1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/finance/TContrastController.java

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.warehouse.finance;
 
+import com.ruoyi.common.annotation.DataScope;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.annotation.RepeatSubmit;
 import com.ruoyi.common.core.controller.BaseController;
@@ -15,7 +16,6 @@ import com.ruoyi.finance.domain.TWareHouseFees;
 import com.ruoyi.finance.service.ITFeeService;
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.warehouseBusiness.domain.TWareHouseExcelItem;
-import com.ruoyi.warehouseBusiness.domain.TWareHouseExcelItems;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
@@ -39,6 +39,7 @@ public class TContrastController extends BaseController {
      * 查询财务数据主列表
      */
     @PreAuthorize("@ss.hasPermi('finance:contrast:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo list(TFee tFee) {
         tFee.setfBilltype("DZ");
@@ -52,6 +53,7 @@ public class TContrastController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('finance:contrast:export')")
     @Log(title = "财务数据主", businessType = BusinessType.EXPORT)
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     public AjaxResult export(TFee tFee) {
         List<TFee> list = tFeeService.selectTFeeList(tFee);

+ 3 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/finance/TPaymentController.java

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.warehouse.finance;
 
+import com.ruoyi.common.annotation.DataScope;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.annotation.RepeatSubmit;
 import com.ruoyi.common.core.controller.BaseController;
@@ -37,6 +38,7 @@ public class TPaymentController extends BaseController {
      * 查询财务数据主列表
      */
     @PreAuthorize("@ss.hasPermi('finance:payment:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo list(TFee tFee) {
         tFee.setfBilltype("FF");
@@ -50,6 +52,7 @@ public class TPaymentController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('finance:payment:export')")
     @Log(title = "财务数据主", businessType = BusinessType.EXPORT)
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     public AjaxResult export(TFee tFee) {
         List<TFee> list = tFeeService.selectTFeeList(tFee);

+ 2 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/PayableController.java

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.warehouse.reportManagement;
 
+import com.ruoyi.common.annotation.DataScope;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.finance.domain.TWareHouseFees;
@@ -30,6 +31,7 @@ public class PayableController extends BaseController {
      * 查询应付总账列表
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:payable:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo chargeList(TWareHouseFees tWareHouseFees) {
         startPage();

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

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.warehouse.reportManagement;
 
+import com.ruoyi.common.annotation.DataScope;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.finance.domain.TWareHouseFees;
@@ -30,6 +31,7 @@ public class ProfitController extends BaseController {
      * 查询应收总账列表
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:profit:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo chargeList(TWareHouseFees tWareHouseFees) {
         startPage();

+ 5 - 8
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/ReceivableController.java

@@ -1,19 +1,15 @@
 package com.ruoyi.web.controller.warehouse.reportManagement;
 
-import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.annotation.DataScope;
 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.finance.domain.TWareHouseFees;
 import com.ruoyi.finance.service.ITFeeService;
-import com.ruoyi.reportManagement.domain.TWhgenleg;
-import com.ruoyi.reportManagement.service.ITWhgenlegService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
 import java.util.Map;
@@ -35,6 +31,7 @@ public class ReceivableController extends BaseController {
      * 查询应收总账列表
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:receivable:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo chargeList(TWareHouseFees tWareHouseFees) {
         startPage();

+ 6 - 6
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/TWarehousebillsitemsSummaryController.java

@@ -1,21 +1,19 @@
 package com.ruoyi.web.controller.warehouse.reportManagement;
 
+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.reportManagement.domain.TWareHouseItemsExcel;
-import com.ruoyi.reportManagement.domain.TWhgenleg;
-import com.ruoyi.reportManagement.service.ITWhgenlegService;
-import com.ruoyi.warehouseBusiness.domain.TWareHouseExcelItem;
 import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
 import com.ruoyi.warehouseBusiness.service.ITWarehouseBillsService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
 import java.util.List;
 import java.util.Map;
@@ -35,6 +33,7 @@ public class TWarehousebillsitemsSummaryController extends BaseController {
     /**
      * 查询库存总账列表
      */
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo list(TWarehouseBills tWarehouseBills) {
         startPage();
@@ -46,6 +45,7 @@ public class TWarehousebillsitemsSummaryController extends BaseController {
      * 导出库存总账列表
      */
     @Log(title = "出入库统计", businessType = BusinessType.EXPORT)
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     public AjaxResult export(TWarehouseBills tWarehouseBills) {
         List<TWareHouseItemsExcel> list = itWarehouseBillsService.selectTWarehousebillsItemsList(tWarehouseBills);

+ 3 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/reportManagement/TWhgenlegController.java

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.warehouse.reportManagement;
 
+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;
@@ -32,6 +33,7 @@ public class TWhgenlegController extends BaseController {
      * 查询库存总账列表
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:whgenleg:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo list(TWhgenleg tWhgenleg) {
         startPage();
@@ -44,6 +46,7 @@ public class TWhgenlegController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:whgenleg:export')")
     @Log(title = "库存总账", businessType = BusinessType.EXPORT)
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     public AjaxResult export(TWhgenleg tWhgenleg) {
         List<TWhgenleg> list = tWhgenlegService.selectTWhgenlegList(tWhgenleg);

+ 30 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/AppletsController.java

@@ -2,15 +2,19 @@ package com.ruoyi.web.controller.warehouse.warehouseBusiness;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.ruoyi.basicData.service.ITWarehouseService;
 import com.ruoyi.common.annotation.RepeatSubmit;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.domain.entity.TWarehouse;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.utils.ServletUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.spring.SpringUtils;
 import com.ruoyi.framework.web.service.TokenService;
+import com.ruoyi.reportManagement.domain.TWhgenleg;
+import com.ruoyi.reportManagement.service.ITWhgenlegService;
 import com.ruoyi.warehouseBusiness.domain.TWarehousebillsitems;
 import com.ruoyi.warehouseBusiness.service.ITWarehouseBillsService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -31,6 +35,12 @@ public class AppletsController extends BaseController {
     @Autowired
     private ITWarehouseBillsService itWarehouseBillsService;
 
+    @Autowired
+    private ITWarehouseService  itWarehouseService;
+
+    @Autowired
+    private ITWhgenlegService tWhgenlegService;
+
     /**
      *  待办数
      */
@@ -108,6 +118,26 @@ public class AppletsController extends BaseController {
         return itWarehouseBillsService.addCreditItems(tEnclosure,warehousebillsitems,billsType,loginUser);
     }
 
+    /**
+     *  仓库
+     */
+    @GetMapping("/warehouse")
+    public TableDataInfo warehouse() {
+        startPage();
+        TWarehouse tWarehouse =new TWarehouse();
+        tWarehouse.setParentId(100L);
+        List<TWarehouse> list = itWarehouseService.selectTWarehouseList(tWarehouse);
+        return getDataTable(list);
+    }
 
+    /**
+     * 查询库存总账列表
+     */
+    @GetMapping("/tWhgenlegList")
+    public TableDataInfo warehouselist(TWhgenleg tWhgenleg) {
+        startPage();
+        List<Map<String, Object>> list = tWhgenlegService.selectWhgenlegList(tWhgenleg);
+        return getDataTable(list);
+    }
 
 }

+ 3 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TStorageFeeCalculationController.java

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.warehouse.warehouseBusiness;
 
+import com.ruoyi.common.annotation.DataScope;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.annotation.RepeatSubmit;
 import com.ruoyi.common.core.controller.BaseController;
@@ -39,6 +40,7 @@ public class TStorageFeeCalculationController extends BaseController {
      * 查询入库详情主表列表
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:storageFeeCalculation:list')")
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/list")
     public TableDataInfo list(TWarehouseBills tWarehouseBills) {
         startPage();
@@ -66,6 +68,7 @@ public class TStorageFeeCalculationController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:storageFeeCalculation:export')")
     @Log(title = "详情主表", businessType = BusinessType.EXPORT)
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     public AjaxResult export(TWarehouseBills tWarehouseBills) {
         tWarehouseBills.setfBilltype("JSCCF");

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

@@ -15,7 +15,6 @@ import com.ruoyi.common.utils.spring.SpringUtils;
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.warehouseBusiness.domain.TWarehouseBills;
 import com.ruoyi.warehouseBusiness.service.ITWarehouseBillsService;
-import org.aspectj.weaver.loadtime.Aj;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
@@ -63,6 +62,7 @@ public class TWarehouseGoodsTransferController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:goodsTransfer:export')")
     @Log(title = "详情主表", businessType = BusinessType.EXPORT)
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     @RepeatSubmit
     public AjaxResult export(TWarehouseBills tWarehouseBills) {

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

@@ -87,7 +87,7 @@ public class TWarehouseOutStockController extends BaseController {
      */
     @PreAuthorize("@ss.hasPermi('warehouseBusiness:outStock:export')")
     @Log(title = "详情主表", businessType = BusinessType.EXPORT)
-    @RepeatSubmit
+    @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     public AjaxResult export(TWarehouseBills tWarehouseBills) {
         tWarehouseBills.setfBilltype("SJCK");

+ 51 - 12
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/warehouseBusiness/TWarehouseStockTransferController.java

@@ -51,7 +51,11 @@ public class TWarehouseStockTransferController extends BaseController {
     @GetMapping("/list")
     public TableDataInfo list(TWarehouseBills tWarehouseBills) {
         startPage();
-        tWarehouseBills.setfBilltype("CKDB");
+        if(tWarehouseBills.getType().equals("1")){
+            tWarehouseBills.setfBilltype("CKDB");
+        }else{
+            tWarehouseBills.setfBilltype("HWTG");
+        }
         List<Map<String, Object>> list = itWarehouseBillsService.selectWarehouseBusinessList(tWarehouseBills);
         return getDataTable(list);
     }
@@ -65,7 +69,11 @@ public class TWarehouseStockTransferController extends BaseController {
     @DataScope(deptAlias = "d", userAlias = "u")
     @GetMapping("/export")
     public AjaxResult export(TWarehouseBills tWarehouseBills) {
-        tWarehouseBills.setfBilltype("CKDB");
+        if(tWarehouseBills.getType().equals("1")){
+            tWarehouseBills.setfBilltype("CKDB");
+        }else{
+            tWarehouseBills.setfBilltype("HWTG");
+        }
         List<TWarehouseBills> list = itWarehouseBillsService.selectTWarehousebillsList(tWarehouseBills);
         ExcelUtil<TWarehouseBills> util = new ExcelUtil<TWarehouseBills>(TWarehouseBills.class);
         return util.exportExcel(list, "warehousebills");
@@ -92,8 +100,14 @@ public class TWarehouseStockTransferController extends BaseController {
                           @RequestParam("tEnclosure") String tEnclosure,
                           @RequestParam("warehousebillsfeesCr") String warehousebillsfeesCr,
                           @RequestParam("warehousebillsfeesDr") String warehousebillsfeesDr,
-                          @RequestParam("warehousebillsitems") String warehousebillsitems) {
-        String billsType = "CKDB";
+                          @RequestParam("warehousebillsitems") String warehousebillsitems,
+                          @RequestParam("type") String type) {
+        String billsType =null;
+        if(type.equals("1")){
+             billsType = "CKDB";
+        }else{
+             billsType = "HWTG";
+        }
         if (StringUtils.isNull(warehouseBills) || "{}".equals(warehouseBills)) {
             return AjaxResult.error("未找到仓库主表数据,请确认");
         }
@@ -115,13 +129,20 @@ public class TWarehouseStockTransferController extends BaseController {
                                       @RequestParam("tEnclosure") String tEnclosure,
                                       @RequestParam("warehousebillsfeesCr") String warehousebillsfeesCr,
                                       @RequestParam("warehousebillsfeesDr") String warehousebillsfeesDr,
-                                      @RequestParam("warehousebillsitems") String warehousebillsitems
+                                      @RequestParam("warehousebillsitems") String warehousebillsitems,
+                                      @RequestParam("type") String type
     ) {
+        String billtystatus =null;
+        if(type.equals("1")){
+            billtystatus = "DB";
+        }else{
+            billtystatus = "TG";
+        }
         Long billsType = 20L;
         // 获取当前的用户
         LoginUser loginUser = SpringUtils.getBean(TokenService.class).getLoginUser(ServletUtils.getRequest());
         return itWarehouseBillsService.waitWarehousing(warehouseBills, warehousebillsitems, tEnclosure,
-                warehousebillsfeesCr, warehousebillsfeesDr, loginUser, billsType, "DB");
+                warehousebillsfeesCr, warehousebillsfeesDr, loginUser, billsType, billtystatus);
     }
 
     /**
@@ -156,8 +177,14 @@ public class TWarehouseStockTransferController extends BaseController {
                                           @RequestParam("tEnclosure") String tEnclosure,
                                           @RequestParam("warehousebillsfeesCr") String warehousebillsfeesCr,
                                           @RequestParam("warehousebillsfeesDr") String warehousebillsfeesDr,
-                                          @RequestParam("warehousebillsitems") String warehousebillsitems) {
-        String billsType = "CKDB";
+                                          @RequestParam("warehousebillsitems") String warehousebillsitems,
+                                          @RequestParam("type") String type) {
+            String billsType =null;
+            if(type.equals("1")){
+                billsType = "CKDB";
+            }else{
+                billsType = "HWTG";
+            }
         if (StringUtils.isNull(warehouseBills) || "{}".equals(warehouseBills)) {
             return AjaxResult.error("未找到仓库主表数据,请确认");
         }
@@ -244,8 +271,14 @@ public class TWarehouseStockTransferController extends BaseController {
                                    @RequestParam("tEnclosure") String tEnclosure,
                                    @RequestParam("warehousebillsfeesCr") String warehousebillsfeesCr,
                                    @RequestParam("warehousebillsfeesDr") String warehousebillsfeesDr,
-                                   @RequestParam("warehousebillsitems") String warehousebillsitems) {
-        String billsType = "CKDBRevoke";
+                                   @RequestParam("warehousebillsitems") String warehousebillsitems,
+                                   @RequestParam("type") String type) {
+        String billsType =null;
+        if(type.equals("1")){
+             billsType = "CKDBRevoke";
+        }else{
+             billsType = "HWTGRevoke";
+        }
         // 获取当前的用户
         LoginUser loginUser = SpringUtils.getBean(TokenService.class).getLoginUser(ServletUtils.getRequest());
         return itWarehouseBillsService.revokeTWarehousebillsById1(warehouseBills, warehousebillsitems,
@@ -263,8 +296,14 @@ public class TWarehouseStockTransferController extends BaseController {
                                 @RequestParam("tEnclosure") String tEnclosure,
                                 @RequestParam("warehousebillsfeesCr") String warehousebillsfeesCr,
                                 @RequestParam("warehousebillsfeesDr") String warehousebillsfeesDr,
-                                @RequestParam("warehousebillsitems") String warehousebillsitems) {
-        String billsType = "CKDB";
+                                @RequestParam("warehousebillsitems") String warehousebillsitems,
+                                @RequestParam("type") String type) {
+            String billsType =null;
+            if(type.equals("1")){
+                billsType = "CKDB";
+            }else{
+                billsType = "HWTG";
+            }
         if (StringUtils.isNull(warehouseBills) || "{}".equals(warehouseBills)) {
             return AjaxResult.error("未找到主表信息,请确认");
         }

+ 9 - 0
ruoyi-admin/src/main/resources/application.yml

@@ -112,6 +112,15 @@ wechatProgram:
     # 获取用户信息
     sessionUrl: https://api.weixin.qq.com/sns/jscode2session
 
+  # 微信小程序相关配置
+warehouseWechatProgram:
+  # 微信小程序应用id
+  appId: wx114cb497cc0fb8de
+  # 微信小程序密钥
+  secret: b85591e050a7f38e71e4becbc79e0386
+  # 获取用户信息
+  sessionUrl: https://api.weixin.qq.com/sns/jscode2session
+
 # token配置
 token:
     # 令牌自定义标识

+ 5 - 0
ruoyi-common/src/main/java/com/ruoyi/common/core/domain/model/LoginBody.java

@@ -43,4 +43,9 @@ public class LoginBody {
      * 唯一标识
      */
     private String uuid = "";
+
+    /**
+     *  区分仓储(00)、车队
+     */
+    private String usertype;
 }

+ 1 - 2
ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/IftmsorderbillscarsService.java

@@ -118,10 +118,9 @@ public interface IftmsorderbillscarsService {
     /**
      *  车辆安排 变更
      * @param id        安排id
-     * @param loginUser 用户
      * @return  结果
      */
-    public AjaxResult vehicleOperationChanges(Long id, LoginUser loginUser);
+    public AjaxResult vehicleOperationChanges(Long id);
 
     /**
      *  车辆派车主表变更

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

@@ -105,14 +105,6 @@ public interface IftmsorderbillsplansService {
     AjaxResult schedulingRevoke(Ftmsorderbillsplans plans, String type, LoginUser loginUser);
 
     /**
-     *  业务调度撤销
-     * @param ftmsorderbills    计划数据
-     * @param loginUser 操作人
-     * @return  结果
-     */
-    AjaxResult scheduleCancel(Ftmsorderbills ftmsorderbills, LoginUser loginUser);
-
-    /**
      *  调度变更提交
      * @param tmsorder  机会主表
      * @param plans     调度

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

@@ -236,13 +236,11 @@ public class FtmsorderbillsServiceImpl implements IftmsorderbillsService {
         if (StringUtils.isNull(tmsorderbills.getBillStatus())) {
             return AjaxResult.error("未找到单据状态,请确认");
         }
-        if (tmsorderbills.getBillStatus() == 40) {
+        if (tmsorderbills.getBillStatus() == 6L) {
             if (StringUtils.isNull(scntrs) || "[]".equals(scntrs)) {
                 return AjaxResult.error("未找到计划货量数据,请确认");
             }
             tmsorderbills.setPostDate(new Date());
-        }
-        if (tmsorderbills.getBillStatus() == 40) {
             String status = dataValidation(scntrs, attachs, fees, plans, null);
             if (StringUtils.isNotEmpty(status)) {
                 return AjaxResult.error(status);
@@ -279,11 +277,6 @@ public class FtmsorderbillsServiceImpl implements IftmsorderbillsService {
         ftmsorderbillscntrsMapper.deleteftmsorderbillscntrsByPId(pId);
         ftmsorderbillsplansMapper.deleteftmsorderbillsplansByOrgId(pId);
         ftmsorderbillsattachsMapper.deleteftmsorderbillsattachsByPId(pId);
-        if (tmsorderbills.getBillStatus() == 40) {
-            tmsorderbills.setBillStatus(6L);
-        } else {
-            tmsorderbills.setBillStatus(2L);
-        }
         AjaxResult ajaxResult = updateItem(pId, tmsorderbills.getBillStatus(), scntrs, attachs, fees, plans, loginUser);
         String code = ajaxResult.get("code").toString();
         if ("500".equals(code)) {
@@ -355,29 +348,19 @@ public class FtmsorderbillsServiceImpl implements IftmsorderbillsService {
     public AjaxResult planStatusChange(Ftmsorderbills ftmsorderbills) {
         Ftmsorderbills tmsorderbills = ftmsorderbillsMapper.selectftmsorderbillsById(ftmsorderbills.getId());
         boolean billStatus = false;
-        if (ftmsorderbills.getBillType() == 1000) {
+        if (ftmsorderbills.getActId() == 1000) {
             // 计划变更
             billStatus = true;
         }
-        if (billStatus && tmsorderbills.getBillStatus() == 20) {
+        if (billStatus && tmsorderbills.getBillStatus() == 3L) {
+            return AjaxResult.error("计划单据已撤销无法变更");
+        } else if (billStatus && tmsorderbills.getBillStatus() < 6L) {
             return AjaxResult.error("计划单据未提交无法变更");
-        } else if (billStatus && tmsorderbills.getBillStatus() == 30) {
-            return AjaxResult.error("计划单据已被撤销无法变更");
-        } else if (billStatus && tmsorderbills.getBillStatus() == 50) {
-            return AjaxResult.error("计划单据已在变更中");
         }
-        if (!billStatus && tmsorderbills.getBillStatus() == 60) {
-            return AjaxResult.error("调度单据未提交无法变更");
-        } else if (!billStatus && tmsorderbills.getBillStatus() == 70) {
+        if (!billStatus && tmsorderbills.getBillStatus() == 30L) {
             return AjaxResult.error("调度单据已被撤销无法变更");
-        } else if (!billStatus && tmsorderbills.getBillStatus() == 90) {
-            return AjaxResult.error("调度单据已在变更中");
-        }
-        Ftmsorderbills tmsorder = new Ftmsorderbills();
-        tmsorder.setId(ftmsorderbills.getId());
-        tmsorder.setBillStatus(90L);
-        if (ftmsorderbillsMapper.updateftmsorderbills(tmsorder) <= 0) {
-            return AjaxResult.error("更新计划信息失败,若多次出现请联系管理员");
+        } else if (billStatus && tmsorderbills.getBillStatus() < 60L) {
+            return AjaxResult.error("调度单据未提交无法变更");
         }
         return AjaxResult.success();
     }
@@ -398,7 +381,7 @@ public class FtmsorderbillsServiceImpl implements IftmsorderbillsService {
     public AjaxResult insertPlanChange(String tmsorder, String scntrs, String attachs, String fees, String plans, LoginUser loginUser) {
         Ftmsorderbills tmsorderbills = JSONArray.parseObject(tmsorder, Ftmsorderbills.class);
         long pId = tmsorderbills.getId();
-        tmsorderbills.setBillStatus(40L);
+        tmsorderbills.setBillStatus(6L);
         Ftmsorderbills ftmsorderbills = ftmsorderbillsMapper.selectftmsorderbillsById(tmsorderbills.getId());
         ProjectBillsHistory projectBillsHistory = new ProjectBillsHistory();
         projectBillsHistory.setProjectId(pId);
@@ -643,18 +626,18 @@ public class FtmsorderbillsServiceImpl implements IftmsorderbillsService {
     public AjaxResult planCancel(Ftmsorderbills ftmsorderbills, LoginUser loginUser) {
         Ftmsorderbills sorderbills = ftmsorderbillsMapper.selectftmsorderbillsById(ftmsorderbills.getId());
         boolean billsStatus = false;
-        if (sorderbills.getBillStatus() == 1000) {
+        if (sorderbills.getActId() == 1000) {
             // 计划下达
             billsStatus = true;
         }
-        if (billsStatus && sorderbills.getBillStatus() == 30) {
-            return AjaxResult.error("该计划已撤销");
-        } else if (!billsStatus && sorderbills.getBillStatus() == 70) {
-            return AjaxResult.error("该调度已撤销");
+        if (billsStatus && sorderbills.getBillStatus() == 3L) {
+            return AjaxResult.error("该数据计划已撤销");
+        } else if (!billsStatus && sorderbills.getBillStatus() == 30L) {
+            return AjaxResult.error("该数据调度已撤销");
         }
-        if (billsStatus && sorderbills.getBillStatus() < 40) {
+        if (billsStatus && sorderbills.getBillStatus() < 6L) {
             return AjaxResult.error("该计划未提交,不可撤销");
-        } else if (!billsStatus && sorderbills.getBillStatus() < 80) {
+        } else if (!billsStatus && sorderbills.getBillStatus() < 60L) {
             return AjaxResult.error("该调度未提交,不可撤销");
         }
         Ftmsorderbillsplans tmsorderbillsplans = new Ftmsorderbillsplans();
@@ -663,9 +646,9 @@ public class FtmsorderbillsServiceImpl implements IftmsorderbillsService {
             return AjaxResult.error("该计划已进行调度安排,不可撤销");
         }
         if (billsStatus) {
-            ftmsorderbills.setBillStatus(30L);
+            ftmsorderbills.setBillStatus(3L);
         } else {
-            ftmsorderbills.setBillStatus(70L);
+            ftmsorderbills.setBillStatus(30L);
         }
         if (ftmsorderbillsMapper.updateftmsorderbills(ftmsorderbills) <= 0) {
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();

+ 11 - 17
ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillscarsServiceImpl.java

@@ -327,28 +327,28 @@ public class FtmsorderbillscarsServiceImpl implements IftmsorderbillscarsService
             if (StringUtils.isNull(tmsorderbillscars.getWaybillDate())) {
                 return AjaxResult.error("未找到还卸柜时间");
             }
-            tmsorderbillscars.setOrderStatus(60L);
+            tmsorderbillscars.setOrderStatus(80L);
         } else if ("unLoadDate".equals(operationType)) {
             // 还卸柜提交
             orderStatus = 1060L;
             if (StringUtils.isNull(tmsorderbillscars.getUnLoadDate())) {
                 return AjaxResult.error("未找到还卸柜时间");
             }
-            tmsorderbillscars.setOrderStatus(50L);
+            tmsorderbillscars.setOrderStatus(60L);
         } else if ("mdLoadDate".equals(operationType)) {
             // 装卸货提交
             orderStatus = 1050L;
             if (StringUtils.isNull(tmsorderbillscars.getMdLoadDate())) {
                 return AjaxResult.error("未找到装卸货时间");
             }
-            tmsorderbillscars.setOrderStatus(40L);
+            tmsorderbillscars.setOrderStatus(50L);
         } else if ("loadDate".equals(operationType)) {
             // 提箱提交
             orderStatus = 1040L;
             if (StringUtils.isNull(tmsorderbillscars.getLoadDate())) {
                 return AjaxResult.error("未找到提箱时间");
             }
-            tmsorderbillscars.setOrderStatus(30L);
+            tmsorderbillscars.setOrderStatus(40L);
         } else if ("acceptDate".equals(operationType)) {
             // 接单提交
             orderStatus = 1030L;
@@ -619,29 +619,23 @@ public class FtmsorderbillscarsServiceImpl implements IftmsorderbillscarsService
 
 
     /**
-     * 单条车辆安排 变更
+     * 单条车辆安排 是否允许变更
      *
      * @param id        安排id
-     * @param loginUser 用户
      * @return 结果
      */
     @Override
     @Transactional
-    public AjaxResult vehicleOperationChanges(Long id, LoginUser loginUser) {
+    public AjaxResult vehicleOperationChanges(Long id) {
         Ftmsorderbillscars ftmsorderbillscars = ftmsorderbillscarsMapper.selectftmsorderbillscarsById(id);
         if (StringUtils.isNull(ftmsorderbillscars)) {
             return AjaxResult.error("未找到车辆信息,请确认");
         }
-        if (ftmsorderbillscars.getBillStatus() != 6) {
-            log.info("车辆安排信息异常:" + ftmsorderbillscars.getBillStatus());
-            return AjaxResult.error("车辆安排信息异常,请确认");
-        }
-        ftmsorderbillscars.setBillStatus(5L);
-        ftmsorderbillscars.setUpdateTime(new Date());
-        ftmsorderbillscars.setUpdateBy(loginUser.getUsername());
-        if (ftmsorderbillscarsMapper.updateftmsorderbillscars(ftmsorderbillscars) <= 0) {
-            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-            return AjaxResult.error("更新车辆安排变更状态失败,若多次失败请联系管理员");
+        Long billStatus = ftmsorderbillscars.getBillStatus();
+        if (billStatus == 3L) {
+            return AjaxResult.error("车辆安排信息已撤销无法变更");
+        } else if (billStatus < 6) {
+            return AjaxResult.error("车辆安排信息未提交无法变更");
         }
         return AjaxResult.success();
     }

+ 0 - 26
ruoyi-fleet/src/main/java/com/ruoyi/orderPlan/service/impl/FtmsorderbillsplansServiceImpl.java

@@ -154,13 +154,6 @@ public class FtmsorderbillsplansServiceImpl implements IftmsorderbillsplansServi
         if (ftmsorderbillsplans.getBillStatus() > 6) {
             return AjaxResult.error("该数据已在车队派车操作无法变更");
         }
-        ftmsorderbillsplans.setBillStatus(70L);
-        ftmsorderbillsplans.setUpdateTime(new Date());
-        ftmsorderbillsplans.setUpdateBy(loginUser.getUsername());
-        if (ftmsorderbillsplansMapper.updateftmsorderbillsplans(ftmsorderbillsplans) <= 0) {
-            TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
-            return AjaxResult.error("更新调度安排变更状态失败,若多次失败请联系管理员");
-        }
         return AjaxResult.success();
     }
 
@@ -656,23 +649,4 @@ public class FtmsorderbillsplansServiceImpl implements IftmsorderbillsplansServi
         return AjaxResult.success();
     }
 
-    /**
-     * 业务调度撤销
-     *
-     * @param ftmsorderbills 计划数据
-     * @param loginUser      操作人
-     * @return 结果
-     */
-    @Override
-    @Transactional
-    public AjaxResult scheduleCancel(Ftmsorderbills ftmsorderbills, LoginUser loginUser) {
-        ftmsorderbills.setBillStatus(60L);
-        ftmsorderbills.setUpdateTime(new Date());
-        ftmsorderbills.setUpdateBy(loginUser.getUsername());
-        if (ftmsorderbillsMapper.updateftmsorderbills(ftmsorderbills) <= 0) {
-            return AjaxResult.error("更新调度计划失败,若多次失败请联系管理员");
-        }
-        return AjaxResult.success();
-    }
-
 }

+ 95 - 43
ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/WechatService.java

@@ -1,7 +1,7 @@
 package com.ruoyi.framework.web.service;
 
-import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONException;
+import com.alibaba.fastjson.JSONObject;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.model.LoginBody;
@@ -11,7 +11,6 @@ import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.wechat.AESUtils;
 import com.ruoyi.common.utils.wechat.AccessTokenUtils;
 import com.ruoyi.system.service.impl.SysUserServiceImpl;
-import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
 import okhttp3.*;
 import org.apache.commons.codec.binary.Base64;
@@ -23,7 +22,6 @@ import org.springframework.stereotype.Component;
 import javax.annotation.Resource;
 import java.io.UnsupportedEncodingException;
 import java.security.InvalidAlgorithmParameterException;
-import java.util.Collection;
 import java.util.Objects;
 
 /**
@@ -61,57 +59,111 @@ public class WechatService {
      * @return 结果
      */
     public AjaxResult login(LoginBody loginBody) {
-        if (StringUtils.isNotEmpty(loginBody.getToken())) {
-            // 仅仅获取token
-            SysUser sysUser = sysUserService.selectUserByPhone(loginBody);
-            if (StringUtils.isNull(sysUser)) {
-                return AjaxResult.error("未找到用户信息,请确认");
+        if(StringUtils.isNotEmpty(loginBody.getUsertype()) && loginBody.getUsertype().equals("00")){
+            if (StringUtils.isNotEmpty(loginBody.getToken())) {
+                // 仅仅获取token
+                SysUser sysUser = sysUserService.selectUserByPhone(loginBody,"00");
+                if (StringUtils.isNull(sysUser)) {
+                    return AjaxResult.error("未找到用户信息,请确认");
+                }
+                // 生成token
+                LoginUser loginUser = new LoginUser();
+                loginUser.setUser(sysUser);
+                String token = tokenService.wechatCreateToken(loginUser);
+                if (StringUtils.isEmpty(token)) {
+                    return AjaxResult.error("生成token失败");
+                }
+                LoginBody body = new LoginBody();
+                body.setToken(token);
+                body.setPhonenumber(sysUser.getPhonenumber());
+                return AjaxResult.success(body);
+            }
+            // 获取openId、sessionKey
+            SysUser user = sysUserService.weChatProgramLogin(loginBody,"00");
+            if (StringUtils.isNull(user)) {
+                return AjaxResult.error("获取OpenId失败");
+            }
+            // 解密获取手机号
+            try {
+                AjaxResult ajaxResult = decodeUserInfo(loginBody.getPhonenumber(), loginBody.getIv(), user.getSessionKey());
+                String code = ajaxResult.get("code").toString();
+                if ("500".equals(code)) {
+                    return ajaxResult;
+                }
+                user.setPhonenumber(ajaxResult.get("data").toString());
+            } catch (UnsupportedEncodingException e) {
+                log.info("解析手机号UnsupportedEncodingException异常:" + e);
+                e.printStackTrace();
+            } catch (InvalidAlgorithmParameterException e) {
+                log.info("解析手机号InvalidAlgorithmParameterException异常:" + e);
+                e.printStackTrace();
+            }
+            LoginUser loginUser = sysUserService.warehouseCreateOrUpdateUser(user);
+            if (StringUtils.isNull(loginUser)) {
+                return AjaxResult.error("未找到用户信息");
             }
             // 生成token
-            LoginUser loginUser = new LoginUser();
-            loginUser.setUser(sysUser);
             String token = tokenService.wechatCreateToken(loginUser);
             if (StringUtils.isEmpty(token)) {
                 return AjaxResult.error("生成token失败");
             }
             LoginBody body = new LoginBody();
             body.setToken(token);
-            body.setPhonenumber(sysUser.getPhonenumber());
+            body.setPhonenumber(user.getPhonenumber());
             return AjaxResult.success(body);
-        }
-        // 获取openId、sessionKey
-        SysUser user = sysUserService.weChatProgramLogin(loginBody);
-        if (StringUtils.isNull(user)) {
-            return AjaxResult.error("获取OpenId失败");
-        }
-        // 解密获取手机号
-        try {
-            AjaxResult ajaxResult = decodeUserInfo(loginBody.getPhonenumber(), loginBody.getIv(), user.getSessionKey());
-            String code = ajaxResult.get("code").toString();
-            if ("500".equals(code)) {
-                return ajaxResult;
+        }else{
+            if (StringUtils.isNotEmpty(loginBody.getToken())) {
+                // 仅仅获取token
+                SysUser sysUser = sysUserService.selectUserByPhone(loginBody,"11");
+                if (StringUtils.isNull(sysUser)) {
+                    return AjaxResult.error("未找到用户信息,请确认");
+                }
+                // 生成token
+                LoginUser loginUser = new LoginUser();
+                loginUser.setUser(sysUser);
+                String token = tokenService.wechatCreateToken(loginUser);
+                if (StringUtils.isEmpty(token)) {
+                    return AjaxResult.error("生成token失败");
+                }
+                LoginBody body = new LoginBody();
+                body.setToken(token);
+                body.setPhonenumber(sysUser.getPhonenumber());
+                return AjaxResult.success(body);
             }
-            user.setPhonenumber(ajaxResult.get("data").toString());
-        } catch (UnsupportedEncodingException e) {
-            log.info("解析手机号UnsupportedEncodingException异常:" + e);
-            e.printStackTrace();
-        } catch (InvalidAlgorithmParameterException e) {
-            log.info("解析手机号InvalidAlgorithmParameterException异常:" + e);
-            e.printStackTrace();
-        }
-        LoginUser loginUser = sysUserService.createOrUpdateUser(user);
-        if (StringUtils.isNull(loginUser)) {
-            return AjaxResult.error("未找到用户信息");
-        }
-        // 生成token
-        String token = tokenService.wechatCreateToken(loginUser);
-        if (StringUtils.isEmpty(token)) {
-            return AjaxResult.error("生成token失败");
+            // 获取openId、sessionKey
+            SysUser user = sysUserService.weChatProgramLogin(loginBody,"11");
+            if (StringUtils.isNull(user)) {
+                return AjaxResult.error("获取OpenId失败");
+            }
+            // 解密获取手机号
+            try {
+                AjaxResult ajaxResult = decodeUserInfo(loginBody.getPhonenumber(), loginBody.getIv(), user.getSessionKey());
+                String code = ajaxResult.get("code").toString();
+                if ("500".equals(code)) {
+                    return ajaxResult;
+                }
+                user.setPhonenumber(ajaxResult.get("data").toString());
+            } catch (UnsupportedEncodingException e) {
+                log.info("解析手机号UnsupportedEncodingException异常:" + e);
+                e.printStackTrace();
+            } catch (InvalidAlgorithmParameterException e) {
+                log.info("解析手机号InvalidAlgorithmParameterException异常:" + e);
+                e.printStackTrace();
+            }
+            LoginUser loginUser = sysUserService.createOrUpdateUser(user);
+            if (StringUtils.isNull(loginUser)) {
+                return AjaxResult.error("未找到用户信息");
+            }
+            // 生成token
+            String token = tokenService.wechatCreateToken(loginUser);
+            if (StringUtils.isEmpty(token)) {
+                return AjaxResult.error("生成token失败");
+            }
+            LoginBody body = new LoginBody();
+            body.setToken(token);
+            body.setPhonenumber(user.getPhonenumber());
+            return AjaxResult.success(body);
         }
-        LoginBody body = new LoginBody();
-        body.setToken(token);
-        body.setPhonenumber(user.getPhonenumber());
-        return AjaxResult.success(body);
     }
 
 

+ 10 - 3
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysUserMapper.java

@@ -1,9 +1,9 @@
 package com.ruoyi.system.mapper;
 
-import java.util.List;
-
-import org.apache.ibatis.annotations.Param;
 import com.ruoyi.common.core.domain.entity.SysUser;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 /**
  * 用户表 数据层
@@ -143,4 +143,11 @@ public interface SysUserMapper {
      * @return  结果
      */
     public int updateCarsDriverNamePhone(Long userId);
+
+    /**
+     *  微信小程序根据手机号查询手机号是否存在
+     * @param phonenumber   手机号
+     * @return  结果
+     */
+    SysUser warehouseSelectUserByTel(String phonenumber);
 }

+ 124 - 44
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java

@@ -1,40 +1,36 @@
 package com.ruoyi.system.service.impl;
 
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
-import com.ruoyi.common.core.domain.model.LoginBody;
-import com.ruoyi.common.core.domain.model.LoginUser;
-import okhttp3.OkHttpClient;
-import okhttp3.Request;
-import okhttp3.Response;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 import com.ruoyi.common.annotation.DataScope;
 import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.core.domain.entity.SysRole;
 import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.domain.model.LoginBody;
+import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.exception.CustomException;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.system.domain.SysPost;
 import com.ruoyi.system.domain.SysUserPost;
 import com.ruoyi.system.domain.SysUserRole;
-import com.ruoyi.system.mapper.SysPostMapper;
-import com.ruoyi.system.mapper.SysRoleMapper;
-import com.ruoyi.system.mapper.SysUserMapper;
-import com.ruoyi.system.mapper.SysUserPostMapper;
-import com.ruoyi.system.mapper.SysUserRoleMapper;
+import com.ruoyi.system.mapper.*;
 import com.ruoyi.system.service.ISysConfigService;
 import com.ruoyi.system.service.ISysUserService;
+import okhttp3.OkHttpClient;
+import okhttp3.Request;
+import okhttp3.Response;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
 
 /**
  * 用户 业务层处理
@@ -76,6 +72,19 @@ public class SysUserServiceImpl implements ISysUserService {
     @Value("${wechatProgram.sessionUrl}")
     private String sessionUrl;
 
+
+    // 仓储微信小程序应用id
+    @Value("${warehouseWechatProgram.appId}")
+    private String warehouseAppId;
+
+    // 仓储微信小程序应用密钥
+    @Value("${warehouseWechatProgram.secret}")
+    private String warehouseSecret;
+
+    // 仓储微信小程序获取用户session路径
+    @Value("${warehouseWechatProgram.sessionUrl}")
+    private String warehouseSessionUrl;
+
     /**
      * 根据条件分页查询用户列表
      *
@@ -437,32 +446,58 @@ public class SysUserServiceImpl implements ISysUserService {
      * @return 结果
      */
     @Transactional
-    public SysUser weChatProgramLogin(LoginBody loginBody) {
+    public SysUser weChatProgramLogin(LoginBody loginBody,String usertype) {
         //声明客户端
         OkHttpClient client = new OkHttpClient();
         //构建Request
-        Request request = new Request.Builder().url(sessionUrl + "?appid=" + appId + "&secret=" + secret +
-                "&js_code=" + loginBody.getCode() + "&grant_type=authorization_code").build();
-        try {
-            Response response = client.newCall(request).execute();
-            //如果请求成功,解析数据
-            if (response.isSuccessful()) {
-                String body = response.body().string();
-                //得到一个JSON对象
-                JSONObject object = JSON.parseObject(body);
-                String openid = object.getString("openid");
-                String sessionKey = object.getString("session_key");
-                if (StringUtils.isNotEmpty(openid)) {
-                    log.info("通过code获取用户openId异常:" + object.toJSONString());
-                    SysUser sysUser = new SysUser();
-                    sysUser.setOpenId(openid);
-                    sysUser.setSessionKey(sessionKey);
-                    return sysUser;
+        if(usertype.equals("00")){
+            Request request = new Request.Builder().url(warehouseSessionUrl + "?appid=" + warehouseAppId + "&secret=" + warehouseSecret +
+                    "&js_code=" + loginBody.getCode() + "&grant_type=authorization_code").build();
+            try {
+                Response response = client.newCall(request).execute();
+                //如果请求成功,解析数据
+                if (response.isSuccessful()) {
+                    String body = response.body().string();
+                    //得到一个JSON对象
+                    JSONObject object = JSON.parseObject(body);
+                    String openid = object.getString("openid");
+                    String sessionKey = object.getString("session_key");
+                    if (StringUtils.isNotEmpty(openid)) {
+                        log.info("通过code获取用户openId异常:" + object.toJSONString());
+                        SysUser sysUser = new SysUser();
+                        sysUser.setOpenId(openid);
+                        sysUser.setSessionKey(sessionKey);
+                        return sysUser;
+                    }
+                }
+            } catch (IOException e) {
+                e.printStackTrace();
+                log.info("用户获取openId异常:" + e);
+            }
+        }else{
+            Request request = new Request.Builder().url(sessionUrl + "?appid=" + appId + "&secret=" + secret +
+                    "&js_code=" + loginBody.getCode() + "&grant_type=authorization_code").build();
+            try {
+                Response response = client.newCall(request).execute();
+                //如果请求成功,解析数据
+                if (response.isSuccessful()) {
+                    String body = response.body().string();
+                    //得到一个JSON对象
+                    JSONObject object = JSON.parseObject(body);
+                    String openid = object.getString("openid");
+                    String sessionKey = object.getString("session_key");
+                    if (StringUtils.isNotEmpty(openid)) {
+                        log.info("通过code获取用户openId异常:" + object.toJSONString());
+                        SysUser sysUser = new SysUser();
+                        sysUser.setOpenId(openid);
+                        sysUser.setSessionKey(sessionKey);
+                        return sysUser;
+                    }
                 }
+            } catch (IOException e) {
+                e.printStackTrace();
+                log.info("用户获取openId异常:" + e);
             }
-        } catch (IOException e) {
-            e.printStackTrace();
-            log.info("用户获取openId异常:" + e);
         }
         return null;
     }
@@ -547,7 +582,52 @@ public class SysUserServiceImpl implements ISysUserService {
      * @param loginBody 参数
      * @return  结果
      */
-    public SysUser selectUserByPhone(LoginBody loginBody) {
-        return userMapper.selectUserByTel(loginBody.getPhonenumber());
+    public SysUser selectUserByPhone(LoginBody loginBody ,String usertype) {
+        if(usertype.equals("00")){
+            return userMapper.warehouseSelectUserByTel(loginBody.getPhonenumber());
+        }else {
+            return userMapper.selectUserByTel(loginBody.getPhonenumber());
+        }
+
+    }
+
+    // 获取用户手机号更新对应信息
+    @Transactional
+    public LoginUser warehouseCreateOrUpdateUser(SysUser user) {
+        LoginUser loginUser = new LoginUser();
+        // 判断是否提前存储过
+        SysUser sysUser = userMapper.selectUserByopenId(user.getOpenId());
+        boolean related = false;
+        if (StringUtils.isNotNull(sysUser)) {
+            if ("1".equals(user.getStatus()) && "2".equals(user.getDelFlag())) {
+                // 提前关注公众号的信息
+                userMapper.deleteUserById(user.getUserId());
+                related = true;
+            }
+        }
+        // 判断是否创建了驾驶员
+        SysUser pUser = userMapper.warehouseSelectUserByTel(user.getPhonenumber());
+        if (StringUtils.isNotNull(pUser)) {
+            // 创建过
+            pUser.setOpenId(user.getOpenId());
+            if (related) {
+                pUser.setRelatedNo("T");
+            }
+            pUser.setSessionKey(user.getSessionKey());
+            userMapper.updateUser(pUser);
+            loginUser.setUser(pUser);
+        } else {
+            // 没有创建 则创建临时性用户数据
+            user.setNickName(" ");
+            user.setUserName(user.getPhonenumber());
+            user.setStatus("1");
+            user.setStatus("1");
+            user.setDelFlag("2");
+            user.setUserType("00");
+            user.setCreateTime(new Date());
+            userMapper.insertUser(user);
+            loginUser.setUser(user);
+        }
+        return loginUser;
     }
 }

+ 4 - 1
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -128,6 +128,9 @@
 	<select id="checkEmailUnique" parameterType="String" resultMap="SysUserResult">
 		select user_id, email from sys_user where email = #{email} limit 1
 	</select>
+	<select id="warehouseSelectUserByTel" resultType="com.ruoyi.common.core.domain.entity.SysUser">
+		SELECT user_id, user_name, nick_name, user_type, phonenumber, open_id, session_key, del_flag FROM sys_user WHERE phonenumber = #{phonenumber} and user_type = '00'
+	</select>
 
 	<insert id="insertUser" parameterType="SysUser" useGeneratedKeys="true" keyProperty="userId">
 		insert into sys_user(
@@ -216,7 +219,7 @@
  		update sys_user set password = #{password} where user_name = #{userName}
 	</update>
 
-    <update id="updateCarsDriverNamePhone" parameterType="int">
+    <update id="updateCarsDriverNamePhone" parameterType="Long">
 		UPDATE sys_user u
 		LEFT JOIN F_TMSORDERBILLSCARS car ON u.user_id = car.driver_user_id
 		SET car.driver_name = u.nick_name,

+ 6 - 9
ruoyi-warehouse/src/main/java/com/ruoyi/approvalFlow/service/impl/AuditPathsServiceImpl.java

@@ -1,16 +1,11 @@
 package com.ruoyi.approvalFlow.service.impl;
 
-import java.util.*;
-
-import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.ruoyi.approvalFlow.domain.*;
 import com.ruoyi.approvalFlow.mapper.*;
 import com.ruoyi.approvalFlow.service.IAuditPathsService;
 import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.StringUtils;
@@ -35,6 +30,8 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.interceptor.TransactionAspectSupport;
 
+import java.util.*;
+
 /**
  * 审批流配置主Service业务层处理
  *
@@ -253,7 +250,7 @@ public class AuditPathsServiceImpl implements IAuditPathsService {
      */
     @Override
     public AjaxResult projectEndQueryPendingVal(AuditItems auditItems) {
-        if (auditItems.getActId() >= 110 && auditItems.getActId() <= 150) {
+        if (auditItems.getActId() >= 110 && auditItems.getActId() <= 160) {
             List<Map<String, Object>> mapList = auditItemsMapper.selectWarehouseApprover(auditItems);
             return AjaxResult.success(mapList);
         } else if (auditItems.getActId() >= 210 && auditItems.getActId() <= 230) {
@@ -330,7 +327,7 @@ public class AuditPathsServiceImpl implements IAuditPathsService {
                         TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                         return AjaxResult.error("审批通过失败: 更新审批状态失败");
                     }
-                    if (auditItems.getActId() >= 110 && auditItems.getActId() <= 150) {
+                    if (auditItems.getActId() >= 110 && auditItems.getActId() <= 160) {
                         if ("T".equals(at.getIffinalItem())) {
                             fettle = 6L;
                         } else if ("F".equals(at.getIffinalItem())) {
@@ -425,7 +422,7 @@ public class AuditPathsServiceImpl implements IAuditPathsService {
     @Transactional
     public AjaxResult approvalRejected(AuditItems auditItems) {
         long fettle = 0L;
-        if (auditItems.getActId() >= 110 && auditItems.getActId() <= 150) {
+        if (auditItems.getActId() >= 110 && auditItems.getActId() <= 160) {
             fettle = 3L;
             tWarehouseBillsMapper.warehouseFollowUpdate(auditItems.getBillId(), fettle, auditItems.getAuditItem());
             tWarehousebillsfeesMapper.warehouseFeesFollowUpdate(auditItems.getBillId(), fettle, auditItems.getAuditItem());
@@ -538,7 +535,7 @@ public class AuditPathsServiceImpl implements IAuditPathsService {
     @Transactional
     public AjaxResult revoke(AuditItems auditItems) {
         long fettle = 0L;
-        if (auditItems.getActId() >= 110 && auditItems.getActId() <= 150) {
+        if (auditItems.getActId() >= 110 && auditItems.getActId() <= 160) {
             fettle = 2L;
             // 查询仓库状态
             TWarehouseBills tWarehouseBills = tWarehouseBillsMapper.selectTWarehousebillsById(auditItems.getBillId());

+ 2 - 1
ruoyi-warehouse/src/main/java/com/ruoyi/finance/domain/TWareHouseFees.java

@@ -2,11 +2,12 @@ package com.ruoyi.finance.domain;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
 
 import java.util.Date;
 import java.util.List;
 
-public class TWareHouseFees {
+public class TWareHouseFees extends BaseEntity {
 
     /**
      * 客户名称,t_corps 中的no或 name,模糊查找选择后,存储id,显示name

+ 19 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/domain/TWhgenleg.java

@@ -220,6 +220,25 @@ public class TWhgenleg extends BaseEntity {
     @Excel(name = "仓库")
     private Long fLocation;
 
+    private String timeStartBsdate;
+    private String timeEndBsdate;
+
+    public String getTimeStartBsdate() {
+        return timeStartBsdate;
+    }
+
+    public void setTimeStartBsdate(String timeStartBsdate) {
+        this.timeStartBsdate = timeStartBsdate;
+    }
+
+    public String getTimeEndBsdate() {
+        return timeEndBsdate;
+    }
+
+    public void setTimeEndBsdate(String timeEndBsdate) {
+        this.timeEndBsdate = timeEndBsdate;
+    }
+
     public void setorgStorageDate(List<String> orgStorageDate) {
         this.orgStorageDate = orgStorageDate;
     }

+ 1 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/mapper/TWhgenlegMapper.java

@@ -81,6 +81,7 @@ public interface TWhgenlegMapper {
     public int updateTWhgenlegData(@Param("map") Map<String, Object> map);
 
     List<Map<String, Object>> selectInventoryList(TWhgenleg tWhgenleg);
+    List<Map<String, Object>> selectWhgenlegList(TWhgenleg tWhgenleg);
 
     List<Map<String, Object>> selectGoodsList();
     List<Map<String, Object>> selectGoodsListWhouse(Long fId);

+ 1 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/service/ITWhgenlegService.java

@@ -95,6 +95,7 @@ public interface ITWhgenlegService {
      */
     List<Map<String, Object>> selectDateFQtyblcListList();
 
+    List<Map<String, Object>> selectWhgenlegList(TWhgenleg tWhgenleg);
 
 
 }

+ 14 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/reportManagement/service/impl/TWhgenlegServiceImpl.java

@@ -331,6 +331,20 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService {
         return countList;
     }
 
+    @Override
+    public List<Map<String, Object>> selectWhgenlegList(TWhgenleg tWhgenleg) {
+        if(StringUtils.isNotNull(tWhgenleg.getfWarehouseLocationid())){
+            // 获取仓库信息
+            TWarehouse tWarehouse =  tWarehouseMapper.selectTWarehouseById(tWhgenleg.getfWarehouseLocationid());
+            if(tWarehouse.getfLocation()==1){
+                tWhgenleg.setfLocation(1L);
+            }else {
+                tWhgenleg.setfLocation(0L);
+            }
+        }
+        return tWhgenlegMapper.selectWhgenlegList(tWhgenleg);
+    }
+
     /**
      *
      * @param fOriginalbilldate 根据该字段进行合并

+ 24 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehouseBills.java

@@ -328,6 +328,16 @@ public class TWarehouseBills extends BaseEntity {
     @Excel(name = "车辆类型")
     private Long fCartype ;
 
+    /** 1: 调拨,2:货物通关 */
+    private String type;
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
 
     /**
      * 查询时间区间
@@ -360,6 +370,20 @@ public class TWarehouseBills extends BaseEntity {
     @Excel(name = "仓库")
     private Long fLocation;
 
+    /**
+     * 贸易方式(数据字典),对应t_trademodels
+     */
+    @Excel(name = "贸易方式(数据字典),对应t_trademodels ")
+    private Long fNewTrademodeid;
+
+    public Long getfNewTrademodeid() {
+        return fNewTrademodeid;
+    }
+
+    public void setfNewTrademodeid(Long fNewTrademodeid) {
+        this.fNewTrademodeid = fNewTrademodeid;
+    }
+
     public Long getfLocation() {
         return fLocation;
     }

+ 14 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/domain/TWarehousebillsitems.java

@@ -294,9 +294,23 @@ public class TWarehousebillsitems extends BaseEntity {
     @Excel(name = "仓库/库区/库位")
     private String fOrgwarehouseInformation;
 
+    /**
+     * 备注
+     */
+    private String remark;
     private String timeStartBsdate;
     private String timeEndBsdate;
 
+    @Override
+    public String getRemark() {
+        return remark;
+    }
+
+    @Override
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
     public String getTimeStartBsdate() {
         return timeStartBsdate;
     }

+ 2 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/warehouseBusiness/service/impl/BillnoSerialServiceImpl.java

@@ -93,6 +93,8 @@ public class BillnoSerialServiceImpl implements IBillnoSerialService {
             billNo = "JSSF" + billNo;
         }  else if ("JSFF".equals(billType)) {
             billNo = "JSFF" + billNo;
+        } else if ("HWTG".equals(billType)) {
+            billNo = "HWTG" + billNo;
         }
         return billNo;
     }

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

@@ -279,7 +279,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
      */
     @Override
     public List<Map<String, Object>> selectWarehouseBusinessList(TWarehouseBills tWarehousebills) {
-        if(tWarehousebills.getfBilltype().equals("JSCCF") |  tWarehousebills.getfBilltype().equals("HQZY") ){
+        if(tWarehousebills.getfBilltype().equals("JSCCF") |  tWarehousebills.getfBilltype().equals("HQZY") | tWarehousebills.getfBilltype().equals("HWTG")){
             return tWarehouseBillsMapper.selectWarehouseBusinessList1(tWarehousebills);
         }else {
             return tWarehouseBillsMapper.selectWarehouseBusinessList(tWarehousebills);
@@ -336,9 +336,9 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         if ("SJRK".equals(warehouseBills.getfBilltype())) {
             tWhgenleg.setfOriginalbilldate(warehousebillsitems.getfBsdate());
         }
-        if ("HQZY".equals(warehouseBills.getfBilltype()) || "CKDB".equals(warehouseBills.getfBilltype())) {
+        if ("HQZY".equals(warehouseBills.getfBilltype()) | "CKDB".equals(warehouseBills.getfBilltype()) | "HWTG".equals(warehouseBills.getfBilltype()) ) {
             tWhgenleg.setfOriginalbilldate(warehousebillsitems.getfOriginalbilldate());
-            if ("CKDB".equals(warehouseBills.getfBilltype())) {
+            if ("CKDB".equals(warehouseBills.getfBilltype()) | "HWTG".equals(warehouseBills.getfBilltype()) ) {
                 tWhgenleg.setfCorpid(warehouseBills.getfCorpid());
             } else {
                 // 客户
@@ -458,12 +458,13 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             JSONArray warehouseJSON = JSONArray.parseArray(tWarehousebillsitems);
             List<TWarehousebillsitems> warehousebillsitemsList = JSONObject.parseArray(warehouseJSON.toJSONString(), TWarehousebillsitems.class);
             for (TWarehousebillsitems wbItem : warehousebillsitemsList) {
-                boolean warehouseStatus = "SJRK".equals(billsType) || "SJCK".equals(billsType) || "CKDB".equals(billsType);
+                boolean warehouseStatus = "SJRK".equals(billsType) || "SJCK".equals(billsType) || "CKDB".equals(billsType) || "HWTG".equals(billsType) ;
                 // 仓储计费日期
                 wbItem.setfBilltype(billsType);
                 if ("SJRK".equals(billsType)) {
                     wbItem.setfChargedate(warehouseBills.getfChargedate());
                     wbItem.setfBillingway(warehouseBills.getfBillingway());
+                    wbItem.setfMblno(warehouseBills.getfMblno());// 入库更新库存前执行update更新明细的提单号等于主表的提单号
                 }
                 if (null != wbItem.getfId()) {
                     wbItem.setUpdateTime(new Date());
@@ -581,6 +582,9 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         } else if ("HQZY".equals(billsType)) {
             actId = 130L;
             key = "warehouse.transfer.ApprovalFlow";
+        } else if ("HWTG".equals(billsType)) {
+            actId = 160L;
+            key = "warehouse.cargoClearance.ApprovalFlow";
         }
         SysConfig sysConfig = sysConfigMapper.checkConfigKeyUnique(key);
         if (StringUtils.isNull(sysConfig)) {
@@ -635,13 +639,14 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
         int line = 0;
         for (TWarehousebillsitems wbItem : warehousebillsitemsList) {
             line++;
-            if ("SJRK".equals(billsType) || "SJCK".equals(billsType) || "CKDB".equals(billsType)) {
+            if ("SJRK".equals(billsType) || "SJCK".equals(billsType) || "CKDB".equals(billsType)  || "HWTG".equals(billsType) ) {
                 // 除了入库其他模块不需要更新主表的 仓储费计费日期到明细表,其他模块 应从库存总账把仓储费计费日期 赋给明细表
                 if ("SJRK".equals(billsType)) {
                     wbItem.setfMblno(warehouseBills.getfMblno());
                     wbItem.setfBillingway(warehouseBills.getfBillingway());
                     wbItem.setfChargedate(warehouseBills.getfChargedate());
                     wbItem.setfOriginalbilldate(warehouseBills.getfBsdate());
+                    wbItem.setfMblno(warehouseBills.getfMblno());// 入库更新库存前执行update更新明细的提单号等于主表的提单号
                 }
                 if (!wbItem.getfBillstatus().equals(40L)) {
                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -872,6 +877,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
             return AjaxResult.error("更新库存明细失败,该信息已操作,请重新加载");
         }
+        tWarehousebillsitems.setfSerialNumber(tWarehousebillsitems1.getfSerialNumber());
         int  num = tWarehousebillsitemsMapper.updateTWarehousebillsitems(tWarehousebillsitems);
         if (num <= 0) {
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -1156,6 +1162,9 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                 item.setfBillstatus(40L);
                 item.setUpdateBy(loginUser.getUser().getUserName());
                 item.setUpdateTime(new Date());
+                if("SJRK".equals(billsType)){
+                    item.setfMblno(tWarehouseBills.getfMblno());// 入库更新库存前执行update更新明细的提单号等于主表的提单号
+                }
                 num = tWarehousebillsitemsMapper.updateTWarehousebillsitems(item);
                 // 添加状态log
                 insertTWarehousebillsLog(item, 40L, loginUser);
@@ -1258,7 +1267,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
             }
             long warehouselocId = 0L;
             long transferWarehouselocid = 0L;
-            if ("CKDB".equals(billsType)) {
+            if ("CKDB".equals(billsType) | "HWTG".equals(billsType)) {
                 warehouselocId = wbItem.getfWarehouselocid();
                 transferWarehouselocid = wbItem.getfTransferWarehouselocid();
 //                wbItem.setfWarehouselocid(transferWarehouselocid);
@@ -1316,7 +1325,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                     warehousebillsfees.add(fees);*/
                 }
                 wbItem.setfBillstatus(40L);
-            } else if ("CKDB".equals(billsType)) { // 调拨查询
+            } else if ("CKDB".equals(billsType) || "HWTG".equals(billsType)) { // 调拨查询
                 if (StringUtils.isNull(tWhgenle)) { // 为空 提示没有库存
                     TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
                     return AjaxResult.error("库存明细第" + i + "行库存为空");
@@ -1328,6 +1337,9 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                         wbItem.setfWarehouselocid(warehouselocId);
                         updateTWhgenlegData(wbItem, tWhgenle.getfId(), "SJCK");
                     }
+                    if("HWTG".equals(billsType)){
+                        tWarehouseBills.setfTrademodeid(tWarehouseBills.getfNewTrademodeid());
+                    }
                     // 3、 进行入库操作 查询是否存在库存
                     wbItem.setfWarehouselocid(transferWarehouselocid); // 新库区
                     TWhgenleg tWhgenle1 = queryTWhgenleg(tWarehouseBills, wbItem);
@@ -1488,6 +1500,8 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                 serialNumber = billnoSerialServiceImpl.getSerialNumber("CK", time);
             } else if ("DB".equals(billtystatus)) { //生成 出库 流水号
                 serialNumber = billnoSerialServiceImpl.getSerialNumber("DB", time);
+            } else if ("TG".equals(billtystatus)) { //生成 出库 流水号
+                serialNumber = billnoSerialServiceImpl.getSerialNumber("TG", time);
             }
         }
         int i=1;
@@ -2179,6 +2193,31 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
                     TWhgenleg tWhgenle2 = queryTWhgenleg(tWarehousebills, wb);
                     updateTWhgenlegData(wb, tWhgenle2.getfId(), "SJCKRevoke");
                     wb.setfBillstatus(10L);
+                } else if ("HWTGRevoke".equals(billsType)) { // 调拨 撤销
+                    // 贸易方式
+                    Long oldfTrademodeid = tWarehousebills.getfTrademodeid();
+                    // 新贸易方式
+                    Long newfTrademodeid = tWarehousebills.getfNewTrademodeid();
+                    Long warehouselocid = wb.getfWarehouselocid();// 原货仓库
+                    Long transferWarehouselocid = wb.getfTransferWarehouselocid(); // 新仓库
+                    //  1、新货权方撤销入库
+                    // 查询库存总账
+                    wb.setfWarehouselocid(transferWarehouselocid);
+                    tWarehousebills.setfTrademodeid(newfTrademodeid); // 查询用新的
+                    TWhgenleg tWhgenle1 = queryTWhgenleg(tWarehousebills, wb);
+                    if (StringUtils.isNotNull(tWhgenle1) && (wb.getfQty() <= tWhgenle1.getfQtyblc())) {
+                        updateTWhgenlegData(wb, tWhgenle1.getfId(), "SJRKRevoke");
+                    } else {
+                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
+                        return AjaxResult.error("第" + i + "行撤销数大于库存结余数");
+                    }
+                    //  2、原货权方撤销出库
+                    // 查询库存总账
+                    wb.setfWarehouselocid(warehouselocid);
+                    tWarehousebills.setfTrademodeid(oldfTrademodeid); // 撤销回到旧的
+                    TWhgenleg tWhgenle2 = queryTWhgenleg(tWarehousebills, wb);
+                    updateTWhgenlegData(wb, tWhgenle2.getfId(), "SJCKRevoke");
+                    wb.setfBillstatus(10L);
                 } else if ("HQZYRevoke".equals(billsType)) { // 货转撤销
                     Long fCorpid = tWarehousebills.getfCorpid();// 原货权方
                     Long fTocorpid = tWarehousebills.getfTocorpid(); // 新货权方

+ 1 - 0
ruoyi-warehouse/src/main/resources/mapper/basicData/TWarehouseMapper.xml

@@ -34,6 +34,7 @@
     <select id="selectTWarehouseList" parameterType="TWarehouse" resultMap="TWarehouseResult">
         <include refid="selectTWarehouseVo"/>
         <where>
+            <if test="parentId != null  and parentId != ''"> and parent_id = #{parentId} </if>
             <if test="ancestors != null  and ancestors != ''"> and ancestors like concat('%', #{ancestors}, '%')</if>
             <if test="fNo != null  and fNo != ''"> and f_no like concat('%', #{fNo}, '%')</if>
             <if test="fName != null  and fName != ''"> and f_name like concat('%', #{fName}, '%')</if>

+ 16 - 1
ruoyi-warehouse/src/main/resources/mapper/finance/TFeeMapper.xml

@@ -39,7 +39,12 @@
      </sql>
 
     <select id="selectTFeeList" parameterType="TFee" resultMap="TFeeResult">
-        <include refid="selectTFeeVo"/>
+        select
+            ware.*
+        from
+            t_fee ware
+            left join sys_user u on ware.create_by = u.user_name
+            left join sys_dept d on ware.f_deptid = d.dept_id
         <where>
             <if test="fBillno != null  and fBillno != ''">and f_billno = #{fBillno}</if>
             <if test="fCtrlcorpid != null ">and f_ctrlcorpid = #{fCtrlcorpid}</if>
@@ -68,6 +73,7 @@
             <if test="bank != null ">and bank = #{bank}</if>
             <if test="waterBillNo != null ">and water_bill_no = #{waterBillNo}</if>
         </where>
+        ${params.dataScope}
     </select>
 
     <select id="selectTFeeList1" parameterType="TFee" resultType="Map">
@@ -88,6 +94,8 @@
         FROM
             t_fee AS f
         LEFT JOIN t_corps AS c ON f.f_corpid = c.f_id
+        left join sys_user u on f.create_by = u.user_name
+        left join sys_dept d on f.f_deptid = d.dept_id
         <where>
             <if test="fBillno != null  and fBillno != ''">and f.f_billno = #{fBillno}</if>
             <if test="fCtrlcorpid != null ">and f.f_ctrlcorpid = #{fCtrlcorpid}</if>
@@ -111,6 +119,7 @@
             <if test="bank != null ">and f.bank = #{bank}</if>
             <if test="waterBillNo != null ">and f.water_bill_no = #{waterBillNo}</if>
         </where>
+        ${params.dataScope}
     </select>
 
     <select id="selectTFeeById" parameterType="Long" resultMap="TFeeResult">
@@ -559,6 +568,8 @@
             SUM(w.f_stlamount) AS fStlamount
         FROM
             t_warehousebills t
+                left join sys_user u on t.create_by = u.user_name
+                left join sys_dept d on t.f_bsdeptid = d.dept_id
                 LEFT JOIN t_corps c ON c.f_id = t.f_corpid
                 LEFT JOIN (
                 SELECT
@@ -625,6 +636,7 @@
                 and ifnull(w.f_amount, 0) - ifnull(w.f_stlamount, 0) != 0
             </if>
             and  t.f_review_date IS NOT NULL
+            ${params.dataScope}
             GROUP BY
             w.f_pid,
             w.f_dc,
@@ -691,6 +703,8 @@
         FROM
         t_warehousebillsfees w
         LEFT JOIN t_warehousebills t ON t.f_id = w.f_pid
+        left join sys_user u on t.create_by = u.user_name
+        left join sys_dept d on t.f_bsdeptid = d.dept_id
         LEFT JOIN t_corps c ON c.f_id = t.f_corpid
         LEFT JOIN t_corps c1 ON c1.f_id = w.f_corpid
         <where>
@@ -727,6 +741,7 @@
                 </foreach>
             </if>
             and  w.f_review_date IS NOT NULL
+            ${params.dataScope}
             GROUP BY
             w.f_mblno
         </where>

+ 74 - 4
ruoyi-warehouse/src/main/resources/mapper/reportManagement/TWhgenlegMapper.xml

@@ -49,7 +49,12 @@
     </sql>
 
     <select id="selectTWhgenlegList" parameterType="TWhgenleg" resultMap="TWhgenlegResult">
-        <include refid="selectTWhgenlegVo"/>
+        select
+            ware.*
+        from
+            t_whgenleg ware
+            left join sys_user u on ware.create_by = u.user_name
+            left join sys_dept d on u.dept_id = d.dept_id
         <where>
             <if test="fOriginalbillno != null  and fOriginalbillno != ''">and f_originalbillno = #{fOriginalbillno}</if>
             <if test="fChargedate != null ">and f_chargedate = #{fChargedate}</if>
@@ -75,6 +80,7 @@
             <if test="fMarks != null  and fMarks != ''">and f_marks = #{fMarks}</if>
             <if test="fOriginalbilldate != null ">and f_originalbilldate = #{fOriginalbilldate}</if>
         </where>
+        ${params.dataScope}
     </select>
 
     <select id="selectInventoryList" parameterType="TWhgenleg" resultType="Map">
@@ -113,6 +119,8 @@
             leg.f_cntrno AS fCntrno
         FROM
             t_whgenleg leg
+            left join sys_user u on leg.create_by = u.user_name
+            left join sys_dept d on u.dept_id = d.dept_id
             LEFT JOIN t_corps corp ON corp.f_id = leg.f_corpid
             LEFT JOIN t_goods goods ON goods.f_id = leg.f_goodsid
             LEFT JOIN t_warehouse ware ON ware.f_id = leg.f_warehouse_locationid
@@ -124,7 +132,7 @@
             <if test="fOriginalbillno != null  and fOriginalbillno != ''">and leg.f_originalbillno = #{fOriginalbillno}</if>
             <if test="fPreqty != null ">and leg.f_preqty = #{fPreqty}</if>
             <if test="fCorpid != null ">and leg.f_corpid = #{fCorpid}</if>
-            <if test="fMblno != null ">and leg.f_mblno = #{fMblno}</if>
+            <if test="fMblno != null ">and leg.f_mblno LIKE  concat('%', #{fMblno}, '%') </if>
             <if test='orgStorageDate != null and orgStorageDate[0] != null and orgStorageDate[0]!= ""'>
                 and leg.f_originalbilldate &gt;= #{orgStorageDate[0]}
             </if>
@@ -158,8 +166,8 @@
             <if test="fLocation != null  and fLocation ==0 ">
                 and ware.ancestors  LIKE  concat('%', #{fWarehouseLocationid}, '%')
             </if>
-
         </where>
+        ${params.dataScope}
     </select>
 
     <select id="selectTWhgenleg" parameterType="TWhgenleg" resultMap="TWhgenlegResult">
@@ -167,9 +175,9 @@
         <where>
             <if test="fCorpid != null ">and f_corpid = #{fCorpid}</if>
             <if test="fMblno != null ">and f_mblno = #{fMblno}</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>
-            <if test="fWarehouseLocationid != null ">and f_warehouse_locationid = #{fWarehouseLocationid}</if>
         </where>
     </select>
 
@@ -533,5 +541,67 @@
             <if test="warehouse.fMblno != null">and wh.f_mblno = #{warehouse.fMblno}</if>
         </where>
     </select>
+    <select id="selectWhgenlegList" resultType="java.util.Map">
+        select
+            DISTINCT
+            leg.f_id AS fId,
+            corp.f_name AS fCorpid,
+            DATE_FORMAT( leg.f_originalbilldate, '%Y-%m-%d' ) AS fOriginalbilldate,
+            ware.f_warehouse_information AS fWarehouseids,
+            leg.f_mblno AS fMblno,
+            goods.f_name AS fGoodsids,
+            dict.dict_label AS fBusinessTypes,
+            leg.f_marks AS fMarks,
+            leg.f_qtyblc AS fQtyblc,
+            leg.f_grossweightblc AS fGrossweightblc,
+            leg.f_netweightblc AS fNetweightblc
+        FROM
+            t_whgenleg leg
+            LEFT JOIN t_corps corp ON corp.f_id = leg.f_corpid
+            LEFT JOIN t_goods goods ON goods.f_id = leg.f_goodsid
+            LEFT JOIN t_warehouse ware ON ware.f_id = leg.f_warehouse_locationid
+            LEFT JOIN sys_dict_data dict ON dict.dict_value = leg.f_business_type
+            LEFT JOIN t_warehouse_area area ON area.f_id = leg.f_warehouse_locationid
+        <where>
+            dict.status = '0'
+            AND dict.dict_type = 'storage_type'
+            <if test="fOriginalbillno != null  and fOriginalbillno != ''">and leg.f_originalbillno = #{fOriginalbillno}</if>
+            <if test="fPreqty != null ">and leg.f_preqty = #{fPreqty}</if>
+            <if test="fCorpid != null ">and leg.f_corpid = #{fCorpid}</if>
+            <if test="fMblno != null ">and leg.f_mblno LIKE  concat('%', #{fMblno}, '%') </if>
+            <if test='timeStartBsdate != null and timeStartBsdate!= ""'>
+                and leg.f_originalbilldate &gt;= #{timeStartBsdate}
+            </if>
+            <if test='timeEndBsdate != null  timeEndBsdate!= ""'>
+                and leg.f_originalbilldate &lt;= #{timeEndBsdate}
+            </if>
+            <if test="fPregrossweight != null ">and leg.f_pregrossweight = #{fPregrossweight}</if>
+            <if test="fPrenetweight != null ">and leg.f_prenetweight = #{fPrenetweight}</if>
+            <if test="fQtyd != null ">and leg.f_qtyD = #{fQtyd}</if>
+            <if test="fTrademodeid != null ">and leg.f_trademodeid = #{fTrademodeid}</if>
+            <if test="fGoodsid != null ">and leg.f_goodsid = #{fGoodsid}</if>
+            <if test="fVolumnd != null ">and leg.f_volumnD = #{fVolumnd}</if>
+            <if test="fGrossweightd != null ">and leg.f_grossweightD = #{fGrossweightd}</if>
+            <if test="fNetweightd != null ">and leg.f_netweightD = #{fNetweightd}</if>
+            <if test="fVolumnc != null ">and leg.f_volumnC = #{fVolumnc}</if>
+            <if test="fQtyc != null ">and leg.f_qtyC = #{fQtyc}</if>
+            <if test="fOriginalbilldate != null ">and leg.f_originalbilldate = #{fOriginalbilldate}</if>
+            <if test="fMarks != null  and fMarks != ''">and leg.f_marks = #{fMarks}</if>
+            <if test="fQtyblc != null ">and leg.f_qtyblc = #{fQtyblc}</if>
+            <if test="fGrossweightc != null ">and leg.f_grossweightC = #{fGrossweightc}</if>
+            <if test="fNetweightc != null ">and leg.f_netweightC = #{fNetweightc}</if>
+            <if test="fGrossweightblc != null ">and leg.f_grossweightblc = #{fGrossweightblc}</if>
+            <if test="fNetweightblc != null ">and leg.f_netweightblc = #{fNetweightblc}</if>
+            <if test="fCntrno != null  and fCntrno != ''">and leg.f_cntrno = #{fCntrno}</if>
+            <if test="fStatus != null  and fStatus != ''">and leg.f_status = #{fStatus}</if>
+            <if test="fWarehouseid != null ">and leg.f_warehouseid = #{fWarehouseid} </if>
+            <if test="fLocation != null  and fLocation ==1 ">
+                and leg.f_warehouse_locationid = #{fWarehouseLocationid}
+            </if>
+            <if test="fLocation != null  and fLocation ==0 ">
+                and ware.ancestors  LIKE  concat('%', #{fWarehouseLocationid}, '%')
+            </if>
+        </where>
+    </select>
 
 </mapper>

+ 19 - 3
ruoyi-warehouse/src/main/resources/mapper/warehouseBusiness/TWarehousebillsMapper.xml

@@ -65,6 +65,7 @@
         <result property="fBstime"    column="f_bstime"    />
         <result property="fCartype"    column="f_cartype"    />
         <result property="fGoodsid"    column="f_goodsid"    />
+        <result property="fNewTrademodeid"    column="f_new_trademodeid"    />
     </resultMap>
 
     <sql id="selectTWarehousebillsVo">
@@ -76,7 +77,7 @@
                f_ifdamage, f_bankcorpid, f_billtype, f_billstatus, del_flag, create_by, create_time,
                f_items_status, update_by, update_time, remark, f_billing_deadline, f_product_name,
                f_review_date, f_truckno, f_driver_name, f_driver_tel, f_driver_id_car, f_business_type,f_labour,f_fleet,
-               f_bstime,f_cartype ,f_goodsid  from t_warehousebills
+               f_bstime,f_cartype ,f_goodsid ,f_new_trademodeid  from t_warehousebills
     </sql>
 
     <select id="selectTWarehousebillsList" parameterType="TWarehousebills" resultMap="TWarehousebillsResult">
@@ -136,6 +137,7 @@
             <if test="fBillingDeadline != null "> and f_billing_deadline = #{fBillingDeadline}</if>
             <if test="fBilltype != null  and fBilltype != ''">and f_billtype = #{fBilltype}</if>
             <if test="fBillstatus != null  and fBillstatus != ''">and f_billstatus = #{fBillstatus}</if>
+            <if test="fNewTrademodeid != null ">and f_new_trademodeid = #{fNewTrademodeid}</if>
         </where>
         ${params.dataScope}
     </select>
@@ -269,9 +271,10 @@
             <if test="fBillstatus != null  and fBillstatus != ''">and bill.f_billstatus = #{fBillstatus}</if>
             <if test="fItemsStatus != null  and fItemsStatus != ''">and bill.f_items_status = #{fItemsStatus}</if>
             <if test="createBy != null and createBy != ''">and bill.create_by = #{createBy}</if>
+            <if test="fNewTrademodeid != null ">and bill.f_new_trademodeid = #{fNewTrademodeid}</if>
         </where>
-            ORDER BY  bill.f_billstatus , bill.f_bsdate  DESC
         ${params.dataScope}
+            ORDER BY  bill.f_billstatus , bill.f_bsdate  DESC
     </select>
 
     <select id="selectWarehouseBusinessList1" parameterType="TWarehousebills" resultType="Map">
@@ -389,9 +392,10 @@
             <if test="fBillstatus != null  and fBillstatus != ''">and bill.f_billstatus = #{fBillstatus}</if>
             <if test="fItemsStatus != null  and fItemsStatus != ''">and bill.f_items_status = #{fItemsStatus}</if>
             <if test="createBy != null and createBy != ''">and bill.create_by = #{createBy}</if>
+            <if test="fNewTrademodeid != null ">and bill.f_new_trademodeid = #{fNewTrademodeid}</if>
         </where>
-        ORDER BY  bill.f_billstatus , bill.f_bsdate  DESC
         ${params.dataScope}
+        ORDER BY  bill.f_billstatus , bill.f_bsdate  DESC
     </select>
 
     <select id="selectTWarehousebillsById" parameterType="Long" resultMap="TWarehousebillsResult">
@@ -462,6 +466,8 @@
             END AS fBilltype
         FROM
             t_warehousebills leg
+                left join sys_user u on leg.create_by = u.user_name
+                left join sys_dept d on leg.f_bsdeptid = d.dept_id
                 LEFT JOIN t_warehousebillsitems it ON leg.f_id = it.f_pid
                 LEFT JOIN t_goods goo ON it.f_goodsid = goo.f_id
                 LEFT JOIN t_corps co ON leg.f_corpid = co.f_id
@@ -476,6 +482,7 @@
             AND leg.f_billtype in ('SJRK','CKDB')
             <if test="fGoodsid != null ">and it.f_goodsid = #{fGoodsid}</if>
             <if test="fTrademodeid != null ">and leg.f_trademodeid = #{fTrademodeid}</if>
+            <if test="fNewTrademodeid != null ">and leg.f_new_trademodeid = #{fNewTrademodeid}</if>
             <if test="fCorpid != null ">and leg.f_corpid = #{fCorpid}</if>
             <if test="fMblno != null ">and leg.f_mblno = #{fMblno}</if>
             <if test="fLocation != null  and fLocation ==1 ">
@@ -491,6 +498,7 @@
                 and it.f_bsdate &lt;= #{timeInterval[1]}
             </if>
         </where>
+        ${params.dataScope}
     </select>
     <select id="selectInventorySJCKList" parameterType="TWarehousebills"  resultType="java.util.Map">
         SELECT
@@ -525,6 +533,8 @@
         END AS fWarehouseLocationids
         FROM
         t_warehousebills leg
+        left join sys_user u on leg.create_by = u.user_name
+        left join sys_dept d on leg.f_bsdeptid = d.dept_id
         LEFT JOIN t_warehousebillsitems it ON leg.f_id = it.f_pid
         LEFT JOIN t_goods goo ON it.f_goodsid = goo.f_id
         LEFT JOIN t_corps co ON leg.f_corpid = co.f_id
@@ -539,6 +549,7 @@
             AND leg.f_billtype in ('SJCK','CKDB')
             <if test="fGoodsid != null ">and it.f_goodsid = #{fGoodsid}</if>
             <if test="fTrademodeid != null ">and leg.f_trademodeid = #{fTrademodeid}</if>
+            <if test="fNewTrademodeid != null ">and leg.f_new_trademodeid = #{fNewTrademodeid}</if>
             <if test="fCorpid != null ">and leg.f_corpid = #{fCorpid}</if>
             <if test="fMblno != null ">and leg.f_mblno = #{fMblno}</if>
             <if test="fLocation != null  and fLocation ==1 ">
@@ -554,6 +565,7 @@
                 and it.f_bsdate &lt;= #{timeInterval[1]}
             </if>
         </where>
+        ${params.dataScope}
     </select>
     <select id="selectTWarehousebillsItemList"
             resultType="com.ruoyi.reportManagement.domain.TWareHouseItemsExcel">
@@ -593,6 +605,7 @@
         <if test="fBilltype != null">AND leg.f_billtype = #{fBilltype}</if>
         <if test="fGoodsid != null ">and it.f_goodsid = #{fGoodsid}</if>
         <if test="fTrademodeid != null ">and leg.f_trademodeid = #{fTrademodeid}</if>
+        <if test="fNewTrademodeid != null ">and leg.f_new_trademodeid = #{fNewTrademodeid}</if>
         <if test="fCorpid != null ">and leg.f_corpid = #{fCorpid}</if>
         <if test="fMblno != null ">and leg.f_mblno = #{fMblno}</if>
         <if test="fLocation != null  and fLocation ==1 ">
@@ -671,6 +684,7 @@
             <if test="fBstime != null">f_bstime,</if>
             <if test="fCartype != null">f_cartype,</if>
             <if test="fGoodsid != null">f_goodsid,</if>
+            <if test="fNewTrademodeid != null">f_new_trademodeid,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="fBillno != null">#{fBillno},</if>
@@ -732,6 +746,7 @@
             <if test="fBstime != null">#{fBstime},</if>
             <if test="fCartype != null">#{fCartype},</if>
             <if test="fGoodsid != null">#{fGoodsid},</if>
+            <if test="fNewTrademodeid != null">#{fNewTrademodeid},</if>
         </trim>
     </insert>
 
@@ -798,6 +813,7 @@
             <if test="fBstime != null">f_bstime = #{fBstime},</if>
             <if test="fCartype != null">f_cartype = #{fCartype},</if>
             <if test="fGoodsid != null">f_goodsid = #{fGoodsid},</if>
+            <if test="fNewTrademodeid != null">f_new_trademodeid = #{fNewTrademodeid},</if>
         </trim>
         where f_id = #{fId}
     </update>