|
@@ -18,7 +18,6 @@ import com.rongwei.bsentity.domain.*;
|
|
|
import com.rongwei.bsentity.vo.*;
|
|
|
import com.rongwei.rwadmincommon.system.domain.SysOrganizationDo;
|
|
|
import com.rongwei.rwadmincommon.system.service.SysOrganizationService;
|
|
|
-import com.rongwei.rwadmincommon.system.service.impl.SysOrganizationServiceImpl;
|
|
|
import com.rongwei.rwadmincommon.system.vo.SysOrganizationVo;
|
|
|
import com.rongwei.rwadmincommon.system.vo.SysUserVo;
|
|
|
import com.rongwei.rwcommon.base.BaseDo;
|
|
@@ -45,7 +44,6 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.math.RoundingMode;
|
|
|
import java.text.Collator;
|
|
|
-import java.time.LocalTime;
|
|
|
import java.time.ZoneId;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
@@ -2538,10 +2536,103 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
borrowBlank(progressWork);
|
|
|
}
|
|
|
}
|
|
|
+ //工艺描述
|
|
|
+ setProcessDesc(apsProductionOrderDo,apsBlankOrderDo,apsProcessOutputProductDoList,collator);
|
|
|
+
|
|
|
|
|
|
return R.ok();
|
|
|
}
|
|
|
|
|
|
+ private void setProcessDesc(ApsProductionOrderDo apsProductionOrderDo, ApsBlankOrderDo apsBlankOrderDo, List<ApsProcessOutputProductDo> apsProcessOutputProductDoList, Collator collator) {
|
|
|
+ //输出成品拼接字段:输出工艺描述
|
|
|
+ List<ApsProcessOutputProductDo> needUpdateOutputList = new LinkedList<>();
|
|
|
+ for (ApsProcessOutputProductDo apsProcessOutputProductDo : apsProcessOutputProductDoList) {
|
|
|
+ //合金、合金状态、产品类型及其替代
|
|
|
+ String alloy = StringUtils.isNotBlank(apsProcessOutputProductDo.getAlloy()) ? apsProcessOutputProductDo.getAlloy() : "";
|
|
|
+ String alloystatus = StringUtils.isNotBlank(apsProcessOutputProductDo.getAlloystatus()) ? apsProcessOutputProductDo.getAlloystatus() : "";
|
|
|
+ String producttype = StringUtils.isNotBlank(apsProcessOutputProductDo.getProducttype()) ? apsProcessOutputProductDo.getProducttype() : "";
|
|
|
+ String changealloy = StringUtils.isNotBlank(apsProcessOutputProductDo.getChangealloy()) ? apsProcessOutputProductDo.getChangealloy() : "";
|
|
|
+ String changealloystatus = StringUtils.isNotBlank(apsProcessOutputProductDo.getChangealloystatus()) ? apsProcessOutputProductDo.getChangealloystatus() : "";
|
|
|
+ String changeproducttype = StringUtils.isNotBlank(apsProcessOutputProductDo.getChangeproducttype()) ? apsProcessOutputProductDo.getChangeproducttype() : "";
|
|
|
+ if (StringUtils.isNotBlank(changealloy)) {
|
|
|
+ alloy = changealloy;
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(changealloystatus)) {
|
|
|
+ alloystatus = changealloystatus;
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(changeproducttype)) {
|
|
|
+ producttype = changeproducttype;
|
|
|
+ }
|
|
|
+
|
|
|
+ //厚宽长
|
|
|
+ String thickness = apsProcessOutputProductDo.getThickness() != null ? CXCommonUtils.removeExtraZerosAndDecimal(apsProcessOutputProductDo.getThickness()) : "";
|
|
|
+ String prowidth = apsProcessOutputProductDo.getProwidth() != null ? CXCommonUtils.removeExtraZerosAndDecimal(apsProcessOutputProductDo.getProwidth()) : "";
|
|
|
+ String prolength = apsProcessOutputProductDo.getProlength() != null ? CXCommonUtils.removeExtraZerosAndDecimal(apsProcessOutputProductDo.getProlength()) : "";
|
|
|
+ //厚查、宽差、长差
|
|
|
+ String thicknesstolerance = StringUtils.isNotBlank(apsProcessOutputProductDo.getThicknesstolerance()) ? apsProcessOutputProductDo.getThicknesstolerance() : "";
|
|
|
+ String widthtolerance = StringUtils.isNotBlank(apsProcessOutputProductDo.getWidthtolerance()) ? apsProcessOutputProductDo.getWidthtolerance() : "";
|
|
|
+ String lengthtolerance = StringUtils.isNotBlank(apsProcessOutputProductDo.getLengthtolerance()) ? apsProcessOutputProductDo.getLengthtolerance() : "";
|
|
|
+
|
|
|
+ //管内芯直径、管芯材质、抗拉强度、延伸率、是否清洗线
|
|
|
+ String innercorediameter = apsProcessOutputProductDo.getInnercorediameter() != null ? CXCommonUtils.removeExtraZerosAndDecimal(apsProcessOutputProductDo.getInnercorediameter()) : "";
|
|
|
+ String corematerial = StringUtils.isNotBlank(apsProcessOutputProductDo.getCorematerial()) ? apsProcessOutputProductDo.getCorematerial() : "";
|
|
|
+ String tensilestrength = StringUtils.isNotBlank(apsProcessOutputProductDo.getTensilestrength()) ? apsProcessOutputProductDo.getTensilestrength() : "";
|
|
|
+ String elongationrate = StringUtils.isNotBlank(apsProcessOutputProductDo.getElongationrate()) ? apsProcessOutputProductDo.getElongationrate() : "";
|
|
|
+ String isclean = StringUtils.isNotBlank(apsProcessOutputProductDo.getIsclean()) ? apsProcessOutputProductDo.getIsclean() : "";
|
|
|
+
|
|
|
+ //拼接字段
|
|
|
+ String outputprocessdes = alloy + alloystatus + producttype
|
|
|
+ + " " + thickness + "(" + thicknesstolerance + ")*" + prowidth + "(" + widthtolerance + ")";
|
|
|
+ if (StringUtils.isNotBlank(prolength)) {
|
|
|
+ outputprocessdes = outputprocessdes + "*" + prolength + "(" + lengthtolerance + ")";
|
|
|
+ }
|
|
|
+ outputprocessdes = outputprocessdes + "," + String.join(",", Arrays.asList(innercorediameter, corematerial, tensilestrength, elongationrate, isclean));
|
|
|
+
|
|
|
+ ApsProcessOutputProductDo needUpdate = new ApsProcessOutputProductDo();
|
|
|
+ needUpdate.setId(apsProcessOutputProductDo.getId());
|
|
|
+ needUpdate.setOutputprocessdes(outputprocessdes);
|
|
|
+ needUpdateOutputList.add(needUpdate);
|
|
|
+ }
|
|
|
+ //坯料计划拼接字段:工艺描述
|
|
|
+ List<String> outputProcessDescList = needUpdateOutputList.stream().map(ApsProcessOutputProductDo::getOutputprocessdes).collect(Collectors.toList());
|
|
|
+ outputProcessDescList.sort(collator);
|
|
|
+ String processDesc = "";
|
|
|
+ for (int i = 0; i < outputProcessDescList.size(); i++) {
|
|
|
+ processDesc += "[" + (i + 1) + "]" + outputProcessDescList.get(i);
|
|
|
+ if (i < outputProcessDescList.size() - 1) {
|
|
|
+ processDesc += ",";
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //订单的客户ID
|
|
|
+ String customid = StringUtils.isNotBlank(apsProductionOrderDo.getCustomid()) ? apsProductionOrderDo.getCustomid() : "";
|
|
|
+ //是否新料
|
|
|
+ String isNewBlank = "否";
|
|
|
+ if ("新料".equals(apsBlankOrderDo.getBlankcomefrom())){
|
|
|
+ isNewBlank = "是";
|
|
|
+ }
|
|
|
+ //排产车间
|
|
|
+ String plannedproductionworkshop = StringUtils.isNotBlank(apsBlankOrderDo.getPlannedproductionworkshop()) ? apsBlankOrderDo.getPlannedproductionworkshop() : "";
|
|
|
+ //工艺路线标签
|
|
|
+ String routetag = StringUtils.isNotBlank(apsBlankOrderDo.getRoutetag()) ? apsBlankOrderDo.getRoutetag() : "";
|
|
|
+ //坯料类型、产品类型、合金、厚度、宽度
|
|
|
+ String blanktype = StringUtils.isNotBlank(apsBlankOrderDo.getBlanktype()) ? apsBlankOrderDo.getBlanktype() : "";
|
|
|
+ String producttype = StringUtils.isNotBlank(apsBlankOrderDo.getProducttype()) ? apsBlankOrderDo.getProducttype() : "";
|
|
|
+ String alloy = StringUtils.isNotBlank(apsBlankOrderDo.getAlloy()) ? apsBlankOrderDo.getAlloy() : "";
|
|
|
+ String alloystatus = StringUtils.isNotBlank(apsBlankOrderDo.getAlloystatus()) ? apsBlankOrderDo.getAlloystatus() : "";
|
|
|
+ String thickness = apsBlankOrderDo.getThickness() != null ? CXCommonUtils.removeExtraZerosAndDecimal(apsBlankOrderDo.getThickness()) : "";
|
|
|
+ String prowidth = apsBlankOrderDo.getProwidth() != null ? CXCommonUtils.removeExtraZerosAndDecimal(apsBlankOrderDo.getProwidth()) : "";
|
|
|
+
|
|
|
+ //坯料计划工艺描述
|
|
|
+ String endProcessDesc = String.join(",",Arrays.asList(customid,isNewBlank,plannedproductionworkshop,routetag,blanktype,producttype,alloy,alloystatus,thickness+"*"+prowidth,processDesc));
|
|
|
+ ApsBlankOrderDo needUpdate = new ApsBlankOrderDo();
|
|
|
+ needUpdate.setId(apsBlankOrderDo.getId());
|
|
|
+ needUpdate.setProcessdesc(endProcessDesc);
|
|
|
+
|
|
|
+ //更新输出成品和坯料计划
|
|
|
+ apsProcessOutputProductService.updateBatchById(needUpdateOutputList);
|
|
|
+ apsBlankOrderService.updateById(needUpdate);
|
|
|
+ }
|
|
|
+
|
|
|
public R checkBlankOrder(CheckAndSaveOrUpdateBlankReq req, int j) {
|
|
|
//获取坯料计划内容
|
|
|
ApsBlankOrderDo apsBlankOrderDo = req.getApsBlankOrderDo();
|