From 5bd56f3ebf96aa9a71e4a452cd2402df59d17384 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期四, 04 九月 2025 09:28:27 +0800
Subject: [PATCH] 1.全部页面增加线下数据查询 2.增加一键删除线下玻璃按钮
---
JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/TaskingServiceImpl.java | 488 ++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 416 insertions(+), 72 deletions(-)
diff --git a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/TaskingServiceImpl.java b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/TaskingServiceImpl.java
index f35a9ac..20e6294 100644
--- a/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/TaskingServiceImpl.java
+++ b/JiuMuMesParent/moduleService/DeviceInteractionModule/src/main/java/com/mes/md/service/impl/TaskingServiceImpl.java
@@ -4,20 +4,16 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
-import com.mes.common.S7object;
-import com.mes.device.PlcParameterObject;
-import com.mes.md.entity.GlassInfo;
-import com.mes.md.entity.LineConfiguration;
-import com.mes.md.entity.Machine;
-import com.mes.md.entity.Tasking;
-import com.mes.md.mapper.GlassInfoMapper;
-import com.mes.md.mapper.TaskingMapper;
-import com.mes.md.service.GlassInfoService;
-import com.mes.md.service.TaskingService;
+import com.mes.md.entity.*;
+import com.mes.md.mapper.*;
+import com.mes.md.service.*;
+import lombok.Data;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
+import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -29,12 +25,30 @@
* @author wu
* @since 2024-08-28
*/
+@Slf4j
@Service
public class TaskingServiceImpl extends MPJBaseServiceImpl<TaskingMapper, Tasking> implements TaskingService {
@Resource
GlassInfoMapper glassInfoMapper;
+ @Resource
+ LineConfigurationMapper lineConfigurationMapper;
@Autowired
GlassInfoService glassInfoService;
+ @Autowired
+ private PrimitiveTaskService primitiveTaskService;
+
+ @Autowired
+ private ProjectService projectService;
+ @Autowired
+ private PrimitiveTaskMapper primitiveTaskMapper;
+
+ @Autowired
+ private MachineMapper machineMapper;
+ @Autowired
+ private LineConfigurationService lineConfigurationService;
+
+ @Autowired
+ KBBTLensSortingMapper kBBTLensSortingMapper;
/**
* @param machine
@@ -56,9 +70,70 @@
}
/**
+ * @param machine
+ * 鏌ヨ姝ょ嚎绾夸笂鏈畬宸ョ殑浠诲姟 (绾夸笂/姝e父) 鐨勬寜鎵爜ID鏌ヨ
+ * @return
+ */
+ @Override
+ public List<Tasking> findMachineTaskID(Machine machine,String scan_id) {
+ List<LineConfiguration> machineLineConfiguration=lineConfigurationMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getMachineId,machine.getId()));
+ if(!machineLineConfiguration.isEmpty()){
+ //姝よ澶囩嚎璺湭瀹屽伐鐨� 鐨勪换鍔�
+ List<Tasking> list=baseMapper.selectJoinList(Tasking.class,new MPJLambdaWrapper<Tasking>()
+ .selectAll(Tasking.class)
+ .innerJoin(LineConfiguration.class,LineConfiguration::getId,Tasking::getLineConfigurationId)
+ .eq(LineConfiguration::getLineId,machineLineConfiguration.get(0).getLineId())
+ .eq(Tasking::getScanId,scan_id)
+ .eq(Tasking::getGlassState,"姝e父")
+ .eq(Tasking::getState,"绾夸笂")
+ .ne(Tasking::getWorkState,"瀹屽伐")
+ .orderByAsc(Tasking::getTaskSequence));
+ return list;
+ }else{
+ log.info("姝や换鍔D瀛樺湪浣嗘潯浠朵笉婊¤冻锛歿}",scan_id);
+ }
+ return null;
+ }
+ /**
+ * @param tasking
+ * 浠诲姟缁撴潫
+ * @return
+ */
+ @Override
+ public int stopTasking(Tasking tasking){
+ //1.鏍囪鎬昏〃浠诲姟缁撴潫 2.鍒犻櫎tasking 琛�
+ tasking.setWorkState("瀹屽伐");
+ baseMapper.updateById(tasking);
+ //瀹屽伐 /鐮存崯/鎷胯蛋鐨勭幓鐠�
+ List<Tasking> taskingList=baseMapper.selectList(new QueryWrapper<Tasking>().lambda()
+ .eq(Tasking::getScanId,tasking.getScanId())
+ .and(wrapper->wrapper
+ .eq(Tasking::getWorkState,"瀹屽伐")
+ .ne(Tasking::getState,"绾夸笅")
+ .ne(Tasking::getGlassState,"鐮存崯"))
+
+ );
+ if(!taskingList.isEmpty()){
+ List<PrimitiveTask> primitiveTask=primitiveTaskMapper.selectList(new QueryWrapper<PrimitiveTask>().lambda()
+ .eq(PrimitiveTask::getScanId,tasking.getScanId())
+ .orderByDesc(PrimitiveTask::getId));
+ for(PrimitiveTask task:primitiveTask){
+ if (taskingList.size()==task.getTaskQuantity()){
+ task.setReportCount(taskingList.size());
+ task.setEndTime(new Date());
+ primitiveTaskMapper.updateById(task);
+ return baseMapper.delete(new QueryWrapper<Tasking>().lambda().eq(Tasking::getScanId,tasking.getScanId()));
+ }
+ }
+ }
+ return 0;
+ }
+ /**
* @param machine锛寃orkState
* 鏌ヨ褰撳墠璁惧锛岀嚎涓娿�愮瓑寰�/宸ヤ綔/瀹屽伐銆戠殑浠诲姟 鍗囧簭 (绾夸笂/姝e父)
- * @return
+ * @return List<Tasking>
*/
@Override
public List<Tasking> findMachineWorkStateTask(Machine machine, String workState) {
@@ -73,7 +148,20 @@
.orderByAsc(Tasking::getTaskSequence));
return list;
}
-
+ /**
+ *
+ * 鏌ヨ绾夸笅姝e父鐨勭幓鐠�
+ * @return List<Tasking> findDownLineTask();
+ */
+ @Override
+ public List<Tasking> findDownLineTask() {
+ List<Tasking> list=baseMapper.selectJoinList(Tasking.class,new MPJLambdaWrapper<Tasking>()
+ .selectAll(Tasking.class)
+ .eq(Tasking::getGlassState,"姝e父")
+ .eq(Tasking::getState,"绾夸笅")
+ .orderByAsc(Tasking::getTaskSequence));
+ return list;
+ }
/**
* @param machine
@@ -85,10 +173,98 @@
List<Tasking> list=this.findMachineWorkStateTask(machine,"绛夊緟");
if(!list.isEmpty()){
Tasking tasking=list.get(0);
+ LineConfiguration thisLineConfiguration=lineConfigurationMapper.selectById(tasking.getLineConfigurationId());
+ tasking.setOperationRecord(thisLineConfiguration.getRemark()+thisLineConfiguration.getLineId());
+ tasking.setOperationRecordTime(new Date());
+ tasking.setOperationMode("寮�濮�");
tasking.setWorkState("姝e湪宸ヤ綔");
if(baseMapper.updateById(tasking)>0){
return tasking;
};
+ }
+ return null;
+ }
+ /**
+ * @param machine
+ * 褰撳墠璁惧鏍囪姝e湪宸ヤ綔锛氶獙璇佺姝D鏄惁鏄� 绾夸笂绛夊緟鐨勪换鍔$涓�鏉�
+ * @return
+ */
+ @Override
+ public Tasking startMachineTask(Machine machine, String scan_id) {
+ //List<Tasking> list=this.findMachineWorkStateTask(machine,"绛夊緟");
+ List<Tasking> list=baseMapper.selectJoinList(Tasking.class,new MPJLambdaWrapper<Tasking>()
+ .selectAll(Tasking.class)
+ .innerJoin(LineConfiguration.class,LineConfiguration::getId,Tasking::getLineConfigurationId)
+ .innerJoin(Machine.class,Machine::getId,LineConfiguration::getMachineId)
+ .eq(LineConfiguration::getMachineId,machine.getId())
+ .eq(Tasking::getGlassState,"姝e父")
+ .eq(Tasking::getState,"绾夸笂")
+ .eq(Tasking::getScanId,scan_id)
+ .eq(Tasking::getWorkState,"绛夊緟")
+ .orderByAsc(Tasking::getTaskSequence));
+ if(!list.isEmpty()){
+ Tasking tasking=list.get(0);
+ if(scan_id.equals(tasking.getScanId())){
+ LineConfiguration thisLineConfiguration=lineConfigurationMapper.selectById(tasking.getLineConfigurationId());
+ tasking.setOperationRecord(thisLineConfiguration.getRemark()+thisLineConfiguration.getLineId());
+ tasking.setOperationRecordTime(new Date());
+ tasking.setOperationMode("寮�濮�");
+ tasking.setWorkState("姝e湪宸ヤ綔");
+ if(baseMapper.updateById(tasking)>0){
+ return tasking;
+ };
+ }
+ }
+ return null;
+ }
+
+ /**
+ * @param machine
+ * 褰撳墠 鎵爜ID 鏄惁鍦ㄥ綋鍓嶈澶囦互鍓嶅瓨鍦� 瀛樺湪鍒欑洿鎺ヨ烦鍒板綋鍓嶈澶� 骞朵笖鏍囪宸ヤ綔
+ * @return
+ */
+ @Override
+ public Tasking startScanIdMachineTask(Machine machine, String scan_id) {
+ //鎵惧綋鍓嶈澶囩嚎璺�
+ List<LineConfiguration> machineLineConfiguration=lineConfigurationMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getMachineId,machine.getId()));
+ if(!machineLineConfiguration.isEmpty()){
+ //姝よ澶囩嚎璺湭瀹屽伐鐨� 鐨勪换鍔�
+ List<Tasking> list=baseMapper.selectJoinList(Tasking.class,new MPJLambdaWrapper<Tasking>()
+ .selectAll(Tasking.class)
+ .innerJoin(LineConfiguration.class,LineConfiguration::getId,Tasking::getLineConfigurationId)
+ .eq(LineConfiguration::getLineId,machineLineConfiguration.get(0).getLineId())
+ .eq(Tasking::getScanId,scan_id)
+ .eq(Tasking::getGlassState,"姝e父")
+ .eq(Tasking::getState,"绾夸笂")
+ .ne(Tasking::getWorkState,"瀹屽伐")
+ .le(LineConfiguration::getProcessSequence,machineLineConfiguration.get(0).getProcessSequence())
+ .orderByAsc(Tasking::getTaskSequence));
+ if(!list.isEmpty()){
+ Tasking tasking=list.get(0);
+ Integer taskSequence=1;
+ if (machine.getTodayCount()>0&&machine.getTodayCount()<5000){
+ taskSequence=machine.getTodayCount()+1;
+ }else{
+ taskSequence=1;
+ }
+ machine.setTodayCount(taskSequence);
+ machineMapper.updateById(machine);
+ tasking.setTaskSequence(taskSequence);
+
+ tasking.setWorkState("姝e湪宸ヤ綔");
+ tasking.setLineConfigurationId(machineLineConfiguration.get(0).getId());
+ //璁板綍璁惧寮�濮嬫椂闂�
+ tasking.setOperationRecord(machineLineConfiguration.get(0).getRemark()+machineLineConfiguration.get(0).getLineId());
+ tasking.setOperationRecordTime(new Date());
+ tasking.setOperationMode("寮�濮�");
+
+ if(baseMapper.updateById(tasking)>0){
+ finishMachineTask(machine);
+ return tasking;
+ }
+ }
}
return null;
}
@@ -99,12 +275,92 @@
* @return
*/
@Override
+ public int finishMachineTask(Machine machine,Integer taskSequence) {
+ List<Tasking> list=baseMapper.selectJoinList(Tasking.class,new MPJLambdaWrapper<Tasking>()
+ .selectAll(Tasking.class)
+ .innerJoin(LineConfiguration.class,LineConfiguration::getId,Tasking::getLineConfigurationId)
+ .innerJoin(Machine.class,Machine::getId,LineConfiguration::getMachineId)
+ .eq(LineConfiguration::getMachineId,machine.getId())
+ .eq(Tasking::getGlassState,"姝e父")
+ .eq(Tasking::getState,"绾夸笂")
+ .eq(Tasking::getTaskSequence,taskSequence)
+ .eq(Tasking::getWorkState,"姝e湪宸ヤ綔")
+ .orderByAsc(Tasking::getTaskSequence));
+ //褰撳墠璁惧鐨勭嚎璺厤缃�
+ List<LineConfiguration> machineLineConfiguration=lineConfigurationMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getMachineId,machine.getId()));
+ if(!machineLineConfiguration.isEmpty()){
+ List<LineConfiguration> listLineConfiguration=lineConfigurationMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getLineId,machineLineConfiguration.get(0).getLineId())
+ .eq(LineConfiguration::getIsStart,1)
+ .gt(LineConfiguration::getProcessSequence,machineLineConfiguration.get(0).getProcessSequence())
+ .orderByAsc(LineConfiguration::getProcessSequence)
+ .orderByAsc(LineConfiguration::getPrioritySequence)
+ );
+ if(!list.isEmpty()){
+ Tasking tasking=list.get(0);
+ if (!listLineConfiguration.isEmpty()){
+ LineConfiguration thisLineConfiguration=lineConfigurationMapper.selectById(tasking.getLineConfigurationId());
+ tasking.setOperationRecord(thisLineConfiguration.getRemark()+thisLineConfiguration.getLineId());
+ tasking.setOperationRecordTime(new Date());
+ tasking.setOperationMode("缁撴潫");
+ tasking.setLineConfigurationId(listLineConfiguration.get(0).getId());
+ tasking.setWorkState("绛夊緟");
+ return baseMapper.updateById(tasking);
+ }else{
+ return this.stopTasking(tasking);
+ }
+
+ }
+ }
+ return 0;
+ }
+
+ /**
+ * @param machine
+ * 褰撳墠璁惧鏍囪瀹屾垚锛氭鍦ㄥ伐浣滅殑绗竴涓换鍔� (绾夸笂/姝e父) 杩斿洖瀹屾垚鏁伴噺
+ * @return
+ */
+ @Override
public int finishMachineTask(Machine machine) {
List<Tasking> list=this.findMachineWorkStateTask(machine,"姝e湪宸ヤ綔");
- if(!list.isEmpty()){
- Tasking tasking=list.get(0);
- tasking.setWorkState("瀹屽伐");
- return baseMapper.updateById(tasking);
+ //鏌ヨ褰撳墠璁惧绾胯矾閰嶇疆
+ List<LineConfiguration> machineLineConfiguration=lineConfigurationMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getMachineId,machine.getId()));
+ if(!machineLineConfiguration.isEmpty()){
+ //褰撳墠璁惧瀛樺湪绾胯矾閰嶇疆锛屾煡璇㈠綋鍓嶈澶� 鍦ㄧ嚎璺厤缃〃涓殑涓嬩竴璁惧
+ List<LineConfiguration> listLineConfiguration=lineConfigurationMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getLineId,machineLineConfiguration.get(0).getLineId())
+ .eq(LineConfiguration::getIsStart,1)
+ .gt(LineConfiguration::getProcessSequence,machineLineConfiguration.get(0).getProcessSequence())
+ .orderByAsc(LineConfiguration::getProcessSequence)
+ .orderByAsc(LineConfiguration::getPrioritySequence)
+ );
+
+ if(!list.isEmpty()){
+ //鏍囪浠诲姟鐘舵��
+ Tasking tasking=list.get(0);
+ LineConfiguration thisLineConfiguration=lineConfigurationMapper.selectById(tasking.getLineConfigurationId());
+ tasking.setOperationRecord(thisLineConfiguration.getRemark()+thisLineConfiguration.getLineId());
+ tasking.setOperationRecordTime(new Date());
+ tasking.setOperationMode("缁撴潫");
+ //listLineConfiguration涓嶆槸绌�,琛ㄧず褰撳墠璁惧閰嶇疆鍏崇郴涓湁涓嬩竴璁惧
+ // 鍚﹀垯琛ㄧず鏃犱笅涓�宸ュ簭锛屽嵆褰撳墠宸ュ簭涓烘渶鍚庝竴宸ュ簭 鏍囪鐘舵�佸畬宸�
+ if (!listLineConfiguration.isEmpty()){
+ tasking.setLineConfigurationId(listLineConfiguration.get(0).getId());
+ tasking.setWorkState("绛夊緟");
+ return baseMapper.updateById(tasking);
+ }
+ else{
+ tasking.setWorkState("瀹屽伐");
+ return baseMapper.updateById(tasking);
+ }
+
+ }
}
return 0;
}
@@ -126,12 +382,37 @@
.orderByDesc(Tasking::getTaskSequence));
if(!list.isEmpty()){
Tasking tasking=list.get(0);
+ LineConfiguration thisLineConfiguration=lineConfigurationMapper.selectById(tasking.getLineConfigurationId());
+ tasking.setOperationRecord(thisLineConfiguration.getRemark()+thisLineConfiguration.getLineId());
+ tasking.setOperationRecordTime(new Date());
+ tasking.setOperationMode("浜哄伐");
tasking.setWorkState("绛夊緟");
return baseMapper.updateById(tasking);
}
return 0;
}
-
+ @Override
+ public int glassDownLineOne(Machine machine){
+ List<Tasking> list=baseMapper.selectJoinList(Tasking.class,new MPJLambdaWrapper<Tasking>()
+ .selectAll(Tasking.class)
+ .innerJoin(LineConfiguration.class,LineConfiguration::getId,Tasking::getLineConfigurationId)
+ .innerJoin(Machine.class,Machine::getId,LineConfiguration::getMachineId)
+ .eq(LineConfiguration::getMachineId,machine.getId())
+ .eq(Tasking::getGlassState,"姝e父")
+ .eq(Tasking::getState,"绾夸笂")
+ .eq(Tasking::getWorkState,"姝e湪宸ヤ綔")
+ .orderByDesc(Tasking::getTaskSequence));
+ if(!list.isEmpty()){
+ Tasking tasking=list.get(0);
+ LineConfiguration thisLineConfiguration=lineConfigurationMapper.selectById(tasking.getLineConfigurationId());
+ tasking.setOperationRecord(thisLineConfiguration.getRemark()+thisLineConfiguration.getLineId());
+ tasking.setOperationRecordTime(new Date());
+ tasking.setOperationMode("鑷姩");
+ tasking.setState("绾夸笅");
+ return baseMapper.updateById(tasking);
+ }
+ return 0;
+ }
/**
* @param tasking
* 鐮存崯鐜荤拑锛� (绾夸笂/姝e父) 杩斿洖鐮存崯鏁伴噺
@@ -141,6 +422,10 @@
public int damagedTask(Tasking tasking) {
Tasking oldTasking=baseMapper.selectById(tasking);
if(!Objects.isNull(oldTasking)){
+ LineConfiguration thisLineConfiguration=lineConfigurationMapper.selectById(oldTasking.getLineConfigurationId());
+ oldTasking.setOperationRecord(thisLineConfiguration.getRemark()+thisLineConfiguration.getLineId());
+ oldTasking.setOperationRecordTime(new Date());
+ oldTasking.setOperationMode("浜哄伐");
oldTasking.setGlassState("鐮存崯");
return baseMapper.updateById(oldTasking);
}
@@ -155,7 +440,11 @@
public int glassDownLine(Tasking tasking) {
Tasking oldTasking=baseMapper.selectById(tasking);
if (!Objects.isNull(oldTasking)){
- oldTasking.setState(tasking.getState());
+ LineConfiguration thisLineConfiguration=lineConfigurationMapper.selectById(oldTasking.getLineConfigurationId());
+ oldTasking.setOperationRecord(thisLineConfiguration.getRemark()+thisLineConfiguration.getLineId());
+ oldTasking.setOperationRecordTime(new Date());
+ oldTasking.setOperationMode("浜哄伐");
+ oldTasking.setState("绾夸笅");
return baseMapper.updateById(oldTasking);
}
return 0;
@@ -179,62 +468,116 @@
return resultCount;
}
- public int test(List<Tasking> taskingList) {
- int resultCount=0;
- //
- return resultCount;
+ @Override
+ public int deleteGlassDownLine() {
+ return baseMapper.delete(new QueryWrapper<Tasking>().lambda().eq(Tasking::getState,"绾夸笅"));
}
-//
-// @Override
-// public boolean updateStatus(Integer state) {
-// //鏇存敼涓婄墖妯″紡
-// //鍚戣澶囧彂閫侀�夋嫨鐨勭姸鎬�
-// S7object.getinstance().plccontrol.writeWord(plcParameterObject.getPlcParameter("Status").getAddress(), state);
-// //鍙戦�佸悗閲嶆柊璇诲彇鍒ゆ柇鏄惁鏇存敼鎴愬姛
-// String loadStatus = plcParameterObject.getPlcParameter("Status").getValue();
-// return state == Integer.parseInt(loadStatus);
-//
-// }
-//
-// /**
-// * @param state
-// * @return
-// */
-// @Override
-// public boolean updateLoadState(Integer state) {
-// //鏇存敼鑱旀満鐘舵��
-// //鍚戣澶囧彂閫侀�夋嫨鐨勭姸鎬�
-// S7object.getinstance().plccontrol.writeWord(plcParameterObject.getPlcParameter("loadState").getAddress(), state);
-// //鍙戦�佸悗閲嶆柊璇诲彇鍒ゆ柇鏄惁鏇存敼鎴愬姛
-// String loadState = plcParameterObject.getPlcParameter("loadState").getValue();
-// return state == Integer.parseInt(loadState);
-//
-// }
-//
-// @Override
-// public boolean updateDamage(Tasking tasking) {
-// UpdateWrapper<Tasking> queryWrapper = new UpdateWrapper<>();
-// queryWrapper.eq("glass_id",tasking.getGlassId())
-// .set("work_state",tasking.getWorkState());
-// return this.update(queryWrapper);
-// }
-//
-// @Override
-// public List<Tasking> selectTasking() {
-// QueryWrapper<Tasking> queryWrapper = new QueryWrapper<>();
-// queryWrapper.orderByDesc("task_sequence");
-// return list(queryWrapper);
-// }
-// @Override
-// public Tasking selectTasking(Tasking tasking) {
-// QueryWrapper<Tasking> queryWrapper = new QueryWrapper<>();
-// queryWrapper.eq("line_configuration_id",tasking.getLineConfigurationId())
-// .eq("state",tasking.getState())
-// .eq("work_state",tasking.getWorkState())
-// .orderByAsc("glass_id");
-// return getOne(queryWrapper);
-// }
+ /**
+ * @param taskingList
+ * 鎵归噺淇敼鐘舵�� 銆愪笂绾裤��
+ * @return
+ */
+ @Override
+ public int glassTopLine(Tasking taskingList) {
+ //褰撳墠璁惧鐨勭嚎璺厤缃�
+ Long machineId=taskingList.getLineConfigurationId();
+ List<LineConfiguration> machineLineConfiguration=lineConfigurationMapper.selectJoinList(LineConfiguration.class,new MPJLambdaWrapper<LineConfiguration>()
+ .selectAll(LineConfiguration.class)
+ .eq(LineConfiguration::getMachineId,machineId));
+ if(!machineLineConfiguration.isEmpty()){
+ Tasking oldTasking=baseMapper.selectById(taskingList);
+ if (!Objects.isNull(oldTasking)){
+ oldTasking.setLineConfigurationId(machineLineConfiguration.get(0).getId());
+ oldTasking.setState("绾夸笂");
+ oldTasking.setWorkState("绛夊緟");
+ oldTasking.setGlassState("姝e父");
+ return baseMapper.updateById(oldTasking);
+ }
+ }
+ return 0;
+ }
+
+
+ /**
+ * @param machine
+ * 鎵爜璁惧 娣诲姞浠诲姟
+ * 鏌ョ湅PrimitiveTask琛ㄦ槸鍚﹀瓨鍦ㄦ鎵爜鏁版嵁
+ * 瀛樺湪鍒欐牴鎹� 鍐呭 鍒涘缓 tasking浠诲姟 骞舵帓搴�
+ * 涓嶅瓨鍦ㄥ垯 鏌ヨ涔濈墽鏁版嵁搴撴坊鍔� PrimitiveTask琛�
+ *
+ * @return
+ */
+ @Override
+ public int scanMachineAdd(Machine machine, String scanId){
+ String errorStr="";
+ if(!Objects.isNull(scanId)){
+ List<PrimitiveTask> primitiveTaskList=primitiveTaskMapper.selectList(new QueryWrapper<PrimitiveTask>().lambda()
+ .eq(PrimitiveTask::getScanId,scanId));
+ if(primitiveTaskList.isEmpty()){
+ int insertCount=projectService.insertProjectCustomization(scanId);
+ errorStr="鎵爜ID锛�"+scanId+" 涔濈墽IT鏁版嵁搴撴湭涓嬪彂";
+ if (insertCount<1&&!errorStr.equals(machine.getRemark())){
+ machine.setRemark(errorStr);
+ machineMapper.updateById(machine);
+ return 0;
+ }
+ }
+ primitiveTaskList=primitiveTaskMapper.selectList(new QueryWrapper<PrimitiveTask>().lambda()
+ .eq(PrimitiveTask::getScanId,scanId));
+
+ if(!primitiveTaskList.isEmpty()){
+ PrimitiveTask primitiveTask=primitiveTaskList.get(0);
+ LineConfiguration lineConfiguration=lineConfigurationService.machineLineConfiguration(machine);
+ List<Tasking> listTasking=baseMapper.selectList(new QueryWrapper<Tasking>().lambda()
+ .eq(Tasking::getScanId,scanId)
+ .ne(Tasking::getLineConfigurationId,113)
+ .ne(Tasking::getWorkState,"瀹屽伐")
+ .ne(Tasking::getState,"绾夸笅")
+ .ne(Tasking::getGlassState,"鐮存崯"));
+ Machine oneMachine=machineMapper.selectById(1L);
+ if((listTasking.size()<primitiveTaskList.get(0).getTaskQuantity())||oneMachine.getMode()==3){
+ Tasking tasking=primitiveTaskService.convertListTasking(primitiveTask,lineConfiguration.getId());
+ Integer taskSequence=1;
+ if (machine.getTodayCount()>0&&machine.getTodayCount()<5000){
+ taskSequence=machine.getTodayCount()+1;
+ }else{
+ taskSequence=1;
+ }
+ machine.setTodayCount(taskSequence);
+ String Warehouse="";
+ if (machine.getId()==24){
+ List<KBBTLensSorting> list=kBBTLensSortingMapper.selectList(new QueryWrapper<KBBTLensSorting>().lambda()
+ .eq(KBBTLensSorting::getBarcode,scanId)
+ .notLike(KBBTLensSorting::getProductionName,"闃茬鑶�")
+ .notLike(KBBTLensSorting::getProductionName,"纾ㄧ爞")
+ .notLike(KBBTLensSorting::getProductionName,"鍊掕"));
+ if (list.size()>0){
+ Warehouse=list.get(0).getWarehouse();
+ }
+ }
+ tasking.setWarehouse(Warehouse);
+ tasking.setOperationRecord(lineConfiguration.getRemark()+lineConfiguration.getLineId());
+ tasking.setOperationRecordTime(new Date());
+ tasking.setOperationMode("鎻掑叆鏁版嵁");
+
+ tasking.setTaskSequence(taskSequence);
+ machineMapper.updateById(machine);
+ return baseMapper.insert(tasking);
+ }
+ errorStr="鎵爜ID锛�"+scanId+" 绾夸笂鐜荤拑宸茶揪鍒颁笅鍙戜笂绾� 涓嬪彂浠诲姟鏁帮細"+primitiveTaskList.get(0).getTaskQuantity()+" 浜х嚎浠诲姟鏁�:"+listTasking.size();
+ if (!errorStr.equals(machine.getRemark())){
+ machine.setRemark(errorStr);
+ machineMapper.updateById(machine);
+ }
+ }
+
+ }
+ return 0;
+ }
+
+
+
@Override
public Boolean insertTasking(String status) {
Tasking tasking = new Tasking();
@@ -271,6 +614,7 @@
return save(tasking);
}
+
@Override
public boolean updateTasking(String scanId) {
Tasking glass=new Tasking();
--
Gitblit v1.8.0