Commit f224e4117fa356da9460fba0c81d6009e4bc2021

Authored by 肖超群
1 parent 6579fe3c

1. 开发WMS-WIS入库任务下发

huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wms/controller/WisController.java 0 → 100644
  1 +package org.jeecg.modules.wms.api.wms.controller;
  2 +
  3 +import javax.annotation.Resource;
  4 +
  5 +import org.jeecg.common.api.vo.Result;
  6 +import org.jeecg.common.aspect.annotation.AutoLog;
  7 +import org.jeecg.modules.wms.api.wms.entity.WmsEntity;
  8 +import org.jeecg.modules.wms.api.wms.service.WmsService;
  9 +import org.jeecg.modules.wms.framework.controller.HuahengBaseController;
  10 +import org.jeecg.utils.support.ApiLogger;
  11 +import org.springframework.web.bind.annotation.*;
  12 +
  13 +import io.swagger.annotations.Api;
  14 +import io.swagger.annotations.ApiOperation;
  15 +
  16 +/**
  17 + * @author 游杰
  18 + */
  19 +@RestController
  20 +@RequestMapping("/api/wms")
  21 +@Api(tags = "WMS接口")
  22 +public class WisController extends HuahengBaseController {
  23 +
  24 + @Resource
  25 + private WmsService wmsService;
  26 +
  27 + @AutoLog(value = "下发WMS任务")
  28 + @PostMapping("/sendWmsTask")
  29 + @ResponseBody
  30 + @ApiOperation("下发WMS任务")
  31 + @ApiLogger(apiName = "下发WMS任务", from = "WMS")
  32 + public Result sendWmsTask(@RequestBody WmsEntity wmsEntity) {
  33 + Result result = handleMultiProcess("sendWmsTask", new MultiProcessListener() {
  34 + @Override
  35 + public Result<?> doProcess() {
  36 + Result result = wmsService.sendWmsTask(wmsEntity);
  37 + return result;
  38 + }
  39 + });
  40 + return result;
  41 + }
  42 +}
... ...
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wms/entity/WmsEntity.java 0 → 100644
  1 +package org.jeecg.modules.wms.api.wms.entity;
  2 +
  3 +import java.util.List;
  4 +
  5 +import lombok.Data;
  6 +
  7 +@Data
  8 +public class WmsEntity {
  9 +
  10 + private String taskNo;
  11 + private int taskType;
  12 + private String containerCode;
  13 + private String remark;
  14 + private String warehouseCode;
  15 + private String toPort;
  16 + private List<WmsInventory> wmsInventoryList;
  17 +
  18 +}
... ...
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wms/entity/WmsInventory.java 0 → 100644
  1 +package org.jeecg.modules.wms.api.wms.entity;
  2 +
  3 +import java.math.BigDecimal;
  4 +
  5 +import lombok.Data;
  6 +
  7 +@Data
  8 +public class WmsInventory {
  9 +
  10 + private String materialCode;
  11 + private String batch;
  12 + private BigDecimal qty;
  13 + private String inventoryStatus;
  14 +
  15 +}
... ...
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wms/service/WmsService.java 0 → 100644
  1 +package org.jeecg.modules.wms.api.wms.service;
  2 +
  3 +import org.jeecg.common.api.vo.Result;
  4 +import org.jeecg.modules.wms.api.wms.entity.WmsEntity;
  5 +
  6 +/**
  7 + * @author 游杰
  8 + */
  9 +public interface WmsService {
  10 +
  11 + /**
  12 + * 取消WCS任务
  13 + */
  14 + Result sendWmsTask(WmsEntity wmsEntity);
  15 +
  16 + Result createReceiptTask(WmsEntity wmsEntity);
  17 +
  18 + Result createShipmentTask(WmsEntity wmsEntity);
  19 +}
... ...
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wms/service/WmsServiceImpl.java 0 → 100644
  1 +package org.jeecg.modules.wms.api.wms.service;
  2 +
  3 +import java.util.ArrayList;
  4 +import java.util.List;
  5 +
  6 +import javax.annotation.Resource;
  7 +
  8 +import org.jeecg.common.api.vo.Result;
  9 +import org.jeecg.common.exception.JeecgBootException;
  10 +import org.jeecg.modules.wms.api.erp.entity.*;
  11 +import org.jeecg.modules.wms.api.erp.service.IErpService;
  12 +import org.jeecg.modules.wms.api.wms.entity.WmsEntity;
  13 +import org.jeecg.modules.wms.api.wms.entity.WmsInventory;
  14 +import org.jeecg.modules.wms.framework.service.IHuahengMultiHandlerService;
  15 +import org.jeecg.modules.wms.receipt.receiptContainerHeader.entity.ReceiptContainerHeader;
  16 +import org.jeecg.modules.wms.receipt.receiptContainerHeader.service.IReceiptContainerHeaderService;
  17 +import org.jeecg.modules.wms.receipt.receiptHeader.entity.ReceiptDetail;
  18 +import org.jeecg.modules.wms.receipt.receiptHeader.entity.ReceiptHeader;
  19 +import org.jeecg.modules.wms.receipt.receiptHeader.service.IReceiptDetailService;
  20 +import org.jeecg.modules.wms.receipt.receiptHeader.service.IReceiptHeaderService;
  21 +import org.jeecg.modules.wms.receipt.receiving.domain.Receive;
  22 +import org.jeecg.modules.wms.receipt.receiving.service.IReceiveService;
  23 +import org.jeecg.modules.wms.shipment.shipmentCombination.service.IShipmentCombinationService;
  24 +import org.jeecg.modules.wms.shipment.shipmentHeader.entity.ShipmentDetail;
  25 +import org.jeecg.modules.wms.shipment.shipmentHeader.entity.ShipmentHeader;
  26 +import org.jeecg.modules.wms.shipment.shipmentHeader.service.IShipmentDetailService;
  27 +import org.jeecg.modules.wms.shipment.shipmentHeader.service.IShipmentHeaderService;
  28 +import org.jeecg.modules.wms.task.taskHeader.service.ITaskHeaderService;
  29 +import org.jeecg.utils.StringUtils;
  30 +import org.jeecg.utils.constant.QuantityConstant;
  31 +import org.springframework.stereotype.Service;
  32 +import org.springframework.transaction.annotation.Transactional;
  33 +
  34 +import lombok.extern.slf4j.Slf4j;
  35 +
  36 +/**
  37 + * @author 游杰
  38 + */
  39 +@Slf4j
  40 +@Service
  41 +public class WmsServiceImpl implements WmsService {
  42 +
  43 + @Resource
  44 + private ITaskHeaderService taskHeaderService;
  45 + @Resource
  46 + private IReceiptContainerHeaderService receiptContainerHeaderService;
  47 + @Resource
  48 + private WmsService wmsService;
  49 + @Resource
  50 + private IErpService erpService;
  51 + @Resource
  52 + private IReceiveService receiveService;
  53 + @Resource
  54 + private IReceiptHeaderService receiptHeaderService;
  55 + @Resource
  56 + private IReceiptDetailService receiptDetailService;
  57 + @Resource
  58 + private IHuahengMultiHandlerService huahengMultiHandlerService;
  59 + @Resource
  60 + private IShipmentHeaderService shipmentHeaderService;
  61 + @Resource
  62 + private IShipmentDetailService shipmentDetailService;
  63 + @Resource
  64 + private IShipmentCombinationService shipmentCombinationService;
  65 +
  66 + @Override
  67 + @Transactional(rollbackFor = Exception.class)
  68 + public Result sendWmsTask(WmsEntity wmsEntity) {
  69 + int taskType = wmsEntity.getTaskType();
  70 + Result result = null;
  71 + switch (taskType) {
  72 + case QuantityConstant.TASK_TYPE_WHOLERECEIPT:
  73 + case QuantityConstant.TASK_TYPE_SUPPLEMENTRECEIPT:
  74 + result = wmsService.createReceiptTask(wmsEntity);
  75 + break;
  76 + case QuantityConstant.TASK_TYPE_WHOLESHIPMENT:
  77 + case QuantityConstant.TASK_TYPE_SORTINGSHIPMENT:
  78 + break;
  79 +
  80 + }
  81 + return result;
  82 + }
  83 +
  84 + @Override
  85 + @Transactional(rollbackFor = Exception.class)
  86 + public Result createReceiptTask(WmsEntity wmsEntity) {
  87 + String warehouseCode = wmsEntity.getWarehouseCode();
  88 + String remark = wmsEntity.getRemark();
  89 + String toPort = wmsEntity.getToPort();
  90 + String containerCode = wmsEntity.getContainerCode();
  91 + String referCode = wmsEntity.getTaskNo();
  92 + List<WmsInventory> wmsInventoryList = wmsEntity.getWmsInventoryList();
  93 + List<Receive> receiveList = new ArrayList<>();
  94 + if (wmsInventoryList == null) {
  95 + return Result.error("WMS下发入库任务失败,库存为空");
  96 + }
  97 + ErpReceipt erpReceipt = new ErpReceipt();
  98 + ErpReceiptHeader erpReceiptHeader = new ErpReceiptHeader();
  99 + List<ErpReceiptDetail> erpReceiptDetailList = new ArrayList<>();
  100 + erpReceiptHeader.setCompanyCode(QuantityConstant.DEFAULT_COMPANY);
  101 + erpReceiptHeader.setReceiptType(QuantityConstant.RECEIPT_BILL_TYPE_YCLR);
  102 + erpReceiptHeader.setReferCode(referCode);
  103 + erpReceiptHeader.setWarehouseCode(warehouseCode);
  104 + erpReceiptHeader.setRemark(remark);
  105 + for (WmsInventory wmsInventory : wmsInventoryList) {
  106 + ErpReceiptDetail erpReceiptDetail = new ErpReceiptDetail();
  107 + erpReceiptDetail.setMaterialCode(wmsInventory.getMaterialCode());
  108 + erpReceiptDetail.setBatch(wmsInventory.getBatch());
  109 + erpReceiptDetail.setInventoryStatus(wmsInventory.getInventoryStatus());
  110 + erpReceiptDetail.setQty(wmsInventory.getQty());
  111 + erpReceiptDetailList.add(erpReceiptDetail);
  112 + }
  113 + erpReceipt.setReceiptHeader(erpReceiptHeader);
  114 + erpReceipt.setReceiptDetailList(erpReceiptDetailList);
  115 + Result result = erpService.receipt(erpReceipt);
  116 + ReceiptHeader receiptHeader = receiptHeaderService.getReceiptHeaderByReferCode(referCode, warehouseCode);
  117 + if (receiptHeader == null) {
  118 + return Result.error("WMS下发入库任务失败,没有找到匹配的入库单, 上游单号:" + referCode);
  119 + }
  120 + List<ReceiptDetail> receiptDetailList = receiptDetailService.selectByMainId(String.valueOf(receiptHeader.getId()));
  121 + if (receiptDetailList == null || receiptDetailList.size() == 0) {
  122 + return Result.error("WMS下发入库任务失败,没有找到匹配的入库单详情, 上游单号:" + referCode);
  123 + }
  124 + for (ReceiptDetail receiptDetail : receiptDetailList) {
  125 + Receive receive = new Receive();
  126 + receive.setId(receiptDetail.getId());
  127 + receive.setContainerCode(containerCode);
  128 + receive.setMaterialCode(receiptDetail.getMaterialCode());
  129 + receive.setMaterialName(receiptDetail.getMaterialName());
  130 + receive.setMaterialSpec(receiptDetail.getMaterialSpec());
  131 + receive.setMaterialUnit(receiptDetail.getMaterialUnit());
  132 + receive.setInventoryStatus(receiptDetail.getInventoryStatus());
  133 + receive.setQty(receiptDetail.getQty());
  134 + receive.setTaskQty(receiptDetail.getQty());
  135 + receiveList.add(receive);
  136 + }
  137 + result = receiveService.receiving(receiveList, warehouseCode);
  138 + if (!result.isSuccess()) {
  139 + throw new JeecgBootException(result.getMessage());
  140 + }
  141 + ReceiptContainerHeader receiptContainerHeader = receiptContainerHeaderService.getUnCompleteReceiptContainerByCode(containerCode, warehouseCode);
  142 + if (receiptContainerHeader == null) {
  143 + throw new JeecgBootException("WMS下发入库任务失败");
  144 + }
  145 + receiptContainerHeader.setToPort(toPort);
  146 + boolean success = receiptContainerHeaderService.updateById(receiptContainerHeader);
  147 + if (!success) {
  148 + throw new JeecgBootException("MES下发入库信息,更新入库组盘头失败");
  149 + }
  150 + return huahengMultiHandlerService.createReceiptTask(receiptContainerHeader, warehouseCode);
  151 + }
  152 +
  153 + @Override
  154 + @Transactional(rollbackFor = Exception.class)
  155 + public Result createShipmentTask(WmsEntity wmsEntity) {
  156 + String warehouseCode = wmsEntity.getWarehouseCode();
  157 + String remark = wmsEntity.getRemark();
  158 + String toPort = wmsEntity.getToPort();
  159 + String referCode = wmsEntity.getTaskNo();
  160 + List<WmsInventory> wmsInventoryList = wmsEntity.getWmsInventoryList();
  161 + if (wmsInventoryList == null) {
  162 + return Result.error("WMS下发出库任务失败,库存为空");
  163 + }
  164 + ShipmentHeader shipmentHeader = shipmentHeaderService.getShipmentHeaderByReferCode(referCode, warehouseCode);
  165 + if (shipmentHeader == null) {
  166 + return Result.error("MES下发出库信息,没有找到匹配的出库单, 上游单号:" + referCode);
  167 + }
  168 + String shipmentCode = shipmentHeader.getCode();
  169 + if (StringUtils.isEmpty(shipmentCode)) {
  170 + return Result.error("MES下发出库信息,出库单号为空");
  171 + }
  172 + List<ShipmentDetail> shipmentDetailList = shipmentDetailService.selectByMainId(String.valueOf(shipmentHeader.getId()));
  173 + if (shipmentDetailList == null || shipmentDetailList.size() == 0) {
  174 + return Result.error("MES下发出库信息,没有找到匹配的出库单详情, 上游单号:" + referCode);
  175 + }
  176 +
  177 + ErpShipment erpShipment = new ErpShipment();
  178 + ErpShipmentHeader erpShipmentHeader = new ErpShipmentHeader();
  179 + List<ErpShipmentDetail> erpShipmentDetailList = new ArrayList<>();
  180 + erpShipmentHeader.setShipmentType(QuantityConstant.SHIPMENT_BILL_TYPE_SCC);
  181 + erpShipmentHeader.setCompanyCode(QuantityConstant.DEFAULT_COMPANY);
  182 + erpShipmentHeader.setReferCode(referCode);
  183 + erpShipmentHeader.setRemark(remark);
  184 + erpShipmentHeader.setWarehouseCode(warehouseCode);
  185 + for (ShipmentDetail shipmentDetail : shipmentDetailList) {
  186 + ErpShipmentDetail erpShipmentDetail = new ErpShipmentDetail();
  187 + erpShipmentDetail.setMaterialCode(shipmentDetail.getMaterialCode());
  188 + erpShipmentDetail.setBatch(shipmentDetail.getBatch());
  189 + }
  190 + Result result = shipmentCombinationService.autoCombination(shipmentCode, warehouseCode);
  191 + if (!result.isSuccess()) {
  192 + throw new JeecgBootException("MES下发出库信息," + result.getMessage());
  193 + }
  194 + return null;
  195 + }
  196 +
  197 +}
... ...
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
... ... @@ -1705,7 +1705,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
1705 1705 ReceiptHeader receiptHeader = new ReceiptHeader();
1706 1706 receiptHeader.setWarehouseCode(taskHeader.getWarehouseCode());
1707 1707 receiptHeader.setCompanyCode(taskHeader.getCompanyCode());
1708   - receiptHeader.setType(QuantityConstant.RECEIPT_BILL_TYPE_OR);
  1708 + receiptHeader.setType(QuantityConstant.RECEIPT_BILL_TYPE_QTR);
1709 1709 receiptHeader.setRemark("盘盈 单号" + cycleCountDetail.getCycleCountHeadCode());
1710 1710 Result result = receiptHeaderService.saveReceiptHeader(receiptHeader);
1711 1711 if (result.getCode() != 200) {
... ... @@ -1768,7 +1768,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl&lt;TaskHeaderMapper, TaskHea
1768 1768 ShipmentHeader shipmentHeader = new ShipmentHeader();
1769 1769 shipmentHeader.setWarehouseCode(taskHeader.getWarehouseCode());
1770 1770 shipmentHeader.setCompanyCode(taskHeader.getCompanyCode());
1771   - shipmentHeader.setType(QuantityConstant.SHIPMENT_BILL_TYPE_OS);
  1771 + shipmentHeader.setType(QuantityConstant.SHIPMENT_BILL_TYPE_QTC);
1772 1772 shipmentHeader.setRemark("盘亏 单号" + cycleCountDetail.getCycleCountHeadCode());
1773 1773 Result result = shipmentHeaderService.saveShipmentHeader(shipmentHeader);
1774 1774 if (result.getCode() != 200) {
... ...
huaheng-wms-core/src/main/java/org/jeecg/utils/constant/QuantityConstant.java
... ... @@ -20,9 +20,9 @@ package org.jeecg.utils.constant;
20 20 * @author ricard
21 21 */
22 22 public class QuantityConstant {
23   -
  23 +
24 24 // 1、入库单状态
25   -
  25 +
26 26 // 新建
27 27 public static final Integer RECEIPT_HEADER_BUILD = 0;
28 28  
... ... @@ -374,7 +374,7 @@ public class QuantityConstant {
374 374  
375 375 // WCS库位信息查询
376 376 public static final String ADDRESS_WCS_LOCATION_INFO = "WCS_LOCATION_INFO";
377   -
  377 +
378 378 public static final String ADDRESS_WCS_TAKS_INFOS = "WCS_TASK_INFOS";
379 379 // WCS任务下发
380 380 public static final String ADDRESS_WCS_TASK_ASSIGN = "WCS_TASK_ASSIGN";
... ... @@ -434,10 +434,10 @@ public class QuantityConstant {
434 434 public static final int STATION_PICK_AND_OUT = 4;
435 435  
436 436 public static final String EMPTY_STRING = "";
437   -
  437 +
438 438 public static final String STATUS_CONTAINER_EMPTY = "empty";
439 439 public static final String STATUS_CONTAINER_LOCK = "lock";
440   -
  440 +
441 441 public static final String STATUS_CONTAINER_FILL_EMPTY = "empty";
442 442 public static final String STATUS_CONTAINER_FILL_SOME = "some";
443 443 public static final String STATUS_CONTAINER_FILL_FULL = "full";
... ... @@ -509,17 +509,8 @@ public class QuantityConstant {
509 509 // 任务有异常,已经处理了异常。
510 510 public static final int EXCEPTION_TASK_HANDLE = 2;
511 511  
512   - public static final String RECEIPT_TYPE_PRODUCTON = "SC"; // 生产入库单
513   - public static final String RECEIPT_TYPE_DIRECT_TRANSGER = "JS"; // 直接调拨单
514   - public static final String RECEIPT_TYPE_SALE = "SP"; // 销售出库单
515   - public static final String RECEIPT_TYPE_RETURN_GOOD = "SR"; // 退货出库单
516   - public static final String RECEIPT_TYPE_HP = "HP"; // 合盘出库单
517   - public static final String SHIPMENT_TYPE_DELIVERY = "DN"; // 发货通知单
518   - public static final String SHIPMENT_TYPE_BH = "BH"; // 补货通知单
519   - public static final String SHIPMENT_TYPE_OTHER = "QTCKD01_SYS"; // 补货通知单
520   -
521 512 public static final String DEFAULT_WAREHOUSE = "CS0001";
522   - public static final String DEFAULT_COMPANY = "JY";
  513 + public static final String DEFAULT_COMPANY = "CSHH";
523 514 public static final char DOT = '.';
524 515 public static final String _CH_ = "_CH_";
525 516 public static final String _PKMX_ = "_PKMX_";
... ... @@ -531,10 +522,20 @@ public class QuantityConstant {
531 522 public static final String BILL_TYPE_SHIPMENT_OTHER = "SO";
532 523  
533 524 /* 入库单据类型 */
534   - public static final String RECEIPT_BILL_TYPE_OR = "QTR";// 其他入库单
  525 + public static final String RECEIPT_BILL_TYPE_SCR = "SCR"; // 生产入库单
  526 + public static final String RECEIPT_BILL_TYPE_DBR = "DBR"; // 调拨入库单
  527 + public static final String RECEIPT_BILL_TYPE_CPR = "CPR"; // 成品入库单
  528 + public static final String RECEIPT_BILL_TYPE_BCPR = "BCPR"; // 半成品入库单
  529 + public static final String RECEIPT_BILL_TYPE_YCLR = "YCLR"; // 原材料入库单
  530 + public static final String RECEIPT_BILL_TYPE_QTR = "QTR"; // 其他入库单
535 531  
536 532 /* 出库单据类型 */
537   - public static final String SHIPMENT_BILL_TYPE_OS = "QTC";// 其他出库单
  533 + public static final String SHIPMENT_BILL_TYPE_SCC = "SCC";// 生产出库单
  534 + public static final String SHIPMENT_BILL_TYPE_DBC = "DBC";// 调拨出库单
  535 + public static final String SHIPMENT_BILL_TYPE_CPC = "CPC";// 成品出库单
  536 + public static final String SHIPMENT_BILL_TYPE_BCPC = "BCPC";// 半成品出库单
  537 + public static final String SHIPMENT_BILL_TYPE_YCLC = "YCLC";// 原材料出库单
  538 + public static final String SHIPMENT_BILL_TYPE_QTC = "QTC";// 其它出库单
538 539  
539 540 /* 盘点单据类型 */
540 541 public static final String SHIPMENT_BILL_TYPE_PD = "PD";// 盘点单
... ... @@ -551,51 +552,6 @@ public class QuantityConstant {
551 552  
552 553 public static final int HTTP_OK = 200;
553 554  
554   - public static final String EER_TABLE_OTHERSHIPMENT = "STK_MisDelivery";
555   - /* 直接调拨单回传 */
556   - public static final String SAL_DELIVERYNOTICE = "SAL_DELIVERYNOTICE";
557   - public static final String DoNothing_PushTransferRin = "DoNothing_PushTransferRin";
558   -
559   - /* 销售退货单回传 */
560   - public static final String SAL_RETURNNOTICE = "SAL_RETURNNOTICE";
561   - public static final String DoNothingPushOut = "DoNothingPushOut";
562   -
563   - /* 生产入库单回传 */
564   - public static final String SP_InStock = "SP_InStock";
565   - /* 其他入库单回传 */
566   - public static final String STK_MISCELLANEOUS = "STK_MISCELLANEOUS";
567   - /* 默认立库 (PRO) */
568   - public static final String DEFAULT_STOCK = "CK003";
569   - /* 默认 仓位 (PRO) */
570   - public static final String DEFAULT_STOCKLOC = "1101T";
571   - /* 默认 仓位内码 (PRO) */
572   - public static final String DEFAULT_STOCKLOCID = "100003";
573   - /* 默认本位币 (PRO) */
574   - public static final String DEFAULT_BASECURRID = "PRE001";
575   - /* 默认 库存方向 */
576   - public static final String DEFAULT_STOCKDIRECT = "GENERAL";
577   - /* 默认 仓管员 */
578   - public static final String DEFAULT_STOCKER = "102.YG2021054";
579   - /* 默认货主类型 (PRO) */
580   - public static final String DEFAULT_OWNERTYPE = "BD_OwnerOrg";
581   - /* 默认库存状态 可用 */
582   - public static final String DEFAULT_STOCKSTATUS = "KCZT01_SYS";
583   - /* 默认库存状态 报废 */
584   - public static final String STOCKSTATUS_BF = "KCZT07_SYS";
585   - /* 默认 保管者类型 */
586   - public static final String DEFAULT_KEEPER = "BD_KeeperOrg";
587   - /* 默认 生产车间 */
588   - public static final String DEFAULT_WORKSHOP = "BM000346";
589   - /* 默认 物料辅助属性 */
590   - public static final String MATERIAL_COLOUR = "colour";
591   - public static final String MATERIAL_LEVEL = "level";
592   -
593   - public static String ryTask_warehouse_code = "CS0001";
594   -
595   - public static final int STACK_HUI_ZI = 1; // 回字型
596   - public static final int STACK_GONG_ZI = 2; // 工子型
597   - public static final int STACK_PING_FANG = 3; // 平放托
598   -// public static final String URL = "http://erptest.gani.com.cn/K3Cloud/";
599 555 public static final String URL = "http://erptest.gani.com.cn/K3Cloud/";
600 556  
601 557 // pro
... ...