diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/pda/pdm/service/impl/PdmWorkTaskServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/pda/pdm/service/impl/PdmWorkTaskServiceImpl.java index 0f5ab1b8..93405082 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/pda/pdm/service/impl/PdmWorkTaskServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/pda/pdm/service/impl/PdmWorkTaskServiceImpl.java @@ -164,7 +164,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { throw new PdaRequestException("点位:" + point_code + "锁定!"); } - if (out_point.getString("is_used").equals("0")){ + if (out_point.getString("is_used").equals("0")) { throw new PdaRequestException("点位:" + point_code + "未启用!"); } @@ -174,7 +174,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { throw new PdaRequestException("点位:" + next_point_code + "锁定或点位上存在载具!"); } - if (next_point.getString("is_used").equals("0")){ + if (next_point.getString("is_used").equals("0")) { throw new PdaRequestException("点位:" + next_point_code + "未启用!"); } @@ -228,7 +228,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { String button_name = jo.getString("button_name"); JSONObject work_task = WQLObject.getWQLObject("PDM_BI_WorkTask").query("worktask_id = '" + worktask_id + "'").uniqueResult(0); - JSONObject work_order = WQLObject.getWQLObject("PDM_BI_WorkOrder").query("workorder_id = '"+work_task.getString("workorder_id")+"'").uniqueResult(0); + JSONObject work_order = WQLObject.getWQLObject("PDM_BI_WorkOrder").query("workorder_id = '" + work_task.getString("workorder_id") + "'").uniqueResult(0); String now_status = work_task.getString("status"); String currentUserId = SecurityUtils.getCurrentUserId() + ""; @@ -264,15 +264,19 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { throw new PdaRequestException("当前工令工序任务状态不为检查确认!"); } -// JSONObject device = WQLObject.getWQLObject("em_bi_deviceinfo").query("device_code = '"+device_code+"'").uniqueResult(0); + JSONObject device = WQLObject.getWQLObject("em_bi_deviceinfo").query("device_code = '" + device_code + "'").uniqueResult(0); + + if (!work_task.getString("workprocedure_code").equals(device.getString("workprocedure_code"))) { + throw new PdaRequestException("当前工序设备选择错误!"); + } work_task.put("status", "30"); work_task.put("start_id", currentUserId); work_task.put("start_name", nickName); work_task.put("start_time", now); - work_order.put("workprocedure_id",work_task.getString("workprocedure_id")); - work_order.put("workprocedure_code",work_task.getString("workprocedure_code")); - work_order.put("workprocedure_name",work_task.getString("workprocedure_name")); + work_order.put("workprocedure_id", work_task.getString("workprocedure_id")); + work_order.put("workprocedure_code", work_task.getString("workprocedure_code")); + work_order.put("workprocedure_name", work_task.getString("workprocedure_name")); //如果是配粉工序的开始,修改配方的状态 @@ -292,11 +296,15 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { } } - if (work_task.getString("workprocedure_code").equals("GX002")||work_task.getString("workprocedure_code").equals("GX003")) { - + if (!work_task.getString("workprocedure_code").equals("GX003")) { + //判断该设备是否存在未完成的工序任务 + JSONObject device_task = WQLObject.getWQLObject("PDM_BI_WorkTask").query("device_id = '"+device.getString("device_id")+"' AND status = '30'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(device_task)){ + throw new PdaRequestException("该设备已经存在生产中的工序任务!"); + } } //更新工令表实际开始时间 - if (topDtl.getString("workprocedure_code").equals(work_task.getString("workprocedure_code"))){ + if (topDtl.getString("workprocedure_code").equals(work_task.getString("workprocedure_code"))) { work_order.put("realstart_time", now); } WQLObject.getWQLObject("PDM_BI_WorkOrder").update(work_order); @@ -307,14 +315,14 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { } if (work_task.getString("workprocedure_code").equals("GX001")) { //判断该配方是否完成 - JSONObject form_mst = WQLObject.getWQLObject("PDM_BI_Formula").query("workorder_code = '"+work_task.getString("workorder_code")+"' AND status < '99' AND is_delete ='0'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(form_mst)){ + JSONObject form_mst = WQLObject.getWQLObject("PDM_BI_Formula").query("workorder_code = '" + work_task.getString("workorder_code") + "' AND status < '99' AND is_delete ='0'").uniqueResult(0); + if (ObjectUtil.isNotEmpty(form_mst)) { throw new PdaRequestException("存在未完成的配方,无法结束!"); } } //更新工令表实际结束时间 - if (lastDtl.getString("workprocedure_code").equals(work_task.getString("workprocedure_code"))){ + if (lastDtl.getString("workprocedure_code").equals(work_task.getString("workprocedure_code"))) { work_order.put("realend_time", now); } WQLObject.getWQLObject("PDM_BI_WorkOrder").update(work_order); @@ -371,23 +379,23 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { //查询配方 JSONObject from_jo = WQLObject.getWQLObject("PDM_BI_Formula").query("formula_code = '" + formula_code + "'").uniqueResult(0); - if (from_jo.getString("status").equals("99")){ + if (from_jo.getString("status").equals("99")) { throw new PdaRequestException("已经完成的配方无法绑定载具!"); } JSONObject vehicle = WQLObject.getWQLObject("md_pb_storagevehicleinfo").query("storagevehicle_code = '" + vehicle_code + "'").uniqueResult(0); - if (ObjectUtil.isEmpty(vehicle)){ + if (ObjectUtil.isEmpty(vehicle)) { throw new PdaRequestException("查询不到该载具!"); } //判断是否为副桶,如果为副桶判断主桶是否完成 String bucket_type = from_jo.getString("bucket_type"); - if (bucket_type.equals("02")){ - JSONObject first_form = WQLObject.getWQLObject("PDM_BI_Formula").query("workorder_code = '"+from_jo.getString("workorder_code")+"' AND bucket_type = '01' AND is_delete = '0'").uniqueResult(0); - if (!first_form.getString("status").equals("99")){ + if (bucket_type.equals("02")) { + JSONObject first_form = WQLObject.getWQLObject("PDM_BI_Formula").query("workorder_code = '" + from_jo.getString("workorder_code") + "' AND bucket_type = '01' AND is_delete = '0'").uniqueResult(0); + if (!first_form.getString("status").equals("99")) { throw new PdaRequestException("该工令存在未完成的主桶配方,请先完成主桶!"); } - if (first_form.getString("storagevehicle_id").equals(vehicle.getString("storagevehicle_id"))){ + if (first_form.getString("storagevehicle_id").equals(vehicle.getString("storagevehicle_id"))) { throw new PdaRequestException("该配粉槽已被主桶使用!"); } } @@ -442,8 +450,8 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { } //查询配方 - JSONObject form_mst = WQLObject.getWQLObject("PDM_BI_Formula").query("formula_code = '"+formula_code+"'").uniqueResult(0); - if (!form_mst.getString("status").equals("99")){ + JSONObject form_mst = WQLObject.getWQLObject("PDM_BI_Formula").query("formula_code = '" + formula_code + "'").uniqueResult(0); + if (!form_mst.getString("status").equals("99")) { throw new PdaRequestException("该配方未完成,不允许搬出!"); } @@ -570,7 +578,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { } JSONObject jo = JSONObject.parseObject(JSON.toJSONString(jsonObject)); String is_second = jo.getString("is_second"); - JSONArray rows = WQL.getWO("QPDM_WORK_TASK").addParam("flag", "6").addParam("is_second",is_second).process().getResultJSONArray(0); + JSONArray rows = WQL.getWO("QPDM_WORK_TASK").addParam("flag", "6").addParam("is_second", is_second).process().getResultJSONArray(0); JSONObject returnjo = new JSONObject(); returnjo.put("code", "1"); returnjo.put("content", rows); @@ -692,9 +700,9 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { JSONObject work_task = WQLObject.getWQLObject("PDM_BI_WorkTask").query("worktask_id = '" + worktask_id + "'").uniqueResult(0); JSONObject work_order = WQLObject.getWQLObject("PDM_BI_WorkOrder").query("workorder_code = '" + work_task.getString("workorder_code") + "'").uniqueResult(0); - JSONObject device_jo = WQLObject.getWQLObject("em_bi_deviceinfo").query("device_id = '"+work_task.getString("device_id")+"'").uniqueResult(0); - JSONObject form_jo = WQLObject.getWQLObject("PDM_BI_Formula").query("workorder_code = '"+work_task.getString("workorder_code")+"' AND bucket_type = '01'").uniqueResult(0); - JSONObject material_ext = WQLObject.getWQLObject("MD_ME_ProducMaterialExt").query("material_id = '"+work_order.getString("material_id")+"'").uniqueResult(0); + JSONObject device_jo = WQLObject.getWQLObject("em_bi_deviceinfo").query("device_id = '" + work_task.getString("device_id") + "'").uniqueResult(0); + JSONObject form_jo = WQLObject.getWQLObject("PDM_BI_Formula").query("workorder_code = '" + work_task.getString("workorder_code") + "' AND bucket_type = '01'").uniqueResult(0); + JSONObject material_ext = WQLObject.getWQLObject("MD_ME_ProducMaterialExt").query("material_id = '" + work_order.getString("material_id") + "'").uniqueResult(0); if (StrUtil.isEmpty(work_task.getString("device_id"))) { throw new PdaRequestException("当前工序任务还未绑定设备!"); @@ -708,7 +716,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { String workprocedure_id = work_task.getString("workprocedure_id"); JSONArray work_para = WQLObject.getWQLObject("PDM_BI_WorkProcedureParaProduct").query("material_id = '" + material_id + "' AND workprocedure_id = '" + workprocedure_id + "'").getResultJSONArray(0); - if (ObjectUtil.isEmpty(work_para)){ + if (ObjectUtil.isEmpty(work_para)) { throw new PdaRequestException("该产品未设置球磨参数!"); } @@ -719,22 +727,22 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { JSONObject data2 = new JSONObject(); data2.put("device_code", device_jo.getString("device_code")); //查询对应的字段 - JSONObject para = WQLObject.getWQLObject("pdm_bi_workprocedurepara").query("para_id = '"+row.getString("para_id")+"'").uniqueResult(0); - if(ObjectUtil.isEmpty(para)){ + JSONObject para = WQLObject.getWQLObject("pdm_bi_workprocedurepara").query("para_id = '" + row.getString("para_id") + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(para)) { throw new PdaRequestException("球磨工艺参数查询不到!"); } - if (StrUtil.isEmpty(para.getString("ext_name"))){ + if (StrUtil.isEmpty(para.getString("ext_name"))) { throw new PdaRequestException("球磨工艺参数未维护!"); } data2.put("code", para.getString("ext_name")); data2.put("value", row.getString("value")); //球磨时间从配方表主桶配方中获取 - if (para.getString("para_code").equals("QM008")){ + if (para.getString("para_code").equals("QM008")) { data2.put("value", form_jo.getString("ball_time")); } //工艺酒精加量设定值:工令重量*液料比,液料比从扩展属性中取; - if (para.getString("para_code").equals("QM009")){ - data2.put("value", NumberUtil.mul(work_order.getDouble("workorder_qty"),material_ext.getDouble("liquid_rate"))); + if (para.getString("para_code").equals("QM009")) { + data2.put("value", NumberUtil.mul(work_order.getDouble("workorder_qty"), material_ext.getDouble("liquid_rate"))); } array.add(data2); } @@ -997,7 +1005,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { } JSONObject work_task = WQLObject.getWQLObject("PDM_BI_WorkTask").query("worktask_id = '" + worktask_id + "'").uniqueResult(0); - JSONObject device_jo = WQLObject.getWQLObject("em_bi_deviceinfo").query("device_id = '"+work_task.getString("device_id")+"'").uniqueResult(0); + JSONObject device_jo = WQLObject.getWQLObject("em_bi_deviceinfo").query("device_id = '" + work_task.getString("device_id") + "'").uniqueResult(0); if (StrUtil.isEmpty(work_task.getString("device_id"))) { throw new PdaRequestException("当前工序任务还未绑定设备!"); @@ -1012,7 +1020,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { JSONArray work_para = WQLObject.getWQLObject("PDM_BI_WorkProcedureParaProduct").query("material_id = '" + material_id + "' AND workprocedure_id = '" + workprocedure_id + "'").getResultJSONArray(0); - if (ObjectUtil.isEmpty(work_para)){ + if (ObjectUtil.isEmpty(work_para)) { throw new PdaRequestException("该产品未设置工艺参数!"); } @@ -1023,11 +1031,11 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { JSONObject data2 = new JSONObject(); data2.put("device_code", device_jo.getString("device_code")); //查询对应的字段 - JSONObject para = WQLObject.getWQLObject("pdm_bi_workprocedurepara").query("para_id = '"+row.getString("para_id")+"'").uniqueResult(0); - if(ObjectUtil.isEmpty(para)){ + JSONObject para = WQLObject.getWQLObject("pdm_bi_workprocedurepara").query("para_id = '" + row.getString("para_id") + "'").uniqueResult(0); + if (ObjectUtil.isEmpty(para)) { throw new PdaRequestException("喷雾工艺参数查询不到!"); } - if (StrUtil.isEmpty(para.getString("ext_name"))){ + if (StrUtil.isEmpty(para.getString("ext_name"))) { throw new PdaRequestException("喷雾工艺参数未维护!"); } data2.put("code", para.getString("ext_name")); @@ -1085,7 +1093,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { JSONObject point = WQLObject.getWQLObject("sch_base_point").query("point_code = '" + next_device.getString("point_code") + "'").uniqueResult(0); String vehicle_code = point.getString("vehicle_code"); - if (StrUtil.isEmpty(vehicle_code)){ + if (StrUtil.isEmpty(vehicle_code)) { throw new PdaRequestException("当前喷雾塔上料位不存在载具!"); } @@ -1143,8 +1151,8 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { } //判断该工序是否是最后一道工序 - JSONObject work_task = WQLObject.getWQLObject("pdm_bi_worktask").query("worktask_id = '"+worktask_id+"'").uniqueResult(0); - if (work_task.getString("workprocedure_id").equals(work_task.getString("nextworkprocedure_id"))){ + JSONObject work_task = WQLObject.getWQLObject("pdm_bi_worktask").query("worktask_id = '" + worktask_id + "'").uniqueResult(0); + if (work_task.getString("workprocedure_id").equals(work_task.getString("nextworkprocedure_id"))) { throw new PdaRequestException("当前工序为最后一道工序!"); } //查询混料设备的上料位 @@ -1315,7 +1323,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { throw new PdaRequestException("未查询到生产中的配方明细!"); } - JSONObject bucket_job = WQLObject.getWQLObject("PDM_BI_FormulaDtlJob").query("status < '99' AND formula_code = '"+formula_code+"'").uniqueResult(0); + JSONObject bucket_job = WQLObject.getWQLObject("PDM_BI_FormulaDtlJob").query("status < '99' AND formula_code = '" + formula_code + "'").uniqueResult(0); if (ObjectUtil.isNotEmpty(bucket_job)) { throw new PdaRequestException("桶存在未完成的作业!"); } @@ -1338,7 +1346,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { boolean is_child = false; if (dtl_jo.getString("material_type").equals("02")) { String bucket_class = bucket_mater.getString("material_type_id"); - String dtl_class = "('"+dtl_jo.getString("material_id")+"')"; + String dtl_class = "('" + dtl_jo.getString("material_id") + "')"; String class_ids = classstandardService.getAllChildIdStr(dtl_class); if (class_ids.contains(bucket_class)) { is_child = true; @@ -1348,7 +1356,7 @@ public class PdmWorkTaskServiceImpl implements PdmWorkTaskService { if ((dtl_jo.getString("material_type").equals("01") && bucket_jo.getString("material_id").equals(dtl_jo.getString("material_id"))) || (dtl_jo.getString("material_type").equals("02") && is_child)) { JSONObject min_bucket = WQLObject.getWQLObject("md_pb_bucketrecord").query("material_id = '" + bucket_jo.getString("material_id") + "' AND storagevehicle_code = '" + bucket_jo.getString("vehicle_code") + "' order by storage_qty asc").uniqueResult(0); - if (ObjectUtil.isNotEmpty(min_bucket) && min_bucket.getDoubleValue("storage_qty") storage_qty) { - jo.put("needout_qty", NumberUtil.roundStr(storage_qty,4)); + jo.put("needout_qty", NumberUtil.roundStr(storage_qty, 4)); } else { - jo.put("needout_qty", NumberUtil.roundStr(need_qty,4)); + jo.put("needout_qty", NumberUtil.roundStr(need_qty, 4)); } WQLObject.getWQLObject("PDM_BI_FormulaDtlJob").insert(jo);