master
philip 4 years ago
parent deff2bd13b
commit d56ace6c93

@ -1017,6 +1017,6 @@
SELECT * FROM Z_ABNORMAL_BILL zab SELECT * FROM Z_ABNORMAL_BILL zab
JOIN sfc s ON zab.SITE=s.SITE AND zab.SFC=s.SFC JOIN sfc s ON zab.SITE=s.SITE AND zab.SFC=s.SFC
JOIN Z_ABNORMAL_BILL_DISPOSE ZABD ON ZABD.ABNORMAL_BILL_BO= ZAB.HANDLE JOIN Z_ABNORMAL_BILL_DISPOSE ZABD ON ZABD.ABNORMAL_BILL_BO= ZAB.HANDLE
WHERE zab.SITE=#{site} AND zab.STATUS='G' AND zab."TYPE"='Z' AND s.QTY>1 AND (ZABD.ABNORMAL_METHOD='F' OR ZABD.ABNORMAL_METHOD='C') AND ZABD.ROUTER_BO IS NOT NULL WHERE zab.SITE=#{site} AND zab.STATUS='G' AND zab."TYPE"='Z' AND s.QTY>1 AND (ZABD.ABNORMAL_METHOD='F' OR ZABD.ABNORMAL_METHOD='C') AND ZABD.ROUTER_BO IS NOT NULL ORDER BY ZABD.CLOSED_DATE_TIME DESC
</select> </select>
</mapper> </mapper>

@ -34,7 +34,6 @@ import com.foreverwin.modular.core.util.FrontPage;
import com.sap.me.messaging.MessageTypeBOHandle; import com.sap.me.messaging.MessageTypeBOHandle;
import com.sap.me.user.UserGroupBOHandle; import com.sap.me.user.UserGroupBOHandle;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.jms.core.JmsMessagingTemplate; import org.springframework.jms.core.JmsMessagingTemplate;
@ -67,10 +66,7 @@ public class ProdReadyTaskServiceImpl extends ServiceImpl<ProdReadyTaskMapper, P
public static final String STATUS_CANCEL = "CANCEL"; public static final String STATUS_CANCEL = "CANCEL";
public static final String MESSAGE_TYPE_WLZB = "WLZB"; public static final String MESSAGE_TYPE_WLZB = "WLZB";
@Autowired @Autowired
@Qualifier("defaultJmsTemplate") private JmsMessagingTemplate jmsTemplate;
private JmsMessagingTemplate jmsMessagingTemplate;
@Value("${spring.activemq.brokerUrl}")
String brokerURL;
@Value("${print.server}") @Value("${print.server}")
private String printServer; private String printServer;
@Autowired @Autowired
@ -555,8 +551,8 @@ public class ProdReadyTaskServiceImpl extends ServiceImpl<ProdReadyTaskMapper, P
messageObject.put("RESOURCE", resource); messageObject.put("RESOURCE", resource);
messageObject.put("RESOURCE_TYPE", resourceType); messageObject.put("RESOURCE_TYPE", resourceType);
String causeMessage = null; String causeMessage = null;
jmsMessagingTemplate.getJmsTemplate().setReceiveTimeout(TimeUnit.SECONDS.toMillis(30)); jmsTemplate.getJmsTemplate().setReceiveTimeout(TimeUnit.SECONDS.toMillis(30));
String message = jmsMessagingTemplate.convertSendAndReceive(queue, messageObject.toString(), String.class); String message = jmsTemplate.convertSendAndReceive(queue, messageObject.toString(), String.class);
if (StringUtil.isBlank(message)) { if (StringUtil.isBlank(message)) {
causeMessage = "队列消息消费超时或者未返回消费数据"; causeMessage = "队列消息消费超时或者未返回消费数据";

@ -12,8 +12,10 @@ import com.foreverwin.mesnac.meapi.model.Router;
import com.foreverwin.mesnac.meapi.service.RouterService; import com.foreverwin.mesnac.meapi.service.RouterService;
import com.foreverwin.mesnac.meapi.service.ShopOrderService; import com.foreverwin.mesnac.meapi.service.ShopOrderService;
import com.foreverwin.mesnac.production.dto.SplitSfcDto; import com.foreverwin.mesnac.production.dto.SplitSfcDto;
import com.foreverwin.mesnac.production.mapper.SfcCrossMapper;
import com.foreverwin.mesnac.production.mapper.SplitSfcMapper; import com.foreverwin.mesnac.production.mapper.SplitSfcMapper;
import com.foreverwin.mesnac.production.model.SplitSfc; import com.foreverwin.mesnac.production.model.SplitSfc;
import com.foreverwin.mesnac.production.model.StepOperation;
import com.foreverwin.mesnac.production.service.SplitSfcService; import com.foreverwin.mesnac.production.service.SplitSfcService;
import com.foreverwin.modular.core.exception.BaseException; import com.foreverwin.modular.core.exception.BaseException;
import com.foreverwin.modular.core.meext.MEServices; import com.foreverwin.modular.core.meext.MEServices;
@ -54,6 +56,8 @@ public class SplitSfcServiceImpl extends ServiceImpl<SplitSfcMapper, SplitSfc> i
private ShopOrderService shopOrderService; private ShopOrderService shopOrderService;
@Autowired @Autowired
private RouterService routerService; private RouterService routerService;
@Autowired
private SfcCrossMapper sfcCrossMapper;
@Override @Override
public IPage<SplitSfc> selectPage(FrontPage<SplitSfc> frontPage, SplitSfc splitSfc) { public IPage<SplitSfc> selectPage(FrontPage<SplitSfc> frontPage, SplitSfc splitSfc) {
QueryWrapper<SplitSfc> queryWrapper = new QueryWrapper<>(); QueryWrapper<SplitSfc> queryWrapper = new QueryWrapper<>();
@ -81,7 +85,7 @@ public class SplitSfcServiceImpl extends ServiceImpl<SplitSfcMapper, SplitSfc> i
//查询质量异常记录数量 //查询质量异常记录数量
SplitSfcDto sfcDto=splitSfcMapper.getAbnormalQty(site,sfc,operation); SplitSfcDto sfcDto=splitSfcMapper.getAbnormalQty(site,sfc,operation);
if (sfcDto==null){ if (sfcDto==null){
throw new BaseException("未找到方案确认的质量异常"); throw new BaseException("未找到闭环关闭的质量异常");
} }
sfcData.setQty(Double.valueOf(sfcDto.getNcQty())); sfcData.setQty(Double.valueOf(sfcDto.getNcQty()));
sfcData.setAbnormalNo(sfcDto.getAbnormalNo()); sfcData.setAbnormalNo(sfcDto.getAbnormalNo());
@ -201,6 +205,11 @@ public class SplitSfcServiceImpl extends ServiceImpl<SplitSfcMapper, SplitSfc> i
stepIdentifier.setStepId(sfcData.getStepId()); stepIdentifier.setStepId(sfcData.getStepId());
stepIdentifier.setOperationId(sfcData.getOperation()); stepIdentifier.setOperationId(sfcData.getOperation());
productionContext.setStepIdentifier(stepIdentifier); productionContext.setStepIdentifier(stepIdentifier);
List<StepOperation> resourceBySfc = sfcCrossMapper.getResourceBySfc(site, sfc);
if (resourceBySfc.isEmpty()){
throw new BaseException("产品不在工作中");
}
productionContext.setResourceRef(resourceBySfc.get(0).getResourceBo());
createNCRequest.setProdCtx(productionContext); createNCRequest.setProdCtx(productionContext);
createNCRequest.setNcCodeRef(HandleEnum.NC_CODE.getHandle(site,splitNcCode[0])); createNCRequest.setNcCodeRef(HandleEnum.NC_CODE.getHandle(site,splitNcCode[0]));
ncProductionService.createNC(createNCRequest); ncProductionService.createNC(createNCRequest);

@ -78,14 +78,13 @@
</select> </select>
<select id="getResourceBySfc" resultMap="StepOperationMap"> <select id="getResourceBySfc" resultMap="StepOperationMap">
select siw.RESOURCE_BO select siw.RESOURCE_BO
from sfc as sfc from sfc sfc
inner join sfc_routing as sri on sfc.handle = sri.sfc_bo inner join sfc_routing sri on sfc.handle = sri.sfc_bo
inner join sfc_router as srt on sri.handle = srt.sfc_routing_bo inner join sfc_router srt on sri.handle = srt.sfc_routing_bo AND srt.IN_USE = 'true'
inner join sfc_step as sep on srt.handle = sep.sfc_router_bo inner join sfc_step sep on srt.handle = sep.sfc_router_bo
INNER JOIN SFC_IN_WORK siw ON sep.HANDLE = siw.SFC_STEP_BO INNER JOIN SFC_IN_WORK siw ON sep.HANDLE = siw.SFC_STEP_BO
WHERE sfc.site = #{site} and WHERE sfc.site = #{site} and sfc.SFC = #{sfc}
sfc.SFC = #{sfc}
</select> </select>
<select id="querySfcData" resultType="map"> <select id="querySfcData" resultType="map">
SELECT SO.SHOP_ORDER, SO_CF.VALUE ITEM_NUMBER, SO_CF2.VALUE WORK_ORDER,I.ITEM, IT.DESCRIPTION ITEM_DESC, SELECT SO.SHOP_ORDER, SO_CF.VALUE ITEM_NUMBER, SO_CF2.VALUE WORK_ORDER,I.ITEM, IT.DESCRIPTION ITEM_DESC,

@ -380,7 +380,7 @@
<select id="getAbnormalQty" resultType="com.foreverwin.mesnac.production.dto.SplitSfcDto"> <select id="getAbnormalQty" resultType="com.foreverwin.mesnac.production.dto.SplitSfcDto">
SELECT zab.NC_QTY,zsbd.ROUTER_BO,zab.NC_CODE,zab.ABNORMAL_NO FROM Z_ABNORMAL_BILL zab SELECT zab.NC_QTY,zsbd.ROUTER_BO,zab.NC_CODE,zab.ABNORMAL_NO FROM Z_ABNORMAL_BILL zab
JOIN Z_ABNORMAL_BILL_DISPOSE zsbd ON zab.HANDLE=ZSBD.ABNORMAL_BILL_BO JOIN Z_ABNORMAL_BILL_DISPOSE zsbd ON zab.HANDLE=ZSBD.ABNORMAL_BILL_BO
WHERE ZAB.SFC=#{sfc} AND zab.SITE=#{site} AND ZAB.OPERATION=#{operation} AND zab.STATUS='F' AND zab."TYPE"='Z' AND zsbd.ABNORMAL_METHOD='F' WHERE ZAB.SFC=#{sfc} AND zab.SITE=#{site} AND ZAB.OPERATION=#{operation} AND zab.STATUS='G' AND zab."TYPE"='Z' AND (zsbd.ABNORMAL_METHOD='F' OR zsbd.ABNORMAL_METHOD='C')
</select> </select>
</mapper> </mapper>

Loading…
Cancel
Save