فهرست منبع

上传工序选项接口代码

liujiankang 7 سال پیش
والد
کامیت
ff73f4a005

+ 2 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/pts/MachineLogsService.java

@@ -10,4 +10,6 @@ public interface MachineLogsService {
     //添加生产日志
     Integer addMachineLogs(PtsMachineLogs ptsMachineLogs);
 
+    //修改生产日志
+    Integer updateMachineLogs(PtsMachineLogs ptsMachineLogs);
 }

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/MachineLogsServiceImpl.java

@@ -23,4 +23,9 @@ public class MachineLogsServiceImpl implements MachineLogsService {
     public Integer addMachineLogs(PtsMachineLogs ptsMachineLogs) {
         return machineLogsMapper.addMachineLogs(ptsMachineLogs);
     }
+
+    @Override
+    public Integer updateMachineLogs(PtsMachineLogs ptsMachineLogs) {
+        return machineLogsMapper.updateMachineLogs(ptsMachineLogs);
+    }
 }

+ 3 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/mapper/MachineLogsMapper.java

@@ -9,4 +9,7 @@ import com.iamberry.rst.core.pts.PtsMachineLogs;
 public interface MachineLogsMapper {
         //添加生产日志
         Integer addMachineLogs(PtsMachineLogs ptsMachineLogs);
+
+        //修改生产日志
+        Integer updateMachineLogs(PtsMachineLogs ptsMachineLogs);
 }

+ 12 - 2
watero-rst-service/src/main/java/com/iamberry/rst/service/pts/mapper/machineLogsMapper.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.iamberry.rst.service.pts.mapper.MachineLogsMapper">
-    <insert id="addMachineLogs" parameterType="PtsMachineLogs" useGeneratedKeys="true" keyProperty="machineId">
+    <insert id="addMachineLogs" parameterType="PtsMachineLogs" useGeneratedKeys="true" keyProperty="logsId">
         INSERT INTO tb_rst_pts_machine_logs
         (machine_id,employee_id,produce_id,
         process_id,device_id,employee_name,
@@ -15,5 +15,15 @@
         #{processName},#{deviceName},#{logsProcessStatus},#{logsErrorType}
         ,#{logsProcessPrompt},#{logsProcessTime},#{logsCreateTime})
     </insert>
-
+    <update id="updateMachineLogs" >
+        UPDATE tb_rst_pts_machine_logs SET
+        <if test="logsErrorType != null and logsErrorType != ''" >
+            logs_error_type = #{logsErrorType}
+        </if>
+        <where>
+            <if test="logsId != null and logsId != ''">
+                logs_id = #{logsId}
+            </if>
+        </where>
+    </update>
 </mapper>

+ 36 - 25
watero-rst-web/src/main/java/com/iamberry/rst/controllers/pts/MachineController.java

@@ -69,6 +69,7 @@ public class MachineController {
         }
         boolean isAbnormality = true;//状态是否异常
         JSONArray nodes = query.getJSONArray("nodes");//选项集合(包含一个或多个工序选项,详情见示例)
+        PtsMachineLogs ptsMachineLogs = new PtsMachineLogs();
         for(int i = 0;i< nodes.size();i++){
             JSONObject jsonObject = nodes.getJSONObject(i);
             String processNo = jsonObject.getString("processId"); //工序编号
@@ -80,7 +81,6 @@ public class MachineController {
             ProcessNode processNode = produceService.getprocessNode(produceProcess.getProcessId(),nodeNo.charAt(0));
             PtsDevice ptsDevice = deviceService.getDevice(produceProcess.getDriveId());
             PtsEmployee ptsEmployee =ptsEmployeeService.getPtsEmployeeById(employeeId);
-            PtsMachineLogs ptsMachineLogs = new PtsMachineLogs();
             ptsMachineLogs.setDeviceId(produceProcess.getDriveId());
             ptsMachineLogs.setEmployeeId(employeeId);
             ptsMachineLogs.setProduceId(produce.getProduceId());
@@ -108,9 +108,8 @@ public class MachineController {
             ptsMachineLogs.setLogsCreateTime(new Date());
             //根据上一条工序选项信息判断当前工序是否正常,如果当前为修理工序则忽略,如果上一条为修理工序则查询上上一条
             if(i > 0){
-                if(produceProcess.getProcessType() == 1){//修理工序不用查询上一条工序
-                    //查询出当前产品正常生产工序
-                    //List<ProduceProcess> ProcessList = produceService.listProduceProcess(produce.getProduceId());
+                //修理工序不用查询上一条工序,但是修理工序前一条工序要设置为次品
+                /*if(produceProcess.getProcessType() == 1){*/
                     int num = 0;
                     ProduceProcess produceProcess2 = null;//当前工序的上一条非修理工序
                     JSONObject jsonObject2;//上一级工序信息
@@ -120,38 +119,50 @@ public class MachineController {
                     if(jsonObject2 != null){
                         processNo2 = jsonObject2.getString("processId");
                         produceProcess2 = produceService.getProduceProcess(produce.getProduceId(),processNo2.charAt(0));
-                        if(produceProcess2.getProcessType() == 1){//判断是否是修理工序 1:生产工序 2:修理工序
-                            if(produceProcess.getProcessSort() - produceProcess2.getProcessSort() != 1){
-                                ptsMachineLogs.setLogsProcessStatus(0);
-                                ptsMachineLogs.setLogsErrorType(1);//异常类型 1:流程异常 2:次品异常
-                                isAbnormality = false;
-                            }
+                        //判断当前工序是否是修理工序,如果是,则修改上一条为次品
+                        if(produceProcess.getProcessType() == 2){
+                            ptsMachineLogs.setLogsErrorType(2);//异常类型 1:流程异常 2:次品异常
+                            machineLogsService.updateMachineLogs(ptsMachineLogs);
+                            isAbnormality = false;
+                            ptsMachineLogs.setLogsId(null);
+                            ptsMachineLogs.setLogsErrorType(null);
                         }else{
-                            for(int j = i-1;j<= i-1;j--){
-                                if(num == i){
-                                    break;//只能循环 i 次,超出则跳出当前循环
+                            //判断是否是修理工序 1:生产工序 2:修理工序
+                            if(produceProcess2.getProcessType() == 1){
+                                if(produceProcess.getProcessSort() - produceProcess2.getProcessSort() != 1){
+                                    ptsMachineLogs.setLogsProcessStatus(0);
+                                    ptsMachineLogs.setLogsErrorType(1);//异常类型 1:流程异常 2:次品异常
+                                    isAbnormality = false;
                                 }
-                                jsonObject2 = nodes.getJSONObject(j);
-                                if(jsonObject2 != null){
-                                    processNo2 = jsonObject2.getString("processId");
-                                    produceProcess2 = produceService.getProduceProcess(produce.getProduceId(),processNo2.charAt(0));
-                                    if(produceProcess2.getProcessType() == 1){//判断是否是修理工序 1:生产工序 2:修理工序
-                                        if(produceProcess.getProcessSort() > produceProcess2.getProcessSort()){
-                                            ptsMachineLogs.setLogsProcessStatus(0);
-                                            ptsMachineLogs.setLogsErrorType(2);//异常类型 1:流程异常 2:次品异常
-                                            isAbnormality = false;
+                            }else{
+                                for(int j = i-1;j<= i-1;j--){
+                                    if(num == i){
+                                        break;//只能循环 i 次,超出则跳出当前循环
+                                    }
+                                    jsonObject2 = nodes.getJSONObject(j);
+                                    if(jsonObject2 != null){
+                                        processNo2 = jsonObject2.getString("processId");
+                                        produceProcess2 = produceService.getProduceProcess(produce.getProduceId(),processNo2.charAt(0));
+                                        if(produceProcess2.getProcessType() == 1){//判断是否是修理工序 1:生产工序 2:修理工序
+                                            if(produceProcess.getProcessSort() > produceProcess2.getProcessSort()){
+                                                ptsMachineLogs.setLogsProcessStatus(0);
+                                                ptsMachineLogs.setLogsErrorType(1);//异常类型 1:流程异常 2:次品异常
+                                                isAbnormality = false;
+                                            }
+                                            break;
                                         }
-                                        break;
                                     }
+                                    num++;
                                 }
-                                num++;
                             }
                         }
+
                     }
-                }
+                /*}*/
             }
             //执行添加日志操作
             machineLogsService.addMachineLogs(ptsMachineLogs);
+            ptsMachineLogs.setLogsErrorType(null);//还原为默认值
         }
         //修改机器信息
         if(!isAbnormality){