From ae1b88d218facc8c4a88d5ab8ba23e1c25c3a775 Mon Sep 17 00:00:00 2001 From: yangwl <1726150332@qq.com> Date: Thu, 14 Jul 2022 16:51:35 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BF=94=E4=BF=AE=E5=B7=A5=E8=89=BA=E5=AE=8C?= =?UTF-8?q?=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AbnormalBillController.java | 2 +- .../service/impl/AbnormalPlanServiceImpl.java | 24 +- .../common/controller/BoardController.java | 14 +- .../controller/SfcDispatchController.java | 50 +++- .../mesnac/dispatch/dto/ResultData.java | 37 +++ .../resources/mapper/SfcDispatchMapper.xml | 2 +- .../service/CAPPAPIWebService.java | 2 +- .../service/impl/InterfaceServiceImpl.java | 4 +- .../meapi/controller/RouterController.java | 34 ++- .../mesnac/meapi/dto/AbnormalRouterDto.java | 20 +- .../mesnac/meapi/dto/RouterStepDto.java | 18 ++ .../foreverwin/mesnac/meapi/dto/SfcDto.java | 9 + .../mesnac/meapi/dto/UploadPicturesDto.java | 229 ++++++++++++++++++ .../mesnac/meapi/mapper/PicturesMapper.java | 18 ++ .../mesnac/meapi/mapper/RouterMapper.java | 7 +- .../meapi/mapper/RouterStepcontentMapper.java | 5 + .../mesnac/meapi/model/DisRouter.java | 32 +++ .../mesnac/meapi/service/PicturesService.java | 28 +++ .../mesnac/meapi/service/RouterService.java | 13 +- .../service/RouterStepcontentService.java | 12 + .../service/impl/PicturesServiceImpl.java | 48 ++++ .../meapi/service/impl/RouterServiceImpl.java | 60 ++++- .../impl/RouterStepcontentServiceImpl.java | 32 +++ .../main/resources/mapper/RouterMapper.xml | 42 +++- .../resources/mapper/RouterStepMapper.xml | 7 +- .../mapper/RouterStepcontentMapper.xml | 26 +- meapi/src/main/resources/mapper/SfcMapper.xml | 3 +- .../main/resources/mapper/UserGroupMapper.xml | 2 +- .../service/impl/PodTemplateServiceImpl.java | 55 ++++- .../quality/model/InspectionTaskManage.java | 9 + .../impl/InspectionTaskManageServiceImpl.java | 30 +++ .../mapper/InspectionTaskManageMapper.xml | 3 +- 32 files changed, 814 insertions(+), 63 deletions(-) create mode 100644 dispatch/src/main/java/com/foreverwin/mesnac/dispatch/dto/ResultData.java create mode 100644 meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/UploadPicturesDto.java create mode 100644 meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/PicturesMapper.java create mode 100644 meapi/src/main/java/com/foreverwin/mesnac/meapi/service/PicturesService.java create mode 100644 meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/PicturesServiceImpl.java diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java index 8aeddedb..f7afbff4 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java @@ -392,7 +392,6 @@ public class AbnormalBillController { }catch (Exception e){ return R.failed("显示图片失败:"+e.getMessage()); } - } @PostMapping("/delete") @@ -410,6 +409,7 @@ public class AbnormalBillController { return R.ok(abnormalBillService.findUploadPictureByAbnormalBo(abnormalBill)); } + @GetMapping("/getNextNumber") public R getNextNumber(String type){ return R.ok(abnormalBillService.getNextNumber(type)); diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalPlanServiceImpl.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalPlanServiceImpl.java index 9335a223..3c21ddab 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalPlanServiceImpl.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/service/impl/AbnormalPlanServiceImpl.java @@ -261,20 +261,20 @@ public class AbnormalPlanServiceImpl extends ServiceImpl> result = boardMapper.scheduleOfCompletion(paramMap); - List> newlist=new ArrayList<>(); - for (Map map : result){ - if (!map.get("COMP_RATE").equals("100%")){ - newlist.add(map); - } - } - return R.ok(newlist); +// List> newlist=new ArrayList<>(); +// for (Map map : result){ +// if (!map.get("COMP_RATE").equals("100%")){ +// newlist.add(map); +// } +// } + return R.ok(result); } catch (Exception e) { return R.failed(e.getMessage()); } diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/SfcDispatchController.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/SfcDispatchController.java index 9089a047..868ec537 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/SfcDispatchController.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/SfcDispatchController.java @@ -3,9 +3,11 @@ package com.foreverwin.mesnac.dispatch.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.foreverwin.mesnac.common.dto.SfcDispatchDto; -import com.foreverwin.mesnac.common.enums.DispatchStatusEnum; +import com.foreverwin.mesnac.dispatch.dto.ResultData; +import com.foreverwin.mesnac.dispatch.dto.RouterDTO; import com.foreverwin.mesnac.dispatch.model.SfcDispatch; import com.foreverwin.mesnac.dispatch.service.SfcDispatchService; +import com.foreverwin.mesnac.meapi.dto.UploadPicturesDto; import com.foreverwin.mesnac.meapi.service.RouterStepcontentService; import com.foreverwin.modular.core.util.CommonMethods; import com.foreverwin.modular.core.util.FrontPage; @@ -42,6 +44,7 @@ public class SfcDispatchController { @Autowired private RouterStepcontentService routerStepcontentService; + /** * 查询派工数据 * @@ -234,25 +237,54 @@ public class SfcDispatchController { public R findRepairContent(@RequestBody List sfcDispatchList) { try { Map paramMap=new HashMap(); + Map distinctClassMap=new HashMap(); + UploadPicturesDto uploadPicturesDto=new UploadPicturesDto(); paramMap.put("site", CommonMethods.getSite()); String msg=""; + String pbdes=""; + String url=""; List> result=null; + List mapList=new ArrayList<>(); + ResultData resultData=new ResultData(); + + // ResultData resultData=new ResultData(); + List distinctClass = sfcDispatchList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(o -> + o.getShopOrder() + ";" + o.getSfc()))), ArrayList::new)); + for (SfcDispatchDto sfcdto: distinctClass) { + distinctClassMap.put("SHOP_ORDER",sfcdto.getShopOrder()); +// distinctClassMap.put("SFC",""); +// distinctClassMap.put("ITEM_BO",sfcdto.getItemBo()); + + List stringList= routerStepcontentService.pbDescription(distinctClassMap); + uploadPicturesDto = routerStepcontentService.findUploadPictureByRouterBo(sfcdto.getRouterBo()); + if (stringList!=null&&stringList.size()!=0){ + for (int i = 0; i < stringList.size(); i++) { + pbdes=pbdes+stringList.get(i); + } + } + } + resultData.setQuestion(pbdes); + if (uploadPicturesDto!=null){ + resultData.setPrctureAdress(uploadPicturesDto.getPictureAddress()); + } for (int i = 0; i < sfcDispatchList.size(); i++) { - paramMap.put("routerStepBo", "RouterStepBO:"+sfcDispatchList.get(i).getRouterBo()+","+sfcDispatchList.get(i).getStepId()); - result=routerStepcontentService.selectDisRouterInfo(paramMap); - if (result!=null&&result.size()!=0){ + paramMap.put("routerStepBo", "RouterStepBO:" + sfcDispatchList.get(i).getRouterBo() + "," + sfcDispatchList.get(i).getStepId()); + result = routerStepcontentService.selectDisRouterInfo(paramMap); + + if (result != null && result.size() != 0) { + for (int j = 0; j < result.size(); j++) { - msg=msg+"【"+result.get(j).get("STEP_ID")+"】"+ - result.get(j).get("ROUTER_STEP_CONTENT"); - } + msg = msg + "【" + result.get(j).get("STEP_ID") + "】" + result.get(j).get("ROUTER_STEP_CONTENT"); + } } } - - return R.ok(msg); + resultData.setRouter(msg); + return R.ok(resultData); }catch (Exception e){ return R.failed(e.getMessage()); } } + } \ No newline at end of file diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/dto/ResultData.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/dto/ResultData.java new file mode 100644 index 00000000..3546f9d2 --- /dev/null +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/dto/ResultData.java @@ -0,0 +1,37 @@ +package com.foreverwin.mesnac.dispatch.dto; + +import java.util.List; + +public class ResultData { + private String question; + private String prctureAdress; + private String router; + + public String getRouter() { + return router; + } + + public void setRouter(String router) { + this.router = router; + } + + public String getQuestion() { + return question; + } + + public void setQuestion(String question) { + this.question = question; + } + + + public String getPrctureAdress() { + return prctureAdress; + } + + public void setPrctureAdress(String prctureAdress) { + this.prctureAdress = prctureAdress; + } + + + +} diff --git a/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml b/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml index f7a9665c..e481da0d 100644 --- a/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml +++ b/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml @@ -906,7 +906,7 @@ WHERE WIP.IS_COMPLETED = #{isCompleted} - ORDER BY WIP.SHOP_ORDER,WIP.SFC,WIP.STEP_ID,TO_NUMBER(WIP.DISPATCH_SEQ) + ORDER BY WIP.SHOP_ORDER,WIP.SFC,TO_NUMBER(WIP.DISPATCH_SEQ) asc diff --git a/integration/src/main/java/com/foreverwin/mesnac/integration/service/CAPPAPIWebService.java b/integration/src/main/java/com/foreverwin/mesnac/integration/service/CAPPAPIWebService.java index 02426f73..76ea9ca0 100644 --- a/integration/src/main/java/com/foreverwin/mesnac/integration/service/CAPPAPIWebService.java +++ b/integration/src/main/java/com/foreverwin/mesnac/integration/service/CAPPAPIWebService.java @@ -13,7 +13,7 @@ import javax.jws.WebService; public interface CAPPAPIWebService { /** - * 物料清单同步 + * 物料同步 * * @param itemSyncRequest * @return diff --git a/integration/src/main/java/com/foreverwin/mesnac/integration/service/impl/InterfaceServiceImpl.java b/integration/src/main/java/com/foreverwin/mesnac/integration/service/impl/InterfaceServiceImpl.java index 3d2a9d33..57063480 100644 --- a/integration/src/main/java/com/foreverwin/mesnac/integration/service/impl/InterfaceServiceImpl.java +++ b/integration/src/main/java/com/foreverwin/mesnac/integration/service/impl/InterfaceServiceImpl.java @@ -80,7 +80,9 @@ public class InterfaceServiceImpl implements InterfaceService { String revision = "A"; //revision = StringUtil.notBlank(revision) ? revision : "A"; //物料描述=物料名+图号 - String dwgNo=itemSyncRequest.getDWG_NO(); + + //String dwgNo=itemSyncRequest.getDWG_NO() ; + String dwgNo= StringUtil.notBlank(itemSyncRequest.getDWG_NO()) ? itemSyncRequest.getDWG_NO() : " "; String itemDescription =dwgNo+" "+itemSyncRequest.getMAKTX(); //计量单位 String unitOfMeasure = itemSyncRequest.getUNIT_OF_MEASURE(); diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/RouterController.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/RouterController.java index c7a3ac6b..3690d741 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/RouterController.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/controller/RouterController.java @@ -1,5 +1,6 @@ package com.foreverwin.mesnac.meapi.controller; +import com.foreverwin.mesnac.meapi.dto.AbnormalRouterDto; import com.foreverwin.mesnac.meapi.model.DisRouter; import com.foreverwin.mesnac.meapi.model.RouterStepcontent; import com.foreverwin.mesnac.meapi.service.RouterStepcontentService; @@ -173,14 +174,41 @@ public class RouterController { return R.ok(); } - @GetMapping("/selectDisRouterInfo") - public R selectDisRouterInfo(@RequestParam(required = false) Map paramMap){ +// @GetMapping("/findUploadPictureByRouterBo") +// public R findUploadPictureByAbnormalBo(AbnormalBill abnormalBill){ +// return R.ok(abnormalBillService.findUploadPictureByAbnormalBo(abnormalBill)); +// } + + @PostMapping("/selectDisRouterInfo") + public R selectDisRouterInfo(@RequestParam(required = false) Map paramMap) { try { paramMap.put("site", CommonMethods.getSite()); - List> result =routerStepcontentService.selectDisRouterInfo(paramMap); + List> result = routerStepcontentService.selectDisRouterInfo(paramMap); return R.ok(result); + } catch (Exception e) { + return R.failed(e.getMessage().trim()); + } + } + + /** + * 查询返修工艺路线 + */ + + @PostMapping("/selectDisrouter") + public R selectDisrouter(@RequestBody AbnormalRouterDto abnormalRouterDto){ + try { + String site = CommonMethods.getSite(); + abnormalRouterDto.setSite(site); + List abnormalRouterDtoList=routerService.selectDisrouter(abnormalRouterDto); + return R.ok(abnormalRouterDtoList); + }catch (Exception e){ return R.failed(e.getMessage().trim()); } } + + + + + } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/AbnormalRouterDto.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/AbnormalRouterDto.java index 8e8df05b..6ccface3 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/AbnormalRouterDto.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/AbnormalRouterDto.java @@ -11,6 +11,7 @@ public class AbnormalRouterDto { private String routerRevision; private String routerType; private String routerBo; + private String site; public String getRouterType() { return routerType; @@ -20,7 +21,7 @@ public class AbnormalRouterDto { this.routerType = routerType; } - private String site; + public String getSite() { return site; @@ -101,4 +102,21 @@ public class AbnormalRouterDto { public void setRouterBo(String routerBo) { this.routerBo = routerBo; } + + @Override + public String toString() { + return "{" + + "abnormalNo='" + abnormalNo + '\'' + + ", pbDescription='" + pbDescription + '\'' + + ", item='" + item + '\'' + + ", itemRevision='" + itemRevision + '\'' + + ", itemDescription='" + itemDescription + '\'' + + ", shopOrder='" + shopOrder + '\'' + + ", router='" + router + '\'' + + ", routerRevision='" + routerRevision + '\'' + + ", routerType='" + routerType + '\'' + + ", routerBo='" + routerBo + '\'' + + ", site='" + site + '\'' + + '}'; + } } diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/RouterStepDto.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/RouterStepDto.java index dcb43d5a..e109dfa3 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/RouterStepDto.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/RouterStepDto.java @@ -6,6 +6,24 @@ public class RouterStepDto extends RouterStep { private String operation; private String operationBo; private String operationDesc; + private String routerStepContent; + private String repairTime; + + public String getRouterStepContent() { + return routerStepContent; + } + + public void setRouterStepContent(String routerStepContent) { + this.routerStepContent = routerStepContent; + } + + public String getRepairTime() { + return repairTime; + } + + public void setRepairTime(String repairTime) { + this.repairTime = repairTime; + } public String getOperation() { return operation; diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/SfcDto.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/SfcDto.java index cf2ae21c..77b18d8d 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/SfcDto.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/SfcDto.java @@ -34,6 +34,15 @@ public class SfcDto extends Sfc { private String stepSequence; private String seq; private String prodHours; + private String blankingSize; + + public String getBlankingSize() { + return blankingSize; + } + + public void setBlankingSize(String blankingSize) { + this.blankingSize = blankingSize; + } //工作令号 private String workOrder; diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/UploadPicturesDto.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/UploadPicturesDto.java new file mode 100644 index 00000000..53e23423 --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/dto/UploadPicturesDto.java @@ -0,0 +1,229 @@ +package com.foreverwin.mesnac.meapi.dto; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.extension.activerecord.Model; + +import java.io.Serializable; +import java.time.LocalDateTime; + +/** + *

+ * + *

+ * + * @author zjw + * @since 2021-09-09 + */ + +@TableName("Z_UPLOAD_PICTURES") + +public class UploadPicturesDto extends Model { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + @TableId(value = "HANDLE", type = IdType.INPUT) + private String handle; + /** + * 站点 + */ + @TableField("SITE") + private String site; + /** + * 图片路径 + */ + @TableField("PICTURE_PATH") + private String picturePath; + /** + * 图片路径详细地址 + */ + @TableField("PICTURE_ADDRESS") + private String pictureAddress; + /** + * 单号 + */ + @TableField("OBJECT_BO") + private String objectBo; + /** + * 数量 + */ + @TableField("NUM") + private String num; + /** + * 类型 + */ + @TableField("TYPE") + private String type; + /** + * 创建人 + */ + @TableField("CREATED_USER") + private String createdUser; + /** + * 创建时间 + */ + @TableField("CREATED_DATE_TIME") + private LocalDateTime createdDateTime; + /** + * 修改人 + */ + @TableField("MODIFIED_USER") + private String modifiedUser; + /** + * 修改日期 + */ + @TableField("MODIFIED_DATE_TIME") + private LocalDateTime modifiedDateTime; + @TableField("STATUS") + private String status; + + + public String getHandle() { + return handle; + } + + public void setHandle(String handle) { + this.handle = handle; + } + + public String getSite() { + return site; + } + + public void setSite(String site) { + this.site = site; + } + + public String getPicturePath() { + return picturePath; + } + + public void setPicturePath(String picturePath) { + this.picturePath = picturePath; + } + + public String getPictureAddress() { + return pictureAddress; + } + + public void setPictureAddress(String pictureAddress) { + this.pictureAddress = pictureAddress; + } + + public String getObjectBo() { + return objectBo; + } + + public void setObjectBo(String objectBo) { + this.objectBo = objectBo; + } + + public String getNum() { + return num; + } + + public void setNum(String num) { + this.num = num; + } + + public String getType() { + return type; + } + + public void setType(String type) { + this.type = type; + } + + public String getCreatedUser() { + return createdUser; + } + + public void setCreatedUser(String createdUser) { + this.createdUser = createdUser; + } + + public LocalDateTime getCreatedDateTime() { + return createdDateTime; + } + + public void setCreatedDateTime(LocalDateTime createdDateTime) { + this.createdDateTime = createdDateTime; + } + + public String getModifiedUser() { + return modifiedUser; + } + + public void setModifiedUser(String modifiedUser) { + this.modifiedUser = modifiedUser; + } + + public LocalDateTime getModifiedDateTime() { + return modifiedDateTime; + } + + public void setModifiedDateTime(LocalDateTime modifiedDateTime) { + this.modifiedDateTime = modifiedDateTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + +public static final String HANDLE = "HANDLE"; + +public static final String SITE = "SITE"; + +public static final String PICTURE_PATH = "PICTURE_PATH"; + +public static final String PICTURE_ADDRESS = "PICTURE_ADDRESS"; + +public static final String OBJECT_BO = "OBJECT_BO"; + +public static final String NUM = "NUM"; + +public static final String TYPE = "TYPE"; + +public static final String CREATED_USER = "CREATED_USER"; + +public static final String CREATED_DATE_TIME = "CREATED_DATE_TIME"; + +public static final String MODIFIED_USER = "MODIFIED_USER"; + +public static final String MODIFIED_DATE_TIME = "MODIFIED_DATE_TIME"; + +public static final String STATUS = "STATUS"; + + + @Override + protected Serializable pkVal() { + return this.handle; + } + + @Override + public String toString() { + return "UploadPictures{" + + "handle = " + handle + + ", site = " + site + + ", picturePath = " + picturePath + + ", pictureAddress = " + pictureAddress + + ", objectBo = " + objectBo + + ", num = " + num + + ", type = " + type + + ", createdUser = " + createdUser + + ", createdDateTime = " + createdDateTime + + ", modifiedUser = " + modifiedUser + + ", modifiedDateTime = " + modifiedDateTime + + ", status = " + status + + "}"; + } +} \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/PicturesMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/PicturesMapper.java new file mode 100644 index 00000000..fdc68262 --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/PicturesMapper.java @@ -0,0 +1,18 @@ +package com.foreverwin.mesnac.meapi.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.foreverwin.mesnac.meapi.dto.UploadPicturesDto; +import org.springframework.stereotype.Repository; + +/** + *

+ * Mapper 接口 + *

+ * + * @author zjw + * @since 2021-09-09 + */ +@Repository +public interface PicturesMapper extends BaseMapper { + +} \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/RouterMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/RouterMapper.java index ed2b1455..ceb993c3 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/RouterMapper.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/RouterMapper.java @@ -1,7 +1,10 @@ package com.foreverwin.mesnac.meapi.mapper; +import com.foreverwin.mesnac.meapi.dto.AbnormalRouterDto; import com.foreverwin.mesnac.meapi.model.Router; import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +import com.foreverwin.mesnac.meapi.model.RouterStep; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -24,5 +27,7 @@ public interface RouterMapper extends BaseMapper { List selectRouterList4RevisionDesc(@Param("site") String site, @Param("router") String router); - boolean findRepairOperation(@Param("site") String site, @Param("routerBo") String routerBo, @Param("stepId") String stepId); + RouterStep findRepairOperation(@Param("site") String site, @Param("routerBo") String routerBo, @Param("stepId") String stepId); + + List selectDisrouter(@Param("abnormalRouterDto")AbnormalRouterDto abnormalRouterDto); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/RouterStepcontentMapper.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/RouterStepcontentMapper.java index 87165531..f6bad3c7 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/RouterStepcontentMapper.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/mapper/RouterStepcontentMapper.java @@ -1,5 +1,6 @@ package com.foreverwin.mesnac.meapi.mapper; +import com.foreverwin.mesnac.meapi.dto.UploadPicturesDto; import com.foreverwin.mesnac.meapi.model.RouterStepcontent; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.springframework.stereotype.Repository; @@ -19,4 +20,8 @@ import java.util.Map; public interface RouterStepcontentMapper extends BaseMapper { List> selectDisRouterInfo(Map paramMap); + + List findpbDescription(Map paramMap); + + List findUploadPictureByRouterBo(UploadPicturesDto uploadPictures); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/DisRouter.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/DisRouter.java index 7f5641cd..cbc7dbf3 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/DisRouter.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/model/DisRouter.java @@ -1,6 +1,7 @@ package com.foreverwin.mesnac.meapi.model; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.extension.activerecord.Model; import com.foreverwin.mesnac.meapi.dto.DisRouterStepDto; @@ -19,6 +20,37 @@ public class DisRouter extends Model { private String item; + public String getFilePath() { + return filePath; + } + + public void setFilePath(String filePath) { + this.filePath = filePath; + } + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFileNum() { + return fileNum; + } + + public void setFileNum(String fileNum) { + this.fileNum = fileNum; + } + + private String filePath; + + + private String fileName; + + private String fileNum; + private List disRouterStepDtoList; @Override diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/PicturesService.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/PicturesService.java new file mode 100644 index 00000000..a6b3cc0a --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/PicturesService.java @@ -0,0 +1,28 @@ +package com.foreverwin.mesnac.meapi.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.foreverwin.mesnac.meapi.dto.UploadPicturesDto; +import com.foreverwin.modular.core.util.FrontPage; + +import java.util.List; + +/** + *

+ * 服务类 + *

+ * + * @author zjw + * @since 2021-09-09 + */ +public interface PicturesService extends IService { + + /** + * 分页查询 + * @param frontPage + * @return + */ + IPage selectPage(FrontPage frontPage, UploadPicturesDto uploadPictures); + + List selectList(UploadPicturesDto uploadPictures); +} \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/RouterService.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/RouterService.java index 48b4e566..a4fca779 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/RouterService.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/RouterService.java @@ -1,9 +1,11 @@ package com.foreverwin.mesnac.meapi.service; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.foreverwin.mesnac.meapi.dto.AbnormalRouterDto; import com.foreverwin.mesnac.meapi.model.DisRouter; import com.foreverwin.mesnac.meapi.model.Router; import com.baomidou.mybatisplus.extension.service.IService; +import com.foreverwin.mesnac.meapi.model.RouterStep; import com.foreverwin.modular.core.util.FrontPage; import java.util.List; @@ -42,7 +44,14 @@ public interface RouterService extends IService { void CreateDisRouter(DisRouter disRouter) throws Exception; - //判断是否为返修工序 - boolean findRepairOperation(String site,String routerBo,String stepId); +// //判断是否为返修工序 + RouterStep findRepairOperation(String site, String routerBo, String stepId); + List selectDisrouter(AbnormalRouterDto abnormalRouterDto); + + /** + * 放置图片 + * @param disRouter + */ + public void fileUpload(DisRouter disRouter,String routerBo); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/RouterStepcontentService.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/RouterStepcontentService.java index f7580f9d..ffdccb5f 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/RouterStepcontentService.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/RouterStepcontentService.java @@ -1,6 +1,7 @@ package com.foreverwin.mesnac.meapi.service; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.foreverwin.mesnac.meapi.dto.UploadPicturesDto; import com.foreverwin.mesnac.meapi.model.RouterStepcontent; import com.baomidou.mybatisplus.extension.service.IService; import com.foreverwin.modular.core.util.FrontPage; @@ -28,4 +29,15 @@ public interface RouterStepcontentService extends IService { List selectList(RouterStepcontent routerStepcontent); List> selectDisRouterInfo(Map paramMap); + + + + /** + * 根据工单号和SFC在质量异常表查找问题描述 + * @return + */ + List pbDescription(Map paramMap); + + + UploadPicturesDto findUploadPictureByRouterBo(String RouterBo); } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/PicturesServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/PicturesServiceImpl.java new file mode 100644 index 00000000..0d89e571 --- /dev/null +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/PicturesServiceImpl.java @@ -0,0 +1,48 @@ +package com.foreverwin.mesnac.meapi.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; + +import com.foreverwin.mesnac.meapi.dto.UploadPicturesDto; +import com.foreverwin.mesnac.meapi.mapper.PicturesMapper; +import com.foreverwin.mesnac.meapi.service.PicturesService; +import com.foreverwin.modular.core.util.FrontPage; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +/** + *

+ * 服务实现类 + *

+ * + * @author zjw + * @since 2021-09-09 + */ +@Service +@Transactional(rollbackFor = Exception.class) +public class PicturesServiceImpl extends ServiceImpl implements PicturesService { + + + @Autowired + private PicturesMapper uploadPicturesMapper; + + @Override + public IPage selectPage(FrontPage frontPage, UploadPicturesDto uploadPictures) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(uploadPictures); + return super.page(frontPage.getPagePlus(), queryWrapper); + } + + @Override + public List selectList(UploadPicturesDto uploadPictures) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.setEntity(uploadPictures); + return super.list(queryWrapper); + } + + +} \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/RouterServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/RouterServiceImpl.java index 085d758d..0eb5d121 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/RouterServiceImpl.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/RouterServiceImpl.java @@ -1,11 +1,11 @@ package com.foreverwin.mesnac.meapi.service.impl; +import com.foreverwin.mesnac.meapi.dto.AbnormalRouterDto; import com.foreverwin.mesnac.meapi.dto.DisRouterStepDto; +import com.foreverwin.mesnac.meapi.dto.UploadPicturesDto; import com.foreverwin.mesnac.meapi.enums.HandleEnum; import com.foreverwin.mesnac.meapi.model.*; -import com.foreverwin.mesnac.meapi.service.CustomFieldsService; -import com.foreverwin.mesnac.meapi.service.OperationService; -import com.foreverwin.mesnac.meapi.service.RouterStepcontentService; +import com.foreverwin.mesnac.meapi.service.*; import com.foreverwin.modular.core.exception.BusinessException; import com.foreverwin.modular.core.meext.MEServices; import com.foreverwin.modular.core.util.CommonMethods; @@ -13,7 +13,6 @@ import com.foreverwin.modular.core.util.FrontPage; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.foreverwin.mesnac.meapi.mapper.RouterMapper; -import com.foreverwin.mesnac.meapi.service.RouterService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.sap.me.productdefinition.*; import com.sap.me.productdefinition.RouterStep; @@ -23,10 +22,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; +import java.time.LocalDateTime; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import java.util.UUID; -import java.util.stream.Collectors; /** *

@@ -51,6 +51,8 @@ public class RouterServiceImpl extends ServiceImpl impleme private RouterStepcontentService routerStepcontentService; @Autowired private CustomFieldsService customFieldsService; + @Autowired + private PicturesService picturesService; @Override public IPage selectPage(FrontPage frontPage, Router router) { @@ -250,12 +252,18 @@ public class RouterServiceImpl extends ServiceImpl impleme routerNextStep.setNextStepId(lastStepId); routerStepList.get(routerStepList.size()-2).getRouterNextStepList().add(routerNextStep); - routerConfiguration.setEntryRouterStep(entryRouterStep); routerConfiguration.setRouterStepList(routerStepList); //工艺路线创建 routerConfigurationService.createRouter(routerConfiguration); + //图片路径 + try { + this.fileUpload(disRouter,routerBo); + }catch (Exception e){ + throw BusinessException.build("图片保存失败"); + } + //自定义数据保存 if (customFieldsList != null && customFieldsList.size() > 0) { customFieldsService.saveOrUpdateCustomFields(customFieldsList); @@ -263,8 +271,46 @@ public class RouterServiceImpl extends ServiceImpl impleme } @Override - public boolean findRepairOperation(String site, String routerBo, String stepId) { + public com.foreverwin.mesnac.meapi.model.RouterStep findRepairOperation(String site, String routerBo, String stepId) { return routerMapper.findRepairOperation(site,routerBo,stepId); } + @Override + public List selectDisrouter(AbnormalRouterDto abnormalRouterDto) { + return routerMapper.selectDisrouter(abnormalRouterDto); + } + + @Override + public void fileUpload(DisRouter disRouter,String routerBo) { + String user = CommonMethods.getUser(); + LocalDateTime now = LocalDateTime.now(); + String site = CommonMethods.getSite(); + String status = "N"; + List name = Arrays.asList(disRouter.getFileName().split(",")); + if(name.size() != 0){ + UploadPicturesDto uploadPictures = new UploadPicturesDto(); + uploadPictures.setHandle("UploadPicturesBO:"+site+","+disRouter.getRouter()+"_"+disRouter.getAbnormalNo()+","+status); + uploadPictures.setSite(site); + uploadPictures.setPicturePath(disRouter.getFilePath()); + StringBuilder pictureAddress = new StringBuilder(); + for (int i = 0; i <= name.size() -1; i++) { + if(i != name.size() -1){ + pictureAddress.append(disRouter.getFilePath()).append("/").append(name.get(i)).append(","); + }else{ + pictureAddress.append(disRouter.getFilePath()).append("/").append(name.get(i)); + } + } + uploadPictures.setStatus(status); + uploadPictures.setPictureAddress(pictureAddress.toString()); + uploadPictures.setObjectBo(routerBo); + uploadPictures.setNum(disRouter.getFileNum()); + uploadPictures.setType("Repair"); + uploadPictures.setCreatedUser(user); + uploadPictures.setCreatedDateTime(now); + uploadPictures.setModifiedUser(user); + uploadPictures.setModifiedDateTime(now); + picturesService.saveOrUpdate(uploadPictures); + } + } + } \ No newline at end of file diff --git a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/RouterStepcontentServiceImpl.java b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/RouterStepcontentServiceImpl.java index ac656e05..99f9996e 100644 --- a/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/RouterStepcontentServiceImpl.java +++ b/meapi/src/main/java/com/foreverwin/mesnac/meapi/service/impl/RouterStepcontentServiceImpl.java @@ -1,5 +1,8 @@ package com.foreverwin.mesnac.meapi.service.impl; +import com.foreverwin.mesnac.meapi.dto.UploadPicturesDto; +import com.foreverwin.modular.core.exception.BusinessException; +import com.foreverwin.modular.core.util.CommonMethods; import com.foreverwin.modular.core.util.FrontPage; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -11,6 +14,7 @@ import org.springframework.stereotype.Service; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -30,6 +34,7 @@ public class RouterStepcontentServiceImpl extends ServiceImpl selectPage(FrontPage frontPage, RouterStepcontent routerStepcontent) { QueryWrapper queryWrapper = new QueryWrapper<>(); @@ -50,4 +55,31 @@ public class RouterStepcontentServiceImpl extends ServiceImpl pbDescription(Map paramMap) { + return routerStepcontentMapper.findpbDescription(paramMap); + } + + @Override + public UploadPicturesDto findUploadPictureByRouterBo(String routerBo) { + String site = CommonMethods.getSite(); + UploadPicturesDto uploadPictures = new UploadPicturesDto(); + uploadPictures.setSite(site); + uploadPictures.setObjectBo(routerBo); + uploadPictures.setStatus("N"); + List uploadPictures1=new ArrayList<>(); + try { + uploadPictures1 = routerStepcontentMapper.findUploadPictureByRouterBo(uploadPictures); + }catch (Exception e){ + throw BusinessException.build(e.getMessage().trim()); + } + + if(uploadPictures1 != null && uploadPictures1.size() == 1){ + return uploadPictures1.get(0); + } + return null; + } + + } \ No newline at end of file diff --git a/meapi/src/main/resources/mapper/RouterMapper.xml b/meapi/src/main/resources/mapper/RouterMapper.xml index 14a35c92..4585f085 100644 --- a/meapi/src/main/resources/mapper/RouterMapper.xml +++ b/meapi/src/main/resources/mapper/RouterMapper.xml @@ -658,11 +658,49 @@ WHERE SITE = #{site} AND ROUTER = #{router} ORDER BY TO_NUMBER(REVISION) DESC - + SELECT * FROM ROUTER_STEP RS LEFT JOIN ROUTER RT ON RT.HANDLE=RS.ROUTER_BO WHERE RT.SITE=#{site} AND RT.HANDLE=#{routerBo} AND RS.STEP_ID=#{stepId} + + + diff --git a/meapi/src/main/resources/mapper/RouterStepMapper.xml b/meapi/src/main/resources/mapper/RouterStepMapper.xml index 1877910f..ed7570a1 100644 --- a/meapi/src/main/resources/mapper/RouterStepMapper.xml +++ b/meapi/src/main/resources/mapper/RouterStepMapper.xml @@ -490,9 +490,12 @@ STEP.ERP_OPERATION , OP.HANDLE AS OPERATION_BO, OP.OPERATION , - OPT.DESCRIPTION OPERATION_DESC + OPT.DESCRIPTION OPERATION_DESC, + ZRS.ROUTER_STEP_CONTENT, + ZRS.REPAIR_TIME FROM ROUTER R JOIN ROUTER_STEP STEP ON R.HANDLE = STEP.ROUTER_BO + LEFT JOIN Z_ROUTER_STEPCONTENT ZRS ON STEP.HANDLE=ZRS.ROUTER_STEP_BO JOIN ROUTER_OPERATION RO ON STEP.HANDLE = RO.ROUTER_STEP_BO JOIN OPERATION OP ON 'OperationBO:' || #{site} || ',' || OP.OPERATION || ',#' = RO.OPERATION_BO AND OP.CURRENT_REVISION = 'true' JOIN OPERATION_T OPT ON OP.HANDLE = OPT.OPERATION_BO AND OPT.LOCALE = #{locale} @@ -508,7 +511,7 @@ LEFT JOIN ITEM_T T2 ON ZAB.ITEM_BO=T2.ITEM_BO LEFT JOIN SHOP_ORDER T3 ON T3.SHOP_ORDER=ZAB.SHOP_ORDER LEFT JOIN ROUTER T4 on T4.HANDLE=T3.ROUTER_BO - WHERE ZAB.TYPE='Z' AND ZAB.STATUS != ('G') + WHERE ZAB.TYPE='Z' AND (T1.ITEM LIKE '%${ew.entity.item}%' OR T2.DESCRIPTION LIKE '%${ew.entity.item}%' OR ZAB.ABNORMAL_NO LIKE '%${ew.entity.item}%') diff --git a/meapi/src/main/resources/mapper/RouterStepcontentMapper.xml b/meapi/src/main/resources/mapper/RouterStepcontentMapper.xml index fa6b848a..32513c65 100644 --- a/meapi/src/main/resources/mapper/RouterStepcontentMapper.xml +++ b/meapi/src/main/resources/mapper/RouterStepcontentMapper.xml @@ -193,7 +193,7 @@ + + + INSERT INTO Z_ROUTER_STEPCONTENT diff --git a/meapi/src/main/resources/mapper/SfcMapper.xml b/meapi/src/main/resources/mapper/SfcMapper.xml index 5e5ea765..92323b79 100644 --- a/meapi/src/main/resources/mapper/SfcMapper.xml +++ b/meapi/src/main/resources/mapper/SfcMapper.xml @@ -49,6 +49,7 @@ + @@ -675,7 +676,7 @@ CASE WHEN ZIT.RESULT='OK' THEN '合格' WHEN ZIT.RESULT='NG' THEN '不合格' ELSE '未检验' END PRE_WORKORDER_RESULT ,SS.STEP_ID CURRENT_STEP_ID,OT.DESCRIPTION OPERATION_DESCRIPTION,zsd.STEP_ID, S.SFC,S.QTY,IT.DESCRIPTION ITEM_DESCRIPTION,S.ITEM_BO,S.SHOP_ORDER_BO, - TO_CHAR(zsd.PLANNED_COMP_DATE+INTERVAL '8' HOUR,'YYYY-MM-DD HH24:MI:SS') PLANNED_COMP_DATE + TO_CHAR(zsd.PLANNED_COMP_DATE+INTERVAL '8' HOUR,'YYYY-MM-DD HH24:MI:SS') PLANNED_COMP_DATE,PREZSD.BLANKING_SIZE FROM SFC S LEFT JOIN ITEM_T IT ON S.ITEM_BO=IT.ITEM_BO AND IT.LOCALE=#{locale} JOIN Z_SFC_DISPATCH zsd ON S.SFC=zsd.SFC AND S.SITE=zsd.SITE diff --git a/meapi/src/main/resources/mapper/UserGroupMapper.xml b/meapi/src/main/resources/mapper/UserGroupMapper.xml index 0ce9dbbe..88c5418b 100644 --- a/meapi/src/main/resources/mapper/UserGroupMapper.xml +++ b/meapi/src/main/resources/mapper/UserGroupMapper.xml @@ -402,7 +402,7 @@ ug.SITE = #{site} - AND cf.VALUE = #{param.type} + AND cf.VALUE LIKE '%'||#{param.type}||'%' diff --git a/production/src/main/java/com/foreverwin/mesnac/production/service/impl/PodTemplateServiceImpl.java b/production/src/main/java/com/foreverwin/mesnac/production/service/impl/PodTemplateServiceImpl.java index f40fa376..e105d614 100644 --- a/production/src/main/java/com/foreverwin/mesnac/production/service/impl/PodTemplateServiceImpl.java +++ b/production/src/main/java/com/foreverwin/mesnac/production/service/impl/PodTemplateServiceImpl.java @@ -27,6 +27,7 @@ import com.foreverwin.mesnac.dispatch.service.SfcDispatchService; import com.foreverwin.mesnac.dispatch.service.UserResourceService; import com.foreverwin.mesnac.meapi.dto.BomComponentDto; +import com.foreverwin.mesnac.meapi.dto.RouterStepDto; import com.foreverwin.mesnac.meapi.dto.SfcDto; import com.foreverwin.mesnac.meapi.dto.WorkCenterDto; import com.foreverwin.mesnac.meapi.mapper.ResrceMapper; @@ -113,6 +114,8 @@ public class PodTemplateServiceImpl implements PodTemplateService { private SfcDispatchService sfcDispatchService; @Autowired private UserResourceService userResourceService; + @Autowired + private RouterStepService routerStepService; @@ -315,14 +318,6 @@ public class PodTemplateServiceImpl implements PodTemplateService { if (status.equals("404")) { throw new BaseException("产品条码" + sfc + "已暂停"); } - /** - * 判断是否为返修工序、返修工序不报工 - */ - boolean flag=routerService.findRepairOperation(site,sfcDispatchById.getRouterBo(),stepId); - if (flag){ - enabled=false; - } - BigDecimal workHour=BigDecimal.ZERO; BigDecimal qty = new BigDecimal(sfcServiceById.getQty().toString()); @@ -416,6 +411,25 @@ public class PodTemplateServiceImpl implements PodTemplateService { BigDecimal holdTime = list.stream().map(SfcHoldLog::getHoldDuration).reduce(BigDecimal.ZERO, BigDecimal::add); workHour = workHour.subtract(holdTime); } + + //判断下工序需要转车间?创建物流周转任务 + //下道工序 +// Router router = routerService.getRouterBySfcBo(HandleEnum.SFC.getHandle(site, sfcServiceById.getSfc())); +// if (router==null){ +// throw new BaseException("未找到当前工序"); +// } +// +// List stepOperationList = routerStepService.findRouterOperationByRouterBo(site, router.getHandle()); +// StringBuilder operationDesc = new StringBuilder(); +// for (int i = 0; i < stepOperationList.size(); i++) { +// RouterStepDto stepOperation = stepOperationList.get(i); +// operationDesc.append(stepOperation.getOperationDesc()) ; +// if (i!=stepOperationList.size()-1){ +// operationDesc.append(","); +// } +// } +// System.out.println(operationDesc.toString()); + } try { @@ -423,8 +437,31 @@ public class PodTemplateServiceImpl implements PodTemplateService { //更改派工单状态 sfcDispatchCommonService.updateSfcDispatchStatus(site, CommonMethods.getUser(), dispatchNo, DispatchStatusEnum.COMPLETE.getCode(),workHour); + /** + * 判断是否为返修工序、返修工序不报工 + */ + RouterStep routerStep=routerService.findRepairOperation(site,sfcDispatchById.getRouterBo(),stepId); + boolean falg=true; + if (routerStep.getRework().equals("true") && stepId.startsWith("9")){ + falg=false; + IntegrationLog log = new IntegrationLog(); + log.setStatus("S"); + log.setResultMessage("返修工序不报工"); + log.setHandle(UUID.randomUUID().toString()); + log.setSite(CommonMethods.getSite()); + log.setIntegrationType(IntegrationTypeConstant.REPORT_ORDER); + log.setCategory("REQUEST"); + log.setIntegrationWay("ERP"); + log.setIntegrationMethod("erpWebService.zmesProdordconf"); + log.setParam(JSONObject.toJSONString(routerStep)); + log.setTransactionId(""); + log.setRequestDateTime(LocalDateTime.now()); + log.setCreatedDateTime(LocalDateTime.now()); + integrationLogService.saveIntegrationLog(log); + } + //报工 - if (enabled){ + if (enabled&&falg){ SfcDispatchDto sfcdispatch = new SfcDispatchDto(); sfcdispatch.setHandle(HandleEnum.SFC_DISPATCH.getHandle(site, dispatchNo)); sfcdispatch = sfcDispatchCommonService.findSfcDispatchBySfc(sfcdispatch); diff --git a/quality/src/main/java/com/foreverwin/mesnac/quality/model/InspectionTaskManage.java b/quality/src/main/java/com/foreverwin/mesnac/quality/model/InspectionTaskManage.java index b649bd27..30ffaa36 100644 --- a/quality/src/main/java/com/foreverwin/mesnac/quality/model/InspectionTaskManage.java +++ b/quality/src/main/java/com/foreverwin/mesnac/quality/model/InspectionTaskManage.java @@ -34,6 +34,15 @@ public class InspectionTaskManage implements Serializable { private String operationDescription; private String sfcQty; private String dispatchUser; + private String sfcdispatchBo; + + public String getSfcdispatchBo() { + return sfcdispatchBo; + } + + public void setSfcdispatchBo(String sfcdispatchBo) { + this.sfcdispatchBo = sfcdispatchBo; + } private List inspectionTaskDetailList; diff --git a/quality/src/main/java/com/foreverwin/mesnac/quality/service/impl/InspectionTaskManageServiceImpl.java b/quality/src/main/java/com/foreverwin/mesnac/quality/service/impl/InspectionTaskManageServiceImpl.java index ffab9b57..74ecd985 100644 --- a/quality/src/main/java/com/foreverwin/mesnac/quality/service/impl/InspectionTaskManageServiceImpl.java +++ b/quality/src/main/java/com/foreverwin/mesnac/quality/service/impl/InspectionTaskManageServiceImpl.java @@ -1,5 +1,6 @@ package com.foreverwin.mesnac.quality.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.foreverwin.mesnac.common.constant.Constants; import com.foreverwin.mesnac.common.enums.HandleEnum; import com.foreverwin.mesnac.common.model.InspectionTask; @@ -8,6 +9,8 @@ import com.foreverwin.mesnac.common.service.InspectionTaskDetailService; import com.foreverwin.mesnac.common.service.InspectionTaskService; import com.foreverwin.mesnac.common.util.DateUtil; import com.foreverwin.mesnac.common.util.StringUtil; +import com.foreverwin.mesnac.dispatch.model.SfcDispatch; +import com.foreverwin.mesnac.dispatch.service.SfcDispatchService; import com.foreverwin.mesnac.quality.dto.InspectionTaskManageRequest; import com.foreverwin.mesnac.quality.mapper.InspectionTaskManageMapper; import com.foreverwin.mesnac.quality.model.InspectionTaskManageDetail; @@ -35,6 +38,8 @@ public class InspectionTaskManageServiceImpl implements InspectionTaskManageServ private InspectionTaskManageMapper inspectionTaskManageMapper; @Autowired private InspectionTaskDetailService inspectionTaskDetailService; + @Autowired + private SfcDispatchService sfcDispatchService; @Override public List findInspectionTask(InspectionTaskManageRequest inspectionTaskManageRequest) { @@ -196,6 +201,31 @@ public class InspectionTaskManageServiceImpl implements InspectionTaskManageServ inspectionTaskModel.setModifiedDateTime(dateTime); inspectionTaskService.updateById(inspectionTaskModel); + //质检合格后判断下道工序是否需要跨车间转运,如果是则生成转运待办任务 + if("OK".equals(result)){ + /** + * 1、先查询派工表(Z_SFC_DISPATCH)里的派工数据 + * 2、根据派工表里的派工序号查找下道工序 + * 3、如果两个工作中心不一样,就会生成转运待办任务 + */ + SfcDispatch sfcDispatchById = sfcDispatchService.getById(inspectionTaskManage.getSfcdispatchBo()); + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.eq(SfcDispatch.SFC,sfcDispatchById.getSfc()); + queryWrapper.eq(SfcDispatch.SHOP_ORDER,sfcDispatchById.getShopOrder()); + queryWrapper.eq(SfcDispatch.DISPATCH_SEQ,String.valueOf(Integer.parseInt(sfcDispatchById.getDispatchSeq())+1)); + SfcDispatch sfcDispatch=sfcDispatchService.getOne(queryWrapper); + + if (sfcDispatch!=null&&!sfcDispatchById.getWorkCenter().equals(sfcDispatch.getWorkCenter())){ + + //生成周转任务的同时发送消息提示到手持设备 + + + + } + + } + //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //如果专检不合格,生产新的检验任务 /*if (!Constants.INSPECTION_TYPE_P.equals(category) || !"NG".equals(result) || !"SUBMIT".equals(type)) { diff --git a/quality/src/main/resources/mapper/InspectionTaskManageMapper.xml b/quality/src/main/resources/mapper/InspectionTaskManageMapper.xml index b5e117cb..b738d046 100644 --- a/quality/src/main/resources/mapper/InspectionTaskManageMapper.xml +++ b/quality/src/main/resources/mapper/InspectionTaskManageMapper.xml @@ -30,13 +30,14 @@ +