|
@@ -1,5 +1,6 @@
|
|
|
package com.management.platform.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
@@ -13,6 +14,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.management.platform.util.ExcelUtil;
|
|
|
import com.management.platform.util.HttpRespMsg;
|
|
|
import com.management.platform.util.MessageUtils;
|
|
|
+import org.apache.commons.lang3.StringEscapeUtils;
|
|
|
import org.apache.poi.EncryptedDocumentException;
|
|
|
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
|
|
|
import org.apache.poi.ss.usermodel.CellType;
|
|
@@ -59,6 +61,8 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
@Resource
|
|
|
private CompanyMapper companyMapper;
|
|
|
@Resource
|
|
|
+ private PlanSteelStampNumberService planSteelStampNumberService;
|
|
|
+ @Resource
|
|
|
private WxCorpInfoService wxCorpInfoService;
|
|
|
@Resource
|
|
|
private HttpServletRequest request;
|
|
@@ -151,7 +155,12 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
}
|
|
|
}
|
|
|
if(!StringUtils.isEmpty(steelStampNumber)){
|
|
|
- queryWrapper.apply("'"+steelStampNumber+"'"+" between steel_stamp_number_start AND steel_stamp_number_end");
|
|
|
+ QueryWrapper<PlanSteelStampNumber> queryWrapperSSN=new QueryWrapper<>();
|
|
|
+ queryWrapperSSN.apply("'"+steelStampNumber+"'"+" between steel_stamp_number_start AND steel_stamp_number_end");
|
|
|
+ List<PlanSteelStampNumber> list = planSteelStampNumberService.list(queryWrapperSSN);
|
|
|
+ List<Integer> ids = list.stream().map(PlanSteelStampNumber::getPlanId).collect(Collectors.toList());
|
|
|
+ ids.add(-1);
|
|
|
+ queryWrapper.in("id",ids);
|
|
|
}
|
|
|
queryWrapper.orderByDesc("create_time").orderByDesc("start_date");
|
|
|
IPage<Plan> planIPage = planMapper.selectPage(new Page<>(pageIndex, pageSize), queryWrapper);
|
|
@@ -162,6 +171,7 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
List<Integer> planIds = records.stream().map(Plan::getId).distinct().collect(Collectors.toList());
|
|
|
planIds.add(-1);
|
|
|
List<PlanProcedureTotal> procedureTotals = planProcedureTotalService.list(new QueryWrapper<PlanProcedureTotal>().in("plan_id", planIds));
|
|
|
+ List<PlanSteelStampNumber> planSteelStampNumbers = planSteelStampNumberService.list(new QueryWrapper<PlanSteelStampNumber>().in("plan_id", planIds));
|
|
|
List<Integer> ptIds = procedureTotals.stream().map(PlanProcedureTotal::getId).collect(Collectors.toList());
|
|
|
ptIds.add(-1);
|
|
|
List<ProdProcedureTeam> procedureTeams = prodProcedureTeamService.list(new QueryWrapper<ProdProcedureTeam>().in("plan_procedure_id", ptIds));
|
|
@@ -191,6 +201,14 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
rs.setPlanProcedureTotals(totals);
|
|
|
}
|
|
|
}
|
|
|
+ if(planSteelStampNumbers.size()>0){
|
|
|
+ List<PlanSteelStampNumber> list = planSteelStampNumbers.stream().filter(ps -> ps.getPlanId().equals(rs.getId())).collect(Collectors.toList());
|
|
|
+ if(list.size()<=0){
|
|
|
+ list.add(new PlanSteelStampNumber());
|
|
|
+ }
|
|
|
+ rs.setSteelStampNumberList(list);
|
|
|
+
|
|
|
+ }
|
|
|
if(rs.getPlanType()==1){
|
|
|
BigDecimal bigDecimal=new BigDecimal(String.valueOf(rs.getMoneyOfJob()));
|
|
|
bigDecimal=bigDecimal.multiply(new BigDecimal(String.valueOf(rs.getPlanWorkHour())));
|
|
@@ -241,9 +259,6 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
return msg;
|
|
|
}
|
|
|
}
|
|
|
- if(!StringUtils.isEmpty(plan.getSteelStampNumberStart())&&!StringUtils.isEmpty(plan.getSteelStampNumberEnd()!=null)){
|
|
|
- QueryWrapper<Plan> cutQueryWrapper=new QueryWrapper();
|
|
|
- }
|
|
|
switch (plan.getPlanType()){
|
|
|
case 0:
|
|
|
plan.setStartDate(LocalDate.now());
|
|
@@ -292,6 +307,32 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
}
|
|
|
|
|
|
}
|
|
|
+ List<PlanSteelStampNumber> planSteelStampNumberList=new ArrayList<>();
|
|
|
+ if(!StringUtils.isEmpty(plan.getSteelStampNumber())){
|
|
|
+ List<Map> mapList = JSONArray.parseArray(JSON.toJSON(plan.getSteelStampNumber()).toString(), Map.class);
|
|
|
+ for (Map map : mapList) {
|
|
|
+ PlanSteelStampNumber p=new PlanSteelStampNumber();
|
|
|
+ p.setPlanId(plan.getId());
|
|
|
+ if(StringUtils.isEmpty(map.get("steelStampNumberStart"))&&StringUtils.isEmpty(map.get("steelStampNumberEnd"))){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if(!StringUtils.isEmpty(map.get("steelStampNumberStart"))&&StringUtils.isEmpty(map.get("steelStampNumberEnd"))){
|
|
|
+ p.setSteelStampNumberStart(String.valueOf(map.get("steelStampNumberStart")));
|
|
|
+ p.setSteelStampNumberEnd(String.valueOf(map.get("steelStampNumberStart")));
|
|
|
+ }
|
|
|
+ if(StringUtils.isEmpty(map.get("steelStampNumberStart"))&&!StringUtils.isEmpty(map.get("steelStampNumberEnd"))){
|
|
|
+ p.setSteelStampNumberStart(String.valueOf(map.get("steelStampNumberEnd")));
|
|
|
+ p.setSteelStampNumberEnd(String.valueOf(map.get("steelStampNumberEnd")));
|
|
|
+ }
|
|
|
+ if(!StringUtils.isEmpty(map.get("steelStampNumberStart"))&&!StringUtils.isEmpty(map.get("steelStampNumberEnd"))){
|
|
|
+ p.setSteelStampNumberStart(String.valueOf(map.get("steelStampNumberStart")));
|
|
|
+ p.setSteelStampNumberEnd(String.valueOf(map.get("steelStampNumberEnd")));
|
|
|
+ }
|
|
|
+ planSteelStampNumberList.add(p);
|
|
|
+ }
|
|
|
+ planSteelStampNumberService.remove(new QueryWrapper<PlanSteelStampNumber>().eq("plan_id",plan.getId()));
|
|
|
+ }
|
|
|
+ planSteelStampNumberService.saveBatch(planSteelStampNumberList);
|
|
|
if(plan.getPlanType()==0){
|
|
|
list=list.stream().sorted(Comparator.comparing(ProdProcedure::getId)).collect(Collectors.toList());
|
|
|
for (ProdProcedure prodProcedure : list) {
|
|
@@ -458,17 +499,6 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
msg.setError("产品名称不能为空");
|
|
|
return msg;
|
|
|
}
|
|
|
- if(steelStampNumberCell!=null){
|
|
|
- String value = steelStampNumberCell.getStringCellValue();
|
|
|
- String[] split = value.split("-");
|
|
|
- if(split.length>1){
|
|
|
- plan.setSteelStampNumberStart(split[0]);
|
|
|
- plan.setSteelStampNumberEnd(split[1]);
|
|
|
- }
|
|
|
- }else {
|
|
|
- msg.setError("钢印号不能为空");
|
|
|
- return msg;
|
|
|
- }
|
|
|
plan.setProgress(progressCell==null?"":progressCell.getStringCellValue());
|
|
|
plan.setNum(numCell==null?0:Double.valueOf(numCell.getNumericCellValue()).intValue());
|
|
|
plan.setMainProcess(mainProcessCell==null?"":mainProcessCell.getStringCellValue());
|
|
@@ -745,7 +775,7 @@ public class PlanServiceImpl extends ServiceImpl<PlanMapper, Plan> implements Pl
|
|
|
item.add(plan.getProductSchedulingNum());
|
|
|
item.add(plan.getProductName());
|
|
|
item.add(plan.getProjectCode());
|
|
|
- item.add(plan.getSteelStampNumberStart()+"-"+plan.getSteelStampNumberEnd());
|
|
|
+// item.add(plan.getSteelStampNumberStart()+"-"+plan.getSteelStampNumberEnd());
|
|
|
item.add(String.valueOf(plan.getNum()==null?"":plan.getNum()));
|
|
|
item.add(plan.getMainProcess()==null?"":plan.getMainProcess());
|
|
|
item.add(plan.getStationName());
|