diff --git a/common/src/main/java/com/foreverwin/mesnac/common/constant/Constants.java b/common/src/main/java/com/foreverwin/mesnac/common/constant/Constants.java index bb011eb4..abc43d4b 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/constant/Constants.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/constant/Constants.java @@ -8,7 +8,7 @@ package com.foreverwin.mesnac.common.constant; */ public interface Constants { - String OP_6106GX = "WX_6106GX"; + String OP_WX_6106GX = "WX_6106GX"; String STATUS_NEW = "NEW"; String STATE_CONFIRM ="CONF"; @@ -185,4 +185,12 @@ public interface Constants { */ String UNTREATED = "UN"; //未处理 String PROCESSED = "PR"; //已处理 + + + //用户组 + String USER_GROUP_ADMINISTRATOR = "ADMINISTRATOR"; + //车间调度 + String USER_GROUP_CJDD = "CJDD"; + //总计划 + String USER_GROUP_ZJH = "ZJH"; } diff --git a/common/src/main/java/com/foreverwin/mesnac/common/dto/SfcDispatchDto.java b/common/src/main/java/com/foreverwin/mesnac/common/dto/SfcDispatchDto.java index 42d221a8..a4bcf13d 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/dto/SfcDispatchDto.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/dto/SfcDispatchDto.java @@ -85,11 +85,13 @@ public class SfcDispatchDto implements Serializable{ */ @ExcelColumn("资源编号") private String resrce; + private String resourceDescription; /** * 人员编号 */ @ExcelColumn("操作者") private String employee; + private String employeeDescription; /** * 是否转序 */ @@ -103,23 +105,25 @@ public class SfcDispatchDto implements Serializable{ */ private Double prodHours; /** - * 计划开始时间 + * 总计划开始时间 */ - @ExcelColumn("计划开始时间") + @ExcelColumn("总计划开始时间") private LocalDateTime plannedStartDate; /** - * 计划完成时间 + * 总计划完成时间 */ - @ExcelColumn("计划完成时间") + @ExcelColumn("总计划完成时间") private LocalDateTime plannedCompDate; /** - * 实际开始时间 + * 车间最早开始时间 */ - private LocalDateTime actualStartDate; + @ExcelColumn("车间最早开始时间") + private LocalDateTime earliestStartDate; /** - * 实际完成时间 + * 车间最晚结束时间 */ - private LocalDateTime actualCompleteDate; + @ExcelColumn("车间最晚结束时间") + private LocalDateTime latestEndDate; /** * 是否已经派工 */ @@ -176,14 +180,14 @@ public class SfcDispatchDto implements Serializable{ private BigDecimal completedQty; private String resourceWorkCenter; + private String user; + private String role; private String status; private String locale; private String routerBo; private String statusName; private LocalDateTime soReleasedDate; private LocalDateTime sfcReleasedDate; - private LocalDateTime latestEndDate; - private LocalDateTime earliestStartDate; private LocalDateTime releasedCompleteDate; private LocalDateTime dispatchCompleteDate; @@ -353,6 +357,14 @@ public class SfcDispatchDto implements Serializable{ this.resrce = resrce; } + public String getResourceDescription() { + return resourceDescription; + } + + public void setResourceDescription(String resourceDescription) { + this.resourceDescription = resourceDescription; + } + public String getEmployee() { return employee; } @@ -361,6 +373,14 @@ public class SfcDispatchDto implements Serializable{ this.employee = employee; } + public String getEmployeeDescription() { + return employeeDescription; + } + + public void setEmployeeDescription(String employeeDescription) { + this.employeeDescription = employeeDescription; + } + public String getTurnOperation() { return turnOperation; } @@ -401,28 +421,29 @@ public class SfcDispatchDto implements Serializable{ this.plannedCompDate = plannedCompDate; } - public LocalDateTime getActualStartDate() { - return actualStartDate; + + public String getIsDispatch() { + return isDispatch; } - public void setActualStartDate(LocalDateTime actualStartDate) { - this.actualStartDate = actualStartDate; + public void setIsDispatch(String isDispatch) { + this.isDispatch = isDispatch; } - public LocalDateTime getActualCompleteDate() { - return actualCompleteDate; + public String getUser() { + return user; } - public void setActualCompleteDate(LocalDateTime actualCompleteDate) { - this.actualCompleteDate = actualCompleteDate; + public void setUser(String user) { + this.user = user; } - public String getIsDispatch() { - return isDispatch; + public String getRole() { + return role; } - public void setIsDispatch(String isDispatch) { - this.isDispatch = isDispatch; + public void setRole(String role) { + this.role = role; } public String getStatus() { diff --git a/common/src/main/java/com/foreverwin/mesnac/common/util/ActiveMQUtil.java b/common/src/main/java/com/foreverwin/mesnac/common/util/ActiveMQUtil.java index b351f462..67041ba3 100644 --- a/common/src/main/java/com/foreverwin/mesnac/common/util/ActiveMQUtil.java +++ b/common/src/main/java/com/foreverwin/mesnac/common/util/ActiveMQUtil.java @@ -1,12 +1,13 @@ package com.foreverwin.mesnac.common.util; -import org.apache.activemq.ActiveMQConnectionFactory; +import com.foreverwin.modular.core.exception.BaseException; import org.json.JSONObject; -import org.springframework.beans.factory.annotation.Value; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.jms.core.JmsMessagingTemplate; import org.springframework.stereotype.Component; -import javax.jms.*; +import java.util.concurrent.TimeUnit; /** * @Description TODO @@ -16,47 +17,26 @@ import javax.jms.*; @Component @ConditionalOnProperty(prefix = "activeMq", value = {"enabled"}, matchIfMissing = true) public class ActiveMQUtil { - @Value("${activeMq.sendWeChatMessage}") - private String weChatUrl; - @Value("${activeMq.queue}") - private String queue; - public void wechatSendMessage(String user, String text) { - ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory(weChatUrl); - Connection connection = null; - Session session = null; - MessageProducer producer = null; - try{ - connection = factory.createConnection(); - connection.start(); - session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); - Destination destination = session.createQueue(this.queue); - producer = session.createProducer(destination); + @Autowired + private JmsMessagingTemplate defaultJmsTemplate; + + public void wechatSendMessage(String user, String text) { + String queue = "send.weChat.notice"; JSONObject jsonObject = new JSONObject(); - //jsonObject.put("TO_USER", user); - jsonObject.put("TO_USER", "@all"); - jsonObject.put("CONTENT",text); - String sendMessage = jsonObject.toString(); - TextMessage textMessage = session.createTextMessage(sendMessage); - producer.send(textMessage); - }catch (Exception e){ - // throw new BaseException("发送消息失败"+e.getMessage()); - }finally { - try { - if (producer != null) { - producer.close(); + try{ + jsonObject.put("TO_USER", user); + jsonObject.put("CONTENT",text); + defaultJmsTemplate.getJmsTemplate().setReceiveTimeout(TimeUnit.SECONDS.toMillis(3)); + String message = defaultJmsTemplate.convertSendAndReceive(queue, jsonObject.toString(), String.class); + if (StringUtil.isBlank(message)) { + //记日志 } - if (session != null) { - session.close(); - } - if (connection != null) { - connection.close(); - } - }catch (Exception e){ - e.printStackTrace(); + }catch (Exception ignored){ + throw new BaseException("消息发送失败"); } - } + } diff --git a/console/src/main/resources/application-prd.yml b/console/src/main/resources/application-prd.yml new file mode 100644 index 00000000..dd51e095 --- /dev/null +++ b/console/src/main/resources/application-prd.yml @@ -0,0 +1,42 @@ +#Spring +spring: + datasource: + dynamic: + primary: wip + datasource: + wip: + driver-class-name: com.sap.db.jdbc.Driver + jndi-name: jdbc/jts/wipPool + activemq: + enabled: false + brokerUrl: tcp://121.36.58.109:61616?wireFormat.maxInactivityDuration=0 + password: admin + user: admin + pool: + enabled: true + max-connections: 10 + +#WebService +ws: + erp: + server: 172.16.251.223 + port: 8000 + user: mesd001 + pwd: a123456 + valid: N + +ftp: + host: + port: 21 + username: + password: + +#打印服务器配置 +print: + server: http://10.10.170.32:8022/print/mesnacprint + + +exportDocument: + filePath: /usr/word/ + outputPath: /usr/word/outputWord/ + template: SFC_SCRAP_TEMPLATE.ftl \ No newline at end of file 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 31524af4..f90b1846 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 @@ -68,12 +68,13 @@ public class SfcDispatchController { @ResponseBody @GetMapping("getSfcDispatch") public R getSfcDispatch(String workCenter, String dispatchStatus, String item, String itemNumber, String workOrder, String shopOrder, - String resrce, String resourceType, String operation, String sfc, String component, String componentDescription, String turnOperation, + String resrce, String resourceType, String operation, String operationDescription, String sfc, String component, String componentDescription, String turnOperation, String isDispatch, String startFromDate_S, String startToDate_S, String completeFromDate_S, String completeToDate_S) { List list; try { SfcDispatchDto sfcDispatchDto = new SfcDispatchDto(); sfcDispatchDto.setSite(CommonMethods.getSite()); + sfcDispatchDto.setUser(CommonMethods.getUser()); sfcDispatchDto.setWorkCenter(workCenter); sfcDispatchDto.setDispatchStatus(dispatchStatus); sfcDispatchDto.setItem(item); @@ -121,6 +122,7 @@ public class SfcDispatchController { List list; try { sfcDispatchDto.setSite(CommonMethods.getSite()); + sfcDispatchDto.setUser(CommonMethods.getUser()); if (sfcDispatchDto.getStartFromDate_S() != null) { sfcDispatchDto.setStartFromDate(DateUtil.parse(sfcDispatchDto.getStartFromDate_S())); } @@ -143,33 +145,6 @@ public class SfcDispatchController { } - /** - * 分页查询数据 - * - * @param frontPage 分页信息 - * @return - */ - @ResponseBody - @GetMapping("/page") - public R page(FrontPage frontPage, SfcDispatch sfcDispatch){ - IPage result; - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.setEntity(sfcDispatch); - sfcDispatch.setSite(CommonMethods.getSite()); - if (frontPage.getGlobalQuery() != null && !"".equals(frontPage.getGlobalQuery().trim())) { - //TODO modify global query - queryWrapper.lambda().and(wrapper -> wrapper - .or().like(SfcDispatch::getShopOrder, frontPage.getGlobalQuery()) - .or().like(SfcDispatch::getSfc, frontPage.getGlobalQuery()) - .or().like(SfcDispatch::getDispatchNo, frontPage.getGlobalQuery()) - .or().like(SfcDispatch::getDispatchStatus, frontPage.getGlobalQuery()) - ); - } - result = sfcDispatchService.page(frontPage.getPagePlus(), queryWrapper); - return R.ok(result); - } - - @ResponseBody @PostMapping("/saveDispatch") public R saveDispatch(@RequestBody List sfcDispatchList) { diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/UserResourceController.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/UserResourceController.java index 03ccfc2e..dcaf5eb6 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/UserResourceController.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/controller/UserResourceController.java @@ -158,10 +158,10 @@ public class UserResourceController { @ResponseBody @GetMapping("/findEmployeeList") - public R findEmployeeList() { + public R findEmployeeList(String resourceType) { try { String site = CommonMethods.getSite(); - return R.ok(userResourceService.findEmployeeList(site)); + return R.ok(userResourceService.findEmployeeList(site, resourceType)); } catch (Exception e) { return R.failed(e.getMessage()); } diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/SfcDispatchMapper.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/SfcDispatchMapper.java index 5677a8d9..b8e37b8c 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/SfcDispatchMapper.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/SfcDispatchMapper.java @@ -1,10 +1,8 @@ package com.foreverwin.mesnac.dispatch.mapper; -import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.foreverwin.mesnac.common.dto.SfcDispatchDto; import com.foreverwin.mesnac.dispatch.model.SfcDispatch; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.foreverwin.mesnac.dispatch.model.ShopOrderRelease; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/UserResourceMapper.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/UserResourceMapper.java index f3f1d528..3eccf20a 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/UserResourceMapper.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/mapper/UserResourceMapper.java @@ -20,7 +20,7 @@ import java.util.List; @Repository public interface UserResourceMapper extends BaseMapper { - List findEmployeeList(@Param("site") String site); + List findEmployeeList(@Param("site") String site, @Param("resourceType") String resourceType); List findEnableList(@Param("site") String site, @Param("resource") String resource, @Param("user") String user); diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/model/SfcDispatch.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/model/SfcDispatch.java index 8b5c9cd1..8db2d18c 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/model/SfcDispatch.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/model/SfcDispatch.java @@ -115,6 +115,8 @@ public class SfcDispatch extends Model { */ @TableField("EMPLOYEE") private String employee; + @TableField("EMPLOYEE_DESCRIPTION") + private String employeeDescription; /** * 是否转序 */ @@ -381,6 +383,14 @@ public class SfcDispatch extends Model { this.employee = employee; } + public String getEmployeeDescription() { + return employeeDescription; + } + + public void setEmployeeDescription(String employeeDescription) { + this.employeeDescription = employeeDescription; + } + public String getTurnOperation() { return turnOperation; } diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/ShopOrderReleaseService.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/ShopOrderReleaseService.java index d484c17a..4e671f02 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/ShopOrderReleaseService.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/ShopOrderReleaseService.java @@ -70,10 +70,9 @@ public interface ShopOrderReleaseService { * * @param site * @param user - * @param workCenter * @param shopOrderModel * @param sfcModel * @param routerList */ - void sfcDispatch(String site, String user, String workCenter, ShopOrder shopOrderModel, Sfc sfcModel, List routerList); + void sfcDispatch(String site, String user, ShopOrder shopOrderModel, Sfc sfcModel, List routerList); } diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/UserResourceService.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/UserResourceService.java index 729cc04d..f650fc30 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/UserResourceService.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/UserResourceService.java @@ -20,7 +20,7 @@ import java.util.List; */ public interface UserResourceService extends IService { - List findEmployeeList(String site); + List findEmployeeList(String site, String resourceType); List findEnableList(String site, String resource, String user); diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/CallItemServiceImpl.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/CallItemServiceImpl.java index 4c2a14fe..712f1d6c 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/CallItemServiceImpl.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/CallItemServiceImpl.java @@ -74,7 +74,8 @@ public class CallItemServiceImpl extends ServiceImpl i //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ //工序叫料数据 - for (SfcDispatchDto sfcDispatchDto : sfcDispatchList) { + //Leon.L 2021/8/16 业务取消工序叫料 + /**for (SfcDispatchDto sfcDispatchDto : sfcDispatchList) { String prepositionStepId = sfcDispatchDto.getPrepositionStepId(); if (StringUtil.isBlank(prepositionStepId)) { continue; @@ -101,7 +102,7 @@ public class CallItemServiceImpl extends ServiceImpl i callItem.setModifyUser(user); callItem.setModifiedDateTime(nowDate); list.add(callItem); - } + }**/ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -377,11 +378,11 @@ public class CallItemServiceImpl extends ServiceImpl i String blankingSize = callItem.getBlankingSize(); //工序叫料不需要计算数量 - if (Constants.CALL_TYPE_OPERATION.equals(callItem.getCallType())) { + /**if (Constants.CALL_TYPE_OPERATION.equals(callItem.getCallType())) { callItem.setSizeReqQty(BigDecimal.ONE); compQtyMap.put(component, BigDecimal.ONE); continue; - } + }**/ if (StringUtil.isBlank(blankingSize)) { callItem.setSizeReqQty(callItem.getRequiredQty()); @@ -389,8 +390,10 @@ public class CallItemServiceImpl extends ServiceImpl i continue; } - if ("GB".equals(itemGroup)) { - if (!blankingSize.contains("*")) { + if (StringUtil.notBlank(itemGroup) && "GB".equals(itemGroup)) { + if (!blankingSize.contains("*") || blankingSize.split("\\*").length < 2) { + callItem.setSizeReqQty(callItem.getRequiredQty()); + compQtyMap.put(component, callItem.getRequiredQty()); continue; } diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/SfcDispatchServiceImpl.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/SfcDispatchServiceImpl.java index 52010faa..e2217a51 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/SfcDispatchServiceImpl.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/SfcDispatchServiceImpl.java @@ -25,6 +25,7 @@ import com.foreverwin.mesnac.meapi.dto.WorkCenterLinkDTO; import com.foreverwin.mesnac.meapi.model.Router; import com.foreverwin.mesnac.meapi.model.Sfc; import com.foreverwin.mesnac.meapi.model.ShopOrder; +import com.foreverwin.mesnac.meapi.model.UserGroup; import com.foreverwin.mesnac.meapi.service.*; import com.foreverwin.mesnac.meapi.util.StringUtils; import com.foreverwin.modular.core.exception.BaseException; @@ -36,6 +37,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; +import sun.awt.geom.AreaOp; import javax.servlet.http.HttpServletRequest; import java.io.IOException; @@ -67,6 +69,8 @@ public class SfcDispatchServiceImpl extends ServiceImpl findSfcDispatchList(SfcDispatchDto sfcDispatchDto) { - return sfcDispatchMapper.findSfcDispatchList(sfcDispatchDto); + List list = sfcDispatchMapper.findSfcDispatchList(sfcDispatchDto); + if (list == null || list.size() <= 0) { + return list; + } + + //查询用户对应用户组 + String site = CommonMethods.getSite(); + String user = CommonMethods.getUser(); + String userBo = HandleEnum.USER.getHandle(site, user); + List userGroupList = userGroupService.getUserGroupListByUserBo(userBo); + String role = "ADMINISTRATOR"; + if (userGroupList != null && userGroupList.size() > 0) { + for (UserGroup userGroupModel: userGroupList) { + String userGroup = userGroupModel.getUserGroup(); + if (Constants.USER_GROUP_ADMINISTRATOR.equals(userGroup)) { + role = Constants.USER_GROUP_ADMINISTRATOR; + break; + } else if (Constants.USER_GROUP_CJDD.equals(userGroup)) { + role = Constants.USER_GROUP_CJDD; + break; + } else if (Constants.USER_GROUP_ZJH.equals(userGroup)) { + role = Constants.USER_GROUP_ZJH; + break; + } + } + } + + //赋值用户组 + for (SfcDispatchDto sfcDispatch: list) { + sfcDispatch.setRole(role); + } + return list; } @Override @@ -360,6 +395,10 @@ public class SfcDispatchServiceImpl extends ServiceImpl singleUserResourceList = usMap.get(employee); @@ -464,7 +503,6 @@ public class SfcDispatchServiceImpl extends ServiceImpl routerList) { + public void sfcDispatch(String site, String user, ShopOrder shopOrderModel, Sfc sfcModel, List routerList) { LocalDateTime nowDate = LocalDateTime.now(); String router = routerList.get(0).getRouter(); @@ -244,6 +228,19 @@ public class ShopOrderReleaseServiceImpl implements ShopOrderReleaseService { //计算完成时间 //plannedCompleteDate = plannedStartDate.plusMinutes(prodHours.longValue()); + //查询工序所属车间 + String workCenter = null; + if (operation.contains("_")) { + workCenter = operation.split("_")[0]; + } else { + workCenter = operation; + } + String workCenterBo = HandleEnum.WORK_CENTER.getHandle(site, workCenter); + WorkCenter workCenterModel = workCenterService.getById(workCenterBo); + if (workCenterModel == null) { + throw BusinessException.build("生产车间【" +workCenter+ "】不存在"); + } + //派工数据 String dispatchNo = sfc + "-" + stepId; SfcDispatch sfcDispatchModel = new SfcDispatch(); diff --git a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/UserResourceServiceImpl.java b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/UserResourceServiceImpl.java index 09272d10..f7401b83 100644 --- a/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/UserResourceServiceImpl.java +++ b/dispatch/src/main/java/com/foreverwin/mesnac/dispatch/service/impl/UserResourceServiceImpl.java @@ -41,16 +41,13 @@ public class UserResourceServiceImpl extends ServiceImpl findEmployeeList(String site) { - return userResourceMapper.findEmployeeList(site); + public List findEmployeeList(String site, String resourceType) { + return userResourceMapper.findEmployeeList(site, resourceType); } @Override diff --git a/dispatch/src/main/resources/mapper/CallItemMapper.xml b/dispatch/src/main/resources/mapper/CallItemMapper.xml index 2ff0a06c..3139ef12 100644 --- a/dispatch/src/main/resources/mapper/CallItemMapper.xml +++ b/dispatch/src/main/resources/mapper/CallItemMapper.xml @@ -892,7 +892,7 @@ LEFT JOIN ITEM_GROUP IG ON IG.HANDLE = IGM.ITEM_GROUP_BO INNER JOIN SHOP_ORDER SO ON SO.SITE = L.SITE AND SO.SHOP_ORDER = L.SHOP_ORDER LEFT JOIN CUSTOM_FIELDS CF ON CF.HANDLE = SO.HANDLE AND CF."ATTRIBUTE" = 'WORK_ORDER' - WHERE L.SITE = #{site} AND L.STATUS = '802' + WHERE L.SITE = #{site} AND L.STATUS = '802' AND L.CALL_TYPE = 'MATERIAL' AND W.WORK_CENTER = #{workCenter} @@ -923,8 +923,8 @@ ) ZS ON ZS.SITE = L.SITE AND ZS.SFC = L.SFC INNER JOIN Z_SFC_DISPATCH ZD ON ZD.SITE = ZS.SITE AND ZD.SFC = ZS.SFC AND ZD.DISPATCH_SEQ = ZS.DISPATCH_SEQ WHERE W.QTY_ON_HAND > 0 - ) SIP - ON VIP.SITE = SIP.SITE AND VIP.ITEM_BO = SIP.ITEM_BO AND VIP.REQUIRED_QTY > 0 + ) SIP ON VIP.SITE = SIP.SITE AND VIP.ITEM_BO = SIP.ITEM_BO + WHERE VIP.REQUIRED_QTY > 0 ORDER BY VIP.WORK_ORDER, VIP.ITEM @@ -940,7 +940,7 @@ LEFT JOIN ITEM_GROUP IG ON IG.HANDLE = IGM.ITEM_GROUP_BO INNER JOIN SHOP_ORDER SO ON SO.SITE = L.SITE AND SO.SHOP_ORDER = L.SHOP_ORDER LEFT JOIN CUSTOM_FIELDS CF ON CF.HANDLE = SO.HANDLE AND CF."ATTRIBUTE" = 'WORK_ORDER' - WHERE L.SITE = #{site} AND L.STATUS = '802' + WHERE L.SITE = #{site} AND L.STATUS = '802' AND L.CALL_TYPE = 'MATERIAL' AND W.WORK_CENTER = #{workCenter} @@ -971,8 +971,8 @@ ) ZS ON ZS.SITE = L.SITE AND ZS.SFC = L.SFC INNER JOIN Z_SFC_DISPATCH ZD ON ZD.SITE = ZS.SITE AND ZD.SFC = ZS.SFC AND ZD.DISPATCH_SEQ = ZS.DISPATCH_SEQ WHERE W.QTY_ON_HAND > 0 - ) SIP - ON VIP.SITE = SIP.SITE AND VIP.ITEM_BO = SIP.ITEM_BO AND VIP.REQUIRED_QTY > 0 + ) SIP ON VIP.SITE = SIP.SITE AND VIP.ITEM_BO = SIP.ITEM_BO + WHERE VIP.REQUIRED_QTY > 0 ORDER BY VIP.WORK_ORDER, VIP.ITEM diff --git a/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml b/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml index cace586f..70447aa6 100644 --- a/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml +++ b/dispatch/src/main/resources/mapper/SfcDispatchMapper.xml @@ -22,6 +22,7 @@ + @@ -52,6 +53,8 @@ + + @@ -63,6 +66,7 @@ + @@ -71,7 +75,7 @@ - HANDLE, SITE, SHOP_ORDER, SFC, BLANKING_SIZE, DISPATCH_SEQ, DISPATCH_NO, DISPATCH_STATUS, DRAWINGS_NO, DRAWINGS_REVISION, IS_LOCK, ROUTER_BO, STEP_ID, OPERATION, RESOURCE_TYPE, WORK_CENTER, RESRCE, EMPLOYEE, TURN_OPERATION, DISPATCH_QTY, PROD_HOURS, PLANNED_START_DATE, PLANNED_COMP_DATE, EARLIEST_START_DATE, LATEST_END_DATE, SO_RELEASED_DATE, SFC_RELEASED_DATE, RELEASED_COMPLETE_DATE, ACTUAL_START_DATE, ACTUAL_COMPLETE_DATE, IS_DISPATCH, IS_IMPORT, REMARK, PREPOSITION_STEP_ID, PREPOSITION_OPERATION, IS_FIRST_OPERATION, CREATE_USER, CREATED_DATE_TIME, MODIFY_USER, MODIFIED_DATE_TIME, OTHER_1, OTHER_2, OTHER_3, OTHER_4, OTHER_5 + HANDLE, SITE, SHOP_ORDER, SFC, BLANKING_SIZE, DISPATCH_SEQ, DISPATCH_NO, DISPATCH_STATUS, DRAWINGS_NO, DRAWINGS_REVISION, IS_LOCK, ROUTER_BO, STEP_ID, OPERATION, RESOURCE_TYPE, WORK_CENTER, RESRCE, EMPLOYEE, EMPLOYEE_DESCRIPTION, TURN_OPERATION, DISPATCH_QTY, PROD_HOURS, PLANNED_START_DATE, PLANNED_COMP_DATE, EARLIEST_START_DATE, LATEST_END_DATE, SO_RELEASED_DATE, SFC_RELEASED_DATE, RELEASED_COMPLETE_DATE, ACTUAL_START_DATE, ACTUAL_COMPLETE_DATE, IS_DISPATCH, IS_IMPORT, REMARK, PREPOSITION_STEP_ID, PREPOSITION_OPERATION, IS_FIRST_OPERATION, CREATE_USER, CREATED_DATE_TIME, MODIFY_USER, MODIFIED_DATE_TIME, OTHER_1, OTHER_2, OTHER_3, OTHER_4, OTHER_5 @@ -79,143 +83,6 @@ SELECT FROM Z_SFC_DISPATCH WHERE HANDLE=#{handle} - - - - - - - - - - - - - - INSERT INTO Z_SFC_DISPATCH @@ -545,6 +223,7 @@ WORK_CENTER, RESRCE, EMPLOYEE, + EMPLOYEE_DESCRIPTION, TURN_OPERATION, DISPATCH_QTY, PROD_HOURS, @@ -592,6 +271,7 @@ #{workCenter}, #{resrce}, #{employee}, + #{employeeDescription}, #{turnOperation}, #{dispatchQty}, #{prodHours}, @@ -646,6 +326,7 @@ #{workCenter}, #{resrce}, #{employee}, + #{employeeDescription}, #{turnOperation}, #{dispatchQty}, #{prodHours}, @@ -696,6 +377,7 @@ WORK_CENTER=#{et.workCenter}, RESRCE=#{et.resrce}, EMPLOYEE=#{et.employee}, + EMPLOYEE_DESCRIPTION=#{et.employeeDescription}, TURN_OPERATION=#{et.turnOperation}, DISPATCH_QTY=#{et.dispatchQty}, PROD_HOURS=#{et.prodHours}, @@ -746,6 +428,7 @@ WORK_CENTER=#{et.workCenter}, RESRCE=#{et.resrce}, EMPLOYEE=#{et.employee}, + EMPLOYEE_DESCRIPTION=#{et.employeeDescription}, TURN_OPERATION=#{et.turnOperation}, DISPATCH_QTY=#{et.dispatchQty}, PROD_HOURS=#{et.prodHours}, @@ -796,6 +479,7 @@ WORK_CENTER=#{et.workCenter}, RESRCE=#{et.resrce}, EMPLOYEE=#{et.employee}, + EMPLOYEE_DESCRIPTION=#{et.employeeDescription}, TURN_OPERATION=#{et.turnOperation}, DISPATCH_QTY=#{et.dispatchQty}, PROD_HOURS=#{et.prodHours}, @@ -845,6 +529,7 @@ AND WORK_CENTER=#{ew.entity.workCenter} AND RESRCE=#{ew.entity.resrce} AND EMPLOYEE=#{ew.entity.employee} + EMPLOYEE_DESCRIPTION=#{et.entity.employeeDescription}, AND TURN_OPERATION=#{ew.entity.turnOperation} AND DISPATCH_QTY=#{ew.entity.dispatchQty} AND PROD_HOURS=#{ew.entity.prodHours} @@ -925,6 +610,7 @@ AND WORK_CENTER=#{ew.entity.workCenter} AND RESRCE=#{ew.entity.resrce} AND EMPLOYEE=#{ew.entity.employee} + EMPLOYEE_DESCRIPTION=#{et.entity.employeeDescription}, AND TURN_OPERATION=#{ew.entity.turnOperation} AND DISPATCH_QTY=#{ew.entity.dispatchQty} AND PROD_HOURS=#{ew.entity.prodHours} @@ -982,21 +668,20 @@ SELECT DISTINCT A.SITE, A.USER_ID USER_NAME, B.FIRST_NAME, B.LAST_NAME, NVL(B.FULL_NAME, A.USER_DESCRIPTION) FULL_NAME FROM Z_USER_RESOURCE A + INNER JOIN RESOURCE_TYPE_RESOURCE WM ON WM.RESOURCE_BO = A.RESOURCE_BO + INNER JOIN RESOURCE_TYPE RT ON RT.HANDLE = WM.RESOURCE_TYPE_BO LEFT JOIN Z_NWA_USER B ON A.SITE = B.SITE AND A.USER_ID = B.USER_NAME - WHERE A.SITE = #{site} + WHERE A.SITE = #{site} AND RT.RESOURCE_TYPE = #{resourceType} + +