diff --git a/src/main/java/com/gaotao/modules/shopOrder/dao/ShopOrderMapper.java b/src/main/java/com/gaotao/modules/shopOrder/dao/ShopOrderMapper.java index 5d1f9ef..9b83c96 100644 --- a/src/main/java/com/gaotao/modules/shopOrder/dao/ShopOrderMapper.java +++ b/src/main/java/com/gaotao/modules/shopOrder/dao/ShopOrderMapper.java @@ -326,4 +326,32 @@ public interface ShopOrderMapper { */ Double getOrderQtyRequired(@Param("site") String site,@Param("orderNo") String orderNo); + /** + * @author: sxm + * @description: 获取当前工序信息 + * @param [routeInShopOrderData] + * @return: com.gaotao.modules.shopOrder.entity.RouteInShopOrderData + * @date: 2023/2/19 13:50 + */ + RouteInShopOrderData getSORoute(RouteInShopOrderData routeInShopOrderData); + + /** + * @author: sxm + * @description: 修改工序前后道 + * @param [pre] + * @return: void + * @date: 2023/2/19 13:54 + */ + void updateRouteByItemNo(RouteInShopOrderData pre); + + + /** + * @author: sxm + * @description: 获取前一道工序或后一道工序 + * @param [routeInShopOrderData, orderBy] + * @return: com.gaotao.modules.shopOrder.entity.RouteInShopOrderData + * @date: 2023/2/19 14:15 + */ + + RouteInShopOrderData getSORouteItemNoOrderBy(@Param("route") RouteInShopOrderData routeInShopOrderData,@Param("orderBy") String orderBy); } diff --git a/src/main/java/com/gaotao/modules/shopOrder/entity/RouteInShopOrderData.java b/src/main/java/com/gaotao/modules/shopOrder/entity/RouteInShopOrderData.java index 187e3c2..e3f00a0 100644 --- a/src/main/java/com/gaotao/modules/shopOrder/entity/RouteInShopOrderData.java +++ b/src/main/java/com/gaotao/modules/shopOrder/entity/RouteInShopOrderData.java @@ -39,6 +39,25 @@ public class RouteInShopOrderData { private int lotSize; + private Double preItemNo; + private Double nextItemNo; + + public Double getPreItemNo() { + return preItemNo; + } + + public void setPreItemNo(Double preItemNo) { + this.preItemNo = preItemNo; + } + + public Double getNextItemNo() { + return nextItemNo; + } + + public void setNextItemNo(Double nextItemNo) { + this.nextItemNo = nextItemNo; + } + public int getLotSize() { return lotSize; } diff --git a/src/main/java/com/gaotao/modules/shopOrder/service/Impl/ShopOrderServiceImpl.java b/src/main/java/com/gaotao/modules/shopOrder/service/Impl/ShopOrderServiceImpl.java index 4b19033..f133493 100644 --- a/src/main/java/com/gaotao/modules/shopOrder/service/Impl/ShopOrderServiceImpl.java +++ b/src/main/java/com/gaotao/modules/shopOrder/service/Impl/ShopOrderServiceImpl.java @@ -41,37 +41,38 @@ public class ShopOrderServiceImpl implements ShopOrderService { //=============生产订单类型=================== @Override - public List getShopOrderFamily(SOOrderTypeData indata){ + public List getShopOrderFamily(SOOrderTypeData indata) { List result = shopOrderMapper.getShopOrderFamily(indata); return result; } + @Override - public ResponseData saveShopOrderFamily(SOOrderTypeData inData){ + public ResponseData saveShopOrderFamily(SOOrderTypeData inData) { ResponseData responseData = new ResponseData(); - if (inData.getAdd()==0){ - List list3=baseMapper.checkSiteId(inData.getSite()); - if(list3.size()==0){ + if (inData.getAdd() == 0) { + List list3 = baseMapper.checkSiteId(inData.getSite()); + if (list3.size() == 0) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200032)); responseData.setCode("500"); return responseData; } - List list=baseMapper.checkAccessSite(inData.getSite(),inData.getUser()); - if(list.size()==0){ + List list = baseMapper.checkAccessSite(inData.getSite(), inData.getUser()); + if (list.size() == 0) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200040)); responseData.setCode("500"); return responseData; } - List list2=shopOrderMapper.checkOrderType(inData); - if(list2.size()!=0){ + List list2 = shopOrderMapper.checkOrderType(inData); + if (list2.size() != 0) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200195)); responseData.setCode("500"); return responseData; } //新增 shopOrderMapper.saveShopOrderFamily(inData); - }else{ - List list=baseMapper.checkAccessSite(inData.getSite(),inData.getUser()); - if(list.size()==0){ + } else { + List list = baseMapper.checkAccessSite(inData.getSite(), inData.getUser()); + if (list.size() == 0) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200040)); responseData.setCode("500"); return responseData; @@ -83,6 +84,7 @@ public class ShopOrderServiceImpl implements ShopOrderService { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200000)); return responseData; } + @Override public ResponseData deleteShopOrderFamily(SOOrderTypeData inData) { ResponseData responseData = new ResponseData(); @@ -96,37 +98,38 @@ public class ShopOrderServiceImpl implements ShopOrderService { //=============生产计划=================== @Override - public List getPlanFamily(SOPlannerData indata){ + public List getPlanFamily(SOPlannerData indata) { List result = shopOrderMapper.getPlanFamily(indata); return result; } + @Override - public ResponseData savePlanFamily(SOPlannerData inData){ + public ResponseData savePlanFamily(SOPlannerData inData) { ResponseData responseData = new ResponseData(); - if (inData.getAdd()==0){ - List list3=baseMapper.checkSiteId(inData.getSite()); - if(list3.size()==0){ + if (inData.getAdd() == 0) { + List list3 = baseMapper.checkSiteId(inData.getSite()); + if (list3.size() == 0) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200032)); responseData.setCode("500"); return responseData; } - List list=baseMapper.checkAccessSite(inData.getSite(),inData.getUser()); - if(list.size()==0){ + List list = baseMapper.checkAccessSite(inData.getSite(), inData.getUser()); + if (list.size() == 0) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200040)); responseData.setCode("500"); return responseData; } - List list2=shopOrderMapper.checkPlannerType(inData); - if(list2.size()!=0){ + List list2 = shopOrderMapper.checkPlannerType(inData); + if (list2.size() != 0) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200196)); responseData.setCode("500"); return responseData; } //新增 shopOrderMapper.savePlanFamily(inData); - }else{ - List list=baseMapper.checkAccessSite(inData.getSite(),inData.getUser()); - if(list.size()==0){ + } else { + List list = baseMapper.checkAccessSite(inData.getSite(), inData.getUser()); + if (list.size() == 0) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200040)); responseData.setCode("500"); return responseData; @@ -138,6 +141,7 @@ public class ShopOrderServiceImpl implements ShopOrderService { responseData.setMsg("操作成功!"); return responseData; } + @Override public ResponseData deletePlanFamily(SOPlannerData inData) { ResponseData responseData = new ResponseData(); @@ -150,15 +154,15 @@ public class ShopOrderServiceImpl implements ShopOrderService { //=============查询-生产订单无工艺路线================== @Override - public List searchShopOrderWithNoProcessRoute(ShopOrderWithNoProcessRouteData indata){ + public List searchShopOrderWithNoProcessRoute(ShopOrderWithNoProcessRouteData indata) { List result = shopOrderMapper.searchShopOrderWithNoProcessRoute(indata); return result; } //=============查询-生产派工单================== @Override - public List searchProductionDispatchList(SearchProductionDispatchListData indata){ - if(indata.isChecked()){ + public List searchProductionDispatchList(SearchProductionDispatchListData indata) { + if (indata.isChecked()) { indata.setSql(" AND isnull(E.S_ScheduledSeqNo ,- 1) >- 1 "); } List result = shopOrderMapper.searchProductionDispatchList(indata); @@ -167,7 +171,7 @@ public class ShopOrderServiceImpl implements ShopOrderService { //=============查询-生产订单================== @Override - public List searchShopOrder(SearchShopOrder indata){ + public List searchShopOrder(SearchShopOrder indata) { List result = shopOrderMapper.searchShopOrder(indata); return result; @@ -175,7 +179,7 @@ public class ShopOrderServiceImpl implements ShopOrderService { //=============生产订单================== @Override - public List getShopOrderData(ShopOrderData indata){ + public List getShopOrderData(ShopOrderData indata) { List result = shopOrderMapper.getShopOrderData(indata); return result; @@ -184,7 +188,7 @@ public class ShopOrderServiceImpl implements ShopOrderService { @Override public ResponseData deleteShopOrderData(ShopOrderData inData) { ResponseData responseData = new ResponseData(); - if(!inData.getStatus().equals("已计划")){ + if (!inData.getStatus().equals("已计划")) { responseData.setMsg(sysMsgService.getLanguageMsg(SysMsgConstant.OBJECT_ID_200197)); responseData.setCode("500"); return responseData; @@ -197,7 +201,7 @@ public class ShopOrderServiceImpl implements ShopOrderService { } @Override - public ResponseData saveShopOrderData(ShopOrderData inData){ + public ResponseData saveShopOrderData(ShopOrderData inData) { ResponseData responseData = new ResponseData(); shopOrderMapper.saveShopOrderData(inData); responseData.setCode("200"); @@ -207,18 +211,19 @@ public class ShopOrderServiceImpl implements ShopOrderService { } @Override - public List getRouteInShopOrderData(ShopOrderData indata){ + public List getRouteInShopOrderData(ShopOrderData indata) { List result = shopOrderMapper.getRouteInShopOrderData(indata); return result; } + @Override - public List getToolInShopOrder(ShopOrderData indata){ + public List getToolInShopOrder(ShopOrderData indata) { List result = shopOrderMapper.getToolInShopOrder(indata); return result; } @Override - public List getProductMixInShopOrder(ShopOrderData indata){ + public List getProductMixInShopOrder(ShopOrderData indata) { List result = shopOrderMapper.getProductMixInShopOrder(indata); return result; } @@ -252,10 +257,11 @@ public class ShopOrderServiceImpl implements ShopOrderService { /** * TODO 执行取消订单的操作 + * + * @return void * @author LR * @date 2022/5/30 14:13 * @Param [site, orderNo, status] - * @return void **/ public Map cancelShopOrder(String site, String orderNo, String status) { List params = new ArrayList<>(); @@ -278,7 +284,7 @@ public class ShopOrderServiceImpl implements ShopOrderService { boolean checkFlag = inData.isCheckFlag(); //关闭工单是否校验数量 String checkOrderQtyFlag = "Y"; - if(!checkFlag){ + if (!checkFlag) { checkOrderQtyFlag = "N"; } //调用存储过程 执行取消订单的操作 @@ -288,7 +294,7 @@ public class ShopOrderServiceImpl implements ShopOrderService { if (!"200".equalsIgnoreCase(resultCode)) { String msg = String.valueOf(resultMap.get("resultMsg")); String objectId = String.valueOf(resultMap.get("objectId")); - throw new XJException(msg, Integer.parseInt(resultCode),objectId); + throw new XJException(msg, Integer.parseInt(resultCode), objectId); } //调用存储过程 关闭sap的订单 String currentTime = DateUtils.getStringDate(new Date(), "yyyy-MM-dd"); @@ -299,16 +305,16 @@ public class ShopOrderServiceImpl implements ShopOrderService { if (!"200".equalsIgnoreCase(resultSapCode)) { String msg = String.valueOf(resultSapMap.get("resultMsg")); String objectId = String.valueOf(resultSapMap.get("objectId")); - throw new XJException(msg, Integer.parseInt(resultCode),objectId); + throw new XJException(msg, Integer.parseInt(resultCode), objectId); } } /** - * @description: 关闭SAP的订单 - * @author LR - * @date 2022/12/29 17:20 - * @version 1.0 - */ + * @description: 关闭SAP的订单 + * @author LR + * @date 2022/12/29 17:20 + * @version 1.0 + */ public Map closeSAPShopOrder(String orderNo, String currentTime) { List params = new ArrayList<>(); params.add(orderNo); @@ -321,10 +327,11 @@ public class ShopOrderServiceImpl implements ShopOrderService { /** * TODO 调用存储过程 执行关闭订单 + * + * @return java.util.Map * @author LR * @date 2022/6/7 16:46 * @Param [site, orderNo, status, checkOrderQtyFlag] - * @return java.util.Map **/ public Map closeShopOrder(String site, String orderNo, String status, String checkOrderQtyFlag) { List params = new ArrayList<>(); @@ -357,10 +364,11 @@ public class ShopOrderServiceImpl implements ShopOrderService { /** * TODO 调用存储过程 重新打开派工单 + * + * @return java.util.Map * @author LR * @date 2022/6/7 16:51 * @Param [site, orderNo, status] - * @return java.util.Map **/ public Map openShopOrder(String site, String orderNo, String status) { List params = new ArrayList<>(); @@ -374,16 +382,82 @@ public class ShopOrderServiceImpl implements ShopOrderService { } @Override + @Transactional public void deleteRouteInShopOrder(RouteInShopOrderData routeInShopOrderData) { + deletedUpdateShopRoute(routeInShopOrderData); shopOrderMapper.deleteRouteInShopOrder(routeInShopOrderData); } + // 调整工艺路线之后处理 工序的前道后道 + private void deletedUpdateShopRoute(RouteInShopOrderData routeInShopOrderData) { + // 获取当前工序信息 + RouteInShopOrderData route = shopOrderMapper.getSORoute(routeInShopOrderData); + RouteInShopOrderData pre = new RouteInShopOrderData(); + pre.setOrderNo(route.getOrderNo()); + pre.setSite(route.getSite()); + RouteInShopOrderData next = new RouteInShopOrderData(); + next.setOrderNo(route.getOrderNo()); + next.setSite(route.getSite()); + if (route != null) { + if (route.getPreItemNo().doubleValue() == 0) { + pre.setItemNo(route.getNextItemNo()); + pre.setPreItemNo(0.0); + shopOrderMapper.updateRouteByItemNo(pre); + } + if (route.getNextItemNo().doubleValue() == 0) { + next.setItemNo(route.getPreItemNo()); + next.setNextItemNo(0.0); + shopOrderMapper.updateRouteByItemNo(next); + } + if (route.getPreItemNo().doubleValue() != 0 && route.getNextItemNo().doubleValue() != 0) { + pre.setItemNo(route.getPreItemNo()); + pre.setNextItemNo(route.getNextItemNo()); + shopOrderMapper.updateRouteByItemNo(pre); + next.setItemNo(route.getNextItemNo()); + next.setPreItemNo(route.getPreItemNo()); + shopOrderMapper.updateRouteByItemNo(next); + } + } + } + @Override + @Transactional public void insertRouteInShopOrder(RouteInShopOrderData routeInShopOrderData) { // 获取工单数量 - Double qtyRequired = shopOrderMapper.getOrderQtyRequired(routeInShopOrderData.getSite(),routeInShopOrderData.getOrderNo()); + Double qtyRequired = shopOrderMapper.getOrderQtyRequired(routeInShopOrderData.getSite(), routeInShopOrderData.getOrderNo()); routeInShopOrderData.setQtyRequired(qtyRequired); shopOrderMapper.insertRouteInShopOrder(routeInShopOrderData); + addUpdateRoute(routeInShopOrderData); + } + + private void addUpdateRoute(RouteInShopOrderData routeInShopOrderData) { + // 根据工序号获取上道工序 + RouteInShopOrderData pre = shopOrderMapper.getSORouteItemNoOrderBy(routeInShopOrderData,"desc"); + // 根据工序号获取下道工序 + RouteInShopOrderData next = shopOrderMapper.getSORouteItemNoOrderBy(routeInShopOrderData,"asc"); + if (pre != null){ + pre.setNextItemNo(routeInShopOrderData.getItemNo()); + routeInShopOrderData.setPreItemNo(pre.getItemNo()); + routeInShopOrderData.setNextItemNo(0.0); + shopOrderMapper.updateRouteByItemNo(pre); + } + if (next != null){ + next.setPreItemNo(routeInShopOrderData.getItemNo()); + routeInShopOrderData.setPreItemNo(0.0); + routeInShopOrderData.setNextItemNo(next.getItemNo()); + shopOrderMapper.updateRouteByItemNo(next); + } + if (pre == null && next == null){ + routeInShopOrderData.setPreItemNo(0.0); + routeInShopOrderData.setNextItemNo(0.0); + } + if (pre != null && next != null){ + routeInShopOrderData.setPreItemNo(pre.getItemNo()); + routeInShopOrderData.setNextItemNo(next.getItemNo()); + } + shopOrderMapper.updateRouteByItemNo(routeInShopOrderData); + + } @Override @@ -441,16 +515,16 @@ public class ShopOrderServiceImpl implements ShopOrderService { if (!"200".equalsIgnoreCase(resultCode)) { String msg = String.valueOf(resultMap.get("resultMsg")); String objectId = String.valueOf(resultMap.get("objectId")); - throw new XJException(msg, Integer.parseInt(resultCode),objectId); + throw new XJException(msg, Integer.parseInt(resultCode), objectId); } } /** + * @return java.util.Map * @Author LR * @Description 执行新增工单工序的信息 - * @DateTime 2022/8/22 15:36 + * @DateTime 2022/8/22 15:36 * @Param [site, orderNo, itemNo, toolId, toolQty, createdBy, toolQty1, remark] - * @return java.util.Map **/ public Map processInsertShopOrderTool(String site, String orderNo, int itemNo, String toolId, int toolQty, String createdBy, String createdDate, String remark) { List params = new ArrayList<>(); @@ -487,16 +561,16 @@ public class ShopOrderServiceImpl implements ShopOrderService { if (!"200".equalsIgnoreCase(resultCode)) { String msg = String.valueOf(resultMap.get("resultMsg")); String objectId = String.valueOf(resultMap.get("objectId")); - throw new XJException(msg, Integer.parseInt(resultCode),objectId); + throw new XJException(msg, Integer.parseInt(resultCode), objectId); } } /** + * @return java.util.Map * @Author LR * @Description 执行修改工单工序的信息 - * @DateTime 2022/8/22 16:19 + * @DateTime 2022/8/22 16:19 * @Param [site, orderNo, itemNo, oriToolId, toolId, toolQty, createdBy, createdDate, remark] - * @return java.util.Map **/ public Map processUpdateShopOrderTool(String site, String orderNo, int itemNo, String oriToolId, String toolId, int toolQty, String createdBy, String createdDate, String remark) { List params = new ArrayList<>(); @@ -529,16 +603,16 @@ public class ShopOrderServiceImpl implements ShopOrderService { if (!"200".equalsIgnoreCase(resultCode)) { String msg = String.valueOf(resultMap.get("resultMsg")); String objectId = String.valueOf(resultMap.get("objectId")); - throw new XJException(msg, Integer.parseInt(resultCode),objectId); + throw new XJException(msg, Integer.parseInt(resultCode), objectId); } } /** + * @return java.util.Map * @Author LR * @Description 执行删除工单工序的信息 - * @DateTime 2022/8/22 16:22 + * @DateTime 2022/8/22 16:22 * @Param [site, orderNo, itemNo, toolId] - * @return java.util.Map **/ public Map processDeleteShopOrderTool(String site, String orderNo, int itemNo, String toolId) { List params = new ArrayList<>(); @@ -563,13 +637,13 @@ public class ShopOrderServiceImpl implements ShopOrderService { params.add(shopOrderRoutingViaRevDto.getUserId()); //调用存储过程 List> resultList = procedureMapper.getProcedureData("ShopOrder_UpdateRoutingViaRev", params); - Map resultMap= resultList.get(0); + Map resultMap = resultList.get(0); //判断是否检验成功 String resultCode = String.valueOf(resultMap.get("resultCode")); if (!"200".equalsIgnoreCase(resultCode)) { String msg = String.valueOf(resultMap.get("resultMsg")); String objectId = String.valueOf(resultMap.get("objectId")); - throw new XJException(msg, Integer.parseInt(resultCode),objectId); + throw new XJException(msg, Integer.parseInt(resultCode), objectId); } } diff --git a/src/main/java/com/gaotao/modules/sys/service/impl/SysMsgServiceImpl.java b/src/main/java/com/gaotao/modules/sys/service/impl/SysMsgServiceImpl.java index c406b6d..79f135a 100644 --- a/src/main/java/com/gaotao/modules/sys/service/impl/SysMsgServiceImpl.java +++ b/src/main/java/com/gaotao/modules/sys/service/impl/SysMsgServiceImpl.java @@ -4,6 +4,7 @@ import com.gaotao.common.constant.SysMsgConstant; import com.gaotao.modules.sys.dao.SysMsgDao; import com.gaotao.modules.sys.entity.SysUserEntity; import com.gaotao.modules.sys.service.SysMsgService; +import org.apache.commons.lang.StringUtils; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -24,6 +25,6 @@ public class SysMsgServiceImpl implements SysMsgService { private SysMsgDao sysMsgDao; @Override public String getLanguageMsg( String objectId) { - return sysMsgDao.getLanguageMsg( getUser().getLanguageDefault(), SysMsgConstant.OBJECT_TYPE, objectId); + return sysMsgDao.getLanguageMsg(StringUtils.isEmpty(getUser().getLanguageDefault())?"cn":getUser().getLanguageDefault(), SysMsgConstant.OBJECT_TYPE, objectId); } } diff --git a/src/main/resources/mapper/shopOrder/ShopOrderMapper.xml b/src/main/resources/mapper/shopOrder/ShopOrderMapper.xml index b3f7f21..b617858 100644 --- a/src/main/resources/mapper/shopOrder/ShopOrderMapper.xml +++ b/src/main/resources/mapper/shopOrder/ShopOrderMapper.xml @@ -347,31 +347,49 @@ TimeReported, Efficiency, PlanStartTime, PlanFinishTime, BarcodeID, Remark, PartNo, Crewsize, ClosedFlag, - ActionNotes,QtyScheduled) + ActionNotes, QtyScheduled) values (#{site}, #{orderNo}, #{itemNo}, #{operationDesc}, #{workCenterNo}, #{machSetupTime}, #{machRunFactor}, #{factorUnit_DB}, #{factorUnit}, #{qtyRequired}, #{qtyReported}, #{qtyApprove}, #{timeRequired}, #{timeReported}, #{efficiency}, #{planStartTime}, #{planFinishTime}, #{barcodeID}, #{remark}, #{partNo}, #{crewsize}, #{closedFlag}, - #{actionNotes},0) + #{actionNotes}, 0) - update SORouting set OperationDesc = #{operationDesc} ,WorkCenterNo = #{workCenterNo},MachSetupTime = #{machSetupTime} - ,MachRunFactor = #{machRunFactor},FactorUnit = #{factorUnit},Efficiency =#{efficiency},TimeReported =#{timeRequired} - ,PlanFinishTime = #{planFinishTime},PlanStartTime = #{planStartTime},Crewsize = #{crewsize} ,Remark= #{remark} - where site = #{site} and OrderNo = #{orderNo} and ItemNo = #{itemNo} + update SORouting + set OperationDesc = #{operationDesc} + , WorkCenterNo = #{workCenterNo} + , MachSetupTime = #{machSetupTime} + , MachRunFactor = #{machRunFactor} + , FactorUnit = #{factorUnit} + , Efficiency =#{efficiency} + , TimeReported =#{timeRequired} + , PlanFinishTime = #{planFinishTime} + , PlanStartTime = #{planStartTime} + , Crewsize = #{crewsize} + , Remark= #{remark} + where site = #{site} + and OrderNo = #{orderNo} + and ItemNo = #{itemNo} @@ -379,7 +397,7 @@ select max(itemno) from SORouting where site = #{site} - and orderNo = #{orderNo} + and orderNo = #{orderNo} - Select T.Site site, T.OrderNo orderNo, ItemNo itemNo, T.ToolID toolId, P.ToolDescription toolDesc, P.Spec toolSpec, T.ToolQty toolQty, P.UMID umid, P.FamilyID familyId, - dbo.Get_SOOpsDescription(T.Site, T.OrderNo, ItemNo) itemDesc, - dbo.Get_PartFamilyDesc(T.Site, P.FamilyID) familyName, P.Active active, T.Remark remark, T.CreateDate createdDate, T.CreatedBy createdBy - FROM SOTool as T, ToolHeader as P + Select T.Site site, + T.OrderNo orderNo, + ItemNo itemNo, + T.ToolID toolId, + P.ToolDescription toolDesc, + P.Spec toolSpec, + T.ToolQty toolQty, + P.UMID umid, + P.FamilyID familyId, + dbo.Get_SOOpsDescription(T.Site, T.OrderNo, ItemNo) itemDesc, + dbo.Get_PartFamilyDesc(T.Site, P.FamilyID) familyName, + P.Active active, + T.Remark remark, + T.CreateDate createdDate, + T.CreatedBy createdBy + FROM SOTool as T, + ToolHeader as P Where T.Site = P.Site and T.ToolID = P.ToolID and T.Site = #{site} @@ -542,8 +573,55 @@ + + + update SORouting + + + NextItemNo = #{nextItemNo}, + + + PreItemNo = #{preItemNo}, + + + where site = #{site} + and OrderNo = #{orderNo} + and ItemNo = #{itemNo} + + + + \ No newline at end of file