瀏覽代碼

立项到配件任务处理逻辑调整,补充小计金额,配件任务部分字段类型调整

lvjs 2 月之前
父節點
當前提交
249a456c00

+ 1 - 0
src/main/java/com/malk/eastar/service/impl/AitableServiceImpl.java

@@ -308,6 +308,7 @@ public class AitableServiceImpl implements AitableService {
          */
         log.info(JSONObject.toJSONString(aiTableParam));
         aiTableResult = mdTableClient.queryMultiRecords(baseId,sheetIdOrName,param,aiTableParam);
+        log.info(JSONObject.toJSONString(aiTableResult));
         records = aiTableResult.getRecords();
         if(records!=null && !records.isEmpty()){
             customerId = records.getJSONObject(0).getString("id");

+ 26 - 7
src/main/java/com/malk/eastar/service/impl/YidaServiceImpl.java

@@ -1,6 +1,7 @@
 package com.malk.eastar.service.impl;
 
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.NumberUtil;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.malk.eastar.conf.EastarParam;
@@ -251,7 +252,7 @@ public class YidaServiceImpl implements YidaService {
                 获取配件大类与产出物列表
              */
             supplier = UtilMap.getString(projectSubRecordParts,"textField_me2f7tvz"); //供应商,旧变量名 -> gysName
-            isMultiLang = "是".equals(UtilMap.getString(projectSubRecordParts,"radioField_me2f7tvx"));
+            isMultiLang = "是".equals(UtilMap.getString(projectSubRecordParts,"radioField_me2f7tvx"));   //语言区别
             partsMajorType = UtilMap.getString(projectSubRecordParts,"selectField_me2f7tvk");
             partsConfMapByMajorType = partsConfMap.get(partsMajorType);
             partsMajorTypePhaseDeliverables = new ArrayList<>();
@@ -296,6 +297,8 @@ public class YidaServiceImpl implements YidaService {
         List<UtilMap.assDetail> supplierBuyerDataAssSupplier;    //【供应商跟单员档案】关联表单【供应商】,旧变量名 -> gys
         String numOfSets;   //工厂采购数量
         int allSupplyNum;   //总采购数量
+        double unitPrice;   //单价
+        double subTotal;   //小计金额
         for(String projectPhase : projectPhaseList){ //遍历项目包含阶段,旧变量名 -> jd
             log.info("项目阶段:"+projectPhase);
             if(partsTaskPhaseList.contains(projectPhase)){
@@ -334,6 +337,12 @@ public class YidaServiceImpl implements YidaService {
                             partsRecordNew.put("dateField_mizvc5oi", projectPhasePlanEndTime); //考核日期(采购明细)
                             partsRecordNew.put("numberField_mmmwu4ci",0);    //总采购数量(废弃)
                             partsRecordNew.put("numberField_mifp03el",allSupplyNum);   //工厂采购数量
+                            //计算小计金额
+                            if(partsRecord.get("numberField_me2f7tw0")!=null && StringUtils.isNotEmpty(partsRecord.get("numberField_mifp03el").toString().trim())){
+                                unitPrice = Double.parseDouble(partsRecord.get("numberField_me2f7tw0").toString()); //单价
+                                subTotal = unitPrice*allSupplyNum;
+                                partsRecordNew.put("numberField_mifp03ey", NumberUtil.decimalFormatMoney(subTotal));   //小计金额
+                            }
                             partsTaskSubDataNew.add(partsRecordNew);
                         } else{
                             if("大货样".equals(projectPhase)){
@@ -349,6 +358,12 @@ public class YidaServiceImpl implements YidaService {
                             partsRecordNew.put("numberField_mmmwu4cg",0);    //研发部订单需求数量
                             partsRecordNew.put("numberField_mmmwu4ci",0);    //总采购数量(废弃)
                             partsRecordNew.put("numberField_mifp03el", sampleNum);   //工厂采购数量
+                            //计算小计金额
+                            if(partsRecord.get("numberField_me2f7tw0")!=null && StringUtils.isNotEmpty(partsRecord.get("numberField_mifp03el").toString().trim())){
+                                unitPrice = Double.parseDouble(partsRecord.get("numberField_me2f7tw0").toString()); //单价
+                                subTotal = unitPrice*sampleNum;
+                                partsRecordNew.put("numberField_mifp03ey", NumberUtil.decimalFormatMoney(subTotal));   //小计金额
+                            }
                             partsTaskSubDataNew.add(partsRecordNew);
                         }
                     }
@@ -530,14 +545,14 @@ public class YidaServiceImpl implements YidaService {
                 devNum = seriesLangDevNumMap.get(nameSeries+"_"+nameLang);   //研发部订单需求数量
             }
             if(isMultiLang){ // 是否存在多种语言版本
+                skuSN = skuSN + UtilMap.getString(orderSubRecordLang,"textField_mizmmf8i"); // sku+语言编号
+            }else{
                 if(PublicUtil.isNull(nameLang)){
                     nameLang = "不区分";
                     skuSN = skuSN+"AL"; // sku 不区分语言
+                }else{
+                    skuSN = skuSN + UtilMap.getString(orderSubRecordLang,"textField_mizmmf8i"); // sku+语言编号
                 }
-                skuSN = skuSN + UtilMap.getString(orderSubRecordLang,"textField_mizmmf8i"); // sku+语言编号
-            }else{
-                nameLang = "不区分";
-                skuSN = skuSN+"AL"; // sku 不区分语言
             }
             skuSN = skuSN + leadsCode.substring(leadsCode.length()-10); // sku+项目号
 //            numOfSets = UtilMap.getString_first(
@@ -554,6 +569,7 @@ public class YidaServiceImpl implements YidaService {
             partsRecord.putAll(
                     UtilMap.map(
                             "textField_mecmytpr, " + //配件名称
+                                    "textField_mpcfcy7f, " + //配件类型
                                     "textField_mecmytps, " + //TB任务编号
                                     //"textField_mecmytpt," +
                                     "numberField_mkosp94h, " +   //客户订单数量
@@ -562,17 +578,20 @@ public class YidaServiceImpl implements YidaService {
                                     "textField_mifp03eo, " + //SKU编号
                                     "textField_miib17jx, " + //项目编号
                                     "textField_mizvc5oj, " + //任务表明细实例标识
+                                    "textField_mpcf6yu2, " + //系列
                                     "textField_mjr129o4, " + //语言
                                     "numberField_me2f7tw0", //单价
                             partsName,
+                            UtilMap.getString(projectSubRecordParts,"selectField_mizsccds"),
                             "~",
                             //"未开始",
                             numOfSets,
                             devNum,
-                            numOfSets,
+                            numOfSets,  //此时工厂采购数量未包含研发部订单需求数量
                             skuSN,
                             projectCode,
                             "~",
+                            UtilMap.getString(projectSubRecordParts,"selectField_me2f7tw4"),
                             nameLang,
                             UtilMap.getString(orderSubRecordLang, "numberField_mkf4bc4j")   //货值单价
                     )
@@ -640,7 +659,7 @@ public class YidaServiceImpl implements YidaService {
                     "textField_mecmytpr, " +    //配件名称
                             "textField_mifp03eo, " +    //SKU编号
                             "textField_mjr129o4, " +    //语言
-                            "selectField_me2f7tw4, " +  //系列
+                            "textField_mpcf6yu2, " +  //系列
                             "dateField_mizvc5oi, " +  //考核日期(采购明细)
                             "numberField_mkosp94h, " +  //客户订单数量
                             "numberField_mmmwu4cg, " +  //研发部订单需求数量