| | |
| | | package com.aps.job.service.impl; |
| | | |
| | | import cn.hutool.core.util.IdUtil; |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.aps.common.core.utils.DateUtils; |
| | | import com.aps.common.core.utils.StringUtils; |
| | | import com.aps.job.util.Sequence; |
| | | import com.aps.job.domain.ApsWorkOrderJob; |
| | | import com.aps.job.domain.ApsWorkOrderJobLog; |
| | | import com.aps.job.domain.ApsWorkOrderProcess; |
| | |
| | | |
| | | @Autowired |
| | | private ApsWorkOrderJobLogMapper apsWorkOrderJobLogMapper; |
| | | |
| | | @Autowired |
| | | private Sequence sequence; |
| | | |
| | | /** |
| | | * 查询工单工序 |
| | |
| | | apsWorkOrderProcess.setOpNum(process.getString("OpNum")); |
| | | apsWorkOrderProcess.setOpId(process.getString("OpID")); |
| | | apsWorkOrderProcess.setProcessName(process.getString("StdOp")); |
| | | apsWorkOrderProcess.setStandardTime(process.getFloat("StandardTime")); |
| | | apsWorkOrderProcess.setStandardTime(process.getBigDecimal("StandardTime")); |
| | | apsWorkOrderProcess.setPalnStartDate(process.getDate("PlanStartDate")); |
| | | apsWorkOrderProcess.setPlanCompleteDate(process.getDate("PlanCompleteDate")); |
| | | apsWorkOrderProcess.setProcessQty(process.getFloat("ProcessQty")); |
| | | apsWorkOrderProcess.setScrapQty(process.getFloat("ScrapQty")); |
| | | apsWorkOrderProcess.setProcessQty(process.getBigDecimal("ProcessQty")); |
| | | apsWorkOrderProcess.setScrapQty(process.getBigDecimal("ScrapQty")); |
| | | apsWorkOrderProcess.setOpStatus(process.getString("OpStatus")); |
| | | apsWorkOrderProcess.setOrg(process.getString("Org")); |
| | | apsWorkOrderProcess.setOrgCode(process.getString("OrgCode")); |
| | | apsWorkOrderProcess.setWorkCenter(process.getString("WorkCenter")); |
| | | if (existsId != null) { |
| | | apsWorkOrderProcess.setId(existsId); |
| | | apsWorkOrderProcess.setUpdateBy("task"); |
| | | apsWorkOrderProcess.setUpdateTime(DateUtils.getNowDate()); |
| | | updateList.add(apsWorkOrderProcess); |
| | | } else { |
| | | apsWorkOrderProcess.setId(sequence.nextId()); |
| | | apsWorkOrderProcess.setId(IdUtil.getSnowflakeNextId()); |
| | | apsWorkOrderProcess.setCreateBy("task"); |
| | | apsWorkOrderProcess.setCreateTime(DateUtils.getNowDate()); |
| | | addList.add(apsWorkOrderProcess); |
| | | } |
| | |
| | | if(!updateList.isEmpty()){ |
| | | apsWorkOrderProcessMapper.updateApsWorkOrderProcessBatch(updateList); |
| | | apsWorkOrderJobLog.setResult("ok update "+updateList.size()); |
| | | apsWorkOrderJobLog.setUpdateTime(DateUtils.getNowDate()); |
| | | apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); |
| | | logger.info("【UPDATE】获取并更新U9工序成功!【工单号:{}】", docNos); |
| | | } |
| | | if(!addList.isEmpty()){ |
| | | apsWorkOrderProcessMapper.insertApsWorkOrderProcessBatch(addList); |
| | | apsWorkOrderJobLog.setResult("ok insert "+updateList.size()); |
| | | apsWorkOrderJobLog.setUpdateTime(DateUtils.getNowDate()); |
| | | apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); |
| | | logger.info("【INSERT】获取并插入U9工序成功!【工单号:{}】", docNos); |
| | | } |
| | |
| | | param.put("docNos", haveProcessDocNos); |
| | | apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); |
| | | } |
| | | Map<String, Object> param = new HashMap<>(); |
| | | param.put("status", "2"); |
| | | param.put("docNos", docNos); |
| | | apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); |
| | | if(!docNos.isEmpty()){ |
| | | Map<String, Object> param = new HashMap<>(); |
| | | param.put("status", "2"); |
| | | param.put("docNos", docNos); |
| | | apsWorkOrderJobMapper.updateApsWorkOrderJobPrccessStatus(param); |
| | | } |
| | | }else{ |
| | | apsWorkOrderJobLog.setResponseData(response.getBody()); |
| | | apsWorkOrderJobLog.setResult("fail"); |
| | | apsWorkOrderJobLog.setUpdateTime(DateUtils.getNowDate()); |
| | | apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); |
| | | logger.error("【ERROR】查询U9工序失败!【工单号:{}, 错误码:{},错误信息:{}】", docNos, responseBodyJson.getString("status"), responseBodyJson.getString("message")); |
| | | } |
| | |
| | | } else { |
| | | apsWorkOrderJobLog.setResponseData(response.getBody()); |
| | | apsWorkOrderJobLog.setResult("fail"); |
| | | apsWorkOrderJobLog.setUpdateTime(DateUtils.getNowDate()); |
| | | apsWorkOrderJobLogService.updateApsWorkOrderJobLog(apsWorkOrderJobLog); |
| | | throw new Exception("【ERROR】查询U9工序失败!【工单号:{"+ docNos +"}, 错误码:{"+ responseBodyJson.getString("status") +"},错误信息:{"+ responseBodyJson.getString("message") +"}】"); |
| | | } |
| | |
| | | apsWorkOrderJob.setProcessStatus(status); |
| | | // 补查之前没有查到工序的工单 |
| | | if("2".equals(status)){ |
| | | int total = apsWorkOrderJobMapper.selectApsWorkOrderJobList(apsWorkOrderJob).size(); |
| | | int total = apsWorkOrderJobMapper.selectApsWorkOrderJobListDocNoNotNull(apsWorkOrderJob).size(); |
| | | int pages = total % pageSize == 0 ? total / pageSize : total / pageSize + 1; |
| | | for (int i = 1; i <= pages; i++){ |
| | | PageHelper.startPage(i, pageSize); |