523096025 1 kuukausi sitten
vanhempi
commit
9375a12b8f
45 muutettua tiedostoa jossa 787 lisäystä ja 354 poistoa
  1. 5 0
      get-data/src/main/java/com/huimv/getdata/controller/ErpXiaoShouController.java
  2. 1 0
      get-data/src/main/java/com/huimv/getdata/entity/ErpBdMaterial.java
  3. 51 10
      get-data/src/main/java/com/huimv/getdata/entity/caigou/YingFuZhangKuan.java
  4. 17 0
      get-data/src/main/java/com/huimv/getdata/entity/xiaoshou/CaiWuYingShou.java
  5. 2 0
      get-data/src/main/java/com/huimv/getdata/mapper/ErpXiaoShouMapper.java
  6. 2 0
      get-data/src/main/java/com/huimv/getdata/service/IErpXiaoShouService.java
  7. 5 0
      get-data/src/main/java/com/huimv/getdata/service/impl/ErpXiaoShouServiceImpl.java
  8. 1 1
      get-data/src/main/resources/com/huimv/getdata/mapper/ErpBdDepartmentMapper.xml
  9. 20 7
      get-data/src/main/resources/com/huimv/getdata/mapper/ErpCaiGouMapper.xml
  10. 13 0
      get-data/src/main/resources/com/huimv/getdata/mapper/ErpXiaoShouMapper.xml
  11. 2 0
      huimv-farm/src/main/java/vip/xiaonuo/erp/entity/ErpBdRawMaterial.java
  12. 50 11
      huimv-farm/src/main/java/vip/xiaonuo/erp/entity/caigou/YingFuZhangKuan.java
  13. 1 0
      huimv-farm/src/main/java/vip/xiaonuo/erp/entity/voucher/ErpMaterial.java
  14. 14 0
      huimv-farm/src/main/java/vip/xiaonuo/erp/entity/xiaoshou/CaiWuYingShou.java
  15. 13 13
      huimv-farm/src/main/java/vip/xiaonuo/erp/service/impl/ErpCaiGouServiceImpl.java
  16. 12 9
      huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/controller/HrBaseEmployeeInfoController.java
  17. 9 8
      huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/entity/HrBaseEmployeeInfo.java
  18. 2 0
      huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/entity/vo/EoucationVo.java
  19. 1 0
      huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/param/HrBaseEmployeeInfoPageParam.java
  20. 17 12
      huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/service/impl/HrBaseEmployeeInfoServiceImpl.java
  21. 6 4
      huimv-farm/src/main/java/vip/xiaonuo/importData/entity/HrData.java
  22. 103 47
      huimv-farm/src/main/java/vip/xiaonuo/importData/service/impl/ImportDataImpl.java
  23. 1 0
      huimv-farm/src/main/java/vip/xiaonuo/importData/utils/ExcelImportSheet.java
  24. 3 0
      huimv-farm/src/main/java/vip/xiaonuo/money/entity/vo/MoneyBorrowUserVo.java
  25. 1 1
      huimv-farm/src/main/java/vip/xiaonuo/money/service/impl/MoneyBusinessServiceImpl.java
  26. 45 39
      huimv-farm/src/main/java/vip/xiaonuo/money/service/impl/MoneyOverdueServiceImpl.java
  27. 2 0
      huimv-farm/src/main/java/vip/xiaonuo/money/service/impl/MoneyWriteOverdueServiceImpl.java
  28. 9 1
      huimv-farm/src/main/java/vip/xiaonuo/purchase/controller/PurchaseOrderController.java
  29. 37 1
      huimv-farm/src/main/java/vip/xiaonuo/purchase/entity/PurchasePay.java
  30. 13 1
      huimv-farm/src/main/java/vip/xiaonuo/purchase/mapper/PurchaseOrderMapper.java
  31. 4 0
      huimv-farm/src/main/java/vip/xiaonuo/purchase/mapper/PurchasePriceMapper.java
  32. 2 0
      huimv-farm/src/main/java/vip/xiaonuo/purchase/param/PurchaseParam.java
  33. 4 1
      huimv-farm/src/main/java/vip/xiaonuo/purchase/service/IPurchaseOrderService.java
  34. 78 25
      huimv-farm/src/main/java/vip/xiaonuo/purchase/service/impl/PurchaseOrderServiceImpl.java
  35. 8 8
      huimv-farm/src/main/java/vip/xiaonuo/risk/service/impl/RiskTargetServiceImpl.java
  36. 2 2
      huimv-farm/src/main/java/vip/xiaonuo/sale/service/impl/SaleDetailServiceImpl.java
  37. 1 3
      huimv-farm/src/main/java/vip/xiaonuo/sale/service/impl/SaleSalesmanServiceImpl.java
  38. 29 26
      huimv-farm/src/main/java/vip/xiaonuo/sale/service/impl/SaleTargetServiceImpl.java
  39. 32 19
      huimv-farm/src/main/resources/mapper/HrBaseEmployeeInfoMapper.xml
  40. 13 26
      huimv-farm/src/main/resources/mapper/MoneyOverdueMapper.xml
  41. 23 10
      huimv-farm/src/main/resources/mapper/PurchaseOrderMapper.xml
  42. 7 0
      huimv-farm/src/main/resources/mapper/PurchasePriceMapper.xml
  43. 2 1
      huimv-farm/src/test/java/vip/xiaonuo/Bdest.java
  44. 18 8
      huimv-farm/src/test/java/vip/xiaonuo/MainTest.java
  45. 106 60
      huimv-farm/src/test/java/vip/xiaonuo/XiaoShouTest.java

+ 5 - 0
get-data/src/main/java/com/huimv/getdata/controller/ErpXiaoShouController.java

@@ -61,6 +61,11 @@ public class ErpXiaoShouController {
         return iErpXiaoShouService.getYvQiHeTongMingXi(date);
     }
 
+    @RequestMapping(value = "/getCaiWuYingShou",method = RequestMethod.GET)
+    public List<CaiWuYingShou> getCaiWuYingShou(@RequestParam(value = "date" ,required = false) String date){
+        return iErpXiaoShouService.getCaiWuYingShou(date);
+    }
+
 //    @RequestMapping(value = "/getErpId",method = RequestMethod.GET)
 //    public List<YvQiHeTongMingXi> getErpId(@RequestParam(value = "date" ,required = false) String date){
 //        return iErpXiaoShouService.getErpId(date);

+ 1 - 0
get-data/src/main/java/com/huimv/getdata/entity/ErpBdMaterial.java

@@ -36,6 +36,7 @@ public class ErpBdMaterial implements Serializable {
     private String fnumber;
     private String fspecification;
     private Integer facctorgid;
+    private Integer FMATERIALID;
 
 
 }

+ 51 - 10
get-data/src/main/java/com/huimv/getdata/entity/caigou/YingFuZhangKuan.java

@@ -7,22 +7,63 @@ import java.util.Date;
 
 @Data
 public class YingFuZhangKuan {
-@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+//@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+//    private Date FDATE;
+//    private String  FBGLSHSJDW;
+//    //采购组织
+//    private int FPURCHASEORGID;
+//    //付款组织
+//    private int FPAYORGID;
+//    //付款用途
+//    private int FPURPOSEID;
+//    private String FNAME;
+//    //未核销金额
+//    private Double FNOTVERIFICATEAMOUNT;
+//    private double FQTY;
+//    private String wuLiaoName;
+//    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+//    private Date FBOOKINGDATE;
+
+    //应收单号
+    private String FBILLNO;
+    //业务日期
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
     private Date FDATE;
-    private String  FBGLSHSJDW;
+    //到期日
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private Date FENDDATE;
     //采购组织
     private int FPURCHASEORGID;
     //付款组织
     private int FPAYORGID;
-    //付款用途
-    private int FPURPOSEID;
+    //客户id
+    private int FSUPPLIERID;
+    // 源单号
+    private String FSourceBillNo;
+    //采购合同号
+    private String FBGLCONTRACTL;
+    //物料编码
+    private String FMATERIALID;
+    //单价
+    private Double FPrice;
+    //含税单价
+    private Double FTaxPrice;
+    //金额
+    private Double FALLAMOUNTFOR;
+    //数量
+    private Double FPriceQty;
+    //采购订单详细号
+    private int FOrderEntryID;
+    //物料名称
     private String FNAME;
-    //未核销金额
-    private Double FNOTVERIFICATEAMOUNT;
-    private double FQTY;
-    private String wuLiaoName;
-    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
-    private Date FBOOKINGDATE;
+
+    //规格
+    private String FSPECIFICATION;
+    //供应商
+    private String gysName;
+
+
+
 
 
 }

+ 17 - 0
get-data/src/main/java/com/huimv/getdata/entity/xiaoshou/CaiWuYingShou.java

@@ -0,0 +1,17 @@
+package com.huimv.getdata.entity.xiaoshou;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+public class CaiWuYingShou {
+
+    // a.FACCOUNTBOOKID,   A.FENDBALANCEFOR,   WLL.FNAME ,km.FUSEORGID   ,fyearperiod
+    private  int FACCOUNTBOOKID;
+    private  Double FENDBALANCEFOR;
+    private  String FNAME;
+    private  int FUSEORGID;
+    private  String fyearperiod;
+}

+ 2 - 0
get-data/src/main/java/com/huimv/getdata/mapper/ErpXiaoShouMapper.java

@@ -23,4 +23,6 @@ public interface ErpXiaoShouMapper {
     List<XiaoShouFeiYong> getXiaoShouFeiYongFeiYong(@Param("date")String date ,@Param("number") String number);
 
     List<XiaoShouWanChenLvJinE> getDingDan(@Param("date")String date );
+
+    List<CaiWuYingShou> getCaiWuYingShou(@Param("date")String date);
 }

+ 2 - 0
get-data/src/main/java/com/huimv/getdata/service/IErpXiaoShouService.java

@@ -25,4 +25,6 @@ public interface IErpXiaoShouService {
     List<XiaoShouFeiYong> getXiaoShouFeiYong2(String date,String number);
 
     List<XiaoShouWanChenLvJinE> getDingDan(String date);
+
+    List<CaiWuYingShou> getCaiWuYingShou(String date);
 }

+ 5 - 0
get-data/src/main/java/com/huimv/getdata/service/impl/ErpXiaoShouServiceImpl.java

@@ -71,4 +71,9 @@ public class ErpXiaoShouServiceImpl implements IErpXiaoShouService {
 
         return erpXiaoShouMapper.getDingDan(date);
     }
+
+    @Override
+    public List<CaiWuYingShou> getCaiWuYingShou(String date) {
+        return erpXiaoShouMapper.getCaiWuYingShou(date);
+    }
 }

+ 1 - 1
get-data/src/main/resources/com/huimv/getdata/mapper/ErpBdDepartmentMapper.xml

@@ -80,7 +80,7 @@ inner join   T_BD_MATERIAL_L b on a.fmaterialid = b.fmaterialid
 
     </select>
     <select id="getMaterialRaw" resultType="com.huimv.getdata.entity.ErpBdMaterial">
-     SELECT a.fnumber  fnumber   , b.fuseorgid  facctorgid, b.FNAME fname ,b.FSPECIFICATION fspecification   FROM [dbo].[T_BD_MATERIAL]  a
+     SELECT a.fnumber  fnumber   , b.fuseorgid  facctorgid, b.FNAME fname ,b.FSPECIFICATION fspecification  ,a.FMATERIALID  FROM [dbo].[T_BD_MATERIAL]  a
     inner join   T_BD_MATERIAL_L b on a.fmaterialid = b.fmaterialid
      where a.FFORBIDSTATUS = 'A'
     --and  a.fnumber like '10%'

+ 20 - 7
get-data/src/main/resources/com/huimv/getdata/mapper/ErpCaiGouMapper.xml

@@ -137,16 +137,29 @@ INNER JOIN  T_PUR_POORDERENTRY  B ON A.FID = B.FID
     </select>
     <select id="getYingFuZhangKuang" resultType="com.huimv.getdata.entity.caigou.YingFuZhangKuan"
             parameterType="java.util.Date">
-        SELECT DISTINCT A.FDATE ,A.FBGLSHSJDW ,A.FPURCHASEORGID , A.FPAYORGID, B.FPURPOSEID ,C.FNAME ,B.FNOTVERIFICATEAMOUNT ,B.FQTY  ,D.FNAME wuLiaoName
-        ,E.FBOOKINGDATE  FROM  T_AP_PAYBILL 	A
-INNER JOIN  T_AP_PAYBILLENTRY B ON A.FID = B.FID
-INNER JOIN  T_CN_RECPAYPURPOSE_L C ON C.FID = B.FPURPOSEID
-        INNER JOIN  T_BD_MATERIAL_L  D ON B.FMATERIALID =D.FMATERIALID
-        LEFT JOIN T_AP_PAYBILL_O  E ON E.FID = A.FID
-        WHERE B.FNOTVERIFICATEAMOUNT >0
+<!--        SELECT DISTINCT A.FDATE ,A.FBGLSHSJDW ,A.FPURCHASEORGID , A.FPAYORGID, B.FPURPOSEID ,C.FNAME ,B.FNOTVERIFICATEAMOUNT ,B.FQTY  ,D.FNAME wuLiaoName-->
+<!--        ,E.FBOOKINGDATE  FROM  T_AP_PAYBILL 	A-->
+<!--INNER JOIN  T_AP_PAYBILLENTRY B ON A.FID = B.FID-->
+<!--INNER JOIN  T_CN_RECPAYPURPOSE_L C ON C.FID = B.FPURPOSEID-->
+<!--        INNER JOIN  T_BD_MATERIAL_L  D ON B.FMATERIALID =D.FMATERIALID-->
+<!--        LEFT JOIN T_AP_PAYBILL_O  E ON E.FID = A.FID-->
+<!--        WHERE B.FNOTVERIFICATEAMOUNT >0-->
+<!--        <if test="date !=null">-->
+<!--            AND  A.FDATE >= #{date}-->
+<!--        </if>-->
+
+
+        SELECT  A.FBILLNO ,A.FDATE,  A.FENDDATE ,A.FPURCHASEORGID, A.FPAYORGID , A.FSUPPLIERID ,b.FSourceBillNo , B.FBGLCONTRACTL
+        ,B.FMATERIALID ,B.FPrice,B.FTaxPrice ,A.FALLAMOUNTFOR,
+        B.FPriceQty      ,B.FOrderEntryID    , E.FNAME ,E.FSPECIFICATION  ,F.FNAME  gysName
+        FROM  T_AP_PAYABLE	A
+        INNER JOIN T_AP_PAYABLEENTRY B ON A.FID = B.FID
+        inner JOIN  T_BD_MATERIAL_L  E ON B.FMATERIALID =E.FMATERIALID
+        INNER JOIN T_BD_SUPPLIER_L F ON A.fsupplierid = F.fsupplierid
         <if test="date !=null">
             AND  A.FDATE >= #{date}
         </if>
+
     </select>
     <select id="getZuiDiKuChun" resultType="com.huimv.getdata.entity.caigou.ZuiDiKuChun"
             parameterType="java.util.Date">

+ 13 - 0
get-data/src/main/resources/com/huimv/getdata/mapper/ErpXiaoShouMapper.xml

@@ -125,4 +125,17 @@ INNER JOIN T_BD_ACCOUNT C ON  C.FACCTID = B.FACCOUNTID
             where A.FCREATEDATE >= #{date}
         </if>
     </select>
+    <select id="getCaiWuYingShou" resultType="com.huimv.getdata.entity.xiaoshou.CaiWuYingShou"
+            parameterType="java.lang.String">
+        SELECT   distinct  a.FACCOUNTBOOKID,   A.FENDBALANCEFOR,   WLL.FNAME ,km.FUSEORGID   ,fyearperiod
+        FROM T_GL_BALANCE A
+        inner join t_bd_account KM on KM.FAcctId=A.FACCOUNTID and KM.FISDETAIL='1' and (KM.FNumber ='1122.01')
+        INNER JOIN T_BD_FLEXITEMDETAILV B ON A.FDETAILID=B.FID
+        INNER JOIN T_BD_CUSTOMER_L WLL ON B.FFLEX6=WLL.FCUSTID
+        where  a.FENDBALANCEFOR != 0
+        <if test="date !=null and date!='' ">
+            and A.fyearperiod = #{date}
+        </if>
+
+    </select>
 </mapper>

+ 2 - 0
huimv-farm/src/main/java/vip/xiaonuo/erp/entity/ErpBdRawMaterial.java

@@ -64,6 +64,8 @@ public class ErpBdRawMaterial implements Serializable {
     private String fspecification;
     private Integer materialType;
     private Integer safeStock;
+    private Integer materalId;
+
 
 
 }

+ 50 - 11
huimv-farm/src/main/java/vip/xiaonuo/erp/entity/caigou/YingFuZhangKuan.java

@@ -1,30 +1,69 @@
 package vip.xiaonuo.erp.entity.caigou;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
-import com.sun.jna.platform.win32.OaIdl;
 import lombok.Data;
 
 import java.util.Date;
 
 @Data
 public class YingFuZhangKuan {
+//@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+//    private Date FDATE;
+//    private String  FBGLSHSJDW;
+//    //采购组织
+//    private int FPURCHASEORGID;
+//    //付款组织
+//    private int FPAYORGID;
+//    //付款用途
+//    private int FPURPOSEID;
+//    private String FNAME;
+//    //未核销金额
+//    private Double FNOTVERIFICATEAMOUNT;
+//    private double FQTY;
+//    private String wuLiaoName;
+//    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+//    private Date FBOOKINGDATE;
+
+    //应收单号
+    private String FBILLNO;
+    //业务日期
     @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
     private Date FDATE;
-
-    private String  FBGLSHSJDW;
+    //到期日
+    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private Date FENDDATE;
     //采购组织
     private int FPURCHASEORGID;
     //付款组织
     private int FPAYORGID;
-    //付款用途
-    private int FPURPOSEID;
+    //客户id
+    private int FSUPPLIERID;
+    // 源单号
+    private String FSourceBillNo;
+    //采购合同号
+    private String FBGLCONTRACTL;
+    //物料编码
+    private String FMATERIALID;
+    //单价
+    private Double FPrice;
+    //含税单价
+    private Double FTaxPrice;
+    //金额
+    private Double FALLAMOUNTFOR;
+    //数量
+    private Double FPriceQty;
+    //采购订单详细号
+    private int FOrderEntryID;
+    //物料名称
     private String FNAME;
-    //未核销金额
-    private Double FNOTVERIFICATEAMOUNT;
-    private Double FQTY;
-    private String wuLiaoName;
 
-    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
-    private Date FBOOKINGDATE;
+    //规格
+    private String FSPECIFICATION;
+    //供应商
+    private String gysName;
+
+
+
+
 
 }

+ 1 - 0
huimv-farm/src/main/java/vip/xiaonuo/erp/entity/voucher/ErpMaterial.java

@@ -8,4 +8,5 @@ public class ErpMaterial {
     private  Integer facctorgid;
     private  String fspecification;
     private  String fname;
+    private Integer FMATERIALID;
 }

+ 14 - 0
huimv-farm/src/main/java/vip/xiaonuo/erp/entity/xiaoshou/CaiWuYingShou.java

@@ -0,0 +1,14 @@
+package vip.xiaonuo.erp.entity.xiaoshou;
+
+import lombok.Data;
+
+@Data
+public class CaiWuYingShou {
+
+    // a.FACCOUNTBOOKID,   A.FENDBALANCEFOR,   WLL.FNAME ,km.FUSEORGID   ,fyearperiod
+    private  int FACCOUNTBOOKID;
+    private  Double FENDBALANCEFOR;
+    private  String FNAME;
+    private  int FUSEORGID;
+    private  String fyearperiod;
+}

+ 13 - 13
huimv-farm/src/main/java/vip/xiaonuo/erp/service/impl/ErpCaiGouServiceImpl.java

@@ -366,19 +366,19 @@ public class ErpCaiGouServiceImpl implements IErpCaiGouService {
             ErpBdOrg forgid = erpBdOrgMapper.selectOne(new QueryWrapper<ErpBdOrg>().eq("forgid", forObject.getFPURCHASEORGID()));
             if (ObjectUtil.isEmpty(forgid))
                 continue;
-
-            PurchasePay purchasePay = new PurchasePay();
-            purchasePay.setCreateTime(forObject.getFDATE());
-            purchasePay.setEndTime(forObject.getFBOOKINGDATE());
-            purchasePay.setOrgId(forgid.getOrgId());
-            purchasePay.setPayableNumber(String.format("%.2f",forObject.getFNOTVERIFICATEAMOUNT()));
-            purchasePay.setPayableObject(forObject.getFBGLSHSJDW());
-            purchasePay.setPurchaseMaterial(forObject.getWuLiaoName());
-            purchasePay.setPurchaseNumber(String.format("%.2f",forObject.getFQTY()));
-            if (forObject.getFQTY() != 0.0){
-                purchasePay.setPrice(String.format("%.2f",forObject.getFNOTVERIFICATEAMOUNT() / forObject.getFQTY()));
-            }
-            payMapper.insert(purchasePay);
+//
+//            PurchasePay purchasePay = new PurchasePay();
+//            purchasePay.setCreateTime(forObject.getFDATE());
+//            purchasePay.setEndTime(forObject.getFBOOKINGDATE());
+//            purchasePay.setOrgId(forgid.getOrgId());
+//            purchasePay.setPayableNumber(String.format("%.2f",forObject.getFNOTVERIFICATEAMOUNT()));
+//            purchasePay.setPayableObject(forObject.getFBGLSHSJDW());
+//            purchasePay.setPurchaseMaterial(forObject.getWuLiaoName());
+//            purchasePay.setPurchaseNumber(String.format("%.2f",forObject.getFQTY()));
+//            if (forObject.getFQTY() != 0.0){
+//                purchasePay.setPrice(String.format("%.2f",forObject.getFNOTVERIFICATEAMOUNT() / forObject.getFQTY()));
+//            }
+//            payMapper.insert(purchasePay);
 
         }
 

+ 12 - 9
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/controller/HrBaseEmployeeInfoController.java

@@ -197,20 +197,23 @@ public class HrBaseEmployeeInfoController {
     @PostMapping("/hr/baseemployeeinfo/educationDis")
     public CommonResult<List<PerNum>> educationDis(@Valid @RequestBody EmployeeInfoEoucation employeeInfoEoucation) {
         String orgId = employeeInfoEoucation.getOrgId();
-        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 0));
-        long age2 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 1));
-        long age3 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 2));
-        long age4 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 3));
-        long age5 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 4));
-        long age6 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("EDUCATION", 5));
+        ////学历 0小学 1初中  2高中  4大专  本科 研究生  博士"
+        long age22 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("CULTURE_LEVEL", 0));
+        long age2 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("CULTURE_LEVEL", 1));
+        long age3 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("CULTURE_LEVEL", 2));
+        long age4 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("CULTURE_LEVEL", 4));
+        long age5 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("CULTURE_LEVEL", 5));
+        long age6 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("CULTURE_LEVEL", 6));
+        long age7 = hrBaseEmployeeInfoService.count(new QueryWrapper<HrBaseEmployeeInfo>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId).eq("USER_TYPE",0).eq("CULTURE_LEVEL", 7));
 
         ArrayList<PerNum> perNums = new ArrayList<>();
         perNums.add(new PerNum("小学",age22));
         perNums.add(new PerNum("初中",age2));
         perNums.add(new PerNum("高中",age3));
-        perNums.add(new PerNum("本科",age4));
-        perNums.add(new PerNum("研究生",age5));
-        perNums.add(new PerNum("博士研究生",age6));
+        perNums.add(new PerNum("大专",age4));
+        perNums.add(new PerNum("本科",age5));
+        perNums.add(new PerNum("研究生",age6));
+        perNums.add(new PerNum("博士研究生",age7));
         return CommonResult.data(perNums);
     }
 

+ 9 - 8
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/entity/HrBaseEmployeeInfo.java

@@ -18,6 +18,8 @@ import com.fhs.core.trans.anno.Trans;
 import com.fhs.core.trans.constant.TransType;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiModelProperty;
+import io.swagger.models.auth.In;
+import lombok.Data;
 import lombok.Getter;
 import lombok.Setter;
 import org.checkerframework.checker.units.qual.A;
@@ -31,8 +33,7 @@ import java.util.Date;
  * @author 余
  * @date  2024/11/14 15:02
  **/
-@Getter
-@Setter
+@Data
 @TableName("hr_base_employee_info")
 public class HrBaseEmployeeInfo {
 
@@ -87,7 +88,7 @@ public class HrBaseEmployeeInfo {
 
     /** 文化程度 */
     @ApiModelProperty(value = "文化程度", position = 13)
-    private String cultureLevel;
+    private Integer cultureLevel;
 
     /** 政治面貌 */
     @ApiModelProperty(value = "政治面貌", position = 14)
@@ -95,7 +96,7 @@ public class HrBaseEmployeeInfo {
 
     /** 学历 */
     @ApiModelProperty(value = "学历 0小学 1初中 2高中 3本科 4研究生", position = 15)
-    private int education;
+    private String education;
 
     /** 手机 */
     @ApiModelProperty(value = "手机", position = 16)
@@ -172,12 +173,12 @@ public class HrBaseEmployeeInfo {
     private String hukouNature;
 
     @ApiModelProperty(value = "招入集团时间",position = 33)
-    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
-    private Date joinGroup;
+//    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private String joinGroup;
 
     @ApiModelProperty(value = "合同开始时间",position = 34)
-    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
-    private Date contactStartTime;
+//    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
+    private String contactStartTime;
 
     @ApiModelProperty(value = "专业",position = 35)
     private String major;

+ 2 - 0
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/entity/vo/EoucationVo.java

@@ -20,6 +20,8 @@ public class EoucationVo {
     private int  midNum;
     @ApiModelProperty(value = "高中")
     private int  highNum;
+    @ApiModelProperty(value = "大专")
+    private int  daZhuan;
     @ApiModelProperty(value = "本科")
     private int  underNum;
     @ApiModelProperty(value = "研究生")

+ 1 - 0
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/param/HrBaseEmployeeInfoPageParam.java

@@ -45,5 +45,6 @@ public class HrBaseEmployeeInfoPageParam {
     /** 关键词 */
     @ApiModelProperty(value = "关键词")
     private String searchKey;
+    private String orgId;
 
 }

+ 17 - 12
huimv-farm/src/main/java/vip/xiaonuo/hr/modular/baseemployeeinfo/service/impl/HrBaseEmployeeInfoServiceImpl.java

@@ -47,6 +47,7 @@ import vip.xiaonuo.purchase.entity.PurchaseOrder;
 import vip.xiaonuo.purchase.param.DongShiPurchaseParam;
 import vip.xiaonuo.purchase.param.GongYingShangParam;
 import vip.xiaonuo.purchase.param.PurchaseAllParam;
+import vip.xiaonuo.write.entity.WriteThreshold;
 
 import javax.validation.constraints.NotBlank;
 import java.util.*;
@@ -77,15 +78,22 @@ public class HrBaseEmployeeInfoServiceImpl extends ServiceImpl<HrBaseEmployeeInf
 
     @Override
     public Page<HrBaseEmployeeInfo> page(HrBaseEmployeeInfoPageParam hrBaseEmployeeInfoPageParam) {
-        QueryWrapper<HrBaseEmployeeInfo> queryWrapper = new QueryWrapper<>();
-        if(ObjectUtil.isAllNotEmpty(hrBaseEmployeeInfoPageParam.getSortField(), hrBaseEmployeeInfoPageParam.getSortOrder())) {
-            CommonSortOrderEnum.validate(hrBaseEmployeeInfoPageParam.getSortOrder());
-            queryWrapper.orderBy(true, hrBaseEmployeeInfoPageParam.getSortOrder().equals(CommonSortOrderEnum.ASC.getValue()),
-                    StrUtil.toUnderlineCase(hrBaseEmployeeInfoPageParam.getSortField()));
-        } else {
-            queryWrapper.lambda().orderByAsc(HrBaseEmployeeInfo::getId);
-        }
-        return this.page(CommonPageRequest.defaultPage(), queryWrapper);
+//        QueryWrapper<HrBaseEmployeeInfo> queryWrapper = new QueryWrapper<>();
+//        if(ObjectUtil.isAllNotEmpty(hrBaseEmployeeInfoPageParam.getSortField(), hrBaseEmployeeInfoPageParam.getSortOrder())) {
+//            CommonSortOrderEnum.validate(hrBaseEmployeeInfoPageParam.getSortOrder());
+//            queryWrapper.orderBy(true, hrBaseEmployeeInfoPageParam.getSortOrder().equals(CommonSortOrderEnum.ASC.getValue()),
+//                    StrUtil.toUnderlineCase(hrBaseEmployeeInfoPageParam.getSortField()));
+//        } else {
+//            queryWrapper.lambda().orderByAsc(HrBaseEmployeeInfo::getId);
+//        }
+//        return this.(page, queryWrapper);
+        Integer pageSize = hrBaseEmployeeInfoPageParam.getSize();
+        Integer pageNum = hrBaseEmployeeInfoPageParam.getCurrent();
+        String orgId = hrBaseEmployeeInfoPageParam.getOrgId();
+        QueryWrapper<HrBaseEmployeeInfo> queryWrapper = new QueryWrapper();
+        Page<HrBaseEmployeeInfo> page = new Page<>(pageNum, pageSize);
+        queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).like("NAME",hrBaseEmployeeInfoPageParam.getSearchKey());
+        return this.page(page,queryWrapper);
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -159,10 +167,7 @@ public class HrBaseEmployeeInfoServiceImpl extends ServiceImpl<HrBaseEmployeeInf
         if (ObjectUtil.isNotEmpty(list)) {
             countPerson.setRetireNum(list.size());
 
-
-
             List<HrBaseDepartment> baseDepartments = hrBaseDepartmentMapper.selectList(new QueryWrapper<HrBaseDepartment>().eq(StringUtils.isNotBlank(orgId),"ORG_ID", orgId));
-
             Map<String, String> map = new HashMap<>();
             for (HrBaseDepartment department : baseDepartments) {
                 map.put(department.getId().toString(),department.getName());

+ 6 - 4
huimv-farm/src/main/java/vip/xiaonuo/importData/entity/HrData.java

@@ -49,7 +49,7 @@ public class HrData {
 
     /** 文化程度 */
     @ApiModelProperty(value = "文化程度", position = 13)
-    private String cultureLevel;
+    private String cultureLevelNum;
 
     /** 政治面貌 */
     @ApiModelProperty(value = "政治面貌", position = 14)
@@ -65,6 +65,7 @@ public class HrData {
 
     /** 入职日期 */
     @ApiModelProperty(value = "入职日期", position = 17)
+//    @JsonFormat(pattern = "yyyy.M",timezone = "GMT+8")
     private Date entryDate;
 
     /** 机构id */
@@ -78,7 +79,8 @@ public class HrData {
 
     /** 工龄 */
     @ApiModelProperty(value = "工龄", position = 30)
-    private Integer seniority;
+//    private Integer seniority;
+    private String seniority;
 
     @ApiModelProperty(value = "orgId", position =31)
     private String orgId;
@@ -87,10 +89,10 @@ public class HrData {
     private String hukouNature;
 
     @ApiModelProperty(value = "招入集团时间",position = 33)
-    private Date joinGroup;
+    private String joinGroup;
 
     @ApiModelProperty(value = "合同开始时间",position = 34)
-    private Date contactStartTime;
+    private String contactStartTime;
 
     @ApiModelProperty(value = "专业",position = 35)
     private String major;

+ 103 - 47
huimv-farm/src/main/java/vip/xiaonuo/importData/service/impl/ImportDataImpl.java

@@ -29,11 +29,16 @@ import vip.xiaonuo.sys.modular.org.mapper.SysOrgMapper;
 import javax.servlet.http.HttpServletRequest;
 import java.io.InputStream;
 import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
+import java.time.temporal.ChronoUnit;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import static vip.xiaonuo.common.pojo.CommonResult.CODE_ERROR;
+
 @Service
 public class ImportDataImpl implements ImportData {
 
@@ -75,7 +80,7 @@ public class ImportDataImpl implements ImportData {
         map.put("入职时间" , "entryDate");
         map.put("工龄" , "seniority");
         map.put("合同起止时间" , "contactStartTime");
-        map.put("文化程度" , "cultureLevel");
+        map.put("文化程度" , "cultureLevelNum");
         map.put("专业" , "major");
         map.put("毕业院校" , "almaMater");
         map.put("职称" , "title");
@@ -93,7 +98,7 @@ public class ImportDataImpl implements ImportData {
         map.put("社保" , "socialSecurity");
         map.put("公积金" , "providentFund");
         map.put("婚姻" , "marriage");
-
+        String idCard = "";
         try(
                 //这里面的对象会自动关闭
                 InputStream in = files.getInputStream();
@@ -122,35 +127,13 @@ public class ImportDataImpl implements ImportData {
             }
             List<HrBaseDepartment> departments1 = departmentService.list(new QueryWrapper<HrBaseDepartment>().eq("org_id", orgId));
 
-            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
             for (HrData hrData : list) {
                 HrBaseEmployeeInfo info = new HrBaseEmployeeInfo();
                 BeanUtil.copyProperties(hrData, info);
-              /*  if ("".equals(hrData.getBirthday1()) || null == hrData.getBirthday1()) {
-                } else {
-                    Date parse = sdf.parse(hrData.getBirthday1());
-                    info.setBirthday(parse);
-                }
-                if ("".equals(hrData.getJoinGroup1()) || null == hrData.getJoinGroup1()) {
-                } else {
-                    Date parse = sdf.parse(hrData.getJoinGroup1());
-                    info.setJoinGroup(parse);
-                }
-                if ("".equals(hrData.getEntryDate1()) || null == hrData.getEntryDate1()) {
-                } else {
-                    Date parse = sdf.parse(hrData.getEntryDate1());
-                    info.setEntryDate(parse);
-                }
-                if ("".equals(hrData.getContactStartTime1()) || null == hrData.getContactStartTime1()) {
-                } else {
-                    Date parse = sdf.parse(hrData.getContactStartTime1());
-                    info.setContactStartTime(parse);
-                }
-                if ("".equals(hrData.getConfirmationTime1()) || null == hrData.getConfirmationTime1()) {
-                } else {
-                    Date parse = sdf.parse(hrData.getConfirmationTime1());
-                    info.setConfirmationTime(parse);
-                }*/
+
+                info.setEducation(hrData.getCultureLevelNum());
+                info.setCultureLevel(getCultureLevel(hrData.getCultureLevelNum()));
+
                 info.setOrgId(orgId);
                 for (HrBaseDepartment department : departments1) {
                     if (department.getName().equals(hrData.getDepartmentName())) {
@@ -158,6 +141,10 @@ public class ImportDataImpl implements ImportData {
                         info.setDepartmentId(department.getId().toString());
                     }
                 }
+                String seniority = hrData.getSeniority();
+                info.setSeniority(Integer.parseInt(seniority.split("年")[0]));
+
+
                 if ("男".equals(hrData.getGender()) || "男性".equals(hrData.getGender())) {
                     info.setGender("0");
                 }
@@ -170,29 +157,19 @@ public class ImportDataImpl implements ImportData {
                 if ("未婚".equals(hrData.getMarriage())) {
                     info.setMarriage("0");
                 }
-                if ("小学".equals(hrData.getCultureLevel())) {
-                    info.setEducation(0);
-                }
-                if ("初中".equals(hrData.getCultureLevel())) {
-                    info.setEducation(1);
-                }
-                if ("高中".equals(hrData.getCultureLevel())) {
-                    info.setEducation(2);
-                }
-                if ("本科".equals(hrData.getCultureLevel())) {
-                    info.setEducation(3);
-                }
-                if ("研究生".equals(hrData.getCultureLevel())|| "硕士".equals(hrData.getCultureLevel())) {
-                    info.setEducation(4);
-                }
-                if ("博士".equals(hrData.getCultureLevel())|| "博士研究生".equals(hrData.getCultureLevel())) {
-                    info.setEducation(5);
+                String contactStartTime = hrData.getContactStartTime();
+                if (ObjectUtil.isNotEmpty(contactStartTime)){
+                    info.setSiLing(getSiLing(contactStartTime));
+                    info.setUserType(getEndDate(contactStartTime));
                 }
 
-                if ("".equals(hrData.getIdCardNumber()) || null == hrData.getIdCardNumber()) {
+                idCard  = hrData.getIdCardNumber();
+                System.out.println(idCard);
+                if ("".equals(idCard) || null == idCard) {
                     return CommonResult.error("表格中存在身份证号为空!请检查后重新导入");
                 } else {
                     HrBaseEmployeeInfo infos = infoService.getOne(new QueryWrapper<HrBaseEmployeeInfo>().eq("ID_CARD_NUMBER", hrData.getIdCardNumber()));
+                    System.out.println(info.toString());
                     if (ObjectUtil.isEmpty(infos)) {
                         infoService.save(info);
                     } else {
@@ -204,13 +181,92 @@ public class ImportDataImpl implements ImportData {
 
         } catch (Exception e) {
             e.printStackTrace();
-            return CommonResult.error();
+            return new CommonResult<>(CODE_ERROR, String.format("抱歉,身份证号为%s的人员数据有误,", idCard), null);
         }finally {
             //写着好看的
         }
         return CommonResult.ok();
     }
 
+    private Integer getSiLing(String contactStartTime) {
+        String startDateStr = contactStartTime.split("-")[0];
+
+        // 定义日期格式
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy.MM.dd");
+
+        // 解析结束日期
+        LocalDate startDate = LocalDate.parse(startDateStr, formatter);
+        // 获取当前日期
+        LocalDate currentDate = LocalDate.now();
+        return  (int)ChronoUnit.YEARS.between(startDate, currentDate );
+
+
+    }
+
+
+
+    public  Integer getEndDate(String strt){
+        String startDateStr = strt.split("-")[0];
+        // 提取结束日期
+        String endDateStr = strt.split("-")[1];
+
+        // 定义日期格式
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy.MM.dd");
+        System.out.println("______>"+strt);
+        // 解析结束日期
+        endDateStr =  setLing(endDateStr);
+        startDateStr =setLing(startDateStr);
+        LocalDate endDate = LocalDate.parse(endDateStr, formatter);
+        LocalDate startDate = LocalDate.parse(startDateStr, formatter);
+        // 获取当前日期
+        LocalDate currentDate = LocalDate.now();
+        if(currentDate.isBefore(startDate)){
+            return 3;
+        }
+        // 比较日期
+        if (currentDate.isBefore(endDate)) {
+            return  0;
+        } else  {
+            return 1;
+        }
+    }
+
+    private String setLing(String endDateStr) {
+        String[] split = endDateStr.split("\\.");
+        if (endDateStr.length() != 10) {
+            if (split[1].length() == 1) {
+                split[1] = "0" + split[1];
+            }
+            if (split[2].length() == 1) {
+                split[2] = "0" + split[2];
+            }
+            return split[0]+"."+split[1]+"."+split[2];
+        }
+        return endDateStr;
+    }
+
+    private Integer getCultureLevel(String cultureLevel) {
+        //学历 0小学 1初中  2高中  4大专 研究生  博士"
+        if (cultureLevel.contains("小学")){
+            return 0;
+        }else if (cultureLevel.contains("初中")){
+            return 1;
+        }else if (cultureLevel.contains("高中")){
+            return 2;
+        }else if (cultureLevel.contains("大专")){
+            return 4;
+        }else if (cultureLevel.contains("本科")){
+            return 5;
+        }else if (cultureLevel.contains("研究生")){
+            return 6;
+        }else if (cultureLevel.contains("博士")){
+            return 7;
+        }else {
+            return 8;
+        }
+    }
+
+
     @Override
     public CommonResult importMoney(HttpServletRequest httpServletRequest, String orgId, MultipartFile files) {
         Map<String , String> map = new HashMap<>();

+ 1 - 0
huimv-farm/src/main/java/vip/xiaonuo/importData/utils/ExcelImportSheet.java

@@ -71,6 +71,7 @@ public class ExcelImportSheet {
                 if (ObjectUtil.isNull(cell)){
                     continue;
                 }
+                System.out.println("----->"+row.getLastCellNum());
                 System.out.println(i +"----" + j +"----" +paramsList.get(j) +"----" +typeClass.get(j) +"=="+cell );
                 //调用泛型对象的set方法设置单元格里的值 这也就是为什么我们要获取属性顺序以及其对应的类型
                 cs.getMethod(getSetterMethodName(paramsList.get(j)) , typeClass.get(j))

+ 3 - 0
huimv-farm/src/main/java/vip/xiaonuo/money/entity/vo/MoneyBorrowUserVo.java

@@ -1,6 +1,7 @@
 package vip.xiaonuo.money.entity.vo;
 
 import io.swagger.annotations.ApiModelProperty;
+import io.swagger.models.auth.In;
 import lombok.Data;
 
 @Data
@@ -14,4 +15,6 @@ public class MoneyBorrowUserVo {
 
     @ApiModelProperty(value = "应收金额", position = 3)
     private String collectPrice;
+    private Double rmbje;
+    private Integer documentType;
 }

+ 1 - 1
huimv-farm/src/main/java/vip/xiaonuo/money/service/impl/MoneyBusinessServiceImpl.java

@@ -340,7 +340,7 @@ public class MoneyBusinessServiceImpl extends ServiceImpl<MoneyBusinessMapper, M
         }
         // 计算同比变化率
         double percentageChange = ((currentValue - previousValue) /previousValue) * 100;
-        if (percentageChange >200){
+        if (percentageChange >500){
             return "100";
         }
         return String.format("%.2f", percentageChange);

+ 45 - 39
huimv-farm/src/main/java/vip/xiaonuo/money/service/impl/MoneyOverdueServiceImpl.java

@@ -48,6 +48,7 @@ public class MoneyOverdueServiceImpl extends ServiceImpl<MoneyOverdueMapper, Mon
         String orgId = overdueParam.getOrgId();
         QueryWrapper<MoneyWriteOverdue> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        queryWrapper.eq("document_type",1);
         Date date = new Date();
 
         queryWrapper.le("end_time", DateUtil.offsetMonth(date ,-1));
@@ -61,10 +62,13 @@ public class MoneyOverdueServiceImpl extends ServiceImpl<MoneyOverdueMapper, Mon
     @Override
     public JSONObject overdueRank(MoneyOverdueParam overdueParam) {
         String orgId = overdueParam.getOrgId();
+
         QueryWrapper<MoneyWriteOverdue> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
-        queryWrapper.select("sum(rmbje) rmbje,end_time endTime");
+        queryWrapper.select("rmbje /10000 rmbje ,end_time endTime,document_type");
+        queryWrapper.eq(StringUtils.isNotBlank(overdueParam.getUserName()),"user_name" ,overdueParam.getUserName());
         List<MoneyWriteOverdue> writeOverdues = writeOverdueMapper.selectList(queryWrapper);
+
         double count = 0.00;
         double isOverdue = 0.00;
         double disOverdue = 0.00;
@@ -76,7 +80,8 @@ public class MoneyOverdueServiceImpl extends ServiceImpl<MoneyOverdueMapper, Mon
                 if (ObjectUtil.isEmpty(overdue)){
                     continue;
                 }
-                if (overdue.getEndTime().before(new Date())) {
+//                if (overdue.getEndTime().before(new Date())) {
+                if ("1".equals(overdue.getDocumentType())) {
                     isOverdue = isOverdue + Double.valueOf(overdue.getRmbje());
                 }else {
                     disOverdue = disOverdue + Double.valueOf(overdue.getRmbje());
@@ -85,10 +90,21 @@ public class MoneyOverdueServiceImpl extends ServiceImpl<MoneyOverdueMapper, Mon
             }
             if (count == 0) {
                 jsonObject.put("isOverdue", "0");
-                jsonObject.put("disOverdue", "100");
+                jsonObject.put("disOverdue", "0");
             } else {
-                jsonObject.put("isOverdue", def.format(isOverdue / count));
-                jsonObject.put("disOverdue", def.format(disOverdue / count));
+                double v = isOverdue / count;
+                System.out.println(v);
+                System.out.println(disOverdue / count);
+
+//                jsonObject.put("isOverdue", def.format(isOverdue / count));
+//                jsonObject.put("disOverdue", def.format(disOverdue / count));
+//                jsonObject.put("isOverdueMoney", def.format(isOverdue ));
+//                jsonObject.put("disOverdueMoney", def.format(disOverdue ));
+//                jsonObject.put("isOverdue", def.format(isOverdue / count));
+//                jsonObject.put("disOverdue", def.format(disOverdue / count));
+                jsonObject.put("isOverdue", def.format(isOverdue ));
+                jsonObject.put("disOverdue", def.format(disOverdue ));
+
             }
         } else {
             jsonObject.put("isOverdue", "0");
@@ -102,36 +118,25 @@ public class MoneyOverdueServiceImpl extends ServiceImpl<MoneyOverdueMapper, Mon
         String orgId = overdueParam.getOrgId();
         String time = overdueParam.getTime();
         List<MoneyBorrowUserVo> userRank = overdueMapper.getUserRank(time + "-01 00:00:00", time + "-31 23:59:59",orgId);
-        BigDecimal math = new BigDecimal("10000");
-        List<MoneyBorrowUserVo> list = new ArrayList<>();
-        if (userRank.size() != 0) {
-            Double collect = 0.00;
-            Double overdue = 0.00;
-            for (int i = 0; i < userRank.size(); i++) {
-                if (i < 15) {
-                    BigDecimal bg = new BigDecimal(userRank.get(i).getCollectPrice());
-                    bg = bg.divide(math, 2, RoundingMode.HALF_UP);
-                    BigDecimal bg1 = new BigDecimal(userRank.get(i).getOverduePrice());
-                    bg1 = bg1.divide(math, 2, RoundingMode.HALF_UP);
-                    userRank.get(i).setCollectPrice(bg.toString());
-                    userRank.get(i).setOverduePrice(bg1.toString());
-                    list.add(userRank.get(i));
-                } else {
-                    collect = collect + Double.valueOf(userRank.get(i).getCollectPrice());
-                    overdue = overdue + Double.valueOf(userRank.get(i).getOverduePrice());
-                }
-            }
-            MoneyBorrowUserVo vo = new MoneyBorrowUserVo();
-            vo.setUserName("others");
-            BigDecimal c1 = new BigDecimal(collect);
-            c1 = c1.divide(math, 2, RoundingMode.HALF_UP);
-            BigDecimal c2 = new BigDecimal(overdue);
-            c2 = c2.divide(math, 2, RoundingMode.HALF_UP);
-            vo.setCollectPrice(c1.toString());
-            vo.setOverduePrice(c2.toString());
-            list.add(vo);
-        }
-        return list;
+//        BigDecimal math = new BigDecimal("10000");
+//        List<MoneyBorrowUserVo> list = new ArrayList<>();
+//
+//        if (userRank.size() != 0) {
+//            Double collect = 0.00;
+//            Double overdue = 0.00;
+//            for (int i = 0; i < userRank.size(); i++) {
+//                if (i < 15) {
+//
+//                    list.add(userRank.get(i));
+//                } else {
+//                    collect = collect + Double.valueOf(userRank.get(i).getCollectPrice());
+//                    overdue = overdue + Double.valueOf(userRank.get(i).getOverduePrice());
+//                }
+//            }
+//
+//
+//        }
+        return userRank;
     }
 
     @Override
@@ -148,12 +153,13 @@ public class MoneyOverdueServiceImpl extends ServiceImpl<MoneyOverdueMapper, Mon
         Calendar calendar = Calendar.getInstance();
         calendar.add(Calendar.DAY_OF_MONTH, 15);
         if (ObjectUtil.isNotEmpty(type)){
-            if (0 == type) {
-                queryWrapper.between("end_time", DateUtil.beginOfMonth(new Date()), calendar.getTime());
-            } else if (1 == type) {
+            if (3 == type) {
+                queryWrapper.eq("document_type",1);
                 queryWrapper.ge("end_time", calendar.getTime());
+            } else if (1 == type) {
+                queryWrapper.eq("document_type", 0);
             } else if (2== type) {
-                queryWrapper.le("end_time", new Date());
+                queryWrapper.le("end_time", new Date()).eq("document_type",1);
             }
         }
 

+ 2 - 0
huimv-farm/src/main/java/vip/xiaonuo/money/service/impl/MoneyWriteOverdueServiceImpl.java

@@ -37,6 +37,7 @@ public class MoneyWriteOverdueServiceImpl extends ServiceImpl<MoneyWriteOverdueM
         MoneyWriteOverdue writeOverdue = new MoneyWriteOverdue();
         BeanUtil.copyProperties(param, writeOverdue);
         writeOverdue.setCreateTime(new Date());
+        writeOverdue.setDocumentType("1");
         writeOverdueMapper.insert(writeOverdue);
         return CommonResult.ok();
     }
@@ -49,6 +50,7 @@ public class MoneyWriteOverdueServiceImpl extends ServiceImpl<MoneyWriteOverdueM
         Page<MoneyWriteOverdue> page = new Page<>(pageNum, pageSize);
         QueryWrapper<MoneyWriteOverdue> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        queryWrapper.eq( "document_type", "1");
         return writeOverdueMapper.selectPage(page, queryWrapper);
     }
 

+ 9 - 1
huimv-farm/src/main/java/vip/xiaonuo/purchase/controller/PurchaseOrderController.java

@@ -14,6 +14,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
 import vip.xiaonuo.common.pojo.CommonResult;
+import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
 import vip.xiaonuo.money.entity.MoneyBorrowWarning;
 import vip.xiaonuo.money.param.MoneyInOutParam;
 import vip.xiaonuo.purchase.entity.PurchaseOrder;
@@ -59,10 +60,17 @@ public class PurchaseOrderController {
     @ApiOperationSupport(order = 3)
     @ApiOperation("二级页面横栏")
     @PostMapping("/purchase-order/orderType")
-    public CommonResult<List<PurchaseOrderTypeVo>> orderType(@RequestBody PurchaseParam param) {
+    public CommonResult<PurchaseOrderTypeVo> orderType(@RequestBody PurchaseParam param) {
         return CommonResult.data(purchaseOrderService.orderType(param));
     }
 
+    @ApiOperationSupport(order = 3)
+    @ApiOperation("获取原材料列表")
+    @PostMapping("/purchase-order/getMater")
+    public CommonResult<List<ErpBdRawMaterial>> getMater(@RequestBody PurchaseParam param) {
+        return CommonResult.data(purchaseOrderService.getMater(param));
+    }
+
     @ApiOperationSupport(order = 4)
     @ApiOperation("采购金额趋势")
     @PostMapping("/purchase-order/listMoney")

+ 37 - 1
huimv-farm/src/main/java/vip/xiaonuo/purchase/entity/PurchasePay.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.purchase.entity;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
@@ -13,6 +14,8 @@ import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 
+import javax.naming.Name;
+
 /**
  * <p>
  * 采购应付账款
@@ -73,7 +76,7 @@ public class PurchasePay implements Serializable {
      * 截至时间
      */
     @ApiModelProperty(value = "截至时间", position = 8)
-    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
     private Date endTime;
 
     /**
@@ -83,4 +86,37 @@ public class PurchasePay implements Serializable {
     private String orgId;
 
 
+    //应收单号
+    @TableField("billno")
+    private String FBILLNO;
+    //采购组织
+    @TableField("FPURCHASEORGID")
+    private int FPURCHASEORGID;
+    //付款组织
+    @TableField("FPAYORGID")
+    private int FPAYORGID;
+    //客户id
+    @TableField("FSUPPLIERID")
+    private int FSUPPLIERID;
+    // 源单号
+    @TableField("FSourceBillNo")
+    private String FSourceBillNo;
+    //采购合同号
+    @TableField("FBGLCONTRACTL")
+    private String FBGLCONTRACTL;
+    //物料编码
+    @TableField("FMATERIALID")
+    private String FMATERIALID;
+    //含税单价
+    @TableField("FTaxPrice")
+    private String FTaxPrice;
+    //采购订单详细号
+    @TableField("FOrderEntryID")
+    private int FOrderEntryID;
+    //规格
+    @TableField("FSPECIFICATION")
+    private String FSPECIFICATION;
+
+
+
 }

+ 13 - 1
huimv-farm/src/main/java/vip/xiaonuo/purchase/mapper/PurchaseOrderMapper.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.purchase.mapper;
 
+import cn.hutool.core.date.DateTime;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Constants;
 import org.apache.ibatis.annotations.Param;
@@ -8,6 +9,7 @@ import vip.xiaonuo.purchase.entity.PurchaseOrder;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import vip.xiaonuo.purchase.entity.vo.PurchaseMaterialVo;
 import vip.xiaonuo.purchase.entity.vo.PurchaseOrderTypeVo;
+import vip.xiaonuo.purchase.entity.vo.PurchaseOrderVo;
 import vip.xiaonuo.purchase.param.PurchaseAllParam;
 
 import java.util.List;
@@ -22,7 +24,15 @@ import java.util.List;
  */
 public interface PurchaseOrderMapper extends BaseMapper<PurchaseOrder> {
 
-    List<PurchaseOrderTypeVo> listType(String month, String year, String lastMonth, Integer lastYear,String orgId);
+    PurchaseOrderTypeVo listType(DateTime beginOfMonth,
+                                 DateTime   endOfMonth,
+                                 DateTime  beginOfYear,
+                                 DateTime  endOfYear,
+                                 DateTime  lastbeginOfMonth,
+                                 DateTime  lastendOfMonth,
+                                 DateTime   lastbeginOfYear,
+                                 DateTime   lastendOfYear,
+                                 String orgId, @Param(value = "materalId")Integer materalId);
 
     List<PurchaseMaterialVo> getSupplier(@Param(Constants.WRAPPER) QueryWrapper<PurchaseOrder> queryWrapper);
 
@@ -31,4 +41,6 @@ public interface PurchaseOrderMapper extends BaseMapper<PurchaseOrder> {
     List<PurchaseAllParam> getCaiGouYvFuDetailMonth(@Param(Constants.WRAPPER)QueryWrapper<PurchaseOrder> wapper);
 
     List<PurchaseAllParam> getCaiGouYvFuDetailYear(@Param(Constants.WRAPPER) QueryWrapper<PurchaseOrder> wapper);
+
+    PurchaseOrderVo getOrder( @Param(Constants.WRAPPER) QueryWrapper<PurchaseOrder> queryWrapper);
 }

+ 4 - 0
huimv-farm/src/main/java/vip/xiaonuo/purchase/mapper/PurchasePriceMapper.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Constants;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.apache.ibatis.annotations.Param;
+import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
 import vip.xiaonuo.purchase.entity.PurchaseOrder;
 import vip.xiaonuo.purchase.entity.PurchasePrice;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -11,6 +12,7 @@ import vip.xiaonuo.purchase.param.DongShiKuCunWuliaoVoParam;
 import vip.xiaonuo.purchase.param.GongYingShangParam;
 import vip.xiaonuo.purchase.param.PurchaseYuanCaiLiaoParam;
 
+import javax.naming.Name;
 import java.util.List;
 
 /**
@@ -30,4 +32,6 @@ public interface PurchasePriceMapper extends BaseMapper<PurchasePrice> {
     List<String> getWuLiaoShaiXuan(@Param(Constants.WRAPPER) QueryWrapper<PurchaseOrder> wapper);
 
     List<DongShiKuCunWuliaoVoParam> getKuCunWuLiao(@Param(Constants.WRAPPER) QueryWrapper<PurchaseOrder> wapper);
+
+    List<ErpBdRawMaterial> getMater(@Param(value = "orgId")String orgId);
 }

+ 2 - 0
huimv-farm/src/main/java/vip/xiaonuo/purchase/param/PurchaseParam.java

@@ -34,5 +34,7 @@ public class PurchaseParam {
 
     @ApiModelProperty(value = "时间,格式为'2024-10-01'", required = true)
     private String time;
+    private String maerName;
+    private String erpFnumber;
 
 }

+ 4 - 1
huimv-farm/src/main/java/vip/xiaonuo/purchase/service/IPurchaseOrderService.java

@@ -2,6 +2,7 @@ package vip.xiaonuo.purchase.service;
 
 import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
 import vip.xiaonuo.purchase.entity.PurchaseOrder;
 import com.baomidou.mybatisplus.extension.service.IService;
 import vip.xiaonuo.purchase.entity.vo.*;
@@ -27,7 +28,7 @@ public interface IPurchaseOrderService extends IService<PurchaseOrder> {
     List<PurchaseOrderMoneyVo> listOrderMoney(PurchaseOrderParam orderParam);
 
     //二级页面
-    List<PurchaseOrderTypeVo> orderType(PurchaseParam param);
+    PurchaseOrderTypeVo orderType(PurchaseParam param);
 
     //采购金额趋势
     List<PurchaseMoneyVo> listMoney(PurchaseParam param);
@@ -48,4 +49,6 @@ public interface IPurchaseOrderService extends IService<PurchaseOrder> {
     List<String > getWuLiaoShaiXuan(DongShiPurchaseParam priceParam);
 
     List<DongShiKuCunWuliaoVoParam > getKuCunWuLiao(DongShiKuCunWuliaoParam priceParam);
+
+    List<ErpBdRawMaterial> getMater(PurchaseParam param);
 }

+ 78 - 25
huimv-farm/src/main/java/vip/xiaonuo/purchase/service/impl/PurchaseOrderServiceImpl.java

@@ -1,5 +1,6 @@
 package vip.xiaonuo.purchase.service.impl;
 
+import cn.hutool.core.date.DateField;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
@@ -11,6 +12,8 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import io.swagger.models.auth.In;
 import org.springframework.beans.factory.annotation.Autowired;
+import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
+import vip.xiaonuo.erp.mapper.ErpBdRawMaterialMapper;
 import vip.xiaonuo.money.entity.MoneyBusiness;
 import vip.xiaonuo.money.param.DsBusAllParam;
 import vip.xiaonuo.purchase.entity.PurchaseOrder;
@@ -53,15 +56,38 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
     @Autowired
     private PurchasePriceMapper purchasePriceMapper;
 
+    public static void main(String[] args) {
+        System.out.println(DateUtil.parse("2022-01", "yyyy-MM"));
+    }
     @Override
     public PurchaseOrderVo getOrder(PurchaseParam purchaseParam) {
         String orgId = purchaseParam.getOrgId();
-        PurchaseOrderVo vo = new PurchaseOrderVo();
+//        String time = purchaseParam.getTime();
+//        DateTime dateTime = DateUtil.beginOfYear(new Date());
+        System.out.println(purchaseParam.getTime());
+
+        DateTime now = DateUtil.parse(purchaseParam.getTime(), "yyyy-MM");
+        DateTime lastYear = DateUtil.offsetMonth(now, -12);
+
         QueryWrapper<PurchaseOrder> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).orderByAsc("create_time");
-        String time = purchaseParam.getTime();
-        DateTime dateTime = DateUtil.beginOfYear(new Date());
+        queryWrapper.between("create_time",DateUtil.beginOfMonth(now),DateUtil.endOfMonth(now));
+        PurchaseOrderVo  test =purchaseOrderMapper.getOrder(queryWrapper);
+        queryWrapper.clear();
+        queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).orderByAsc("create_time");
+        queryWrapper.between("create_time",DateUtil.beginOfMonth(lastYear),DateUtil.endOfMonth(lastYear));
+        PurchaseOrderVo lastTest = purchaseOrderMapper.getOrder(queryWrapper);
+        test.setMonthRank(  calculateYOYZiJinYvE(getDouble(test.getPurchaseMoney()), getDouble(lastTest.getPurchaseMoney())));
 
+        queryWrapper.clear();
+        queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).orderByAsc("create_time");
+        queryWrapper.between("create_time",DateUtil.beginOfYear(lastYear),DateUtil.endOfYear(lastYear));
+        PurchaseOrderVo lastTestYear = purchaseOrderMapper.getOrder(queryWrapper);
+
+        test.setLastAvgPrice(String.format("%.2f",getDouble(lastTestYear.getPurchaseMoney())/12));
+        test.setRank("98");
+
+      /*  PurchaseOrderVo vo = new PurchaseOrderVo();
         QueryWrapper<PurchaseOrder> acceptMoneyMapper = new QueryWrapper<>();
         //收料金额和数量
         acceptMoneyMapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
@@ -105,11 +131,11 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
             QueryWrapper<PurchaseOrder> queryWrapper1 = new QueryWrapper<>();
             queryWrapper1.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
             queryWrapper1.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-            queryWrapper1.select(" sum(invoice_price) invoicePrice");
+            queryWrapper1.select(" sum(CONVERT(invoice_price, DECIMAL(10,2))) invoicePrice");
             PurchaseOrder order = purchaseOrderMapper.selectOne(queryWrapper1);//本月发票金额
             queryWrapper1.clear();
             queryWrapper1.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
-            queryWrapper1.select(" sum(invoice_price) invoicePrice");
+            queryWrapper1.select(" sum(CONVERT(invoice_price, DECIMAL(10,2))) invoicePrice");
             queryWrapper1.between("create_time", previousMonth + "-01 00:00:00", previousMonth + "-31 23:59:59");
             PurchaseOrder order1 = purchaseOrderMapper.selectOne(queryWrapper1);//上月发票金额
             if (ObjectUtil.isEmpty(order)) {
@@ -129,8 +155,6 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
         List<PurchaseOrder> orderList = purchaseOrderMapper.selectList(orderQueryWrapper);
         PurchaseOrder one = purchaseOrderMapper.selectOne(acceptMoneyMapper);
         double money = 0.00;
-//        double acceptNumber = 0.00;
-//        double acceptMoney = 0.00;
         double enterNumber = 0.00;
         double enterMoney = 0.00;
         double invoiceMoney = 0.00;
@@ -197,8 +221,8 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
             vo.setLastAvgPrice(def.format(Double.valueOf(purchaseOrder.getPurchaseMoney()) / 10000));
         } else {
             vo.setLastAvgPrice("0.00");
-        }
-        return vo;
+        }*/
+        return test;
     }
 
     @Override
@@ -212,7 +236,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
             queryWrapper.eq("order_type", orderType);
         }
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId).orderByAsc("create_time");
-        queryWrapper.select(" IFNULL(sum(purchase_money),'0') purchaseMoney,create_time createTime,IFNULL(count(DISTINCT order_number),'0') orderNumber");
+        queryWrapper.select(" IFNULL(sum(CONVERT(purchase_money, DECIMAL(10,2))),'0') purchaseMoney,create_time createTime,IFNULL(count(DISTINCT order_number),'0') orderNumber");
         BigDecimal math = new BigDecimal("10000");
         List<PurchaseOrderMoneyVo> list = new ArrayList<>();
 
@@ -273,24 +297,46 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
         }
         return list;
     }
+    @Autowired
+    private ErpBdRawMaterialMapper erpBdRawMaterialMapper;
 
     @Override
-    public List<PurchaseOrderTypeVo> orderType(PurchaseParam param) {
+    public PurchaseOrderTypeVo orderType(PurchaseParam param) {
         String orgId = param.getOrgId();
-        DateTime month = DateUtil.beginOfMonth(new Date());
-        DateTime year = DateUtil.beginOfYear(new Date());
-        LocalDate currentDate = LocalDate.now();
-        int lastYear = currentDate.getYear() - 1;
-        LocalDate lastYearSameDate = currentDate.minus(1, ChronoUnit.YEARS); // 减去一年
-        int lastYearSameMonth = lastYearSameDate.getMonthValue(); // 获取去年同月份
-        String lastMonth = "";
-        if (lastYearSameMonth > 9) {
-            lastMonth = String.valueOf(lastYearSameMonth);
-        } else {
-            lastMonth = "0" + lastYearSameMonth;
+        String maerName = param.getMaerName();
+        String erpFnumber = param.getErpFnumber();
+        String time = param.getTime();
+        DateTime currentDate = new DateTime();
+        if (StringUtils.isNotBlank(time)){
+             currentDate = DateUtil.parse(time, "yyyy-MM");
         }
+
+        DateTime beginOfMonth = DateUtil.beginOfMonth(currentDate);
+        DateTime endOfMonth = DateUtil.endOfMonth(currentDate);
+        DateTime beginOfYear = DateUtil.beginOfYear(currentDate);
+        DateTime endOfYear = DateUtil.endOfYear(currentDate);
+        DateTime lastCurrenDate  = DateUtil.offset(currentDate, DateField.YEAR,-1);
+        DateTime lastbeginOfMonth = DateUtil.beginOfMonth(lastCurrenDate);
+        DateTime lastendOfMonth = DateUtil.endOfMonth(lastCurrenDate);
+        DateTime lastbeginOfYear = DateUtil.beginOfYear(lastCurrenDate);
+        DateTime lastendOfYear = DateUtil.endOfYear(lastCurrenDate);
+
         SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        List<PurchaseOrderTypeVo> orderTypeVos = purchaseOrderMapper.listType(sdf.format(month), sdf.format(year), lastYear + "-" + lastMonth, lastYear, orgId);
+        List<ErpBdRawMaterial> erpBdRawMaterials = erpBdRawMaterialMapper.selectList(new QueryWrapper<ErpBdRawMaterial>()
+                .eq(StringUtils.isNotBlank(orgId), "org_id", orgId).eq(StringUtils.isNotBlank(erpFnumber), "erp_fnumber", erpFnumber));
+        Integer materalId =0;
+        if (ObjectUtil.isNotEmpty(erpBdRawMaterials)){
+             materalId = erpBdRawMaterials.get(0).getMateralId();
+        }
+        PurchaseOrderTypeVo orderTypeVos = purchaseOrderMapper.listType(beginOfMonth,
+                endOfMonth,
+                beginOfYear,
+                endOfYear,
+                lastbeginOfMonth,
+                lastendOfMonth,
+                lastbeginOfYear,
+                lastendOfYear,
+               orgId,materalId);
         return orderTypeVos;
     }
 
@@ -302,7 +348,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
         queryWrapper.eq(StringUtils.isNotBlank(param.getOrgId()), "org_id", param.getOrgId());
 
         queryWrapper.between("create_time", Integer.parseInt(substring)+"-01-01 00:00:00",Integer.parseInt(substring) + "-12-31 23:59:59");
-        queryWrapper.select(" IFNULL(sum(purchase_money),'0') purchaseMoney,create_time createTime");
+        queryWrapper.select(" IFNULL(sum(CONVERT(purchase_money, DECIMAL(10,2))),'0') purchaseMoney,create_time createTime");
         queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y-%m')");
         List<PurchaseOrder> orders = purchaseOrderMapper.selectList(queryWrapper);
         queryWrapper.clear();
@@ -310,7 +356,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
 
 
         queryWrapper.between("create_time", Integer.parseInt(substring)-1 + "-01-01 00:00:00", Integer.parseInt(substring)-1 + "-12-31 23:59:59");
-        queryWrapper.select(" IFNULL(sum(purchase_money),'0') purchaseMoney,create_time createTime");
+        queryWrapper.select(" IFNULL(sum(CONVERT(purchase_money, DECIMAL(10,2))),'0') purchaseMoney,create_time createTime");
         queryWrapper.groupBy("DATE_FORMAT(create_time,'%Y-%m')");
         List<PurchaseOrder> orders1 = purchaseOrderMapper.selectList(queryWrapper);
         List<PurchaseMoneyVo> list = new ArrayList<>();
@@ -525,6 +571,13 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
         return list;
     }
 
+
+    @Override
+    public List<ErpBdRawMaterial> getMater(PurchaseParam param) {
+        String orgId = param.getOrgId();
+        return purchasePriceMapper.getMater(orgId);
+    }
+
     private Double getDouble(String balance) {
         if (StringUtils.isBlank(balance)){
             return 0.0;

+ 8 - 8
huimv-farm/src/main/java/vip/xiaonuo/risk/service/impl/RiskTargetServiceImpl.java

@@ -48,14 +48,14 @@ public class RiskTargetServiceImpl extends ServiceImpl<RiskTargetMapper, RiskTar
         QueryWrapper<PurchaseOrder> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        queryWrapper.select(" IFNULL(sum(purchase_money),'0') purchaseMoney,IFNULL(sum(material_accept_price),'0') materialAcceptPrice" +
-                ",IFNULL(sum(enter_price),'0') enterPrice");
+        queryWrapper.select(" IFNULL(sum(CONVERT(purchase_money, DECIMAL(10,2))),'0') purchaseMoney,IFNULL(sum(CONVERT(material_accept_price, DECIMAL(10,2))),'0') materialAcceptPrice" +
+                ",IFNULL(sum(CONVERT(enter_price, DECIMAL(10,2))),'0') enterPrice");
         PurchaseOrder purchaseOrder = orderMapper.selectOne(queryWrapper);//yue
         queryWrapper.clear();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper.between("create_time", Integer.parseInt(year) + "-01-01 00:00:00", Integer.parseInt(year) + "-12-31 23:59:59");
-        queryWrapper.select(" IFNULL(sum(purchase_money),'0') purchaseMoney,IFNULL(sum(material_accept_price),'0') materialAcceptPrice" +
-                ",IFNULL(sum(enter_price),'0') enterPrice");
+        queryWrapper.select(" IFNULL(sum(CONVERT(purchase_money, DECIMAL(10,2))),'0') purchaseMoney,IFNULL(sum(CONVERT(material_accept_price, DECIMAL(10,2))),'0') materialAcceptPrice" +
+                ",IFNULL(sum(CONVERT(enter_price, DECIMAL(10,2))),'0') enterPrice");
         PurchaseOrder purchaseOrder1 = orderMapper.selectOne(queryWrapper);//nian
 
 
@@ -63,23 +63,23 @@ public class RiskTargetServiceImpl extends ServiceImpl<RiskTargetMapper, RiskTar
         QueryWrapper<SaleDetail> queryWrapper1 = new QueryWrapper<>();
         queryWrapper1.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper1.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        queryWrapper1.select(" IFNULL(sum(sale_money),'0') saleMoney,IFNULL(count(*),'0') saleNumber");
+        queryWrapper1.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney,IFNULL(count(*),'0') saleNumber");
         SaleDetail saleDetail = detailMapper.selectOne(queryWrapper1);//yue
         queryWrapper1.clear();
         queryWrapper1.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper1.between("create_time", Integer.parseInt(year) + "-01-01 00:00:00", Integer.parseInt(year) + "-12-31 23:59:59");
-        queryWrapper1.select(" IFNULL(sum(sale_money),'0') saleMoney,IFNULL(count(*),'0') saleNumber");
+        queryWrapper1.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney,IFNULL(count(*),'0') saleNumber");
         SaleDetail saleDetail1 = detailMapper.selectOne(queryWrapper1);
 
         QueryWrapper<SaleDeliver> queryWrapper2 = new QueryWrapper<>();
         queryWrapper2.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper2.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        queryWrapper2.select(" IFNULL(sum(sale_deliver_money),'0') saleDeliverMoney");
+        queryWrapper2.select(" IFNULL(sum(CONVERT(sale_deliver_money, DECIMAL(10,2))),'0') saleDeliverMoney");
         SaleDeliver saleDeliver = deliverMapper.selectOne(queryWrapper2);
         queryWrapper2.clear();
         queryWrapper2.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper2.between("create_time", Integer.parseInt(year) + "-01-01 00:00:00", Integer.parseInt(year) + "-12-31 23:59:59");
-        queryWrapper2.select(" IFNULL(sum(sale_deliver_money),'0') saleDeliverMoney");
+        queryWrapper2.select(" IFNULL(sum(CONVERT(sale_deliver_money, DECIMAL(10,2))),'0') saleDeliverMoney");
         SaleDeliver saleDeliver1 = deliverMapper.selectOne(queryWrapper2);
 
         BigDecimal math = new BigDecimal("10000");

+ 2 - 2
huimv-farm/src/main/java/vip/xiaonuo/sale/service/impl/SaleDetailServiceImpl.java

@@ -46,8 +46,8 @@ public class SaleDetailServiceImpl extends ServiceImpl<SaleDetailMapper, SaleDet
         QueryWrapper<SaleDetail> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId)
                 .eq(StringUtils.isNotBlank(produceName), "produce_name", produceName);
-        queryWrapper.select(" convert(IFNULL(sum(sale_money),'0'),decimal(10,2)) saleMoney,customer customer");
-        queryWrapper.orderByDesc("sale_money");
+        queryWrapper.select(" convert(IFNULL(sum(sale_money),'0'),decimal(20,2)) saleMoney,customer customer");
+        queryWrapper.orderByDesc("saleMoney");
         queryWrapper.groupBy("customer");
         List<SaleDetail> saleDetails = detailMapper.selectList(queryWrapper);
         JSONArray jsonArray = new JSONArray();

+ 1 - 3
huimv-farm/src/main/java/vip/xiaonuo/sale/service/impl/SaleSalesmanServiceImpl.java

@@ -38,6 +38,7 @@ public class SaleSalesmanServiceImpl extends ServiceImpl<SaleSalesmanMapper, Sal
 //        String time = salesmanParam.getTime();
         QueryWrapper<SaleSalesman> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        queryWrapper.isNotNull("salesman_money");
         queryWrapper.le("create_time", DateUtil.beginOfYear(new Date()));
         queryWrapper.select(" salesman_name salesmanName,IFNULL(sum(salesman_money),'0') salesmanMoney");
         queryWrapper.groupBy("salesman_name");
@@ -46,9 +47,6 @@ public class SaleSalesmanServiceImpl extends ServiceImpl<SaleSalesmanMapper, Sal
         for (SaleSalesman saleSalesman : saleSalesmens) {
             BigDecimal bg = new BigDecimal(saleSalesman.getSalesmanMoney());
             saleSalesman.setSalesmanMoney(bg.divide(math, 2, RoundingMode.HALF_UP).toString());
-            if (saleSalesman.getSalesmanName() == null) {
-                saleSalesman.setSalesmanName("无名");
-            }
         }
         List<SaleSalesman> list = jsonArraySort(saleSalesmens, false);
         return list;

+ 29 - 26
huimv-farm/src/main/java/vip/xiaonuo/sale/service/impl/SaleTargetServiceImpl.java

@@ -66,46 +66,46 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
         QueryWrapper<SaleDeliver> deliverQueryWrapper = new QueryWrapper<>();
         deliverQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         deliverQueryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        deliverQueryWrapper.select(" IFNULL(sum(sale_deliver_money),'0') saleDeliverMoney");
+        deliverQueryWrapper.select(" IFNULL(sum(CONVERT(sale_deliver_money, DECIMAL(10,2))),'0') saleDeliverMoney");
         SaleDeliver monthDeliver = deliverMapper.selectOne(deliverQueryWrapper);
         deliverQueryWrapper.clear();
         deliverQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         deliverQueryWrapper.between("create_time", year + "-01-01 00:00:00", year + "-12-31 23:59:59");
-        deliverQueryWrapper.select(" IFNULL(sum(sale_deliver_money),'0') saleDeliverMoney");
+        deliverQueryWrapper.select(" IFNULL(sum(CONVERT(sale_deliver_money, DECIMAL(10,2))),'0') saleDeliverMoney");
         SaleDeliver yearDeliver = deliverMapper.selectOne(deliverQueryWrapper);
         //销售发票金额
         QueryWrapper<SaleInvoice> invoiceQueryWrapper = new QueryWrapper<>();
         invoiceQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         invoiceQueryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        invoiceQueryWrapper.select(" IFNULL(sum(sale_invoice_money),'0') saleInvoiceMoney");
+        invoiceQueryWrapper.select(" IFNULL(sum(CONVERT(sale_invoice_money, DECIMAL(10,2))),'0') saleInvoiceMoney");
         SaleInvoice monthInvoice = invoiceMapper.selectOne(invoiceQueryWrapper);
         invoiceQueryWrapper.clear();
         invoiceQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         invoiceQueryWrapper.between("create_time", year + "-01-01 00:00:00", year + "-12-31 23:59:59");
-        invoiceQueryWrapper.select(" IFNULL(sum(sale_invoice_money),'0') saleInvoiceMoney");
+        invoiceQueryWrapper.select(" IFNULL(sum(CONVERT(sale_invoice_money, DECIMAL(10,2))),'0') saleInvoiceMoney");
         SaleInvoice yearInvoice = invoiceMapper.selectOne(invoiceQueryWrapper);
         //销售订单金额和合同金额
         QueryWrapper<SaleOrder> orderQueryWrapper = new QueryWrapper<>();
         orderQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         orderQueryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        orderQueryWrapper.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        orderQueryWrapper.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney");
         SaleOrder monthOrder = orderMapper.selectOne(orderQueryWrapper);
         orderQueryWrapper.clear();
         orderQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         orderQueryWrapper.between("create_time", year + "-01-01 00:00:00", year + "-12-31 23:59:59");
-        orderQueryWrapper.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        orderQueryWrapper.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney");
         SaleOrder yearOrder = orderMapper.selectOne(orderQueryWrapper);
 
 
         QueryWrapper<SaleTarget> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        queryWrapper.select(" IFNULL(sum(visit_number),'0') visitNumber");
+        queryWrapper.select(" IFNULL(sum(CONVERT(visit_number, DECIMAL(10,2))),'0') visitNumber");
         SaleTarget monthTarget = targetMapper.selectOne(queryWrapper);
         queryWrapper.clear();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper.between("create_time", year + "-01-01 00:00:00", year + "-12-31 23:59:59");
-        queryWrapper.select(" IFNULL(sum(visit_number),'0') visitNumber");
+        queryWrapper.select(" IFNULL(sum(CONVERT(visit_number, DECIMAL(10,2))),'0') visitNumber");
         SaleTarget yearTarget = targetMapper.selectOne(queryWrapper);
 
 
@@ -124,12 +124,12 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
         QueryWrapper<SaleDetail> queryWrapper2 = new QueryWrapper<>();
         queryWrapper2.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper2.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        queryWrapper2.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        queryWrapper2.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney");
         SaleDetail monthSaleDetail = saleDetailMapper.selectOne(queryWrapper2);
         queryWrapper2.clear();
         queryWrapper2.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         queryWrapper2.between("create_time", year + "-01-01 00:00:00", year + "-12-31 23:59:59");
-        queryWrapper2.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        queryWrapper2.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney");
         SaleDetail yearDaleDetail = saleDetailMapper.selectOne(queryWrapper2);
         BigDecimal bg6 = new BigDecimal(monthSaleDetail.getSaleMoney());
         BigDecimal bg7 = new BigDecimal(yearDaleDetail.getSaleMoney());
@@ -196,24 +196,24 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
         QueryWrapper<SaleOrder> orderQueryWrapper = new QueryWrapper<>();
         orderQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         orderQueryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        orderQueryWrapper.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        orderQueryWrapper.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney");
         SaleOrder monthOrder = orderMapper.selectOne(orderQueryWrapper);
         orderQueryWrapper.clear();
         orderQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         orderQueryWrapper.between("create_time", lastYear+"-"+month + "-01 00:00:00", lastYear+"-"+month + "-31 23:59:59");
-        orderQueryWrapper.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        orderQueryWrapper.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney");
         SaleOrder yearOrder = orderMapper.selectOne(orderQueryWrapper);
 
 
         orderQueryWrapper.clear();
         orderQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         orderQueryWrapper.between("create_time", year+"-01-01 00:00:00", year+ "-12-31 23:59:59");
-        orderQueryWrapper.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        orderQueryWrapper.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney");
         SaleOrder orderYear = orderMapper.selectOne(orderQueryWrapper);
         orderQueryWrapper.clear();
         orderQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         orderQueryWrapper.between("create_time", lastYear+"-01-01 00:00:00", lastYear+ "-12-31 23:59:59");
-        orderQueryWrapper.select(" IFNULL(sum(sale_money),'0') saleMoney");
+        orderQueryWrapper.select(" IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney");
         SaleOrder lastOrderYear = orderMapper.selectOne(orderQueryWrapper);
         vo.setYearSaleMoneyRate(calculateYOYChange(Double.parseDouble(yearOrder.getSaleMoney()),Double.parseDouble(lastOrderYear.getSaleMoney())));
 
@@ -221,24 +221,24 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
         QueryWrapper<SaleDeliver> deliverQueryWrapper = new QueryWrapper<>();
         deliverQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         deliverQueryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
-        deliverQueryWrapper.select(" IFNULL(sum(sale_deliver_money),'0') saleDeliverMoney");
+        deliverQueryWrapper.select(" IFNULL(sum(CONVERT(sale_deliver_money, DECIMAL(10,2))),'0') saleDeliverMoney");
         SaleDeliver monthDeliver = deliverMapper.selectOne(deliverQueryWrapper);
         deliverQueryWrapper.clear();
         deliverQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         deliverQueryWrapper.between("create_time", lastYear+"-"+month + "-01 00:00:00", lastYear+"-"+month + "-31 23:59:59");
-        deliverQueryWrapper.select(" IFNULL(sum(sale_deliver_money),'0') saleDeliverMoney");
+        deliverQueryWrapper.select(" IFNULL(sum(CONVERT(sale_deliver_money, DECIMAL(10,2))),'0') saleDeliverMoney");
         SaleDeliver yearDeliver = deliverMapper.selectOne(deliverQueryWrapper);
 
         deliverQueryWrapper.clear();
         deliverQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         deliverQueryWrapper.between("create_time", year+"-01-01 00:00:00", year+"-12-31 23:59:59");
-        deliverQueryWrapper.select(" IFNULL(sum(sale_deliver_money),'0') saleDeliverMoney");
+        deliverQueryWrapper.select(" IFNULL(sum(CONVERT(sale_deliver_money, DECIMAL(10,2))),'0') saleDeliverMoney");
         SaleDeliver deliverYear = deliverMapper.selectOne(deliverQueryWrapper);
 
         deliverQueryWrapper.clear();
         deliverQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         deliverQueryWrapper.between("create_time", lastYear+"-01-01 00:00:00", lastYear+"-12-31 23:59:59");
-        deliverQueryWrapper.select(" IFNULL(sum(sale_deliver_money),'0') saleDeliverMoney");
+        deliverQueryWrapper.select(" IFNULL(sum(CONVERT(sale_deliver_money, DECIMAL(10,2))),'0') saleDeliverMoney");
         SaleDeliver lastDeliverYear = deliverMapper.selectOne(deliverQueryWrapper);
 
         vo.setYearSaleDeliverMoneyRate(calculateYOYChange(Double.parseDouble(yearDeliver.getSaleDeliverMoney()),Double.parseDouble(lastDeliverYear.getSaleDeliverMoney())));
@@ -247,19 +247,22 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
         //逾期应收款金额
         QueryWrapper<MoneyWriteOverdue> saleReceiveQueryWrapper = new QueryWrapper<>();
         saleReceiveQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
+        saleReceiveQueryWrapper.eq("document_type", 1);
         saleReceiveQueryWrapper.between("deadline", time + "-01 00:00:00", time + "-31 23:59:59");
-        saleReceiveQueryWrapper.select("IFNULL(sum(rmbje),'0') rmbje");
+        saleReceiveQueryWrapper.select("IFNULL(sum(CONVERT(rmbje, DECIMAL(10,2))),'0') rmbje");
         MoneyWriteOverdue monthReceive = writeOverdueMapper.selectOne(saleReceiveQueryWrapper);
         saleReceiveQueryWrapper.clear();
         saleReceiveQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
         saleReceiveQueryWrapper.between("deadline", lastYear+"-"+month + "-01 00:00:00", lastYear+"-"+month + "-31 23:59:59");
-        saleReceiveQueryWrapper.select(" IFNULL(sum(rmbje),'0') rmbje");
+        saleReceiveQueryWrapper.select(" IFNULL(sum(CONVERT(rmbje, DECIMAL(10,2))),'0') rmbje");
+        saleReceiveQueryWrapper.eq("document_type", 1);
         MoneyWriteOverdue yearReceive = writeOverdueMapper.selectOne(saleReceiveQueryWrapper);
 
 
         saleReceiveQueryWrapper.clear();
         saleReceiveQueryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
-        saleReceiveQueryWrapper.select("ROUND(IFNULL(SUM(rmbje),0) /10000,2)  rmbje");
+        saleReceiveQueryWrapper.select("ROUND(IFNULL(sum(CONVERT(rmbje, DECIMAL(10,2))),0) /10000,2)  rmbje");
+        saleReceiveQueryWrapper.eq("document_type", 1);
         MoneyWriteOverdue countReceive = writeOverdueMapper.selectOne(saleReceiveQueryWrapper);
 
 
@@ -386,10 +389,10 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
 //        queryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
         queryWrapper.orderByAsc("create_time");
         if (0 == type) {
-            queryWrapper.select("convert(IFNULL(sum(visit_number),'0'),decimal(10,2)) visitNumber,create_time createTime");
+            queryWrapper.select("convert(IFNULL(sum(CONVERT(visit_number, DECIMAL(10,2))),'0'),decimal(10,2)) visitNumber,create_time createTime");
             queryWrapper.groupBy("DATE_FORMAT(create_time,'%y-%m')");
         } else {
-            queryWrapper.select("convert(IFNULL(sum(visit_number),'0'),decimal(10,2)) visitNumber,create_time createTime");
+            queryWrapper.select("convert(IFNULL(sum(CONVERT(visit_number, DECIMAL(10,2))),'0'),decimal(10,2)) visitNumber,create_time createTime");
             queryWrapper.groupBy("DATE_FORMAT(create_time,'%y')");
         }
 
@@ -422,10 +425,10 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
 //        queryWrapper.between("create_time", time + "-01 00:00:00", time + "-31 23:59:59");
         queryWrapper.orderByAsc("create_time");
         if (0 == type) {
-            queryWrapper.select("IFNULL(sum(sale_money),'0') saleMoney,create_time createTime");
+            queryWrapper.select("IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney,create_time createTime");
             queryWrapper.groupBy("DATE_FORMAT(create_time,'%y-%m')");
         } else {
-            queryWrapper.select("IFNULL(sum(sale_money),'0') saleMoney,create_time createTime");
+            queryWrapper.select("IFNULL(sum(CONVERT(sale_money, DECIMAL(10,2))),'0') saleMoney,create_time createTime");
             queryWrapper.groupBy("DATE_FORMAT(create_time,'%y')");
         }
 
@@ -458,7 +461,7 @@ public class SaleTargetServiceImpl extends ServiceImpl<SaleTargetMapper, SaleTar
         Page<SaleTarget> page = new Page<>(pageNum, pageSize);
         QueryWrapper<SaleTarget> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq(StringUtils.isNotBlank(orgId), "org_id", orgId);
-        queryWrapper.select(" IFNULL(sum(visit_number),'0') visitNumber,customer_name customerName");
+        queryWrapper.select(" IFNULL(sum(CONVERT(visit_number, DECIMAL(10,2))),'0') visitNumber,customer_name customerName");
         queryWrapper.orderByDesc("visit_number");
         queryWrapper.groupBy("customer_name");
         Page<SaleTarget> targets = targetMapper.selectPage(page, queryWrapper);

+ 32 - 19
huimv-farm/src/main/resources/mapper/HrBaseEmployeeInfoMapper.xml

@@ -3,14 +3,26 @@
 <mapper namespace="vip.xiaonuo.hr.modular.baseemployeeinfo.mapper.HrBaseEmployeeInfoMapper">
 
     <select id="listByEoucation" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
-        SELECT b.NAME departmentName ,COUNT(a.ID) countNum FROM `hr_base_employee_info` a JOIN `hr_base_department` b ON
-        a.DEPARTMENT_ID = b.ID
-        where
+
+
+
+        SELECT
+        b.NAME AS departmentName,
+        IFNULL(COUNT(a.ID), 0) AS countNum
+        FROM
+        `hr_base_department` b
+        LEFT JOIN
+        `hr_base_employee_info` a ON a.DEPARTMENT_ID = b.ID
+        AND a.USER_TYPE = 0
+        AND a.CULTURE_LEVEL > 4
+
         <if test="orgId!=null and orgId!=''">
-            a.ORG_ID = #{orgId} AND
+            where   a.ORG_ID = #{orgId}
         </if>
-        a.USER_TYPE =0 AND a.EDUCATION >2 GROUP BY a.DEPARTMENT_ID
-        order by count(a.ID)
+        GROUP BY
+        b.ID, b.NAME
+        ORDER BY
+        COUNT(a.ID);
     </select>
     <select id="listByDepart" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
         SELECT
@@ -46,12 +58,13 @@
             resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.EoucationVo">
         SELECT
         b.NAME AS departmentName ,
-        SUM(CASE WHEN a.EDUCATION = 0 THEN 1 ELSE 0 END) AS priNum,
-        SUM(CASE WHEN a.EDUCATION = 1 THEN 1 ELSE 0 END) AS midNum,
-        SUM(CASE WHEN a.EDUCATION = 2 THEN 1 ELSE 0 END) AS highNum,
-        SUM(CASE WHEN a.EDUCATION = 3 THEN 1 ELSE 0 END) AS underNum,
-        SUM(CASE WHEN a.EDUCATION = 4 THEN 1 ELSE 0 END) AS postNum,
-        SUM(CASE WHEN a.EDUCATION = 5 THEN 1 ELSE 0 END) AS phdNum
+        SUM(CASE WHEN a.CULTURE_LEVEL = 0 THEN 1 ELSE 0 END) AS priNum,
+        SUM(CASE WHEN a.CULTURE_LEVEL = 1 THEN 1 ELSE 0 END) AS midNum,
+        SUM(CASE WHEN a.CULTURE_LEVEL = 2 THEN 1 ELSE 0 END) AS highNum,
+        SUM(CASE WHEN a.CULTURE_LEVEL = 4 THEN 1 ELSE 0 END) AS daZhuan,
+        SUM(CASE WHEN a.CULTURE_LEVEL = 5 THEN 1 ELSE 0 END) AS underNum,
+        SUM(CASE WHEN a.CULTURE_LEVEL = 6 THEN 1 ELSE 0 END) AS postNum,
+        SUM(CASE WHEN a.CULTURE_LEVEL = 7 THEN 1 ELSE 0 END) AS phdNum
         FROM
         `hr_base_department` b
         LEFT JOIN
@@ -106,13 +119,13 @@
     </select>
     <select id="gongLingDis" resultType="vip.xiaonuo.hr.modular.baseemployeeinfo.entity.vo.PerNum">
         select
-        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 0 AND 1 THEN 1 ELSE 0 END),'0') AS '1年',
-        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 2 AND 5 THEN 1 ELSE 0 END),'0') AS '5年',
-        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 6 AND 10 THEN 1 ELSE 0 END),'0') AS '10年',
-        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 11 AND 15 THEN 1 ELSE 0 END),'0') AS '15年',
-        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 16 AND 20 THEN 1 ELSE 0 END),'0') AS '20年',
-        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 21 AND 25 THEN 1 ELSE 0 END),'0') AS '25年',
-        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 26 AND 30 THEN 1 ELSE 0 END),'0') AS '30年'
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 0 AND 1 THEN 1 ELSE 0 END),'0') AS 'one',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 2 AND 5 THEN 1 ELSE 0 END),'0') AS 'five',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 6 AND 10 THEN 1 ELSE 0 END),'0') AS 'ten',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 11 AND 15 THEN 1 ELSE 0 END),'0') AS 'oneFive',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 16 AND 20 THEN 1 ELSE 0 END),'0') AS 'twoZ',
+        IFNULL(SUM(CASE WHEN SENIORITY BETWEEN 21 AND 25 THEN 1 ELSE 0 END),'0') AS 'twoFive',
+        IFNULL(SUM(CASE WHEN SENIORITY> 26  THEN 1 ELSE 0 END ),'0') AS 'threeZ'
         FROM
         `hr_base_employee_info`
         WHERE

+ 13 - 26
huimv-farm/src/main/resources/mapper/MoneyOverdueMapper.xml

@@ -5,33 +5,20 @@
 
     <select id="getUserRank" resultType="vip.xiaonuo.money.entity.vo.MoneyBorrowUserVo">
 
-    w.`user_name` as userName,
-    w.collect_price as collectPrice,
-    COALESCE(o.rmbje, 0) AS overduePrice
-FROM
-    `money_overdue`  AS w
-LEFT JOIN
-    money_write_overdue AS o
-ON
-    w.user_name = o.user_name
-    WHERE date_time between #{startTime} and #{endTime}
+        SELECT
+        user_name,
+        ROUND(SUM(CASE WHEN document_type = '0' THEN rmbje ELSE 0 END) /10000, 2) AS collectPrice,
+        ROUND(SUM(CASE WHEN document_type = '1' THEN rmbje ELSE 0 END)/10000, 2) AS overduePrice,
+        ROUND(SUM(rmbje) /10000, 2) AS total_rmbje
+        FROM
+        `money_write_overdue`
+        where 1= 1
         <if test="orgId!=null and orgId!=''">
-            and  w.org_id = #{orgId}
+            and   org_id = #{orgId}
         </if>
-	GROUP BY  w.user_name
-	ORDER BY w.collect_price DESC
-
-<!--        SELECT-->
-<!--        user_name as userName,-->
-<!--        sum(rmbje) as collectPrice,-->
-<!--        COALESCE(rmbje, 0) AS overduePrice-->
-<!--        FROM-->
-<!--        money_write_overdue-->
-
-<!--        <if test="orgId!=null and orgId!=''">-->
-<!--            where  org_id = #{orgId}-->
-<!--        </if>-->
-<!--             GROUP BY  user_name-->
-<!--            ORDER BY rmbje DESC-->
+        GROUP BY
+        user_name
+        ORDER BY
+        total_rmbje DESC LIMIT 20;
     </select>
 </mapper>

+ 23 - 10
huimv-farm/src/main/resources/mapper/PurchaseOrderMapper.xml

@@ -2,19 +2,23 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="vip.xiaonuo.purchase.mapper.PurchaseOrderMapper">
 
-
     <select id="listType" resultType="vip.xiaonuo.purchase.entity.vo.PurchaseOrderTypeVo">
-        select material as 'material',
-        IFNULL(sum(case when create_time >=#{month} then purchase_money else 0 end),'0') as 'monthMoney',
-        IFNULL(sum(case when create_time >=#{year} then purchase_money else 0 end),'0') as 'yearMoney',
-        IFNULL(sum(case when create_time between '${lastMonth}-01 00:00:00' and '${lastMonth}-31 23:59:59' then purchase_money else 0 end),'0') as 'lastMonthMoney',
-        IFNULL(sum(case when create_time between '${lastYear}-01-01 00:00:00' and '${lastYear}-12-31 23:59:59' then purchase_money else 0 end),'0') as 'lastYearMoney'
-        from purchase_order
-        WHERE  material IS NOT NULL
+        SELECT
+        a.material AS 'material',
+        ROUND(IFNULL(SUM(CASE WHEN a.create_time BETWEEN #{beginOfMonth} AND  #{endOfMonth} THEN a.purchase_money ELSE 0 END), 0)/10000, 2) AS 'monthMoney',
+        ROUND(IFNULL(SUM(CASE WHEN a.create_time BETWEEN #{beginOfYear} AND  #{endOfYear}THEN a.purchase_money ELSE 0 END), 0)/10000, 2) AS 'yearMoney',
+        ROUND( IFNULL(SUM(CASE WHEN a.create_time BETWEEN #{lastbeginOfMonth} AND  #{lastendOfMonth}  THEN a.purchase_money ELSE 0 END), 0)/10000, 2) AS 'lastMonthMoney',
+        ROUND(IFNULL(SUM(CASE WHEN a.create_time BETWEEN #{lastbeginOfYear} AND  #{lastendOfYear} THEN a.purchase_money ELSE 0 END), 0)/10000, 2) AS 'lastYearMoney'
+        FROM
+        purchase_order a
+        where 1= 1
+        <if test="materalId  !=null ">
+            and a.fnumber = #{materalId}
+        </if>
         <if test="orgId!=null and orgId!=''">
-            and org_id=#{orgId}
+            and  a.org_id = #{orgId}
         </if>
-        group by material
+
     </select>
 
     <select id="getSupplier" resultType="vip.xiaonuo.purchase.entity.vo.PurchaseMaterialVo">
@@ -74,4 +78,13 @@ FROM
  ${ew.customSqlSegment}
 
     </select>
+    <select id="getOrder" resultType="vip.xiaonuo.purchase.entity.vo.PurchaseOrderVo">
+        SELECT   ROUND (IFNULL(SUM(CONVERT(purchase_money, DECIMAL(10,2))),0)/10000 ,2)purchaseMoney , ROUND (IFNULL(SUM(CONVERT(material_accept_price, DECIMAL(10,2))),0)/10000 ,2) materialAcceptPrice
+        ,ROUND (IFNULL(SUM(CONVERT(enter_price, DECIMAL(10,2))),0)/10000 ,2) enterPrice , ROUND (IFNULL(SUM(CONVERT(invoice_price, DECIMAL(10,2))),0)/10000 ,2) invoicePrice
+        , ROUND (IFNULL(SUM(CONVERT(material_accept_number, DECIMAL(10,2))),0) ,2) materialAcceptNumber , ROUND (IFNULL(SUM(CONVERT(enter_number, DECIMAL(10,2))),0) ,2) enterNumber
+        ,COUNT(DISTINCT order_number) orderNumber    ,COUNT(DISTINCT remark_rk) invoiceNumber
+        FROM `purchase_order`
+ ${ew.customSqlSegment}
+
+    </select>
 </mapper>

+ 7 - 0
huimv-farm/src/main/resources/mapper/PurchasePriceMapper.xml

@@ -28,4 +28,11 @@ SELECT   ROUND(IFNULL(SUM(material_number), 0) , 2)   kuCunNum  , DATE_FORMAT(cr
       ${ew.customSqlSegment} and  DATE_FORMAT(date_time, '%Y-%m') = DATE_FORMAT(mb.create_time, '%Y-%m') ), 0)/10000, 2) AS kuCunMoney
 FROM `warehouse_stock_detail` mb  ${ew.customSqlSegment}   group by ymonth
 </select>
+    <select id="getMater" resultType="vip.xiaonuo.erp.entity.ErpBdRawMaterial">
+        select fname,erp_fnumber,fspecification from  erp_bd_raw_material where  erp_fnumber like '10%'
+        <if test="orgId!=null and orgId!=''">
+            and org_id = #{orgId}
+        </if>
+    </select>
+
 </mapper>

+ 2 - 1
huimv-farm/src/test/java/vip/xiaonuo/Bdest.java

@@ -325,7 +325,8 @@ public class Bdest {
             erpBdRawMaterial.setOrgId(forgid.getOrgId());
             erpBdRawMaterial.setErpFnumber(erpMaterial.getFnumber());
             erpBdRawMaterial.setFname(erpMaterial.getFname());
-            erpBdRawMaterial.setMaterialType(getType(erpBdRawMaterial.getErpFnumber()));
+            erpBdRawMaterial.setMaterialType(getType(erpMaterial.getFnumber()));
+            erpBdRawMaterial.setMateralId(erpMaterial.getFMATERIALID());
             erpBdRawMaterialMapper.insert(erpBdRawMaterial);
         }
     }

+ 18 - 8
huimv-farm/src/test/java/vip/xiaonuo/MainTest.java

@@ -395,6 +395,7 @@ public class MainTest {
         }
     }
 
+    //重新写了 TODO
     @Test
     public void  test8(){
         ResponseEntity<List<YingFuZhangKuan>> response = restTemplate.exchange(
@@ -413,15 +414,24 @@ public class MainTest {
 
             PurchasePay purchasePay = new PurchasePay();
             purchasePay.setCreateTime(forObject.getFDATE());
-            purchasePay.setEndTime(forObject.getFBOOKINGDATE());
+            purchasePay.setEndTime(forObject.getFENDDATE());
             purchasePay.setOrgId(forgid.getOrgId());
-            purchasePay.setPayableNumber(String.format("%.2f",forObject.getFNOTVERIFICATEAMOUNT()));
-            purchasePay.setPayableObject(forObject.getFBGLSHSJDW());
-            purchasePay.setPurchaseMaterial(forObject.getWuLiaoName());
-            purchasePay.setPurchaseNumber(String.format("%.2f",forObject.getFQTY()));
-            if (forObject.getFQTY() != 0.0){
-                purchasePay.setPrice(String.format("%.2f",forObject.getFNOTVERIFICATEAMOUNT() / forObject.getFQTY()));
-            }
+            purchasePay.setPayableNumber(String.format("%.2f",forObject.getFALLAMOUNTFOR()));
+            purchasePay.setPayableObject(forObject.getGysName());
+            purchasePay.setPurchaseMaterial(forObject.getFNAME());
+            purchasePay.setPurchaseNumber(String.format("%.2f",forObject.getFPriceQty()));
+             purchasePay.setPrice(String.format("%.2f",forObject.getFPrice() ));
+             purchasePay.setFTaxPrice(String.format("%.2f",forObject.getFTaxPrice() ));
+
+             purchasePay.setFBILLNO(forObject.getFBILLNO());
+             purchasePay.setFPURCHASEORGID(forObject.getFPURCHASEORGID());
+             purchasePay.setFPAYORGID(forObject.getFPAYORGID());
+             purchasePay.setFSUPPLIERID(forObject.getFSUPPLIERID());
+             purchasePay.setFSourceBillNo(forObject.getFSourceBillNo());
+             purchasePay.setFBGLCONTRACTL(forObject.getFBGLCONTRACTL());
+             purchasePay.setFMATERIALID(forObject.getFMATERIALID());
+             purchasePay.setFOrderEntryID(forObject.getFOrderEntryID());
+             purchasePay.setFSPECIFICATION(forObject.getFSPECIFICATION());
             payMapper.insert(purchasePay);
 
         }

+ 106 - 60
huimv-farm/src/test/java/vip/xiaonuo/XiaoShouTest.java

@@ -35,9 +35,11 @@ import vip.xiaonuo.erp.mapper.ErpBdOrgMapper;
 import vip.xiaonuo.money.entity.MoneyCost;
 import vip.xiaonuo.money.entity.MoneyOverdue;
 import vip.xiaonuo.money.entity.MoneyProduce;
+import vip.xiaonuo.money.entity.MoneyWriteOverdue;
 import vip.xiaonuo.money.mapper.MoneyCostMapper;
 import vip.xiaonuo.money.mapper.MoneyOverdueMapper;
 import vip.xiaonuo.money.mapper.MoneyProduceMapper;
+import vip.xiaonuo.money.mapper.MoneyWriteOverdueMapper;
 import vip.xiaonuo.sale.entity.*;
 import vip.xiaonuo.sale.mapper.*;
 import vip.xiaonuo.warehouse.entity.*;
@@ -93,18 +95,21 @@ public class XiaoShouTest {
     private MoneyOverdueMapper moneyOverdueMapper;
     @Autowired
     private SaleSalesmanMapper salesmanMapper;
+    @Autowired
+    private MoneyWriteOverdueMapper moneyWriteOverdueMapper;
 
 
     @Test
-    public void  test1(){
-            ResponseEntity<List<XiaoShouWanChenLvJinE>> response = restTemplate.exchange(
-                    "http://127.0.0.1:9200/erp-XiaoShou/getWanChengLv?date=",
-                    HttpMethod.GET,
-                    null,
-                    new ParameterizedTypeReference<List<XiaoShouWanChenLvJinE>>() {}
-            );
-            List<XiaoShouWanChenLvJinE> forObjects = response.getBody();
-            System.out.println(forObjects);
+    public void test1() {
+        ResponseEntity<List<XiaoShouWanChenLvJinE>> response = restTemplate.exchange(
+                "http://127.0.0.1:9200/erp-XiaoShou/getWanChengLv?date=",
+                HttpMethod.GET,
+                null,
+                new ParameterizedTypeReference<List<XiaoShouWanChenLvJinE>>() {
+                }
+        );
+        List<XiaoShouWanChenLvJinE> forObjects = response.getBody();
+        System.out.println(forObjects);
         for (XiaoShouWanChenLvJinE forObject : forObjects) {
             ErpBdOrg forgid = erpBdOrgMapper.selectOne(new QueryWrapper<ErpBdOrg>().eq("forgid", forObject.getFSALEORGID()));
             if (ObjectUtil.isEmpty(forgid))
@@ -115,8 +120,8 @@ public class XiaoShouTest {
             saleDetail.setOrgId(forgid.getOrgId());
             saleDetail.setProduceName(forObject.getWuLiaoName());
             saleDetail.setSaleContraceOrder(forObject.getFBILLNO());
-            saleDetail.setSaleMoney(String.format("%.2f",forObject.getFALLAMOUNTLC()));
-            saleDetail.setSaleNumber(String.format("%.2f",forObject.getFQTY()));
+            saleDetail.setSaleMoney(String.format("%.2f", forObject.getFALLAMOUNTLC()));
+            saleDetail.setSaleNumber(String.format("%.2f", forObject.getFQTY()));
             saleDetail.setSalesman(forObject.getFNAME());
             detailMapper.insert(saleDetail);
 
@@ -124,23 +129,23 @@ public class XiaoShouTest {
             SaleCustomer saleCustomer = new SaleCustomer();
             saleCustomer.setCreateTime(forObject.getFDATE());
             saleCustomer.setCustomer(forObject.getKeHuName());
-            saleCustomer.setSaleMoney(String.format("%.2f",forObject.getFALLAMOUNTLC()));
+            saleCustomer.setSaleMoney(String.format("%.2f", forObject.getFALLAMOUNTLC()));
             saleCustomer.setOrgId(forgid.getOrgId());
             customerMapper.insert(saleCustomer);
 
             SalePrice salePrice = new SalePrice();
             salePrice.setCreateTime(forObject.getFDATE());
             salePrice.setOrgId(forgid.getOrgId());
-            salePrice.setPrice(String.format("%.4f",forObject.getXiaoShouDanJia()));
+            salePrice.setPrice(String.format("%.4f", forObject.getXiaoShouDanJia()));
             salePrice.setProduceName(forObject.getWuLiaoName());
             priceMapper.insert(salePrice);
 
             SaleProduce saleProduce = new SaleProduce();
             saleProduce.setCreateTime(forObject.getFDATE());
             saleProduce.setOrgId(forgid.getOrgId());
-            saleProduce.setPrice(String.format("%.4f",forObject.getXiaoShouDanJia()));
+            saleProduce.setPrice(String.format("%.4f", forObject.getXiaoShouDanJia()));
             saleProduce.setProduceName(forObject.getWuLiaoName());
-            saleProduce.setSaleMoney(String.format("%.2f",forObject.getFALLAMOUNTLC()));
+            saleProduce.setSaleMoney(String.format("%.2f", forObject.getFALLAMOUNTLC()));
             produceMapper.insert(saleProduce);
 
 //             SaleOrder saleOrder = new SaleOrder();
@@ -153,9 +158,10 @@ public class XiaoShouTest {
 
         }
     }
+
     //订单金额
     @Test
-    public void  test8() {
+    public void test8() {
 
         // 销售费用,管理费用,财务费用,研发费用
         ResponseEntity<List<XiaoShouWanChenLvJinE>> response = restTemplate.exchange(
@@ -174,22 +180,23 @@ public class XiaoShouTest {
             SaleOrder saleOrder = new SaleOrder();
             saleOrder.setCreateTime(forObject.getFDATE());
             saleOrder.setOrgId(forgid.getOrgId());
-            saleOrder.setSaleMoney(String.format("%.2f",forObject.getFALLAMOUNTLC()));
-            saleOrder.setSaleNumber(String.format("%.2f",forObject.getFQTY()));
+            saleOrder.setSaleMoney(String.format("%.2f", forObject.getFALLAMOUNTLC()));
+            saleOrder.setSaleNumber(String.format("%.2f", forObject.getFQTY()));
             saleOrder.setSaleOrder(forObject.getFBILLNO());
             orderMapper.insert(saleOrder);
         }
     }
 
     @Test
-    public void  test2(){
+    public void test2() {
 
         // 销售费用,管理费用,财务费用,研发费用
         ResponseEntity<List<XiaoShouFeiYong>> response = restTemplate.exchange(
                 "http://127.0.0.1:9200/erp-XiaoShou/getXiaoShouFeiYong2?date=&number=",
                 HttpMethod.GET,
                 null,
-                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {}
+                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {
+                }
         );
         List<XiaoShouFeiYong> forObjects = response.getBody();
         System.out.println(forObjects);
@@ -206,23 +213,24 @@ public class XiaoShouTest {
             MoneyCost moneyCost = new MoneyCost();
             moneyCost.setCreateTime(forObject.getFDATE());
             moneyCost.setOrgId(forgid.getOrgId());
-            moneyCost.setSale(String.format("%.2f",forObject.getFCREDIT()));
+            moneyCost.setSale(String.format("%.2f", forObject.getFCREDIT()));
             moneyCost.setCompany(forgid.getFname());
             moneyCostMapper.insert(moneyCost);
         }
 
 
-
     }
+
     @Test
-    public void  test2_1(){
+    public void test2_1() {
 
         // 销售费用,管理费用,财务费用,研发费用
         ResponseEntity<List<XiaoShouFeiYong>> response = restTemplate.exchange(
                 "http://127.0.0.1:9200/erp-XiaoShou/getXiaoShouFeiYong2?date=&number=6601",
                 HttpMethod.GET,
                 null,
-                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {}
+                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {
+                }
         );
         List<XiaoShouFeiYong> forObjects = response.getBody();
         System.out.println(forObjects);
@@ -233,21 +241,23 @@ public class XiaoShouTest {
             MoneyCost moneyCost = new MoneyCost();
             moneyCost.setCreateTime(forObject.getFDATE());
             moneyCost.setOrgId(forgid.getOrgId());
-            moneyCost.setSale(String.format("%.2f",forObject.getFCREDIT()));
+            moneyCost.setSale(String.format("%.2f", forObject.getFCREDIT()));
             moneyCost.setCompany(forgid.getFname());
             moneyCost.setFname(forObject.getFname());
             moneyCostMapper.insert(moneyCost);
         }
     }
+
     @Test
-    public void  test2_2(){
+    public void test2_2() {
 
         // 销售费用,管理费用,财务费用,研发费用
         ResponseEntity<List<XiaoShouFeiYong>> response = restTemplate.exchange(
                 "http://127.0.0.1:9200/erp-XiaoShou/getXiaoShouFeiYong2?date=&number=6602",
                 HttpMethod.GET,
                 null,
-                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {}
+                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {
+                }
         );
         List<XiaoShouFeiYong> forObjects = response.getBody();
         System.out.println(forObjects);
@@ -258,21 +268,23 @@ public class XiaoShouTest {
             MoneyCost moneyCost = new MoneyCost();
             moneyCost.setCreateTime(forObject.getFDATE());
             moneyCost.setOrgId(forgid.getOrgId());
-            moneyCost.setManage(String.format("%.2f",forObject.getFCREDIT()));
+            moneyCost.setManage(String.format("%.2f", forObject.getFCREDIT()));
             moneyCost.setCompany(forgid.getFname());
             moneyCost.setFname(forObject.getFname());
             moneyCostMapper.insert(moneyCost);
         }
     }
+
     @Test
-    public void  test2_3(){
+    public void test2_3() {
 
         // 销售费用,管理费用,财务费用,研发费用
         ResponseEntity<List<XiaoShouFeiYong>> response = restTemplate.exchange(
                 "http://127.0.0.1:9200/erp-XiaoShou/getXiaoShouFeiYong2?date=&number=6603",
                 HttpMethod.GET,
                 null,
-                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {}
+                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {
+                }
         );
         List<XiaoShouFeiYong> forObjects = response.getBody();
         System.out.println(forObjects);
@@ -283,21 +295,23 @@ public class XiaoShouTest {
             MoneyCost moneyCost = new MoneyCost();
             moneyCost.setCreateTime(forObject.getFDATE());
             moneyCost.setOrgId(forgid.getOrgId());
-            moneyCost.setFinance(String.format("%.2f",forObject.getFCREDIT()));
+            moneyCost.setFinance(String.format("%.2f", forObject.getFCREDIT()));
             moneyCost.setCompany(forgid.getFname());
             moneyCost.setFname(forObject.getFname());
             moneyCostMapper.insert(moneyCost);
         }
     }
+
     @Test
-    public void  test2_4(){
+    public void test2_4() {
 
         // 销售费用,管理费用,财务费用,研发费用
         ResponseEntity<List<XiaoShouFeiYong>> response = restTemplate.exchange(
                 "http://127.0.0.1:9200/erp-XiaoShou/getXiaoShouFeiYong2?date=&number=6605",
                 HttpMethod.GET,
                 null,
-                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {}
+                new ParameterizedTypeReference<List<XiaoShouFeiYong>>() {
+                }
         );
         List<XiaoShouFeiYong> forObjects = response.getBody();
         System.out.println(forObjects);
@@ -308,7 +322,7 @@ public class XiaoShouTest {
             MoneyCost moneyCost = new MoneyCost();
             moneyCost.setCreateTime(forObject.getFDATE());
             moneyCost.setOrgId(forgid.getOrgId());
-            moneyCost.setResearch(String.format("%.2f",forObject.getFCREDIT()));
+            moneyCost.setResearch(String.format("%.2f", forObject.getFCREDIT()));
             moneyCost.setCompany(forgid.getFname());
             moneyCost.setFname(forObject.getFname());
             moneyCostMapper.insert(moneyCost);
@@ -316,12 +330,13 @@ public class XiaoShouTest {
     }
 
     @Test
-    public void  test3(){
+    public void test3() {
         ResponseEntity<List<XiaoShouFaHuoJinEKeHuGongXian>> response = restTemplate.exchange(
                 "http://127.0.0.1:9200/erp-XiaoShou/getXiaoShouFaHuoJinEKeHuGongXian?date=",
                 HttpMethod.GET,
                 null,
-                new ParameterizedTypeReference<List<XiaoShouFaHuoJinEKeHuGongXian>>() {}
+                new ParameterizedTypeReference<List<XiaoShouFaHuoJinEKeHuGongXian>>() {
+                }
         );
         List<XiaoShouFaHuoJinEKeHuGongXian> forObjects = response.getBody();
         for (XiaoShouFaHuoJinEKeHuGongXian forObject : forObjects) {
@@ -331,14 +346,14 @@ public class XiaoShouTest {
             SaleDeliver saleDeliver = new SaleDeliver();
             saleDeliver.setCreateTime(forObject.getFDATE());
             saleDeliver.setOrgId(forgid.getOrgId());
-            saleDeliver.setSaleDeliverMoney(String.format("%.2f",forObject.getFALLAMOUNTLC()));
-            saleDeliver.setSaleDeliverNumber(String.format("%.2f",forObject.getFREALQTY()));
+            saleDeliver.setSaleDeliverMoney(String.format("%.2f", forObject.getFALLAMOUNTLC()));
+            saleDeliver.setSaleDeliverNumber(String.format("%.2f", forObject.getFREALQTY()));
             saleDeliver.setSaleOrder(forObject.getFBILLNO());
             deliverMapper.insert(saleDeliver);
             SaleSalesman saleSalesman = new SaleSalesman();
             saleSalesman.setCreateTime(forObject.getFDATE());
             saleSalesman.setOrgId(forgid.getOrgId());
-            saleSalesman.setSalesmanMoney(String.format("%.2f",forObject.getFALLAMOUNTLC()));
+            saleSalesman.setSalesmanMoney(String.format("%.2f", forObject.getFALLAMOUNTLC()));
             saleSalesman.setSalesmanName(forObject.getXiaoShouName());
             salesmanMapper.insert(saleSalesman);
         }
@@ -346,12 +361,13 @@ public class XiaoShouTest {
     }
 
     @Test
-    public void  test4(){
+    public void test4() {
         ResponseEntity<List<XiaoShouFaPiaoJinE>> response = restTemplate.exchange(
                 "http://127.0.0.1:9200/erp-XiaoShou/getXiaoShouFaPiaoJinE?date=",
                 HttpMethod.GET,
                 null,
-                new ParameterizedTypeReference<List<XiaoShouFaPiaoJinE>>() {}
+                new ParameterizedTypeReference<List<XiaoShouFaPiaoJinE>>() {
+                }
         );
         List<XiaoShouFaPiaoJinE> forObjects = response.getBody();
         for (XiaoShouFaPiaoJinE forObject : forObjects) {
@@ -361,7 +377,7 @@ public class XiaoShouTest {
             SaleInvoice saleInvoice = new SaleInvoice();
             saleInvoice.setCreateTime(forObject.getFDATE());
             saleInvoice.setOrgId(forgid.getOrgId());
-            saleInvoice.setSaleInvoiceMoney(String.format("%.2f",forObject.getFALLAMOUNT()));
+            saleInvoice.setSaleInvoiceMoney(String.format("%.2f", forObject.getFALLAMOUNT()));
             saleInvoice.setSaleInvoiceOrder(forObject.getFBILLNO());
             invoiceMapper.insert(saleInvoice);
 
@@ -369,12 +385,13 @@ public class XiaoShouTest {
     }
 
     @Test
-    public void  test5(){
+    public void test5() {
         ResponseEntity<List<YvQiHeTongMingXi>> response = restTemplate.exchange(
                 "http://127.0.0.1:9200/erp-XiaoShou/getYvQiHeTongMingXi?date=",
                 HttpMethod.GET,
                 null,
-                new ParameterizedTypeReference<List<YvQiHeTongMingXi>>() {}
+                new ParameterizedTypeReference<List<YvQiHeTongMingXi>>() {
+                }
         );
         List<YvQiHeTongMingXi> forObjects = response.getBody();
         for (YvQiHeTongMingXi forObject : forObjects) {
@@ -387,27 +404,56 @@ public class XiaoShouTest {
             saleOverdue.setDeliveryNumber(forObject.getFQTY());
             saleOverdue.setOrgId(forgid.getOrgId());
 //            saleOverdue.setOverdueDay();
-            saleOverdue.setOverdueMoney(String.format("%.2f",forObject.getFALLAMOUNTLC()));
+            saleOverdue.setOverdueMoney(String.format("%.2f", forObject.getFALLAMOUNTLC()));
             saleOverdue.setOverdueOrder(forObject.getFBILLNO());
             overdueMapper.insert(saleOverdue);
 
-            MoneyOverdue moneyProduce = new MoneyOverdue();
-//            moneyProduce.setBalance();
-            moneyProduce.setCollectPrice(String.format("%.2f",forObject.getFALLAMOUNTLC()));
-            moneyProduce.setDateTime(forObject.getFCREATEDATE());
-            moneyProduce.setDocumentNumber(forObject.getFBILLNO());
-//            moneyProduce.setDocumentStatus();
-            moneyProduce.setDocumentType(forObject.getFNAME());
-            moneyProduce.setEndTime(forObject.getChuKuDate());
-            moneyProduce.setIsOverdue(0);
-            moneyProduce.setOrgId(forgid.getOrgId());
-            moneyProduce.setOverduePrice(String.format("%.2f",forObject.getFALLAMOUNTLC()));
-//            moneyProduce.setOverdueTime();
-            moneyProduce.setUserName(forObject.getKeHuName());
-
-            moneyOverdueMapper.insert(moneyProduce);
         }
     }
+    //== 改过的
+    @Test
+    public void testCaiWuYingShou() {
+        ResponseEntity<List<CaiWuYingShou>> response = restTemplate.exchange(
+                "http://127.0.0.1:9200/erp-XiaoShou/getCaiWuYingShou?date=",
+                HttpMethod.GET,
+                null,
+                new ParameterizedTypeReference<List<CaiWuYingShou>>() {
+                }
+        );
+        List<CaiWuYingShou> forObjects = response.getBody();
+        for (CaiWuYingShou forObject : forObjects) {
+            ErpBdOrg forgid = erpBdOrgMapper.selectOne(new QueryWrapper<ErpBdOrg>().eq("forgid", forObject.getFUSEORGID()));
+            if (ObjectUtil.isEmpty(forgid))
+                continue;
+
+//            MoneyOverdue moneyProduce = new MoneyOverdue();
+//            moneyProduce.setCollectPrice(String.format("%.2f", forObject.getFENDBALANCEFOR()));
+//            moneyProduce.setDateTime( DateUtil.parse(forObject.getFyearperiod(),"yyyyMM") );
+//            moneyProduce.setDocumentNumber(forObject.getFACCOUNTBOOKID()+"");
+//            moneyProduce.setIsOverdue(0);
+//            moneyProduce.setOrgId(forgid.getOrgId());
+//            moneyProduce.setOverduePrice("0");
+//            moneyProduce.setUserName(forObject.getFNAME());
+//
+//            moneyOverdueMapper.insert(moneyProduce);
+
+            MoneyWriteOverdue moneyWriteOverdue = new MoneyWriteOverdue();
+            moneyWriteOverdue.setUserName(forObject.getFNAME());
+            moneyWriteOverdue.setBz("人民币");
+            moneyWriteOverdue.setOrgId(forgid.getOrgId());
+            moneyWriteOverdue.setYbje(String.format("%.2f", forObject.getFENDBALANCEFOR()));
+            moneyWriteOverdue.setRmbje(String.format("%.2f", forObject.getFENDBALANCEFOR()));
+            moneyWriteOverdue.setXsrq( DateUtil.parse(forObject.getFyearperiod(),"yyyyMM"));
+            moneyWriteOverdue.setCreateTime( DateUtil.parse(forObject.getFyearperiod(),"yyyyMM"));
+            moneyWriteOverdue.setYqts( "0");
+            moneyWriteOverdue.setDocumentType("0");
+            moneyWriteOverdue.setEndTime(DateUtil.parse(forObject.getFyearperiod(),"yyyyMM"));
+
+            moneyWriteOverdueMapper.insert(moneyWriteOverdue);
+        }
+
+    }
+
 
     @Test
     public void  test6() {