|
|
|
@ -868,6 +868,46 @@ public class DailyPlanServiceImpl implements DailyPlanService { |
|
|
|
return new ShopOrderData(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @Description PDA 生产退库扫码:纯数字→派工单 SeqNo;HL 开头→混炼任务单 TaskNo 查 Hunlian_TaskHeader.orderRef1 再走生产订单 - rqrq |
|
|
|
*/ |
|
|
|
@Override |
|
|
|
public ShopOrderData getShopOrderForReturnByScan(ShopOrderForReturnScanData scan) { |
|
|
|
if (scan == null || !StringUtils.hasText(scan.getOrderStr())) { |
|
|
|
throw new RuntimeException("扫描内容不能为空"); |
|
|
|
} |
|
|
|
String raw = scan.getOrderStr().trim(); |
|
|
|
if (isAllDigitsDispatchOrder(raw)) { |
|
|
|
DailyPlanInData dailyPlanInData = new DailyPlanInData(); |
|
|
|
try { |
|
|
|
dailyPlanInData.setSeqNo(Integer.parseInt(raw)); |
|
|
|
} catch (NumberFormatException e) { |
|
|
|
throw new RuntimeException("派工单号格式错误"); |
|
|
|
} |
|
|
|
dailyPlanInData.setRemark("生产退库"); |
|
|
|
return getShopOrderForReturn(dailyPlanInData); |
|
|
|
} |
|
|
|
if (raw.toUpperCase().startsWith("HL")) { |
|
|
|
HunlianData hl = new HunlianData(); |
|
|
|
hl.setTaskNo(raw); |
|
|
|
return getShopOrderForHunlianTask(hl); |
|
|
|
} |
|
|
|
|
|
|
|
throw new RuntimeException("只能扫派工单和混炼任务单二维码"); |
|
|
|
} |
|
|
|
|
|
|
|
private static boolean isAllDigitsDispatchOrder(String s) { |
|
|
|
if (s == null || s.length() == 0) { |
|
|
|
return false; |
|
|
|
} |
|
|
|
for (int i = 0; i < s.length(); i++) { |
|
|
|
if (!Character.isDigit(s.charAt(i))) { |
|
|
|
return false; |
|
|
|
} |
|
|
|
} |
|
|
|
return true; |
|
|
|
} |
|
|
|
@Override |
|
|
|
public ShopOrderData getShopOrderForHunlianTask(HunlianData inData) { |
|
|
|
List<HunlianData> getHunlianTaskHeader =dailyPlanMapper.getHunlianTaskHeader(inData); |
|
|
|
|