Merge remote-tracking branch 'origin/mdqdasrsVersion' into mdqdasrsVersion
|  |  |  | 
|---|
|  |  |  | if (Cools.isEmpty(param1.getOrderNo())) { | 
|---|
|  |  |  | return R.error("单据编号[orderNo]不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(param1.getId())) { | 
|---|
|  |  |  | return R.error("单据唯一值[id]不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(param1.getFormId())) { | 
|---|
|  |  |  | return R.error("单据类型[orderType]不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(param1.getMatList())) { | 
|---|
|  |  |  | return R.error("单据明细[orderDetails]不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<Map<String, Object>> result = new ArrayList<>(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | if (Cools.isEmpty(param1.getOrderNo())) { | 
|---|
|  |  |  | return R.error("单据编号[orderNo]不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(param1.getId())) { | 
|---|
|  |  |  | return R.error("单据唯一值[id]不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(param1.getFormId())) { | 
|---|
|  |  |  | return R.error("单据类型[FormId]不能为空"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private String createDate; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private String type;//类型  (1、整单上报  2、行号上报) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private List<DetlDto2> matList; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | 
|---|
|  |  |  | private Double anfme; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private String owner; | 
|---|
|  |  |  | private int beBatch; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public DetlDto2(){} | 
|---|
|  |  |  | public DetlDto2(String matnr,String maktx,String batch,String specs,Double anfme,String owner){ | 
|---|
|  |  |  | public DetlDto2(String matnr,String maktx,String batch,String specs,Double anfme,String owner,int beBatch){ | 
|---|
|  |  |  | this.matnr=matnr; | 
|---|
|  |  |  | this.maktx=maktx; | 
|---|
|  |  |  | this.batch=batch; | 
|---|
|  |  |  | this.specs=specs; | 
|---|
|  |  |  | this.anfme=anfme; | 
|---|
|  |  |  | this.owner=owner; | 
|---|
|  |  |  | this.beBatch=beBatch; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public OpenOrderPakinParam(OpenOrderPakinJDParam param1){ | 
|---|
|  |  |  | this.orderNo=param1.getOrderNo(); | 
|---|
|  |  |  | KingDeeUtilType kingDeeUtilType = KingDeeUtilType.getFormId(param1.getFormId()); | 
|---|
|  |  |  | if (Cools.isEmpty(kingDeeUtilType)){ | 
|---|
|  |  |  | this.orderType=param1.getFormId(); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | this.orderType=kingDeeUtilType.desc; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(param1.getId()); | 
|---|
|  |  |  | this.orderType=kingDeeUtilType.desc; | 
|---|
|  |  |  | this.orderTime=param1.getCreateDate(); | 
|---|
|  |  |  | List<OpenOrderPakinJDParam.DetlDto2> matList = param1.getMatList(); | 
|---|
|  |  |  | List<DetlDto> dtos = new ArrayList<>(); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public OpenOrderPakoutParam(OpenOrderPakinJDParam param1){ | 
|---|
|  |  |  | this.orderNo=param1.getOrderNo(); | 
|---|
|  |  |  | KingDeeUtilType kingDeeUtilType = null; | 
|---|
|  |  |  | if (!Cools.isEmpty(param1.getId())){ | 
|---|
|  |  |  | kingDeeUtilType = KingDeeUtilType.get(param1.getId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(kingDeeUtilType)){ | 
|---|
|  |  |  | kingDeeUtilType = KingDeeUtilType.getFormId(param1.getFormId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(param1.getId()); | 
|---|
|  |  |  | if (Cools.isEmpty(kingDeeUtilType)){ | 
|---|
|  |  |  | this.orderType=param1.getFormId(); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | 
|---|
|  |  |  | List<DetlDto> orderDetails = param.getOrderDetails(); | 
|---|
|  |  |  | for (DetlDto detail : orderDetails) { | 
|---|
|  |  |  | DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getAnfme(),detail.getOwnerName(),detail.getPayment()); | 
|---|
|  |  |  | dto.setBeBatch(detail.getBeBatch()); | 
|---|
|  |  |  | if (DetlDto.has(list, dto)) { | 
|---|
|  |  |  | DetlDto detlDto = DetlDto.find(list, dto.getMatnr(), dto.getBatch()); | 
|---|
|  |  |  | assert detlDto != null; | 
|---|
|  |  |  | 
|---|
|  |  |  | orderDetl.setPayment(detlDto.getPayment()); | 
|---|
|  |  |  | orderDetl.setStatus(1); | 
|---|
|  |  |  | orderDetl.setQty(0.0D); | 
|---|
|  |  |  | orderDetl.setBeBatch(detlDto.getBeBatch()); | 
|---|
|  |  |  | orderDetl.setWeight(detlDto.getWeight()); | 
|---|
|  |  |  | if (!orderDetlService.insert(orderDetl)) { | 
|---|
|  |  |  | throw new CoolException("生成单据明细失败,请联系管理员"); | 
|---|
|  |  |  | 
|---|
|  |  |  | List<DetlDto> orderDetails = param.getOrderDetails(); | 
|---|
|  |  |  | for (DetlDto detail : orderDetails) { | 
|---|
|  |  |  | DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getAnfme()); | 
|---|
|  |  |  | dto.setBeBatch(detail.getBeBatch()); | 
|---|
|  |  |  | if (DetlDto.has(list, dto)) { | 
|---|
|  |  |  | DetlDto detlDto = DetlDto.find(list, dto.getMatnr(), dto.getBatch()); | 
|---|
|  |  |  | assert detlDto != null; | 
|---|
|  |  |  | 
|---|
|  |  |  | orderDetl.setUpdateTime(now); | 
|---|
|  |  |  | orderDetl.setStatus(1); | 
|---|
|  |  |  | orderDetl.setQty(0.0D); | 
|---|
|  |  |  | orderDetl.setBeBatch(detlDto.getBeBatch()); | 
|---|
|  |  |  | orderDetl.setWeight(detlDto.getWeight()); | 
|---|
|  |  |  | if (!orderDetlService.insert(orderDetl)) { | 
|---|
|  |  |  | throw new CoolException("生成单据明细失败,请联系管理员"); | 
|---|
|  |  |  | 
|---|
|  |  |  | import org.springframework.scheduling.annotation.Scheduled; | 
|---|
|  |  |  | import org.springframework.stereotype.Component; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<Order> orders = orderService.selectComplete(); | 
|---|
|  |  |  | for (Order order : orders) { | 
|---|
|  |  |  | ReturnT<String> result = pushDowmOrderSyncHandler.start(order); | 
|---|
|  |  |  | if (!result.isSuccess()) { | 
|---|
|  |  |  | log.error("单据[orderNo={}]提交至erp失败", order.getOrderNo()); | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | ReturnT<String> result = pushDowmOrderSyncHandler.start(order); | 
|---|
|  |  |  | if (!result.isSuccess()) { | 
|---|
|  |  |  | log.error("单据[orderNo={}]提交至erp失败", order.getOrderNo()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | Order order1 = orderService.selectById(order.getId()); | 
|---|
|  |  |  | order1.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.updateById(order1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | import org.springframework.scheduling.annotation.Scheduled; | 
|---|
|  |  |  | import org.springframework.stereotype.Component; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | @Value("${erp.switch.ReviewOrderSwitch}") | 
|---|
|  |  |  | private boolean ReviewOrderSwitch; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Scheduled(cron = "0/3 * * * * ? ") | 
|---|
|  |  |  | //    @Scheduled(cron = "0/3 * * * * ? ") | 
|---|
|  |  |  | @Async("orderThreadPool") | 
|---|
|  |  |  | public void completeAndReport(){ | 
|---|
|  |  |  | if(!ReviewOrderSwitch){ | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<Order> orders = orderService.selectComplete(); | 
|---|
|  |  |  | for (Order order : orders) { | 
|---|
|  |  |  | ReturnT<String> result = reviewOrderSyncHandler.start(order); | 
|---|
|  |  |  | if (!result.isSuccess()) { | 
|---|
|  |  |  | log.error("单据[orderNo={}]向erp审核失败", order.getOrderNo()); | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | ReturnT<String> result = reviewOrderSyncHandler.start(order); | 
|---|
|  |  |  | if (!result.isSuccess()) { | 
|---|
|  |  |  | log.error("单据[orderNo={}]向erp审核失败", order.getOrderNo()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | Order order1 = orderService.selectById(order.getId()); | 
|---|
|  |  |  | order1.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.updateById(order1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.zy.asrs.entity.Order; | 
|---|
|  |  |  | import com.zy.asrs.service.OrderService; | 
|---|
|  |  |  | import com.zy.asrs.task.core.ReturnT; | 
|---|
|  |  |  | import com.zy.asrs.task.kingdee.handler.SubmitOrderSyncHandler; | 
|---|
|  |  |  | import com.zy.asrs.task.kingdee.handler.SaveOrderSyncHandler; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Value; | 
|---|
|  |  |  | import org.springframework.scheduling.annotation.Async; | 
|---|
|  |  |  | import org.springframework.scheduling.annotation.Scheduled; | 
|---|
|  |  |  | import org.springframework.stereotype.Component; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | @Slf4j | 
|---|
|  |  |  | @Component | 
|---|
|  |  |  | public class SaveOrderSyncScheduler { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SubmitOrderSyncHandler submitOrderSyncHandler; | 
|---|
|  |  |  | private SaveOrderSyncHandler saveOrderSyncHandler; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrderService orderService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${erp.switch.ReviewOrderSwitch}") | 
|---|
|  |  |  | private boolean ReviewOrderSwitch; | 
|---|
|  |  |  | @Value("${erp.switch.SaveOrderSwitch}") | 
|---|
|  |  |  | private boolean SaveOrderSwitch; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //    @Scheduled(cron = "0/3 * * * * ? ") | 
|---|
|  |  |  | @Scheduled(cron = "0/3 * * * * ? ") | 
|---|
|  |  |  | @Async("orderThreadPool") | 
|---|
|  |  |  | public void completeAndReport(){ | 
|---|
|  |  |  | if (1==1) return; | 
|---|
|  |  |  | if(!ReviewOrderSwitch){ | 
|---|
|  |  |  | if(!SaveOrderSwitch){ | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<Order> orders = orderService.selectComplete(); | 
|---|
|  |  |  | for (Order order : orders) { | 
|---|
|  |  |  | ReturnT<String> result = submitOrderSyncHandler.start(order); | 
|---|
|  |  |  | if (!result.isSuccess()) { | 
|---|
|  |  |  | log.error("单据[orderNo={}]提交至erp失败", order.getOrderNo()); | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | ReturnT<String> result = saveOrderSyncHandler.start(order); | 
|---|
|  |  |  | if (!result.isSuccess()) { | 
|---|
|  |  |  | log.error("单据[orderNo={}]提交至erp失败", order.getOrderNo()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | Order order1 = orderService.selectById(order.getId()); | 
|---|
|  |  |  | order1.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.updateById(order1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.zy.asrs.entity.Order; | 
|---|
|  |  |  | import com.zy.asrs.service.OrderService; | 
|---|
|  |  |  | import com.zy.asrs.task.core.ReturnT; | 
|---|
|  |  |  | import com.zy.asrs.task.kingdee.handler.SaveOrderSyncHandler; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.zy.asrs.task.kingdee.handler.SubmitOrderSyncHandler; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Value; | 
|---|
|  |  |  | 
|---|
|  |  |  | import org.springframework.scheduling.annotation.Scheduled; | 
|---|
|  |  |  | import org.springframework.stereotype.Component; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | public class SubmitOrderSyncScheduler { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SaveOrderSyncHandler saveOrderSyncHandler; | 
|---|
|  |  |  | private SubmitOrderSyncHandler submitOrderSyncHandler; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrderService orderService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${erp.switch.ReviewOrderSwitch}") | 
|---|
|  |  |  | private boolean ReviewOrderSwitch; | 
|---|
|  |  |  | @Value("${erp.switch.SubmitOrderSwitch}") | 
|---|
|  |  |  | private boolean SubmitOrderSwitch; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //    @Scheduled(cron = "0/3 * * * * ? ") | 
|---|
|  |  |  | @Async("orderThreadPool") | 
|---|
|  |  |  | public void completeAndReport(){ | 
|---|
|  |  |  | if(!ReviewOrderSwitch){ | 
|---|
|  |  |  | if(!SubmitOrderSwitch){ | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<Order> orders = orderService.selectComplete(); | 
|---|
|  |  |  | for (Order order : orders) { | 
|---|
|  |  |  | ReturnT<String> result = saveOrderSyncHandler.start(order); | 
|---|
|  |  |  | if (!result.isSuccess()) { | 
|---|
|  |  |  | log.error("单据[orderNo={}]保存至erp失败", order.getOrderNo()); | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | ReturnT<String> result = submitOrderSyncHandler.start(order); | 
|---|
|  |  |  | if (!result.isSuccess()) { | 
|---|
|  |  |  | log.error("单据[orderNo={}]保存至erp失败", order.getOrderNo()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (Exception e){ | 
|---|
|  |  |  | Order order1 = orderService.selectById(order.getId()); | 
|---|
|  |  |  | order1.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.updateById(order1); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONArray; | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONObject; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
|---|
|  |  |  | import com.core.common.Cools; | 
|---|
|  |  |  | import com.fasterxml.jackson.databind.JsonNode; | 
|---|
|  |  |  | import com.fasterxml.jackson.databind.ObjectMapper; | 
|---|
|  |  |  | import com.zy.asrs.entity.DocType; | 
|---|
|  |  |  | import com.zy.asrs.entity.Order; | 
|---|
|  |  |  | import com.zy.asrs.entity.OrderDetl; | 
|---|
|  |  |  | import com.zy.asrs.service.ApiLogService; | 
|---|
|  |  |  | import com.zy.asrs.service.DocTypeService; | 
|---|
|  |  |  | import com.zy.asrs.service.OrderDetlService; | 
|---|
|  |  |  | import com.zy.asrs.service.OrderService; | 
|---|
|  |  |  | import com.zy.asrs.task.AbstractHandler; | 
|---|
|  |  |  | import com.zy.asrs.task.core.ReturnT; | 
|---|
|  |  |  | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Set; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrderService orderService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrderDetlService orderDetlService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private ApiLogService apiLogService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (kingDeeUtilType.entryId>1){ | 
|---|
|  |  |  | Order order1 = orderService.selectById(order.getId()); | 
|---|
|  |  |  | order1.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.updateById(order1); | 
|---|
|  |  |  | return SUCCESS; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //条件拼接 | 
|---|
|  |  |  | log.info("条件拼接"); | 
|---|
|  |  |  | String entryIds = null; | 
|---|
|  |  |  | if (kingDeeUtilType.entryId==1){ | 
|---|
|  |  |  | List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); | 
|---|
|  |  |  | for (OrderDetl orderDetl:orderDetls){ | 
|---|
|  |  |  | if (Cools.isEmpty(entryIds)){ | 
|---|
|  |  |  | entryIds = orderDetl.getBeBatch().toString(); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | entryIds = entryIds+"," +orderDetl.getBeBatch(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | orderNoS = ""; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (Cools.isEmpty(entryIds)){ | 
|---|
|  |  |  | entryIds = ""; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject dataJsonObject = new JSONObject(); | 
|---|
|  |  |  | dataJsonObject.put("Numbers",orderNoS); | 
|---|
|  |  |  | dataJsonObject.put("EntryIds",""); | 
|---|
|  |  |  | dataJsonObject.put("EntryIds",entryIds); | 
|---|
|  |  |  | dataJsonObject.put("RuleId",kingDeeUtilType.ruleId); | 
|---|
|  |  |  | dataJsonObject.put("TargetFormId",kingDeeUtilType.correspondingFormId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | .setHttps(true) | 
|---|
|  |  |  | .build() | 
|---|
|  |  |  | .doPost(); | 
|---|
|  |  |  | JSONObject data = JSON.parseObject(response); | 
|---|
|  |  |  | //            JSONObject data = JSON.parseObject(response); | 
|---|
|  |  |  | log.info("下推response:"+response); | 
|---|
|  |  |  | Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess"); | 
|---|
|  |  |  | String bool=IsSuccess.toString(); | 
|---|
|  |  |  | //下推完成原订单4转6  6.上报完成 | 
|---|
|  |  |  | if(bool.equals("true")){ | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | order.setSettle(6L); | 
|---|
|  |  |  | String bool1=IsSuccess.toString(); | 
|---|
|  |  |  | if (bool1.equals("true")){ | 
|---|
|  |  |  | ObjectMapper objectMapper =  new ObjectMapper(); | 
|---|
|  |  |  | JsonNode rootNode = objectMapper.readTree(response); | 
|---|
|  |  |  | boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean(); | 
|---|
|  |  |  | log.info("下推bool:"+bool); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //下推完成原订单4转6  6.上报完成 | 
|---|
|  |  |  | if(bool){ | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | order.setSettle(6L); | 
|---|
|  |  |  | order.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | success = false; | 
|---|
|  |  |  | order.setSettle(7L); | 
|---|
|  |  |  | order.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONArray; | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONObject; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
|---|
|  |  |  | import com.fasterxml.jackson.databind.JsonNode; | 
|---|
|  |  |  | import com.fasterxml.jackson.databind.ObjectMapper; | 
|---|
|  |  |  | import com.zy.asrs.entity.DocType; | 
|---|
|  |  |  | import com.zy.asrs.entity.Order; | 
|---|
|  |  |  | import com.zy.asrs.service.ApiLogService; | 
|---|
|  |  |  | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | import java.util.Set; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | .doPost(); | 
|---|
|  |  |  | JSONObject data = JSON.parseObject(response); | 
|---|
|  |  |  | Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess"); | 
|---|
|  |  |  | String bool=IsSuccess.toString(); | 
|---|
|  |  |  | String bool1=IsSuccess.toString(); | 
|---|
|  |  |  | //审核完成原订单4转6  6.上报完成 | 
|---|
|  |  |  | if(bool.equals("true")){ | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | order.setSettle(6L); | 
|---|
|  |  |  | orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); | 
|---|
|  |  |  | if(bool1.equals("true")){ | 
|---|
|  |  |  | ObjectMapper objectMapper =  new ObjectMapper(); | 
|---|
|  |  |  | JsonNode rootNode = objectMapper.readTree(response); | 
|---|
|  |  |  | boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean(); | 
|---|
|  |  |  | log.info("审核bool:"+bool); | 
|---|
|  |  |  | //审核完成原订单4转6  6.上报完成 | 
|---|
|  |  |  | if(bool){ | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | order.setSettle(6L); | 
|---|
|  |  |  | order.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("fail", e); | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONArray; | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONObject; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
|---|
|  |  |  | import com.core.common.Cools; | 
|---|
|  |  |  | import com.core.common.DateUtils; | 
|---|
|  |  |  | import com.fasterxml.jackson.databind.JsonNode; | 
|---|
|  |  |  | import com.fasterxml.jackson.databind.ObjectMapper; | 
|---|
|  |  |  | import com.zy.asrs.entity.DocType; | 
|---|
|  |  |  | import com.zy.asrs.entity.Order; | 
|---|
|  |  |  | import com.zy.asrs.entity.OrderDetl; | 
|---|
|  |  |  | import com.zy.asrs.service.ApiLogService; | 
|---|
|  |  |  | import com.zy.asrs.service.DocTypeService; | 
|---|
|  |  |  | import com.zy.asrs.service.OrderDetlService; | 
|---|
|  |  |  | import com.zy.asrs.service.OrderService; | 
|---|
|  |  |  | import com.zy.asrs.task.AbstractHandler; | 
|---|
|  |  |  | import com.zy.asrs.task.core.ReturnT; | 
|---|
|  |  |  | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | import java.util.Set; | 
|---|
|  |  |  | import java.text.SimpleDateFormat; | 
|---|
|  |  |  | import java.util.*; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * Created by Monkey D. Luffy on 2023.10.21 | 
|---|
|  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private DocTypeService docTypeService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private OrderDetlService orderDetlService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private LoginAuthenticationHandler loginAuthenticationHandler; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | public ReturnT<String> start(Order order) { | 
|---|
|  |  |  | List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId()); | 
|---|
|  |  |  | if (Cools.isEmpty(orderDetls) || orderDetls.size()==0){ | 
|---|
|  |  |  | return SUCCESS; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //登录金蝶r | 
|---|
|  |  |  | ReturnT<String> start = loginAuthenticationHandler.start(); | 
|---|
|  |  |  | DocType docType = docTypeService.selectById(order.getDocType()); | 
|---|
|  |  |  | 
|---|
|  |  |  | return SUCCESS; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (kingDeeUtilType.entryId!=2){ | 
|---|
|  |  |  | return SUCCESS; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | Date now = new Date(); | 
|---|
|  |  |  | //条件拼接 | 
|---|
|  |  |  | JSONObject jsonObjectFBillTypeID = new JSONObject(); | 
|---|
|  |  |  | JSONObject jsonObjectFPickerId = new JSONObject(); | 
|---|
|  |  |  | if (kingDeeUtilType.pakIn==1){ | 
|---|
|  |  |  | jsonObjectFBillTypeID.put("FNUMBER","QTRKD01_SYS"); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | jsonObjectFBillTypeID.put("FNUMBER","QTCKD01_SYS"); | 
|---|
|  |  |  | jsonObjectFPickerId.put("FStaffNumber","X0103_GLGW074_1"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObjectFStockOrgId = new JSONObject(); | 
|---|
|  |  |  | jsonObjectFStockOrgId.put("FNUMBER","100"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObjectFOwnerIdHead = new JSONObject(); | 
|---|
|  |  |  | jsonObjectFOwnerIdHead.put("FNUMBER","100"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObjectFDEPTID = new JSONObject(); | 
|---|
|  |  |  | jsonObjectFDEPTID.put("FNUMBER","CX"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<JSONObject> jsonObjects = new ArrayList<>(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | for (OrderDetl orderDetl:orderDetls){ | 
|---|
|  |  |  | JSONObject jsonObjectFMATERIALID = new JSONObject(); | 
|---|
|  |  |  | jsonObjectFMATERIALID.put("FNUMBER",orderDetl.getMatnr()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObjectFSTOCKID = new JSONObject(); | 
|---|
|  |  |  | jsonObjectFSTOCKID.put("FNUMBER","CK001"); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObjectFLOT = new JSONObject(); | 
|---|
|  |  |  | jsonObjectFLOT.put("FNUMBER",orderDetl.getBatch()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 使用LinkedHashMap来保持插入顺序 | 
|---|
|  |  |  | Map<String, Object> orderedMap = new LinkedHashMap<>(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 按照期望的顺序添加键值对 | 
|---|
|  |  |  | orderedMap.put("FMATERIALID", jsonObjectFMATERIALID); | 
|---|
|  |  |  | orderedMap.put("FSTOCKID", jsonObjectFSTOCKID); | 
|---|
|  |  |  | orderedMap.put("FLOT", jsonObjectFLOT); | 
|---|
|  |  |  | orderedMap.put("FQty", orderDetl.getQty());                    // 将"FQty"放到最后 | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObjectEnd = new JSONObject(orderedMap); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | jsonObjects.add(jsonObjectEnd); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObject = new JSONObject(); | 
|---|
|  |  |  | jsonObject.put("Numbers",order.getOrderNo()); | 
|---|
|  |  |  | jsonObject.put("FBillTypeID",jsonObjectFBillTypeID); | 
|---|
|  |  |  | if (kingDeeUtilType.pakIn==0){ | 
|---|
|  |  |  | jsonObject.put("FPickerId",jsonObjectFPickerId); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | jsonObject.put("FDate",DateUtils.convert(now, DateUtils.yyyyMMdd_F)); | 
|---|
|  |  |  | jsonObject.put("FStockOrgId",jsonObjectFStockOrgId); | 
|---|
|  |  |  | jsonObject.put("FOwnerTypeIdHead","BD_OwnerOrg"); | 
|---|
|  |  |  | jsonObject.put("FOwnerIdHead",jsonObjectFOwnerIdHead); | 
|---|
|  |  |  | jsonObject.put("FDEPTID",jsonObjectFDEPTID); | 
|---|
|  |  |  | jsonObject.put("FEntity",jsonObjects); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObjectModel = new JSONObject(); | 
|---|
|  |  |  | jsonObjectModel.put("Model",jsonObject); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | JSONObject jsonObject1 = new JSONObject(); | 
|---|
|  |  |  | jsonObject1.put("data", jsonObject); | 
|---|
|  |  |  | jsonObject1.put("data", jsonObjectModel); | 
|---|
|  |  |  | jsonObject1.put("FormId",kingDeeUtilType.correspondingFormId); | 
|---|
|  |  |  | String add = jsonObject1.toJSONString(); | 
|---|
|  |  |  | //上报 | 
|---|
|  |  |  | 
|---|
|  |  |  | .setUri(URL) | 
|---|
|  |  |  | .setPath(outaddressSave) | 
|---|
|  |  |  | .setJson(add) | 
|---|
|  |  |  | .setHttps(true) | 
|---|
|  |  |  | .build() | 
|---|
|  |  |  | .doPost(); | 
|---|
|  |  |  | JSONObject data = JSON.parseObject(response); | 
|---|
|  |  |  | Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess"); | 
|---|
|  |  |  | String bool=IsSuccess.toString(); | 
|---|
|  |  |  | String bool1=IsSuccess.toString(); | 
|---|
|  |  |  | //保存完成原订单8转6 | 
|---|
|  |  |  | if(bool.equals("true")){ | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | order.setSettle(6L); | 
|---|
|  |  |  | if(bool1.equals("true")){ | 
|---|
|  |  |  | ObjectMapper objectMapper =  new ObjectMapper(); | 
|---|
|  |  |  | JsonNode rootNode = objectMapper.readTree(response); | 
|---|
|  |  |  | boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean(); | 
|---|
|  |  |  | log.info("审核bool:"+bool); | 
|---|
|  |  |  | //提交完成原订单4转6  6.上报完成 | 
|---|
|  |  |  | if(bool){ | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | order.setSettle(6L); | 
|---|
|  |  |  | order.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | success = false; | 
|---|
|  |  |  | order.setSettle(7L); | 
|---|
|  |  |  | order.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONArray; | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONObject; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
|---|
|  |  |  | import com.fasterxml.jackson.databind.JsonNode; | 
|---|
|  |  |  | import com.fasterxml.jackson.databind.ObjectMapper; | 
|---|
|  |  |  | import com.zy.asrs.entity.DocType; | 
|---|
|  |  |  | import com.zy.asrs.entity.Order; | 
|---|
|  |  |  | import com.zy.asrs.service.ApiLogService; | 
|---|
|  |  |  | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.HashMap; | 
|---|
|  |  |  | import java.util.Set; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | return SUCCESS; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | KingDeeUtilType kingDeeUtilType = KingDeeUtilType.get(docType.getDocName()); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (kingDeeUtilType.entryId!=2){ | 
|---|
|  |  |  | return SUCCESS; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //条件拼接 | 
|---|
|  |  |  | JSONObject jsonObject = new JSONObject(); | 
|---|
|  |  |  | jsonObject.put("Numbers",order.getOrderNo()); | 
|---|
|  |  |  | 
|---|
|  |  |  | .setJson(add) | 
|---|
|  |  |  | .build() | 
|---|
|  |  |  | .doPost(); | 
|---|
|  |  |  | JSONObject data = JSON.parseObject(response); | 
|---|
|  |  |  | //            JSONObject data = JSON.parseObject(response); | 
|---|
|  |  |  | Object IsSuccess = findValueByKey(JSON.parseObject(response), "IsSuccess"); | 
|---|
|  |  |  | String bool=IsSuccess.toString(); | 
|---|
|  |  |  | String bool1=IsSuccess.toString(); | 
|---|
|  |  |  | //提交完成原订单8转6 | 
|---|
|  |  |  | if(bool.equals("true")){ | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | order.setSettle(6L); | 
|---|
|  |  |  | orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); | 
|---|
|  |  |  | if(bool1.equals("true")){ | 
|---|
|  |  |  | ObjectMapper objectMapper =  new ObjectMapper(); | 
|---|
|  |  |  | JsonNode rootNode = objectMapper.readTree(response); | 
|---|
|  |  |  | boolean bool = rootNode.get("Result").get("ResponseStatus").get("IsSuccess").asBoolean(); | 
|---|
|  |  |  | log.info("审核bool:"+bool); | 
|---|
|  |  |  | //提交完成原订单4转6  6.上报完成 | 
|---|
|  |  |  | if(bool){ | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | order.setSettle(6L); | 
|---|
|  |  |  | order.setUpdateTime(new Date()); | 
|---|
|  |  |  | orderService.update(order,new EntityWrapper<Order>().eq("order_no",order.getOrderNo())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("fail", e); | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private int owner; | 
|---|
|  |  |  | private String ownerName; | 
|---|
|  |  |  | private int beBatch; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private int payment; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | this.batch=detlDto2.getBatch(); | 
|---|
|  |  |  | this.anfme=detlDto2.getAnfme(); | 
|---|
|  |  |  | this.ownerName=detlDto2.getOwner(); | 
|---|
|  |  |  | this.beBatch=detlDto2.getBeBatch(); | 
|---|
|  |  |  | this.payment=0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zy.erp.kingdee.entity.param; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Data | 
|---|
|  |  |  | public class SaceOrderOtherParam { | 
|---|
|  |  |  | //账号ID | 
|---|
|  |  |  | private String FMATERIALID; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //账号 | 
|---|
|  |  |  | private String FSTOCKID; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //密码 | 
|---|
|  |  |  | private String FLOT; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // | 
|---|
|  |  |  | private Integer FQty; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public enum KingDeeUtilType { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | SAL_DELIVERYNOTICE(1, "发货通知单-销售出库单","SAL_DELIVERYNOTICE","FQty","销售出库单","SAL_OUTSTOCK",0,"DeliveryNotice-Outstock"), | 
|---|
|  |  |  | SAL_DELIVERYNOTICE(1, "发货通知单-销售出库单","SAL_DELIVERYNOTICE","FQty","销售出库单","SAL_OUTSTOCK",0,"DeliveryNotice-Outstock",0), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //米多青岛 | 
|---|
|  |  |  | STK_OutStockApply30(2, "试用品发货通知单-其他出库单","","","其他出库单","STK_MisDelivery",0,""), | 
|---|
|  |  |  | STK_OutStockApply30(2, "试用品发货通知单-其他出库单","SAL_DELIVERYNOTICE","","其他出库单","STK_MisDelivery",0,"731ce15d-c58d-4c21-96f9-d121c0a7b255",0), | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | * 退货通知单至销售退货单单据唯一标识:一级:SalReturnNotice-SalReturnstock  二级:a0ab8e5c-5224-4ba2-b31f-b061e64aa1a2 | 
|---|
|  |  |  | * */ | 
|---|
|  |  |  | SAL_RETURNNOTICE(3, "退货通知单-销售退货单","SAL_RETURNNOTICE","","销售退货单","SAL_RETURNSTOCK",0,"SalReturnNotice-SalReturnstock"), | 
|---|
|  |  |  | SAL_RETURNNOTICE(3, "退货通知单-销售退货单","SAL_RETURNNOTICE","","销售退货单","SAL_RETURNSTOCK",0,"SalReturnNotice-SalReturnstock",0), | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | * 采购收料单至采购入库单唯一标识:一级:PUR_ReceiveBill-STK_InStock  二级:b60e30ca-634c-4f92-b874-db9837496705 | 
|---|
|  |  |  | * */ | 
|---|
|  |  |  | PUR_ReceiveBill(4, "收料通知单-采购入库单","PUR_ReceiveBill","","采购入库单","STK_InStock",1,"PUR_ReceiveBill-STK_InStock"), | 
|---|
|  |  |  | PUR_ReceiveBill(4, "收料通知单-采购入库单","PUR_ReceiveBill","","采购入库单","STK_InStock",1,"PUR_ReceiveBill-STK_InStock",0), | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | * 退料申请单至采购退料单单据唯一标识:PUR_MRAPP-PUR_MRB | 
|---|
|  |  |  | * */ | 
|---|
|  |  |  | PUR_MRAPP(5, "退料申请单-采购退料单","PUR_MRAPP","","采购退料单","PUR_MRB",1,"PUR_MRAPP-PUR_MRB"), | 
|---|
|  |  |  | PUR_MRAPP(5, "退料申请单-采购退料单","PUR_MRAPP","","采购退料单","PUR_MRB",1,"PUR_MRAPP-PUR_MRB",0), | 
|---|
|  |  |  | /* | 
|---|
|  |  |  | * 生产用料清单到生产领料单唯一标识:一级:PRD_PPBOM2PICKMTRL_NORMAL  二级:3539ff08-0c46-435d-a8cd-b6308b0b57b5 | 
|---|
|  |  |  | * */ | 
|---|
|  |  |  | PRD_PPBOM1(6, "生产用料清单-生产领料单","PRD_PPBOM","","生产领料单","PRD_PickMtrl",0,"PRD_PPBOM2PICKMTRL_NORMAL"), | 
|---|
|  |  |  | PRD_PPBOM1(6, "生产用料清单-生产领料单","PRD_PPBOM","","生产领料单","PRD_PickMtrl",0,"PRD_PPBOM2PICKMTRL_NORMAL",1), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | PRD_PPBOM2(7, "生产用料清单-生产补料单","PRD_PPBOM","","生产补料单","PRD_FeedMtrl",1,"PRD_PPBOM2FEEDMTRL"), | 
|---|
|  |  |  | PRD_PPBOM2(7, "生产用料清单-生产补料单","PRD_PPBOM","","生产补料单","PRD_FeedMtrl",1,"PRD_PPBOM2FEEDMTRL",1), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | PRD_PPBOM3(8, "生产用料清单-生产退料单","PRD_PPBOM","","生产退料单","PRD_ReturnMtrl",1,"PRD_PPBOM2RETURNMTRL"), | 
|---|
|  |  |  | PRD_PPBOM3(8, "生产用料清单-生产退料单","PRD_PPBOM","","生产退料单","PRD_ReturnMtrl",1,"PRD_PPBOM2RETURNMTRL",1), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | PRD_MO(9, "生产订单-生产入库单","PRD_MO","","生产入库单","PRD_INSTOCK",1,"PRD_MO2INSTOCK"), | 
|---|
|  |  |  | PRD_MO(9, "生产订单-生产入库单","PRD_MO","","生产入库单","PRD_INSTOCK",1,"PRD_MO2INSTOCK",0), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | PRD_MORPT(10, "生产汇报单-生产入库单","PRD_MORPT","","生产入库单","PRD_INSTOCK",1,"PRD_MORPT2INSTOCK"), | 
|---|
|  |  |  | PRD_MORPT(10, "生产汇报单-生产入库单","PRD_MORPT","","生产入库单","PRD_INSTOCK",1,"PRD_MORPT2INSTOCK",0), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | STK_TRANSFERAPPLY(11, "调拨申请单-直接调拨单","STK_TRANSFERAPPLY","","直接调拨单","STK_TransferDirect",0,"StkTransferApphy-StkTransferDirect"), | 
|---|
|  |  |  | STK_TRANSFERAPPLY1(11, "调拨申请单1-直接调拨单","STK_TRANSFERAPPLY","","直接调拨单","STK_TransferDirect",0,"StkTransferApphy-StkTransferDirect",1), | 
|---|
|  |  |  |  | 
|---|
|  |  |  | STK_OutStockApply337(12, "研发领料出库申请单-研发领料出库单","","","研发领料出库单","",0,""), | 
|---|
|  |  |  | STK_MisDelivery13(13, "组装拆卸单1","STK_ASSEMBLY","","","",0,""), | 
|---|
|  |  |  | STK_MisDelivery14(14, "组装拆卸单2","STK_ASSEMBLY","","","",0,""), | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | STK_OutStockApply337(12, "研发领料出库申请单-研发领料出库单","STK_OUTSTOCKAPPLY","","研发领料出库单","",0,"STK_OutstockApplyTosTK_MisDelivery",0), | 
|---|
|  |  |  | STK_ASSEMBLY1(13, "组装拆卸单1","STK_ASSEMBLY","","","",1,"",0), | 
|---|
|  |  |  | STK_ASSEMBLY2(14, "组装拆卸单2","STK_ASSEMBLY","","","",0,"",0), | 
|---|
|  |  |  | SAL_RETURNNOTICE1(15, "其它入库单","STK_MISCELLANEOUS","","其它入库单","STK_MISCELLANEOUS",1,"",2), | 
|---|
|  |  |  | SAL_DELIVERYNOTICE2(16, "其它出库单","STK_MisDelivery","","其他出库单","STK_MisDelivery",0,"",2), | 
|---|
|  |  |  | PRD_PPBOM(17, "生产用料清单-生产用料清单变更单","PRD_PPBOM","","生产领料单","PRD_PPBOMChange",1,"PRD_PPBOM2PPBOMCHANGE",10), | 
|---|
|  |  |  | STK_TRANSFERAPPLY2(18, "调拨申请单2-直接调拨单","STK_TRANSFERAPPLY","","直接调拨单","STK_TransferDirect",0,"StkTransferApphy-StkTransferDirect",1), | 
|---|
|  |  |  | STK_TRANSFERAPPLY3(19, "调拨申请单3-直接调拨单","STK_TRANSFERAPPLY","","直接调拨单","STK_TransferDirect",0,"StkTransferApphy-StkTransferDirect",1), | 
|---|
|  |  |  | ; | 
|---|
|  |  |  | public Integer id; | 
|---|
|  |  |  | public String desc;//类型名称 | 
|---|
|  |  |  | public String formId;//单据类型唯一编码 | 
|---|
|  |  |  | public Integer id;//唯一 | 
|---|
|  |  |  | public String desc;//类型名称  保持唯一 | 
|---|
|  |  |  | public String formId;//单据类型 | 
|---|
|  |  |  | public String anfme;//单据数量字段名 | 
|---|
|  |  |  | public String correspondingName;//目标单据数量字段 | 
|---|
|  |  |  | public String correspondingFormId;//目标formId  非默认下推时启用  默认下推时启用ruleId | 
|---|
|  |  |  | public Integer pakIn; //出入库标志 | 
|---|
|  |  |  | public String ruleId;//单据转换唯一标识 非默认下推时启用  默认下推时启用correspondingFormId | 
|---|
|  |  |  | public int entryId;//单据转换唯一标识 非默认下推时启用  默认下推时启用correspondingFormId | 
|---|
|  |  |  |  | 
|---|
|  |  |  | KingDeeUtilType(Integer id, String desc,String formId,String anfme,String correspondingName,String correspondingFormId,int pakIn,String ruleId){ | 
|---|
|  |  |  | KingDeeUtilType(Integer id, String desc,String formId,String anfme,String correspondingName,String correspondingFormId,int pakIn,String ruleId,int entryId){ | 
|---|
|  |  |  | this.id = id; | 
|---|
|  |  |  | this.desc = desc; | 
|---|
|  |  |  | this.formId = formId; | 
|---|
|  |  |  | 
|---|
|  |  |  | this.correspondingFormId = correspondingFormId; | 
|---|
|  |  |  | this.pakIn = pakIn;   //1入库  0出库 | 
|---|
|  |  |  | this.ruleId = ruleId; | 
|---|
|  |  |  | this.entryId = entryId; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static KingDeeUtilType get(Short id) { | 
|---|
|  |  |  | 
|---|
|  |  |  | url: jdbc:sqlserver://127.0.0.1:1433;databasename=mdqdasrs | 
|---|
|  |  |  | username: sa | 
|---|
|  |  |  | password: sa@123 | 
|---|
|  |  |  | #    url: jdbc:sqlserver://127.0.0.1:51433;databasename=mdqdasrs | 
|---|
|  |  |  | #    username: sa | 
|---|
|  |  |  | #    password: Zoneyung@zy56$ | 
|---|
|  |  |  | mvc: | 
|---|
|  |  |  | static-path-pattern: /** | 
|---|
|  |  |  | redis: | 
|---|
|  |  |  | 
|---|
|  |  |  | InboundOrderSwitch: false | 
|---|
|  |  |  | #登录接口开关 | 
|---|
|  |  |  | LoginAuthenticationSwitch: true | 
|---|
|  |  |  | #上报单据开关  米多无用 | 
|---|
|  |  |  | #审核单据开关 米多无用 | 
|---|
|  |  |  | ReviewOrderSwitch: false | 
|---|
|  |  |  | #保存单据开关 | 
|---|
|  |  |  | SaveOrderSwitch: true | 
|---|
|  |  |  | #提交单据开关 米多无用 | 
|---|
|  |  |  | SubmitOrderSwitch: false | 
|---|
|  |  |  | #下推单据开关 | 
|---|
|  |  |  | PushDowmOrderSwitch: true | 
|---|
|  |  |  | #  地址 | 
|---|
|  |  |  | 
|---|
|  |  |  | inaddress: K3CLOUD/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery.common.kdsvc | 
|---|
|  |  |  | #单据下推地址 | 
|---|
|  |  |  | pushDowmAudit: K3cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Push.common.kdsvc | 
|---|
|  |  |  | #结果上报(保存)单地址  米多无用 | 
|---|
|  |  |  | #结果上报(保存)单地址 | 
|---|
|  |  |  | outaddressSave: K3CLOUD/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc | 
|---|
|  |  |  | #结果上报(提交)单地址  米多无用 | 
|---|
|  |  |  | outaddressSubmit: K3Cloud/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc | 
|---|
|  |  |  | #结果上报(审核)单地址 | 
|---|
|  |  |  | #结果上报(审核)单地址 米多无用 | 
|---|
|  |  |  | outaddressAudit: K3CLOUD/Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc | 
|---|
|  |  |  | #  登录账号管理 | 
|---|
|  |  |  | login : | 
|---|
|  |  |  | 
|---|
|  |  |  | where 1=1 | 
|---|
|  |  |  | and settle = 4 | 
|---|
|  |  |  | and status = 1 | 
|---|
|  |  |  | order by create_time asc | 
|---|
|  |  |  | order by update_time asc | 
|---|
|  |  |  | </select> | 
|---|
|  |  |  | <select id="selectInOrOutOrders" resultMap="BaseResultMap"> | 
|---|
|  |  |  | SELECT * FROM man_order o left join man_doc_type d on o.doc_type = d.doc_id WHERE d.pakin = #{flag} and o.settle in (1,2) | 
|---|
|  |  |  | 
|---|
|  |  |  | {field: 'payment$', title: '货物特征', width: 160}, | 
|---|
|  |  |  | // {field: 'batch', title: '批号'}, | 
|---|
|  |  |  | {field: 'anfme', title: '数量'}, | 
|---|
|  |  |  | {field: 'batch', title: '批次'}, | 
|---|
|  |  |  | {field: 'workQty', title: '作业数量'}, | 
|---|
|  |  |  | {field: 'qty', title: '完成数量', style: 'font-weight: bold'}, | 
|---|
|  |  |  | // {field: 'unit', title: '单位'}, | 
|---|
|  |  |  | 
|---|
|  |  |  | layer.msg('数量不能小于已作业数量', {icon: 2}); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (nList[xi].batch === ""){ | 
|---|
|  |  |  | layer.msg('批次不能为空', {icon: 2}); | 
|---|
|  |  |  | return false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | for (let xi = 0; xi < nList.length; xi++) { | 
|---|
|  |  |  | if (nList[xi].owner <= 0){ | 
|---|
|  |  |  | 
|---|
|  |  |  | {field: 'specs', title: '规格'}, | 
|---|
|  |  |  | {field: 'weight', title: '重量', edit: true}, | 
|---|
|  |  |  | {field: 'anfme', title: '数量(修改)', style: 'color: blue;font-weight: bold', edit: true, minWidth: 110, width: 110}, | 
|---|
|  |  |  | {field: 'batch', title: '批次(修改)', style: 'color: blue;font-weight: bold', edit: true, minWidth: 110, width: 110}, | 
|---|
|  |  |  | {field: 'owner', title: '货主编号', style: 'color: blue;font-weight: bold', edit: true, minWidth: 110, width: 110}, | 
|---|
|  |  |  | {field: 'payment', title: '货物状态', style: 'color: blue;font-weight: bold', templet: '#payment'}, | 
|---|
|  |  |  | // {field: 'payment', title: '货物状态',align: 'center', templet: '#payment'}, | 
|---|