fyz недель назад: 3
Родитель
Сommit
72dcad7850

+ 10 - 9
mjava-lanyun/src/main/java/com/malk/lanyun/service/impl/purchaseServiceImpl.java

@@ -19,6 +19,7 @@ import org.springframework.jdbc.core.JdbcTemplate;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.time.Instant;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
@@ -232,7 +233,7 @@ public class purchaseServiceImpl implements PurchaseService {
 //                .searchFieldJson(JSON.toJSONString(UtilMap.map("dateField_ltxstp81, selectField_mgswtsqu",UtilMap.getList(formData,"cascadeDateField_miybkcsm"),"是")))
 //                .build());
         //过滤参与批量发起为否、可采购数量大于0、非临时采购的数据
-        dataList = dataList.stream().filter(map -> !"临时采购".equals(map.get("textField_ludp2v7i")) && UtilMap.getInt(map,"numberField_ltxyjf0s") > 0).collect(Collectors.toList());
+        dataList = dataList.stream().filter(map -> !"临时采购".equals(map.get("textField_ltxstp8h")) && UtilMap.getInt(map,"numberField_ltxyjf0s") > 0).collect(Collectors.toList());
 
         //分组求和
         Map<Object, Long> groupCountMap = dataList.stream()
@@ -316,7 +317,7 @@ public class purchaseServiceImpl implements PurchaseService {
                 e.forEach((k,v)->{
                     try {
                         final int[] totalCount = {0};
-                        final double[] amountSum = {0.0};
+                        final double[] amountSum = {0.0,0.0};
 //                    List<String> v1 = (List<String>) v;
 //                    if (v1.size()>=3){
                         //供应商数据
@@ -339,6 +340,7 @@ public class purchaseServiceImpl implements PurchaseService {
                                 gys[1] = UtilMap.getString(c,"textField_ltxstp8h");
                                 cbzz[0] = UtilMap.getString(c,"textField_lus384vk");
                                 cbzz[1] = UtilMap.getString(c,"selectField_ltxstp89");
+                                amountSum[1] = amountSum[1] + UtilMap.getDouble(c, "numberField_ltxstp8l") * UtilMap.getDouble(c, "numberField_ltxyjf0s");
                                 extracted(totalCount, amountSum, tableList, c);
                                 successCount[0]++;
                             });
@@ -358,11 +360,12 @@ public class purchaseServiceImpl implements PurchaseService {
                                 .formDataJson(JSON.toJSONString(UtilMap.map("selectField_lr26l3h7, textField_lus384vk, selectField_lr26l3h8, " +
                                                 "textField_lr26l3hf, associationFormField_lr26l3he, textField_lwg62y7o, numberField_lr26l3hq, numberField_lr26l3hr, tableField_ltxug6h1, " +
                                                 "employeeField_lvz29gxt, textField_lvvs6x8v, textField_lw7sg8hq, textField_lw8we1wc, departmentSelectField_lxe98xep, employeeField_lr26l3h0, " +
-                                                "textField_luhs0cni, selectField_ltzi5am7, textField_lysahqau, textField_lwg62y7p, dateField_lr26l3h2",
+                                                "textField_luhs0cni, selectField_ltzi5am7, textField_lysahqau, textField_lwg62y7p, dateField_lr26l3h2, selectField_m28qhk5a, numberField_m28qpgce",
                                         cbzz[1], cbzz[0], "物耗/配件", gys[0], gysAss, UtilMap.getString(gysList.get(0),"textField_lrhgjspc"), totalCount[0], amountSum[0], sortedByName,
                                         UtilMap.getString(gysList.get(0),"employeeField_lvz29gxt_id"), LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM")), LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM")),
                                         LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy")), UtilMap.getString(formData,"departmentSelectField_mjchgs8l_id"), UtilMap.getString(formData,"employeeField_mhdgj164_id"),
-                                        UtilMap.getString(formData,"textField_mjchgs8n"),"否","Y","否",LocalDate.now().atStartOfDay().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli())))
+                                        UtilMap.getString(formData,"textField_mjchgs8n"),"否","Y","否",LocalDate.now().atStartOfDay().atZone(ZoneId.systemDefault()).toInstant().toEpochMilli(),
+                                        "非网购",amountSum[1])))
                                 .build(), YDConf.FORM_OPERATION.start);
 //                    }
                     } catch (Exception ex) {
@@ -384,9 +387,7 @@ public class purchaseServiceImpl implements PurchaseService {
                         dataList.size(),successCount[0],errorCount[0],"同步完毕")))
                 .build(), YDConf.FORM_OPERATION.update);
         log.info("总条数:{} 执行成功条数:{} 失败条数:{}",dataList.size(),successCount[0],errorCount[0]);
-
     }
-
     private void extracted(int[] totalCount, double[] amountSum, List<Map> tableList, Map i) {
         Map<String, Object> tableData = UtilMap.map("textField_lu22o9f1, textField_ltxug6gp, textField_lus3rn9y, textField_lus3rn9x, " +
                         "textField_ltxug6gn, numberField_ltxug6gq, numberField_mff54y69, numberField_ltxug6gr, " +
@@ -401,9 +402,9 @@ public class purchaseServiceImpl implements PurchaseService {
                 UtilMap.getString(i, "numberField_ltxyjf0s"), UtilMap.getString(i, "numberField_ltxstp8l"),
                 UtilMap.getString(i, "numberField_ltxstp8d"), UtilMap.getString(i, "numberField_lv1r2pay"),
                 UtilMap.getDouble(i,"numberField_ltxstp8l") * UtilMap.getDouble(i,"numberField_ltxyjf0s"),
-                new BigDecimal(Double.toString(UtilMap.getDouble(i,"numberField_lv1r2pay") * UtilMap.getDouble(i,"numberField_ltxyjf0s"))),
-                new BigDecimal(Double.toString((UtilMap.getDouble(i,"numberField_ltxstp8l") - UtilMap.getDouble(i,"numberField_lv1r2pay"))  * UtilMap.getDouble(i,"numberField_ltxyjf0s"))),
-                UtilMap.getString(i, "textField_ltxstp8n"),
+                new BigDecimal(Double.toString(UtilMap.getDouble(i,"numberField_lv1r2pay") * UtilMap.getDouble(i,"numberField_ltxyjf0s"))).setScale(2, RoundingMode.HALF_UP),
+                new BigDecimal(Double.toString((UtilMap.getDouble(i,"numberField_ltxstp8l") - UtilMap.getDouble(i,"numberField_lv1r2pay"))  * UtilMap.getDouble(i,"numberField_ltxyjf0s"))).setScale(2, RoundingMode.HALF_UP),
+                UtilMap.getString(i, "textField_m18obsgg"),
                 UtilMap.getString(i, "textField_ltxstp85"), UtilMap.getString(i, "textField_ltxstp86"),
                 UtilMap.getString(i, "textField_ltxstp88"), UtilMap.getString(i, "textField_luhs4y3r"),
                 UtilMap.getString(i, "addressField_lt4209fv"), UtilMap.getString(i, "textField_ltxstp87"),