fix: 人工呼叫套轴
This commit is contained in:
@@ -255,5 +255,17 @@ public class SlitterPdaController {
|
||||
public ResponseEntity<Object> cutCacheInventory(@RequestBody JSONObject param) {
|
||||
return new ResponseEntity<>(slitterService.cutCacheInventory(param), HttpStatus.OK);
|
||||
}
|
||||
@PostMapping("/doCallTubeShaftShow")
|
||||
@Log("呼叫套轴")
|
||||
@SaIgnore
|
||||
public ResponseEntity<Object> doCallTubeShaftShow(@RequestBody JSONObject param) {
|
||||
return new ResponseEntity<>(slitterService.doCallTubeShaftShow(param), HttpStatus.OK);
|
||||
}
|
||||
@PostMapping("/doCallTubeShaft")
|
||||
@Log("呼叫套轴")
|
||||
@SaIgnore
|
||||
public ResponseEntity<Object> doCallTubeShaft(@RequestBody JSONObject param) {
|
||||
return new ResponseEntity<>(slitterService.doCallTubeShaft(param), HttpStatus.OK);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -18,12 +18,13 @@
|
||||
p.up_or_down,
|
||||
p.qzz_size,
|
||||
p.qzz_generation,
|
||||
MIN(p.start_time) AS start_time,
|
||||
MIN(p.call_time) AS start_time,
|
||||
MAX(p.manufacture_sort) AS manufacture_sort
|
||||
FROM `pdm_bi_slittingproductionplan` p
|
||||
WHERE p.`status` = '01'
|
||||
AND p.is_child_tz_ok = '0'
|
||||
AND p.is_paper_ok = '1'
|
||||
AND p.is_call = '1'
|
||||
AND p.is_delete = '0'
|
||||
AND IFNULL(p.up_or_down, '') <![CDATA[ <> ]]> ''
|
||||
AND IFNULL(p.left_or_right, '') <![CDATA[ <> ]]> ''
|
||||
@@ -46,12 +47,13 @@
|
||||
p.up_or_down,
|
||||
p.qzz_size,
|
||||
p.qzz_generation,
|
||||
MIN(p.start_time) AS start_time,
|
||||
MIN(p.call_time) AS start_time,
|
||||
MAX(p.manufacture_sort) AS manufacture_sort
|
||||
FROM `pdm_bi_slittingproductionplan` p
|
||||
WHERE p.`status` = '01'
|
||||
AND p.is_child_tz_ok = '0'
|
||||
AND p.is_paper_ok = '1'
|
||||
AND p.is_call = '1'
|
||||
AND p.is_delete = '0'
|
||||
AND IFNULL(p.up_or_down, '') <![CDATA[ <> ]]> ''
|
||||
AND IFNULL(p.left_or_right, '') <![CDATA[ <> ]]> ''
|
||||
|
||||
@@ -119,8 +119,6 @@ public class SlitterDownTrussTask extends AbstractAcsTask {
|
||||
log.info("即将下卷的上下轴的子卷号数据1:{}", downCons);
|
||||
List<PdmBiSlittingproductionplan> downPlans = slittingproductionplanService.getByContainerNames(downCons);
|
||||
log.info("即将下卷的上下轴的子卷号数据2:{}", downPlans);
|
||||
// SlitterTaskUtil.setPaperWeightStr(point1.getRemark(), downPlans);
|
||||
// log.info("即将下卷的上下轴的子卷号数据3:{}", downPlans);
|
||||
// 下来的卷的集合
|
||||
List<PdmBiSlittingproductionplan> needUpdates = new ArrayList<>();
|
||||
// 绑定气胀轴编码(可能没有气胀轴编码)
|
||||
@@ -159,13 +157,7 @@ public class SlitterDownTrussTask extends AbstractAcsTask {
|
||||
}
|
||||
}
|
||||
|
||||
// downPlans.forEach(downPlan -> {
|
||||
// downPlan.setStatus("09");
|
||||
// downPlan.setEnd_time(DateUtil.now());
|
||||
// TaskUtils.updateOptMessageBySlitterPlan(downPlan);
|
||||
// });
|
||||
log.info("即将下卷的上下轴的子卷号数据4-需要更新的新数组:{}", needUpdates);
|
||||
// slittingproductionplanService.updateBatchById(downPlans);
|
||||
for (int i = 0; i < needUpdates.size(); i++) {
|
||||
boolean flag = slittingproductionplanService.updateById(needUpdates.get(i));
|
||||
log.info(flag+"即将下卷的上下轴的子卷号数据5:{}", needUpdates);
|
||||
@@ -201,7 +193,6 @@ public class SlitterDownTrussTask extends AbstractAcsTask {
|
||||
p1.setUpdate_optname(SecurityUtils.getCurrentNickName());
|
||||
p1.setUpdate_optid(SecurityUtils.getCurrentUserId());
|
||||
});
|
||||
// slittingproductionplanService.updateBatchById(plans);
|
||||
for (int i = 0; i < plans.size(); i++) {
|
||||
slittingproductionplanService.updateById(plans.get(i));
|
||||
}
|
||||
|
||||
@@ -64,4 +64,6 @@ public interface SlitterMapper {
|
||||
List<CallPlanViewVO> showManualView();
|
||||
|
||||
List<CallPlanViewVO> showManualViewNoXn();
|
||||
|
||||
List<CallPlanViewVO> showManualCall(Integer days);
|
||||
}
|
||||
|
||||
@@ -198,7 +198,7 @@
|
||||
p.qzz_size,
|
||||
p.qzz_generation,
|
||||
p.is_paper_ok,
|
||||
MIN(p.start_time) AS start_time,
|
||||
MIN(p.call_time) AS start_time,
|
||||
IF(p.paper_tube_or_FRP = '1', p.paper_tube_description, p.FRP_description) AS tube,
|
||||
MIN(p.`status`) AS `status`,
|
||||
MAX(p.qzzno) AS qzzno,
|
||||
@@ -206,6 +206,7 @@
|
||||
FROM `pdm_bi_slittingproductionplan` p
|
||||
WHERE p.`status` <![CDATA[ < ]]> '09'
|
||||
AND p.is_delete = '0'
|
||||
AND p.is_call = '1'
|
||||
AND IFNULL(p.up_or_down, '') <![CDATA[ <> ]]> ''
|
||||
AND IFNULL(p.left_or_right, '') <![CDATA[ <> ]]> ''
|
||||
AND DATE (p.start_time) >= DATE_SUB(CURDATE()
|
||||
@@ -232,4 +233,53 @@
|
||||
manufacture_sort desc,
|
||||
start_time
|
||||
</select>
|
||||
<select id="showManualCall" resultType="org.nl.b_lms.sch.tasks.slitter.mapper.dto.CallPlanViewVO">
|
||||
SELECT p.workorder_id,
|
||||
p.resource_name,
|
||||
CASE
|
||||
WHEN LENGTH(p.parent_container_name) > 0 THEN
|
||||
p.parent_container_name
|
||||
ELSE p.restruct_container_name
|
||||
END AS parent_container_name,
|
||||
p.container_name,
|
||||
p.split_group,
|
||||
p.up_or_down,
|
||||
p.qzz_size,
|
||||
p.qzz_generation,
|
||||
p.is_paper_ok,
|
||||
MIN(p.call_time) AS start_time,
|
||||
IF(p.paper_tube_or_FRP = '1', p.paper_tube_description, p.FRP_description) AS tube,
|
||||
MIN(p.is_call) AS `status`,
|
||||
MAX(p.qzzno) AS qzzno,
|
||||
MAX(p.manufacture_sort) AS manufacture_sort
|
||||
FROM `pdm_bi_slittingproductionplan` p
|
||||
WHERE p.`status` = '01'
|
||||
AND p.is_delete = '0'
|
||||
AND p.is_paper_ok = '1'
|
||||
AND IFNULL(p.up_or_down, '') <![CDATA[ <> ]]> ''
|
||||
AND IFNULL(p.left_or_right, '') <![CDATA[ <> ]]> ''
|
||||
AND DATE (p.start_time) >= DATE_SUB(CURDATE()
|
||||
, INTERVAL #{days} DAY)
|
||||
AND '1' = (SELECT c.is_used FROM st_ivt_cutpointivt c WHERE c.ext_code = p.resource_name AND c.product_area IN ('B1', 'B2'))
|
||||
GROUP BY
|
||||
p.workorder_id,
|
||||
p.resource_name,
|
||||
p.parent_container_name,
|
||||
p.restruct_container_name,
|
||||
p.split_group,
|
||||
p.up_or_down,
|
||||
p.qzz_size,
|
||||
p.is_paper_ok,
|
||||
p.manufacture_sort,
|
||||
p.start_time,
|
||||
p.qzz_generation,
|
||||
p.paper_tube_or_FRP,
|
||||
p.paper_tube_description,
|
||||
p.FRP_description,
|
||||
p.container_name
|
||||
ORDER BY
|
||||
is_call,
|
||||
manufacture_sort desc,
|
||||
start_time
|
||||
</select>
|
||||
</mapper>
|
||||
|
||||
@@ -380,4 +380,16 @@ public interface SlitterService {
|
||||
JSONObject tzTaskINfo(JSONObject entity);
|
||||
|
||||
void recover(JSONObject param);
|
||||
|
||||
/**
|
||||
* 呼叫套轴
|
||||
* @param param
|
||||
*/
|
||||
JSONObject doCallTubeShaft(JSONObject param);
|
||||
|
||||
/**
|
||||
* 呼叫套轴展示
|
||||
* @param param
|
||||
*/
|
||||
List<CallPlanViewVO> doCallTubeShaftShow(JSONObject param);
|
||||
}
|
||||
|
||||
@@ -66,6 +66,7 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.stream.Collectors;
|
||||
import java.util.stream.Stream;
|
||||
|
||||
@@ -80,8 +81,12 @@ import static org.nl.b_lms.sch.tasks.slitter.util.SlitterTaskUtil.getPointLocati
|
||||
@Slf4j
|
||||
@Service
|
||||
public class SlitterServiceImpl implements SlitterService {
|
||||
/** 是否使用虚拟卷 */
|
||||
public final static String USE_XN = "USE_XN";
|
||||
|
||||
/** 套轴期限 */
|
||||
public final static String TZ_DAY = "TZ_DAY";
|
||||
/** 套轴区域 */
|
||||
public final static String PARAM_CODE_PLAN_AREA = "PARAM_CODE_PLAN_AREA";
|
||||
@Autowired
|
||||
private BstIvtStockingivtMapper bstIvtStockingivtMapper;
|
||||
@Autowired
|
||||
@@ -2938,6 +2943,52 @@ public class SlitterServiceImpl implements SlitterService {
|
||||
slittingproductionplanService.update(lam);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public JSONObject doCallTubeShaft(JSONObject param) {
|
||||
// param: device_code、row
|
||||
String deviceCode = param.getString("device_code");
|
||||
JSONObject row = param.getJSONObject("row");
|
||||
String parentContainerName = row.getString("parent_container_name");
|
||||
String splitGroup = row.getString("split_group");
|
||||
LambdaQueryWrapper<PdmBiSlittingproductionplan> lam = new LambdaQueryWrapper<>();
|
||||
lam.eq(PdmBiSlittingproductionplan::getSplit_group, splitGroup)
|
||||
.eq(PdmBiSlittingproductionplan::getResource_name, deviceCode)
|
||||
.and(la -> la.eq(PdmBiSlittingproductionplan::getParent_container_name, parentContainerName)
|
||||
.or()
|
||||
.eq(PdmBiSlittingproductionplan::getRestruct_container_name, parentContainerName));
|
||||
List<PdmBiSlittingproductionplan> plans = slittingproductionplanService.list(lam);
|
||||
for (PdmBiSlittingproductionplan plan : plans) {
|
||||
plan.setIs_call("1");
|
||||
plan.setCall_time(DateUtil.now());
|
||||
plan.setUpdate_optid(SecurityUtils.getCurrentUserId());
|
||||
plan.setUpdate_optname(SecurityUtils.getCurrentNickName());
|
||||
plan.setUpdate_time(DateUtil.now());
|
||||
}
|
||||
slittingproductionplanService.updateBatchById(plans);
|
||||
JSONObject res = new JSONObject();
|
||||
res.put("status", HttpStatus.HTTP_OK);
|
||||
res.put("message", "呼叫套轴成功!");
|
||||
return res;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CallPlanViewVO> doCallTubeShaftShow(JSONObject param) {
|
||||
// param: device_code
|
||||
String deviceCode = param.getString("device_code");
|
||||
Param tzDay = paramService.findByCode(TZ_DAY);
|
||||
Integer days = Integer.valueOf(ObjectUtil.isEmpty(tzDay.getValue()) ? "0" : tzDay.getValue());
|
||||
// 区域固定B1、B2
|
||||
// Param paramObj = paramService.findByCode(PARAM_CODE_PLAN_AREA);
|
||||
// String value = paramObj.getValue();
|
||||
// List<String> area = Arrays.asList(value.split("[,,]"));
|
||||
List<CallPlanViewVO> callPlanViewVOS = slitterMapper.showManualCall(days);
|
||||
if (callPlanViewVOS.size() == 0) {
|
||||
return null;
|
||||
}
|
||||
return callPlanViewVOS.stream().filter(p -> p.getResource_name().equals(deviceCode)).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
public List<String> getRedisListValue(String key) {
|
||||
List<String> stepTipLogs = (List<String>) redisUtils.get(key);
|
||||
if (CollectionUtil.isEmpty(stepTipLogs)) {
|
||||
|
||||
Reference in New Issue
Block a user