diff --git a/src/main/java/com/huaheng/api/wcs/service/stationInfo/StationInfoServiceImpl.java b/src/main/java/com/huaheng/api/wcs/service/stationInfo/StationInfoServiceImpl.java index 9b645f5..3dc4eb7 100644 --- a/src/main/java/com/huaheng/api/wcs/service/stationInfo/StationInfoServiceImpl.java +++ b/src/main/java/com/huaheng/api/wcs/service/stationInfo/StationInfoServiceImpl.java @@ -3,6 +3,7 @@ package com.huaheng.api.wcs.service.stationInfo; import com.alibaba.fastjson.JSON; import com.huaheng.api.wcs.domain.WcsTask; +import com.huaheng.common.constant.QuantityConstant; import com.huaheng.common.exception.service.ServiceException; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.http.HttpUtils; @@ -45,8 +46,7 @@ public class StationInfoServiceImpl implements StationInfoService { map.put("port",list); //3、发送数据 - String param="wcs"; - String url=addressService.selectAddress(param)+"StationInfo"; + String url=addressService.selectAddress(QuantityConstant.ADDRESS_WCS_STATION_INFOS); String JsonParam = JSON.toJSONString(map); String result = HttpUtils.bodypost(url, JsonParam); if(StringUtils.isEmpty(result)){ diff --git a/src/main/java/com/huaheng/api/wcs/service/taskAssignService/TaskAssignServiceImpl.java b/src/main/java/com/huaheng/api/wcs/service/taskAssignService/TaskAssignServiceImpl.java index 193cf71..4126e25 100644 --- a/src/main/java/com/huaheng/api/wcs/service/taskAssignService/TaskAssignServiceImpl.java +++ b/src/main/java/com/huaheng/api/wcs/service/taskAssignService/TaskAssignServiceImpl.java @@ -110,7 +110,7 @@ public class TaskAssignServiceImpl implements TaskAssignService { wcsTask.setWarehouseCode(ShiroUtils.getWarehouseCode()); wcsTask.setTaskType(taskType); wcsTask.setFromPort(""); - wcsTask.setToPort(taskHeader.getStationCode()); + wcsTask.setToPort(taskHeader.getPort()); wcsTask.setContainerCode(taskHeader.getContainerCode()); Location location; switch(wcsTask.getTaskType().intValue()) { @@ -264,8 +264,7 @@ public class TaskAssignServiceImpl implements TaskAssignService { wcsTask.setTaskDetails(taskDetails); //4、发送数据 - String param = "wcs"; - String url = addressService.selectAddress(param)+"TaskAssign"; + String url = addressService.selectAddress(QuantityConstant.ADDRESS_WCS_TASK_ASSIGN); wcsTask = switchTaskTypeToWcs(wcsTask); String JsonParam = JSON.toJSONString(wcsTask); System.out.println(JsonParam); diff --git a/src/main/java/com/huaheng/api/wcs/service/taskCancel/TaskCancelServiceImpl.java b/src/main/java/com/huaheng/api/wcs/service/taskCancel/TaskCancelServiceImpl.java index 87755be..7f054a0 100644 --- a/src/main/java/com/huaheng/api/wcs/service/taskCancel/TaskCancelServiceImpl.java +++ b/src/main/java/com/huaheng/api/wcs/service/taskCancel/TaskCancelServiceImpl.java @@ -2,6 +2,7 @@ package com.huaheng.api.wcs.service.taskCancel; import com.alibaba.fastjson.JSON; import com.huaheng.api.wcs.domain.WcsTask; +import com.huaheng.common.constant.QuantityConstant; import com.huaheng.common.exception.service.ServiceException; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.http.HttpUtils; @@ -35,14 +36,13 @@ public class TaskCancelServiceImpl implements TaskCancelService { //2、转换实体 -// WcsTask wcsTask = new WcsTask(); -// wcsTask.setTaskNo(id.toString()); + WcsTask wcsTask = new WcsTask(); + wcsTask.setTaskNo(id.toString()); //3、发送数据 - String param="wcs"; - String url=addressService.selectAddress(param)+"TaskCancel"; - String JsonParam = JSON.toJSONString(id.toString()); - String result = HttpUtils.bodypost(url, JsonParam); + String url = addressService.selectAddress(QuantityConstant.ADDRESS_WCS_TASK_CANCEL); + String jsonParam = JSON.toJSONString(wcsTask); + String result = HttpUtils.bodypost(url, jsonParam); if(StringUtils.isEmpty(result)){ throw new ServiceException("接口地址错误"); } diff --git a/src/main/java/com/huaheng/api/wcs/service/taskFinish/TaskFinishServiceImpl.java b/src/main/java/com/huaheng/api/wcs/service/taskFinish/TaskFinishServiceImpl.java index d67e56b..7efddc3 100644 --- a/src/main/java/com/huaheng/api/wcs/service/taskFinish/TaskFinishServiceImpl.java +++ b/src/main/java/com/huaheng/api/wcs/service/taskFinish/TaskFinishServiceImpl.java @@ -46,12 +46,14 @@ public class TaskFinishServiceImpl implements TaskFinishService { } - if (StringUtils.isEmpty(taskFinishDomain.getWeight())) { - return AjaxResult.error("重量为空"); + + String[] weight = new String[1]; + if (StringUtils.isNotEmpty(taskFinishDomain.getWeight())) { + weight = Convert.toStrArray(taskFinishDomain.getWeight()); } //任务完成 try{ - ajaxResult=taskHeaderService.completeTaskByWMS(Convert.toIntArray(taskFinishDomain.getTaskNo()), Convert.toStrArray(taskFinishDomain.getWeight())); + ajaxResult=taskHeaderService.completeTaskByWMS(Convert.toIntArray(taskFinishDomain.getTaskNo()), weight); } catch (Exception e) { e.printStackTrace(); } diff --git a/src/main/java/com/huaheng/api/wcs/service/taskInfo/TaskInfoServiceImpl.java b/src/main/java/com/huaheng/api/wcs/service/taskInfo/TaskInfoServiceImpl.java index 16977bc..cfdef9e 100644 --- a/src/main/java/com/huaheng/api/wcs/service/taskInfo/TaskInfoServiceImpl.java +++ b/src/main/java/com/huaheng/api/wcs/service/taskInfo/TaskInfoServiceImpl.java @@ -2,6 +2,7 @@ package com.huaheng.api.wcs.service.taskInfo; import com.alibaba.fastjson.JSON; import com.huaheng.api.wcs.domain.WcsTask; +import com.huaheng.common.constant.QuantityConstant; import com.huaheng.common.exception.service.ServiceException; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.http.HttpUtils; @@ -39,8 +40,7 @@ public class TaskInfoServiceImpl implements TaskInfoService { wcsTask.setTaskNo(id.toString()); //3、发送数据 - String param="wcs"; - String url=addressService.selectAddress(param)+"TaskInfo"; + String url=addressService.selectAddress(QuantityConstant.ADDRESS_WCS_TASK_INFO); String JsonParam = JSON.toJSONString(wcsTask); String result = HttpUtils.bodypost(url, JsonParam); if(StringUtils.isEmpty(result)){ diff --git a/src/main/java/com/huaheng/common/constant/QuantityConstant.java b/src/main/java/com/huaheng/common/constant/QuantityConstant.java index 1fffa20..f718716 100644 --- a/src/main/java/com/huaheng/common/constant/QuantityConstant.java +++ b/src/main/java/com/huaheng/common/constant/QuantityConstant.java @@ -361,11 +361,24 @@ public class QuantityConstant { public static final Integer POINTS_SOME = 1; public static final int ROW_OUT = 1; - public static final int ROW_IN = 0; + //WCS任务下发 + public static final String ADDRESS_WCS_TASK_ASSIGN = "WCS_TASK_ASSIGN"; + //WCS任务取消 + public static final String ADDRESS_WCS_TASK_CANCEL = "WCS_TASK_CANCEL"; + //WCS任务信息查询 + public static final String ADDRESS_WCS_TASK_INFO = "WCS_TASK_INFO"; + //WCS设置任务优先级 + public static final String ADDRESS_WCS_TASK_PRIORITY_CHANGE = "WCS_TASK_PRIORITY_CHANGE"; + //WCS站台信息查询 + public static final String ADDRESS_WCS_STATION_INFOS = "WCS_STATION_INFOS"; + //WCS获取可用巷道 + public static final String ADDRESS_WCS_AVAILABLE_ROADWAY = "WCS_AVAILABLE_ROADWAY"; + + public static final String STATUS_CONTAINER_EMPTY = "empty"; - public static final String STATUS_CONTAINER_LOCK = "empty"; + public static final String STATUS_CONTAINER_LOCK = "lock"; public static final String STATUS_CONTAINER_SOME = "some"; public static final String STATUS_LOCATION_EMPTY = "empty"; @@ -373,7 +386,14 @@ public class QuantityConstant { public static final String RULE_SHIPMENT_TASK= "shipmentTaskRule"; public static final String RULE_TASK_LOCATION = "taskLocationRule"; + public static final String RULE_CONNECT_WCS = "connectWcs"; public static final int RULE_TASK_SET_LOCATION = 1; public static final int RULE_TASK_NOT_LOCATION = 0; + + public static final int RULE_TASK_PICK_SHIPMENT = 1; + public static final int RULE_TASK_WHOLE_SHIPMENT = 0; + + public static final int RULE_WCS_CONNECT = 1; + public static final int RULE_WCS_DISCONNECT = 0; } diff --git a/src/main/java/com/huaheng/mobile/invenory/MobileInventoryController.java b/src/main/java/com/huaheng/mobile/invenory/MobileInventoryController.java index 260f685..a60eca9 100644 --- a/src/main/java/com/huaheng/mobile/invenory/MobileInventoryController.java +++ b/src/main/java/com/huaheng/mobile/invenory/MobileInventoryController.java @@ -104,13 +104,13 @@ public class MobileInventoryController { @ResponseBody public AjaxResult createCheckOutTask(@RequestBody @ApiParam(value="库存ids") Map<String, String> param){ String ids = param.get("ids"); - String stationCode = param.get("stationCode"); + String port = param.get("port"); Integer companyId = DataUtils.getInteger(param.get("companyId")) ; String companyCode = param.get("companyCode"); if(StringUtils.isEmpty(ids)){ return AjaxResult.error("ids不能为空"); } - return workTaskService.createCheckOutTaskByIds(Arrays.asList(Convert.toIntArray(ids)), stationCode); + return workTaskService.createCheckOutTaskByIds(Arrays.asList(Convert.toIntArray(ids)), port); } @PostMapping("/transfer") diff --git a/src/main/java/com/huaheng/mobile/receipt/MobileBatchReceiptController.java b/src/main/java/com/huaheng/mobile/receipt/MobileBatchReceiptController.java index 9dcebfc..44d86c1 100644 --- a/src/main/java/com/huaheng/mobile/receipt/MobileBatchReceiptController.java +++ b/src/main/java/com/huaheng/mobile/receipt/MobileBatchReceiptController.java @@ -252,7 +252,7 @@ public class MobileBatchReceiptController { taskQueryWrapper.eq(TaskHeader::getWarehouseCode, ShiroUtils.getWarehouseCode()) .in(TaskHeader::getTaskType, QuantityConstant.TASK_TYPE_WHOLERECEIPT, QuantityConstant.TASK_TYPE_SUPPLEMENTRECEIPT) - .lt(TaskHeader::getStatus, 100) + .lt(TaskHeader::getStatus, QuantityConstant.TASK_STATUS_COMPLETED) .eq(TaskHeader::getContainerCode, containerCode); TaskHeader taskHeader = taskHeaderService.getOne(taskQueryWrapper); if(taskHeader == null) { diff --git a/src/main/java/com/huaheng/pc/config/address/controller/AddressController.java b/src/main/java/com/huaheng/pc/config/address/controller/AddressController.java index 02bb4f3..4e9a46c 100644 --- a/src/main/java/com/huaheng/pc/config/address/controller/AddressController.java +++ b/src/main/java/com/huaheng/pc/config/address/controller/AddressController.java @@ -41,11 +41,6 @@ public class AddressController extends BaseController { @Resource private AddressService addressService; - - - - - @RequiresPermissions("config:address:view") @GetMapping() public String address() { return prefix + "/address"; @@ -54,7 +49,6 @@ public class AddressController extends BaseController { /** * 查询接口地址 */ - @RequiresPermissions("config:address:list") @Log(title = "配置-接口地址", operating = "查看接口地址", action = BusinessType.GRANT) @PostMapping("/list") @ResponseBody @@ -89,7 +83,6 @@ public class AddressController extends BaseController { /** * 新增保存接口地址 */ - @RequiresPermissions("config:address:add") @Log(title = "通用-接口地址", operating = "新增接口地址", action = BusinessType.INSERT) @PostMapping("/add") @ResponseBody @@ -110,7 +103,6 @@ public class AddressController extends BaseController { /** * 修改保存接口地址 */ - @RequiresPermissions("config:address:edit") @Log(title = "配置-接口地址", operating = "修改接口地址", action = BusinessType.UPDATE) @PostMapping("/edit") @ResponseBody @@ -121,7 +113,6 @@ public class AddressController extends BaseController { /** * 删除接口地址 */ - @RequiresPermissions("config:address:remove") @Log(title = "配置-接口地址", operating = "删除接口地址", action = BusinessType.DELETE) @PostMapping( "/remove") @ResponseBody diff --git a/src/main/java/com/huaheng/pc/config/configValue/service/ConfigValueService.java b/src/main/java/com/huaheng/pc/config/configValue/service/ConfigValueService.java index 19761a8..6c7e2cd 100644 --- a/src/main/java/com/huaheng/pc/config/configValue/service/ConfigValueService.java +++ b/src/main/java/com/huaheng/pc/config/configValue/service/ConfigValueService.java @@ -3,6 +3,7 @@ package com.huaheng.pc.config.configValue.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.huaheng.framework.web.domain.AjaxResult; import com.huaheng.pc.config.configValue.domain.ConfigValue; import com.huaheng.pc.config.configValue.mapper.ConfigValueMapper; import org.springframework.stereotype.Service; @@ -44,4 +45,12 @@ public class ConfigValueService extends ServiceImpl<ConfigValueMapper, ConfigVal return false; } } + + public ConfigValue getConfigValueByIdentifer(String identifier , String warehouseCode) { + LambdaQueryWrapper<ConfigValue> lambdaQueryWrapper = Wrappers.lambdaQuery(); + lambdaQueryWrapper.eq(ConfigValue::getWarehouseCode, warehouseCode) + .eq(ConfigValue::getIdentifier, identifier); + ConfigValue configValue = getOne(lambdaQueryWrapper); + return configValue; + } } diff --git a/src/main/java/com/huaheng/pc/config/location/controller/LocationController.java b/src/main/java/com/huaheng/pc/config/location/controller/LocationController.java index e2407fe..beb262a 100644 --- a/src/main/java/com/huaheng/pc/config/location/controller/LocationController.java +++ b/src/main/java/com/huaheng/pc/config/location/controller/LocationController.java @@ -222,11 +222,13 @@ public class LocationController extends BaseController { @Log(title = "通用-库位管理", operating = "批量修改库位", action = BusinessType.UPDATE) @PostMapping("/editBatchSave") @ResponseBody - public AjaxResult editBatchSave (String ids, String area) { + public AjaxResult editBatchSave (String ids, String area, Integer high, String status) { String[] idArray = Convert.toStrArray(ids); LambdaUpdateWrapper<Location> wrapper = Wrappers.lambdaUpdate(); wrapper.in(Location::getId, idArray) - .set(Location::getArea, area); + .set(Location::getArea, area) + .set(Location::getHigh, high) + .set(Location::getStatus, status); return toAjax(locationService.update(wrapper)); } diff --git a/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java b/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java index dcc099f..9148ed4 100644 --- a/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java +++ b/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java @@ -86,7 +86,7 @@ public class ShipmentPreferenceServiceImpl extends ServiceImpl<ShipmentPreferenc StatusFlowDetail statusFlowDetail = statusFlowDetailService.getOne(statusFlowDetailLamb); List<ShipmentHeader> shipmentHeaderList = new ArrayList<>(); - if (statusFlowDetail != null) { + if (statusFlowDetail != null && statusFlowDetail.getNessary().intValue() == 1) { if (StringUtils.isNotEmpty(ids)) { for (Integer id : Convert.toIntArray(ids)) { //判断单据是否按出库流程操作 diff --git a/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderController.java b/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderController.java index c5d1c8b..97a01ee 100644 --- a/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderController.java +++ b/src/main/java/com/huaheng/pc/inventory/inventoryHeader/controller/InventoryHeaderController.java @@ -198,8 +198,8 @@ public class InventoryHeaderController extends BaseController @PostMapping("/emptyOut") @Log(title = "任务-任务管理", operating = "生成空托盘出库任务", action = BusinessType.INSERT) @ResponseBody - public AjaxResult emptyOut(String containerCode,String sourceLocation, String stationCode){ - return inventoryHeaderService.createEmptyOut(containerCode, sourceLocation, stationCode); + public AjaxResult emptyOut(String containerCode,String sourceLocation, String port){ + return inventoryHeaderService.createEmptyOut(containerCode, sourceLocation, port); } /** @@ -217,17 +217,17 @@ public class InventoryHeaderController extends BaseController /** * 出库查看任务 * @param ids - * @param stationCode + * @param port * @return */ @PostMapping("/checkOut") @Log(title = "任务-任务管理", operating = "出库查看任务", action = BusinessType.INSERT) @ResponseBody - public AjaxResult checkOut(String ids,String stationCode){ - if(StringUtils.isEmpty(ids) || StringUtils.isEmpty(stationCode)){ - throw new ServiceException("库存头和出库站台不能为空!"); + public AjaxResult checkOut(String ids,String port){ + if(StringUtils.isEmpty(ids) || StringUtils.isEmpty(port)){ + throw new ServiceException("库存头和出库口不能为空!"); } - return inventoryHeaderService.createCheckOutTask(Arrays.asList(Convert.toIntArray(ids)), stationCode); + return inventoryHeaderService.createCheckOutTask(Arrays.asList(Convert.toIntArray(ids)), port); } /** @@ -250,11 +250,11 @@ public class InventoryHeaderController extends BaseController @PostMapping("/emptyCheckOut") @Log(title = "任务-任务管理", operating = "生成空托盘出库查看任务", action = BusinessType.INSERT) @ResponseBody - public AjaxResult emptyCheckOut(String containerCode,String sourceLocation){ + public AjaxResult emptyCheckOut(String containerCode,String sourceLocation, String stationCode){ if(StringUtils.isEmpty(containerCode) || StringUtils.isEmpty(sourceLocation)){ throw new ServiceException("容器和库位不能有空值!"); } - return inventoryHeaderService.createEmptyCheckOut(containerCode, sourceLocation); + return inventoryHeaderService.createEmptyCheckOut(containerCode, sourceLocation, stationCode); } /** diff --git a/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderService.java b/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderService.java index 4a301b5..fc2e124 100644 --- a/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderService.java +++ b/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderService.java @@ -13,7 +13,7 @@ public interface InventoryHeaderService extends IService<InventoryHeader> { - AjaxResult createCheckOutTask (List<Integer> ids, String stationCode); + AjaxResult createCheckOutTask (List<Integer> ids, String port); AjaxResult createTransferTask(String sourceLocation, String destinationLocation); @@ -28,10 +28,12 @@ public interface InventoryHeaderService extends IService<InventoryHeader> { AjaxResult createEmptyOut(String containerCode, String sourceLocation); - AjaxResult createEmptyOut(String containerCode, String sourceLocation, String stationCode); + AjaxResult createEmptyOut(String containerCode, String sourceLocation, String port); AjaxResult createEmptyCheckOut(String containerCode, String location); + AjaxResult createEmptyCheckOut(String containerCode, String location, String port); + /** * 移动端获取库存详情 * @param code 物料编码 diff --git a/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderServiceImpl.java b/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderServiceImpl.java index 275a495..671511d 100644 --- a/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderServiceImpl.java +++ b/src/main/java/com/huaheng/pc/inventory/inventoryHeader/service/InventoryHeaderServiceImpl.java @@ -69,9 +69,9 @@ public class InventoryHeaderServiceImpl extends ServiceImpl<InventoryHeaderMappe * 出库查看 * */ @Override - public AjaxResult createCheckOutTask(List<Integer> ids, String stationCode) { + public AjaxResult createCheckOutTask(List<Integer> ids, String port) { //生成出库查看任务 - return workTaskService.createCheckOutTaskByIds(ids, stationCode); + return workTaskService.createCheckOutTaskByIds(ids, port); } @Override @@ -112,8 +112,8 @@ public class InventoryHeaderServiceImpl extends ServiceImpl<InventoryHeaderMappe *空托出库 * */ @Override - public AjaxResult createEmptyOut(String containerCode, String sourceLocation, String stationCode) { - return workTaskService.createEmptyOut(containerCode, sourceLocation, stationCode); + public AjaxResult createEmptyOut(String containerCode, String sourceLocation, String port) { + return workTaskService.createEmptyOut(containerCode, sourceLocation, port); } /** @@ -121,7 +121,15 @@ public class InventoryHeaderServiceImpl extends ServiceImpl<InventoryHeaderMappe * */ @Override public AjaxResult createEmptyCheckOut(String containerCode, String location) { - return workTaskService.createEmptyCheckOut(containerCode, location); + return workTaskService.createEmptyCheckOut(containerCode, location, null); + } + + /** + *空托出库查看 + * */ + @Override + public AjaxResult createEmptyCheckOut(String containerCode, String location, String port) { + return workTaskService.createEmptyCheckOut(containerCode, location, port); } /** diff --git a/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java b/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java index aff612b..f2afea7 100644 --- a/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java +++ b/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/controller/ReceiptContainerHeaderController.java @@ -134,7 +134,7 @@ public class ReceiptContainerHeaderController extends BaseController { List<Integer> idList = Arrays.asList(Convert.toIntArray(ids)); List<Integer> idsList = idList.stream().distinct().collect(Collectors.toList()); AjaxResult ajaxResult = receiptTaskService.createReceiptTask(idsList); - if(ajaxResult.getCode() != HttpConstant.OK) { + if(ajaxResult.hasErr()) { return ajaxResult; } List<String> taskList = (List<String>)ajaxResult.getData(); diff --git a/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/service/ReceiptContainerHeaderServiceImpl.java b/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/service/ReceiptContainerHeaderServiceImpl.java index 76e21f6..ab35f9b 100644 --- a/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/service/ReceiptContainerHeaderServiceImpl.java +++ b/src/main/java/com/huaheng/pc/receipt/receiptContainerHeader/service/ReceiptContainerHeaderServiceImpl.java @@ -8,9 +8,11 @@ import com.huaheng.common.exception.service.ServiceException; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; import com.huaheng.framework.web.domain.AjaxResult; +import com.huaheng.framework.web.service.ConfigService; import com.huaheng.mobile.receipt.ReceiptBill; import com.huaheng.pc.config.configValue.domain.ConfigValue; import com.huaheng.pc.config.configValue.mapper.ConfigValueMapper; +import com.huaheng.pc.config.configValue.service.ConfigValueService; import com.huaheng.pc.config.container.domain.Container; import com.huaheng.pc.config.container.service.ContainerService; import com.huaheng.pc.config.location.domain.Location; @@ -64,6 +66,8 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai private ReceiptPreferenceMapper receiptPreferenceMapper; @Resource private ConfigValueMapper configValueMapper; + @Resource + private ConfigService configService; /** * 保存入库组盘 * @param receiptCode 入库单编码 @@ -126,12 +130,15 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai receiptContainerHeader.setTaskType(taskType); if (taskType.equals(QuantityConstant.TASK_TYPE_SUPPLEMENTRECEIPT)) { receiptContainerHeader.setFromLocation(container.getLocationCode()); -// receiptContainerHeader.setToLocation(container.getLocationCode()); + String value = configService.getKey(QuantityConstant.RULE_TASK_LOCATION); + int taskLocationRule = Integer.parseInt(value); + if (taskLocationRule == QuantityConstant.RULE_TASK_SET_LOCATION) { + receiptContainerHeader.setToLocation(container.getLocationCode()); + } } else { receiptContainerHeader.setToLocation(locationCode); } receiptContainerHeader.setProjectNo(receiptDetail.getProjectNo()); -// receiptContainerHeader.setToLocation(locationCode); receiptContainerHeader.setCreatedBy(ShiroUtils.getLoginName()); receiptContainerHeader.setLastUpdatedBy(ShiroUtils.getLoginName()); receiptContainerHeader.setLocatingRule(locatingRule); diff --git a/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/domain/ShipmentContainerHeader.java b/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/domain/ShipmentContainerHeader.java index 510092a..cd33d43 100644 --- a/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/domain/ShipmentContainerHeader.java +++ b/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/domain/ShipmentContainerHeader.java @@ -57,11 +57,11 @@ public class ShipmentContainerHeader implements Serializable { private Integer status; /** - * 出库站台 + * 出库口 */ - @TableField(value = "stationCode") - @ApiModelProperty(value="出库站台") - private String stationCode; + @TableField(value = "port") + @ApiModelProperty(value="出库口") + private String port; /** * 父 @@ -450,12 +450,12 @@ public class ShipmentContainerHeader implements Serializable { this.status = status; } - public String getStationCode() { - return stationCode; + public String getPort() { + return port; } - public void setStationCode(String stationCode) { - this.stationCode = stationCode; + public void setPort(String port) { + this.port = port; } /** diff --git a/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java b/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java index 0bfc8a0..4598de3 100644 --- a/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java +++ b/src/main/java/com/huaheng/pc/shipment/shipmentContainerHeader/service/ShipmentContainerHeaderServiceImpl.java @@ -211,7 +211,7 @@ public class ShipmentContainerHeaderServiceImpl extends ServiceImpl<ShipmentCont shipmentContainerHeader.setLocationCode(location.getCode()); shipmentContainerHeader.setWarehouseCode(ShiroUtils.getWarehouseCode()); shipmentContainerHeader.setCompanyCode(shipmentDetail.getCompanyCode()); - shipmentContainerHeader.setStationCode(shipmentDetail.getStationCode()); + shipmentContainerHeader.setPort(shipmentDetail.getPort()); shipmentContainerHeader.setContainerType(container.getContainerType()); shipmentContainerHeader.setStatus(QuantityConstant.SHIPMENT_CONTAINER_BUILD); shipmentContainerHeader.setTaskCreated(0); diff --git a/src/main/java/com/huaheng/pc/shipment/shipmentDetail/domain/ShipmentDetail.java b/src/main/java/com/huaheng/pc/shipment/shipmentDetail/domain/ShipmentDetail.java index 38084da..ffe369b 100644 --- a/src/main/java/com/huaheng/pc/shipment/shipmentDetail/domain/ShipmentDetail.java +++ b/src/main/java/com/huaheng/pc/shipment/shipmentDetail/domain/ShipmentDetail.java @@ -188,11 +188,11 @@ public class ShipmentDetail implements Serializable { private String projectNo; /** - * 出库站台 + * 出库口 */ - @TableField(value = "stationCode") - @ApiModelProperty(value="出库站台") - private String stationCode; + @TableField(value = "port") + @ApiModelProperty(value="出库口") + private String port; /** * 生产日期 @@ -1016,12 +1016,12 @@ public class ShipmentDetail implements Serializable { return processStamp; } - public String getStationCode() { - return stationCode; + public String getPort() { + return port; } - public void setStationCode(String stationCode) { - this.stationCode = stationCode; + public void setPort(String port) { + this.port = port; } /** diff --git a/src/main/java/com/huaheng/pc/system/config/controller/ConfigController.java b/src/main/java/com/huaheng/pc/system/config/controller/ConfigController.java index 56c7d22..dc8c292 100644 --- a/src/main/java/com/huaheng/pc/system/config/controller/ConfigController.java +++ b/src/main/java/com/huaheng/pc/system/config/controller/ConfigController.java @@ -130,4 +130,6 @@ public class ConfigController extends BaseController { return uniqueFlag; } + + } diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java b/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java index 95522c1..92b9027 100644 --- a/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java +++ b/src/main/java/com/huaheng/pc/task/taskHeader/controller/TaskHeaderController.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.huaheng.api.wcs.service.taskCancel.TaskCancelService; +import com.huaheng.common.constant.QuantityConstant; import com.huaheng.common.support.Convert; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; @@ -14,6 +16,9 @@ import com.huaheng.framework.web.domain.AjaxResult; import com.huaheng.framework.web.page.PageDomain; import com.huaheng.framework.web.page.TableDataInfo; import com.huaheng.framework.web.page.TableSupport; +import com.huaheng.framework.web.service.ConfigService; +import com.huaheng.pc.config.configValue.domain.ConfigValue; +import com.huaheng.pc.config.configValue.service.ConfigValueService; import com.huaheng.pc.config.material.service.MaterialService; import com.huaheng.pc.config.warehouse.domain.Warehouse; import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail; @@ -47,6 +52,10 @@ public class TaskHeaderController extends BaseController { private TaskHeaderService taskHeaderService; @Resource private WorkTaskService workTaskService; + @Resource + private TaskCancelService taskCancelService; + @Resource + private ConfigService configService; private String prefix = "task/taskHeader"; @@ -75,8 +84,8 @@ public class TaskHeaderController extends BaseController { .eq(StringUtils.isNotEmpty(taskHeader.getToLocation()),TaskHeader::getToLocation,taskHeader.getToLocation()) .gt(StringUtils.isNotEmpty(createdBegin),TaskHeader::getCreated,createdBegin) .lt(StringUtils.isNotEmpty(createdEnd),TaskHeader::getCreated,createdEnd) - .orderByDesc(TaskHeader::getId) - .orderByAsc(TaskHeader::getStatus); + .orderByAsc(TaskHeader::getStatus) + .orderByDesc(TaskHeader::getId); PageDomain pageDomain = TableSupport.buildPageRequest(); Integer pageNum = pageDomain.getPageNum(); @@ -137,6 +146,18 @@ public class TaskHeaderController extends BaseController { if (StringUtils.isEmpty(ids)) { return AjaxResult.error("taskId不能为空"); } + String value = configService.getKey(QuantityConstant.RULE_CONNECT_WCS); + int connectWCS = Integer.parseInt(value); + if(connectWCS == QuantityConstant.RULE_WCS_CONNECT) { + Integer[] idList = Convert.toIntArray(ids); + for (int id : idList) { + AjaxResult ajaxResult = taskCancelService.TaskCance(id); + if (ajaxResult.hasErr()) { + return ajaxResult; + } + } + } + return taskHeaderService.cancelTask(Convert.toIntArray(ids)); } @@ -172,7 +193,7 @@ public class TaskHeaderController extends BaseController { } /** - * 选择出库站台 + * 选择出库口 */ @GetMapping("/chooseStation/{taskId}") public String chooseStation(@PathVariable("taskId")String taskId, ModelMap mmap) { @@ -192,7 +213,7 @@ public class TaskHeaderController extends BaseController { LambdaQueryWrapper<TaskHeader> taskHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); taskHeaderLambdaQueryWrapper.eq(TaskHeader::getId, taskiId); TaskHeader taskHeader1 = taskHeaderService.getOne(taskHeaderLambdaQueryWrapper); - taskHeader1.setStationCode(taskHeader.getStationCode()); + taskHeader1.setPort(taskHeader.getPort()); taskHeaderService.update(taskHeader1, taskHeaderLambdaQueryWrapper); return execute(String.valueOf(taskiId)); } diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/domain/TaskHeader.java b/src/main/java/com/huaheng/pc/task/taskHeader/domain/TaskHeader.java index 3a6e588..a44131d 100644 --- a/src/main/java/com/huaheng/pc/task/taskHeader/domain/TaskHeader.java +++ b/src/main/java/com/huaheng/pc/task/taskHeader/domain/TaskHeader.java @@ -135,11 +135,11 @@ public class TaskHeader implements Serializable { private Integer preTaskNo; /** - * 出库站台 + * 出库口 */ - @TableField(value = "stationCode") - @ApiModelProperty(value="出库站台") - private String stationCode; + @TableField(value = "port") + @ApiModelProperty(value="出库口") + private String port; /** diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/service/ShipmentTaskService.java b/src/main/java/com/huaheng/pc/task/taskHeader/service/ShipmentTaskService.java index 81d5ad8..fe8ca90 100644 --- a/src/main/java/com/huaheng/pc/task/taskHeader/service/ShipmentTaskService.java +++ b/src/main/java/com/huaheng/pc/task/taskHeader/service/ShipmentTaskService.java @@ -8,6 +8,9 @@ import com.huaheng.common.exception.service.ServiceException; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; import com.huaheng.framework.web.domain.AjaxResult; +import com.huaheng.framework.web.service.ConfigService; +import com.huaheng.pc.config.configValue.domain.ConfigValue; +import com.huaheng.pc.config.configValue.service.ConfigValueService; import com.huaheng.pc.config.container.domain.Container; import com.huaheng.pc.config.container.service.ContainerService; import com.huaheng.pc.config.location.domain.Location; @@ -76,6 +79,8 @@ public class ShipmentTaskService { private IMaterialWarningService materialWarningService; @Resource private ShipmentPreferenceService shipmentPreferenceService; + @Resource + private ConfigService configService; /** * 创建出库任务 * @param shipmentTaskCreateModel @@ -109,7 +114,7 @@ public class ShipmentTaskService { if (StringUtils.isNull(location)) { return AjaxResult.error("库位禁用或不存在!"); } - if(location.getRowFlag() == 1) { + if(location.getRowFlag() == QuantityConstant.ROW_OUT) { Location location1 = locationService.getNear(location); if(location1 != null) { String locationCode = location1.getCode(); @@ -121,7 +126,6 @@ public class ShipmentTaskService { preTaskNo = taskHeaderList.get(0).getPreTaskNo(); } } - } LambdaQueryWrapper<Container> containerLambdaQueryWrapper = Wrappers.lambdaQuery(); containerLambdaQueryWrapper.eq(Container::getCode, shipmentContainerHeader.getContainerCode()) @@ -140,7 +144,6 @@ public class ShipmentTaskService { TaskHeader task = new TaskHeader(); task.setTaskType(QuantityConstant.TASK_TYPE_SORTINGSHIPMENT); task.setFromLocation(shipmentContainerHeader.getLocationCode()); - task.setToLocation(shipmentContainerHeader.getLocationCode()); //判断是否整出任务,钱柜和AGV不能整出 //表示整出优先 //判断当前子货箱所有数量是否等于该托盘对应的所有库存的数量, @@ -160,14 +163,19 @@ public class ShipmentTaskService { for (ShipmentContainerDetail item : shipmentContainerDetails) { containerTotal = containerTotal.add(item.getQty()); } - LambdaQueryWrapper<ShipmentPreference> lambdaQueryWrapper = Wrappers.lambdaQuery(); - lambdaQueryWrapper.eq(ShipmentPreference::getWarehouseCode, ShiroUtils.getWarehouseCode()); - ShipmentPreference shipmentPreference = shipmentPreferenceService.getOne(lambdaQueryWrapper); + String value = configService.getKey(QuantityConstant.RULE_SHIPMENT_TASK); + int shipmentTaskRule = Integer.parseInt(value); // 当onlyPicking为1,只允许分拣出库 - if (inventoryTotal.compareTo(containerTotal) == 0 && (shipmentPreference.getOnlyPicking() == 0)) { + if (inventoryTotal.compareTo(containerTotal) == 0 && + (shipmentTaskRule == QuantityConstant.RULE_TASK_WHOLE_SHIPMENT)) { //整盘出库 task.setTaskType(QuantityConstant.TASK_TYPE_WHOLESHIPMENT); - task.setToLocation(""); + } else { + value = configService.getKey(QuantityConstant.RULE_TASK_LOCATION); + int taskLocationRule = Integer.parseInt(value); + if (taskLocationRule == QuantityConstant.RULE_TASK_SET_LOCATION) { + task.setToLocation(shipmentContainerHeader.getLocationCode()); + } } @@ -176,7 +184,7 @@ public class ShipmentTaskService { task.setWarehouseCode(shipmentContainerHeader.getWarehouseCode()); task.setAssignedUser(ShiroUtils.getLoginName()); task.setConfirmedBy(ShiroUtils.getLoginName()); - task.setStationCode(shipmentContainerHeader.getStationCode()); + task.setPort(shipmentContainerHeader.getPort()); task.setStatus(QuantityConstant.TASK_STATUS_BUILD); task.setContainerCode(shipmentContainerHeader.getContainerCode()); task.setCompanyCode(shipmentContainerHeader.getCompanyCode()); diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java b/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java index 93368f7..ad4965b 100644 --- a/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java +++ b/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderServiceImpl.java @@ -11,6 +11,9 @@ import com.huaheng.common.support.Convert; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; import com.huaheng.framework.web.domain.AjaxResult; +import com.huaheng.framework.web.service.ConfigService; +import com.huaheng.pc.config.configValue.domain.ConfigValue; +import com.huaheng.pc.config.configValue.service.ConfigValueService; import com.huaheng.pc.config.configWarning.service.ConfigWarningService; import com.huaheng.pc.config.container.domain.Container; import com.huaheng.pc.config.container.service.ContainerService; @@ -95,7 +98,8 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea private TransferTaskService transferTaskService; @Resource private ReceivingService receivingService; - + @Resource + private ConfigService configService; @@ -298,12 +302,15 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea return AjaxResult.error("任务" + taskId + "已经下发,请不要重复下发,操作中止"); } - // 给wcs传递任务 - AjaxResult ajaxResult = taskAssignService.wcsTaskAssign(task); - if(ajaxResult != null && ajaxResult.hasErr()) { - return AjaxResult.error(ajaxResult.getMsg()); - } - + String value = configService.getKey(QuantityConstant.RULE_CONNECT_WCS); + int connectWCS = Integer.parseInt(value); + if(connectWCS == QuantityConstant.RULE_WCS_CONNECT) { + // 给wcs传递任务 + AjaxResult ajaxResult = taskAssignService.wcsTaskAssign(task); + if (ajaxResult != null && ajaxResult.hasErr()) { + return AjaxResult.error(ajaxResult.getMsg()); + } + } //修改任务头表 task.setId(taskId); task.setStatus(QuantityConstant.TASK_STATUS_RELEASE); diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java b/src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java index 8bcdc96..8b45ad4 100644 --- a/src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java +++ b/src/main/java/com/huaheng/pc/task/taskHeader/service/WorkTaskService.java @@ -10,6 +10,7 @@ import com.huaheng.common.support.Convert; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; import com.huaheng.framework.web.domain.AjaxResult; +import com.huaheng.framework.web.service.ConfigService; import com.huaheng.mobile.shipment.Shipment; import com.huaheng.pc.config.FilterConfigDetail.domain.FilterConfigDetail; import com.huaheng.pc.config.FilterConfigDetail.service.FilterConfigDetailService; @@ -54,7 +55,7 @@ public class WorkTaskService { @Resource private LocationService locationService; @Resource - private ConfigValueService configValueService; + private ConfigService configService; @Resource private ReceiptPreferenceService preferenceService; @Resource @@ -167,10 +168,11 @@ public class WorkTaskService { * 容器编码与源库位只需要填一个 * @param containerCode 容器编码 * @param sourceLocation 源库位 + * @param port 出库口 * @return */ @Transactional - public AjaxResult createEmptyOut(String containerCode, String sourceLocation, String stationCode) { + public AjaxResult createEmptyOut(String containerCode, String sourceLocation, String port) { /* 容器编码*/ String conCode = null; /* 库位编码*/ @@ -234,7 +236,7 @@ public class WorkTaskService { taskHeader.setStatus(QuantityConstant.TASK_STATUS_BUILD); taskHeader.setFromLocation(locationCode); taskHeader.setToLocation(""); - taskHeader.setStationCode(stationCode); + taskHeader.setPort(port); if(taskHeaderService.save(taskHeader)){ //锁定库位状态 locationService.updateStatus(locationCode,QuantityConstant.STATUS_LOCATION_LOCK); @@ -302,9 +304,10 @@ public class WorkTaskService { /** * 创建出库查看任务 * @param locationCodeList 库位编码列表 + * @param port 出库口 * @return */ - public AjaxResult createCheckOutTask(List<String> locationCodeList, String stationCode) { + public AjaxResult createCheckOutTask(List<String> locationCodeList, String port) { for (String locationCode : locationCodeList) { Location location = locationService.getLocationByCode(locationCode); if (StringUtils.isNull(location)) { @@ -323,15 +326,13 @@ public class WorkTaskService { taskHeader.setInternalTaskType(QuantityConstant.TASK_INTENERTYPE_WORK); taskHeader.setContainerCode(location.getContainerCode()); taskHeader.setFromLocation(locationCode); - LambdaQueryWrapper<ConfigValue> configLambdaQueryWrapper = Wrappers.lambdaQuery(); - configLambdaQueryWrapper.eq(ConfigValue::getIdentifier, QuantityConstant.RULE_TASK_LOCATION); - ConfigValue configValue = configValueService.getOne(configLambdaQueryWrapper); - int taskLocationRule = Integer.parseInt(configValue.getValue()); + String value = configService.getKey(QuantityConstant.RULE_TASK_LOCATION); + int taskLocationRule = Integer.parseInt(value); if (taskLocationRule == QuantityConstant.RULE_TASK_SET_LOCATION) { taskHeader.setToLocation(locationCode); } taskHeader.setStatus(QuantityConstant.TASK_STATUS_BUILD); - taskHeader.setStationCode(stationCode); + taskHeader.setPort(port); if (!taskHeaderService.save(taskHeader)) { throw new ServiceException("创建任务失败"); } @@ -375,12 +376,13 @@ public class WorkTaskService { * 根据库存头表id生成出库查看任务 * @param ids 库存头id */ - public AjaxResult createCheckOutTaskByIds(List<Integer> ids, String stationCode) { + public AjaxResult createCheckOutTaskByIds(List<Integer> ids, String port) { LambdaQueryWrapper<InventoryHeader> queryWrapper = Wrappers.lambdaQuery(); queryWrapper.in(InventoryHeader::getId, ids); List<InventoryHeader> inventoryHeaderList = inventoryHeaderService.list(queryWrapper); - List<String> locationCodeList = inventoryHeaderList.stream().map(InventoryHeader::getLocationCode).distinct().collect(Collectors.toList()); - return createCheckOutTask(locationCodeList, stationCode); + List<String> locationCodeList = inventoryHeaderList.stream().map( + InventoryHeader::getLocationCode).distinct().collect(Collectors.toList()); + return createCheckOutTask(locationCodeList, port); } /** @@ -411,14 +413,7 @@ public class WorkTaskService { taskHeader.getContainerCode(), QuantityConstant.STATUS_LOCATION_EMPTY); Container container = containerService.getContainerByCode(taskHeader.getContainerCode()); container.setLocationCode(taskHeader.getToLocation()); - if (StringUtils.isEmpty(container.getLocationCode())) { - container.setStatus(QuantityConstant.STATUS_CONTAINER_EMPTY); - } else { - container.setStatus(QuantityConstant.STATUS_CONTAINER_SOME); - } - if (!containerService.updateById(container)) { - throw new ServiceException("更新容器状态失败"); - } + container.setStatus(QuantityConstant.STATUS_CONTAINER_EMPTY); LambdaQueryWrapper<InventoryHeader> lambdaQueryWrapper = Wrappers.lambdaQuery(); lambdaQueryWrapper.eq(InventoryHeader::getWarehouseCode, ShiroUtils.getWarehouseCode()) @@ -437,9 +432,14 @@ public class WorkTaskService { inventoryDetail.setLocationCode(taskHeader.getToLocation()); inventoryDetailService.updateById(inventoryDetail); } + container.setStatus(QuantityConstant.STATUS_CONTAINER_SOME); } } + if (!containerService.updateById(container)) { + throw new ServiceException("更新容器状态失败"); + } + if (QuantityConstant.STATUS_CONTAINER_SOME.equals(container.getStatus())) { LambdaUpdateWrapper<InventoryDetail> queryWrapper = Wrappers.lambdaUpdate(); queryWrapper.eq(InventoryDetail::getLocationCode, taskHeader.getToLocation()) @@ -460,7 +460,7 @@ public class WorkTaskService { * @return */ @Transactional - public AjaxResult createEmptyCheckOut(String containerCode, String sourceLocation) { + public AjaxResult createEmptyCheckOut(String containerCode, String sourceLocation, String port) { /* 容器编码*/ String conCode = null; /* 库位编码*/ @@ -524,6 +524,7 @@ public class WorkTaskService { taskHeader.setStatus(QuantityConstant.TASK_STATUS_BUILD); taskHeader.setFromLocation(locationCode); taskHeader.setToLocation(locationCode); + taskHeader.setPort(port); if(taskHeaderService.save(taskHeader)){ //锁定库位状态 locationService.updateStatus(locationCode,QuantityConstant.STATUS_LOCATION_LOCK); diff --git a/src/main/resources/static/huaheng/index.js b/src/main/resources/static/huaheng/index.js index 012f642..9c64b05 100644 --- a/src/main/resources/static/huaheng/index.js +++ b/src/main/resources/static/huaheng/index.js @@ -319,7 +319,7 @@ $(function () { return false; } - $('.menuTabs').on('click', '.menuTab i', refreshTab); + $('.menuTabs').on('click', '.menuTab i', closeTab); //关闭其他选项卡 function closeOtherTabs() { diff --git a/src/main/resources/templates/config/address/add.html b/src/main/resources/templates/config/address/add.html index 399657d..446c14e 100644 --- a/src/main/resources/templates/config/address/add.html +++ b/src/main/resources/templates/config/address/add.html @@ -6,7 +6,7 @@ <div class="wrapper wrapper-content animated fadeInRight ibox-content"> <form class="form-horizontal m" id="form-address-add"> <div class="form-group"> - <label class="col-sm-3 control-label">参数方法名:</label> + <label class="col-sm-3 control-label">参数名称:</label> <div class="col-sm-8"> <input id="param" name="param" class="form-control" type="text"> </div> diff --git a/src/main/resources/templates/config/address/address.html b/src/main/resources/templates/config/address/address.html index a615dcf..ddac470 100644 --- a/src/main/resources/templates/config/address/address.html +++ b/src/main/resources/templates/config/address/address.html @@ -13,7 +13,7 @@ 仓库:<input type="text" name="warehouseCode"/> </li> <li> - 参数方法名:<input type="text" name="param"/> + 参数名称:<input type="text" name="param"/> </li> <!--<li class="time"> <label>创建时间: </label> @@ -30,7 +30,7 @@ </div> <div class="btn-group hidden-xs" id="toolbar" role="group"> - <a class="btn btn-outline btn-success btn-rounded" onclick="$.operate.add()" shiro:hasPermission="config:address:add"> + <a class="btn btn-outline btn-success btn-rounded" onclick="$.operate.add()"> <i class="fa fa-plus"></i> 新增 </a> </div> @@ -79,8 +79,8 @@ align: 'center', formatter: function(value, row, index) { var actions = []; - actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="#" onclick="$.operate.edit(\'' + row.id + '\' )"><i class="fa fa-edit"></i>编辑</a> '); - actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>'); + actions.push('<a class="btn btn-success btn-xs ' + '" href="#" onclick="$.operate.edit(\'' + row.id + '\' )"><i class="fa fa-edit"></i>编辑</a> '); + actions.push('<a class="btn btn-danger btn-xs ' + '" href="#" onclick="$.operate.remove(\'' + row.id + '\')"><i class="fa fa-trash-o"></i>删除</a>'); return actions.join(''); } } diff --git a/src/main/resources/templates/config/address/edit.html b/src/main/resources/templates/config/address/edit.html index 7f1e724..09633ae 100644 --- a/src/main/resources/templates/config/address/edit.html +++ b/src/main/resources/templates/config/address/edit.html @@ -7,7 +7,7 @@ <form class="form-horizontal m" id="form-address-edit" th:object="${address}"> <input id="id" name="id" th:field="*{id}" type="hidden"> <div class="form-group"> - <label class="col-sm-3 control-label">参数方法名:</label> + <label class="col-sm-3 control-label">参数名称:</label> <div class="col-sm-8"> <input id="param" name="param" th:field="*{param}" class="form-control" type="text"> </div> diff --git a/src/main/resources/templates/config/location/editBatch.html b/src/main/resources/templates/config/location/editBatch.html index ce71412..84e2755 100644 --- a/src/main/resources/templates/config/location/editBatch.html +++ b/src/main/resources/templates/config/location/editBatch.html @@ -7,7 +7,23 @@ <form class="form-horizontal m" id="form-location-edit"> <input id="ids" name="ids" th:value="${ids}" type="hidden"> <div class="form-group"> - <label class="col-sm-3 control-label">区域:</label> + <label class="col-sm-3 control-label">高低位:</label> + <div class="col-sm-8"> + <select id="high" name="high" class="form-control" th:with="high=${@dict.getType('high')}"> + <option th:each="item : ${high}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}"></option> + </select> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">库位状态:</label> + <div class="col-sm-8"> + <select id="status" name="status" class="form-control" th:with="status=${@dict.getType('locationStatus')}"> + <option th:each="item : ${status}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}"></option> + </select> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">物料分区:</label> <div class="col-sm-8"> <select id="area" name="area" class="form-control" th:with="areas=${@dict.getType('material_areas')}"> <option th:each="item : ${areas}" th:text="${item['dictLabel']}" th:value="${item['dictValue']}"></option> @@ -33,6 +49,8 @@ url : prefix + "/editBatchSave", data : { "ids": $("input[name='ids']").val(), + "high" : $("#high option:selected").val(), + "status" : $("#status option:selected").val(), "area" : $("#area option:selected").val() }, async : false, diff --git a/src/main/resources/templates/inventory/inventoryHeader/checkOut.html b/src/main/resources/templates/inventory/inventoryHeader/checkOut.html index d0d2329..8c64d71 100644 --- a/src/main/resources/templates/inventory/inventoryHeader/checkOut.html +++ b/src/main/resources/templates/inventory/inventoryHeader/checkOut.html @@ -27,9 +27,9 @@ </div> </div> <div class="form-group"> - <label class="col-sm-3 control-label">出库站台:</label> + <label class="col-sm-3 control-label">出库口:</label> <div class="col-sm-8"> - <select id="stationCode" name="stationCode" class="form-control"></select> + <select id="port" name="port" class="form-control"></select> </div> </div> <div class="form-group"> @@ -62,7 +62,7 @@ var ids = document.getElementById("ids").value; console.log("ids:" + ids); var data = { "ids": ids }; - $('#stationCode').select2({ + $('#port').select2({ ajax: { url: ctx+'config/station/getStationFromInventory', dataType: 'json', diff --git a/src/main/resources/templates/inventory/inventoryHeader/emptyCheckOut.html b/src/main/resources/templates/inventory/inventoryHeader/emptyCheckOut.html index f7fbe05..85e285d 100644 --- a/src/main/resources/templates/inventory/inventoryHeader/emptyCheckOut.html +++ b/src/main/resources/templates/inventory/inventoryHeader/emptyCheckOut.html @@ -8,7 +8,7 @@ <div class="form-group"> <label class="col-sm-3 control-label">容器编码:</label> <div class="col-sm-8"> - <input id="containerCode" name="containerCode" class="form-control" type="text"> + <input id="containerCode" name="containerCode" class="form-control" type="text" oninput="myFunction()" onpropertychange="myFunction()"> </div> </div> <div class="form-group"> @@ -18,6 +18,12 @@ </div> </div> <div class="form-group"> + <label class="col-sm-3 control-label">出库口:</label> + <div class="col-sm-8"> + <select id="port" name="port" class="form-control"></select> + </div> + </div> + <div class="form-group"> <div class="col-sm-offset-9" style="margin-left:62%"> <input type="button" class="btn-success btn" onclick="selectEmptyOut()" value="选取空容器" /> <button type="submit" class="btn btn-primary">提交</button> @@ -26,7 +32,8 @@ </div> </form> </div> -<div th:include="include::footer"></div> +<th:block th:include="include :: footer" /> +<th:block th:include="include :: select2-js" /> <script type="text/javascript"> var prefix = ctx + "inventory/inventoryHeader" $("#form-task-emptyCheckOut").validate({ @@ -43,9 +50,29 @@ } }); + function myFunction() { + container = document.getElementById("containerCode").value; + console.log("container:" + container); + var data = { "containerCode": container }; + $('#port').select2({ + ajax: { + url: ctx+'config/station/getStation', + dataType: 'json', + type: 'post', + data: data, + success: function(data) { + + } + } + }); + } + + myFunction() + function selectEmptyOut() { $.modal.open("空托盘选取",prefix+"/listEmpty",780); } + </script> </body> </html> diff --git a/src/main/resources/templates/inventory/inventoryHeader/emptyOut.html b/src/main/resources/templates/inventory/inventoryHeader/emptyOut.html index a17f485..6aead5a 100644 --- a/src/main/resources/templates/inventory/inventoryHeader/emptyOut.html +++ b/src/main/resources/templates/inventory/inventoryHeader/emptyOut.html @@ -21,9 +21,9 @@ </div> </div> <div class="form-group"> - <label class="col-sm-3 control-label">出库站台:</label> + <label class="col-sm-3 control-label">出库口:</label> <div class="col-sm-8"> - <select id="stationCode" name="stationCode" class="form-control"></select> + <select id="port" name="port" class="form-control"></select> </div> </div> <div class="form-group"> @@ -60,7 +60,7 @@ container = document.getElementById("containerCode").value; console.log("container:" + container); var data = { "containerCode": container }; - $('#stationCode').select2({ + $('#port').select2({ ajax: { url: ctx+'config/station/getStation', dataType: 'json', diff --git a/src/main/resources/templates/inventory/inventoryHeader/inventoryHeader.html b/src/main/resources/templates/inventory/inventoryHeader/inventoryHeader.html index 8dde2c3..31a6560 100644 --- a/src/main/resources/templates/inventory/inventoryHeader/inventoryHeader.html +++ b/src/main/resources/templates/inventory/inventoryHeader/inventoryHeader.html @@ -25,6 +25,9 @@ <div class="select-list"> <ul> <li> + 库区:<input type="text" name="zoneCode"/> + </li> + <li> 库位编号:<input type="text" name="locationCode"/> </li> <li> @@ -70,6 +73,10 @@ shiro:hasPermission="inventory:inventoryHeader:emptyOut"> <i class="fa fa-level-up"></i> 空托出库 </a> + <a class="btn btn-outline btn-info btn-rounded" onclick="emptyCheckOut()" + shiro:hasPermission="inventory:inventoryHeader:seeOut"> + <i class="fa fa-eye"></i> 空托出库查看 + </a> </div> <div class="col-sm-12 select-info"> <table id="bootstrap-table" data-mobile-responsive="true" @@ -117,6 +124,11 @@ visible: false }, { + field: 'zoneCode', + title: ' 库区', + visible: false + }, + { field: 'locationCode', title: '库位 ' }, diff --git a/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html b/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html index a2612b6..e194b18 100644 --- a/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html +++ b/src/main/resources/templates/shipment/shipmentContainerHeader/shipmentContainerHeader.html @@ -147,8 +147,8 @@ // },sortable:true // }, { - field : 'stationCode', - title : '出库站台' + field : 'port', + title : '出库口' }, { field : 'status', diff --git a/src/main/resources/templates/shipment/shipmentDetail/add.html b/src/main/resources/templates/shipment/shipmentDetail/add.html index 5fc50e5..04fa287 100644 --- a/src/main/resources/templates/shipment/shipmentDetail/add.html +++ b/src/main/resources/templates/shipment/shipmentDetail/add.html @@ -46,9 +46,9 @@ </div> </div> <div class="form-group"> - <label class="col-sm-3 control-label">出库站台:</label> + <label class="col-sm-3 control-label">出库口:</label> <div class="col-sm-8"> - <select id="stationCode" name="stationCode" class="form-control"></select> + <select id="port" name="port" class="form-control"></select> </div> </div> <div class="form-group"> @@ -204,7 +204,7 @@ } } }); - $('#stationCode').select2({ + $('#port').select2({ ajax: { url: ctx+'config/station/getData', dataType: 'json', diff --git a/src/main/resources/templates/shipment/shipmentHeader/shipmentHeader.html b/src/main/resources/templates/shipment/shipmentHeader/shipmentHeader.html index 411c573..80958e6 100644 --- a/src/main/resources/templates/shipment/shipmentHeader/shipmentHeader.html +++ b/src/main/resources/templates/shipment/shipmentHeader/shipmentHeader.html @@ -523,8 +523,8 @@ }, }, { - field: 'stationCode', - title: '出库站台', + field: 'port', + title: '出库口', }, { field: 'shipQty', diff --git a/src/main/resources/templates/system/config/config.html b/src/main/resources/templates/system/config/config.html index 0c2cfa6..2c5719b 100644 --- a/src/main/resources/templates/system/config/config.html +++ b/src/main/resources/templates/system/config/config.html @@ -89,6 +89,10 @@ field: 'configValue', title: '参数键值' }, + { + field: 'remark', + title: '描述' + }, { field: 'configType', title: '系统内置', diff --git a/src/main/resources/templates/task/task/emptyOut.html b/src/main/resources/templates/task/task/emptyOut.html index 4ee9098..3b620c1 100644 --- a/src/main/resources/templates/task/task/emptyOut.html +++ b/src/main/resources/templates/task/task/emptyOut.html @@ -18,9 +18,9 @@ </div> </div> <div class="form-group"> - <label class="col-sm-3 control-label">出库站台:</label> + <label class="col-sm-3 control-label">出库口:</label> <div class="col-sm-8"> - <select id="stationCode" name="stationCode" class="form-control"></select> + <select id="port" name="port" class="form-control"></select> </div> </div> <div class="form-group"> @@ -49,7 +49,7 @@ } }); - $('#stationCode').select2({ + $('#port').select2({ ajax: { url: ctx+'config/station/getData', dataType: 'json', diff --git a/src/main/resources/templates/task/taskHeader/chooseStation.html b/src/main/resources/templates/task/taskHeader/chooseStation.html index f1933e6..0b41c38 100644 --- a/src/main/resources/templates/task/taskHeader/chooseStation.html +++ b/src/main/resources/templates/task/taskHeader/chooseStation.html @@ -28,9 +28,9 @@ </div> <div class="form-group"> - <label class="col-sm-3 control-label">出库站台:</label> + <label class="col-sm-3 control-label">出库口:</label> <div class="col-sm-8"> - <select id="stationCode" name="stationCode" class="form-control"></select> + <select id="port" name="port" class="form-control"></select> </div> </div> <div class="form-group"> @@ -60,7 +60,7 @@ var containerCode = document.getElementById("containerCode").value; var type = document.getElementById("type").value; var data = { "containerCode": containerCode, "type":type }; - $('#stationCode').select2({ + $('#port').select2({ ajax: { url: ctx+'config/station/getStationFromType', dataType: 'json', diff --git a/src/main/resources/templates/task/taskHeader/taskHeader.html b/src/main/resources/templates/task/taskHeader/taskHeader.html index e0d8341..b6be89d 100644 --- a/src/main/resources/templates/task/taskHeader/taskHeader.html +++ b/src/main/resources/templates/task/taskHeader/taskHeader.html @@ -220,8 +220,8 @@ title : '重量' }, { - field : 'stationCode', - title : '站台' , + field : 'port', + title : '出库口' , align: 'center', visible:true, formatter: function(value, row, index) {