diff --git a/src/main/java/com/huaheng/api/wcs/controller/EmptyOutHandle.java b/src/main/java/com/huaheng/api/wcs/controller/EmptyOutHandle.java index 878e0b1..e93e298 100644 --- a/src/main/java/com/huaheng/api/wcs/controller/EmptyOutHandle.java +++ b/src/main/java/com/huaheng/api/wcs/controller/EmptyOutHandle.java @@ -21,8 +21,7 @@ import javax.annotation.Resource; */ @RestController -@RequestMapping("/WCS/v2") -@Api(tags = {"OverrideHandle"}, description = "wcs空出处理接口") +@RequestMapping("/api/WCS/v2") public class EmptyOutHandle extends BaseController { @Resource diff --git a/src/main/java/com/huaheng/api/wcs/controller/OverrideHandle.java b/src/main/java/com/huaheng/api/wcs/controller/OverrideHandle.java index e694aae..c778985 100644 --- a/src/main/java/com/huaheng/api/wcs/controller/OverrideHandle.java +++ b/src/main/java/com/huaheng/api/wcs/controller/OverrideHandle.java @@ -20,8 +20,7 @@ import javax.annotation.Resource; */ @RestController -@RequestMapping("/WCS/v2") -@Api(tags = {"OverrideHandle"}, description = "wcs重入处理接口") +@RequestMapping("/api/WCS/v2") public class OverrideHandle extends BaseController { @Resource diff --git a/src/main/java/com/huaheng/api/wcs/controller/TaskFinish.java b/src/main/java/com/huaheng/api/wcs/controller/TaskFinish.java index 1400d10..1806259 100644 --- a/src/main/java/com/huaheng/api/wcs/controller/TaskFinish.java +++ b/src/main/java/com/huaheng/api/wcs/controller/TaskFinish.java @@ -21,8 +21,7 @@ import javax.annotation.Resource; */ @RestController -@RequestMapping("/WCS/v2") -@Api(tags = {"TaskFinish"}, description = "wcs任务完成数据接口") +@RequestMapping("/api/WCS/v2") public class TaskFinish extends BaseController { @Resource diff --git a/src/main/java/com/huaheng/api/wcs/controller/WarecellAllocation.java b/src/main/java/com/huaheng/api/wcs/controller/WarecellAllocation.java index a685950..9dcbb1c 100644 --- a/src/main/java/com/huaheng/api/wcs/controller/WarecellAllocation.java +++ b/src/main/java/com/huaheng/api/wcs/controller/WarecellAllocation.java @@ -21,8 +21,7 @@ import javax.annotation.Resource; */ @RestController -@RequestMapping("/WCS/v2") -@Api(tags = {"WarecellAllocation"}, description = "wcs仓位分配接口") +@RequestMapping("/api/WCS/v2") public class WarecellAllocation extends BaseController { @Resource diff --git a/src/main/java/com/huaheng/api/wcs/service/emptyOutHandle/EmptyOutHandleServiceImpl.java b/src/main/java/com/huaheng/api/wcs/service/emptyOutHandle/EmptyOutHandleServiceImpl.java index 6b75a4b..ff615fb 100644 --- a/src/main/java/com/huaheng/api/wcs/service/emptyOutHandle/EmptyOutHandleServiceImpl.java +++ b/src/main/java/com/huaheng/api/wcs/service/emptyOutHandle/EmptyOutHandleServiceImpl.java @@ -38,6 +38,9 @@ public class EmptyOutHandleServiceImpl implements EmptyOutHandleService { if(taskHeader == null){ return AjaxResult.error("任务号错误,没有找到该任务"); } + if(taskHeader.getStatus() == 100){ + return AjaxResult.error("任务已完成"); + } //3、修改该任务为空出,过后处理 taskHeader.setExceptionCode("空托出库"); diff --git a/src/main/java/com/huaheng/api/wcs/service/overrideHandle/OverrideHandleServiceImpl.java b/src/main/java/com/huaheng/api/wcs/service/overrideHandle/OverrideHandleServiceImpl.java index 0bc039c..91f2b1e 100644 --- a/src/main/java/com/huaheng/api/wcs/service/overrideHandle/OverrideHandleServiceImpl.java +++ b/src/main/java/com/huaheng/api/wcs/service/overrideHandle/OverrideHandleServiceImpl.java @@ -78,6 +78,9 @@ public class OverrideHandleServiceImpl implements OverrideHandleService { if(taskHeader == null){ return AjaxResult.error("任务号错误,没有找到该任务"); } + if(taskHeader.getStatus() == 100){ + return AjaxResult.error("任务已完成"); + } //3、修改任务目的库位,修改入库组盘的库位,修改库位状态 //修改原来目的库位的状态 @@ -89,6 +92,7 @@ public class OverrideHandleServiceImpl implements OverrideHandleService { return AjaxResult.error("此任务的原目的库位在系统中不存在"); } location.setStatus("empty"); + location.setContainerCode(""); flag = locationService.updateById(location); if(flag == false){ return AjaxResult.error("修改此任务的原目的库位错误"); @@ -102,14 +106,19 @@ public class OverrideHandleServiceImpl implements OverrideHandleService { */ Location newlocation =new Location(); - + String code=ShiroUtils.getWarehouseCode(); //重入的库位由wcs提供 if(!taskFinishDomain.getRedirectionLocationCode().equals("0")) { - locationLam.eq(Location::getCode, taskFinishDomain.getToLocationCode()) + LambdaQueryWrapper<Location> locationLa = Wrappers.lambdaQuery(); + locationLa.eq(Location::getCode, taskFinishDomain.getRedirectionLocationCode()) + .eq(Location::getStatus,"empty") .eq(Location::getWarehouseCode, ShiroUtils.getWarehouseCode()); - newlocation = locationService.getOne(locationLam); + newlocation = locationService.getOne(locationLa); if (newlocation == null) { - throw new ServiceException("新目的库位在系统中不存在"); + throw new ServiceException("新目的库位在系统中不存在或非空闲"); + } + if(StringUtils.isNotEmpty(newlocation.getContainerCode())){ + throw new ServiceException("新目的库位在系统中已经有容器"); } }else { //重入的库位由wms提供 diff --git a/src/main/java/com/huaheng/pc/config/FilterConfigDetail/controller/FilterConfigDetailController.java b/src/main/java/com/huaheng/pc/config/FilterConfigDetail/controller/FilterConfigDetailController.java index c2e9e30..e2559ad 100644 --- a/src/main/java/com/huaheng/pc/config/FilterConfigDetail/controller/FilterConfigDetailController.java +++ b/src/main/java/com/huaheng/pc/config/FilterConfigDetail/controller/FilterConfigDetailController.java @@ -123,6 +123,7 @@ public class FilterConfigDetailController extends BaseController { } filterConfigDetail.setModuleType(configHeader.getModuleType()); filterConfigDetail.setRecordType(configHeader.getRecordType()); + filterConfigDetail.setFilterCode(configHeader.getFilterCode()); filterConfigDetail.setWarehouseCode(ShiroUtils.getWarehouseCode()); filterConfigDetail.setCreatedBy(ShiroUtils.getLoginName()); filterConfigDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); diff --git a/src/main/java/com/huaheng/pc/config/FilterConfigDetail/domain/FilterConfigDetail.java b/src/main/java/com/huaheng/pc/config/FilterConfigDetail/domain/FilterConfigDetail.java index a37b6fa..25258c7 100644 --- a/src/main/java/com/huaheng/pc/config/FilterConfigDetail/domain/FilterConfigDetail.java +++ b/src/main/java/com/huaheng/pc/config/FilterConfigDetail/domain/FilterConfigDetail.java @@ -78,9 +78,9 @@ public class FilterConfigDetail implements Serializable { @ApiModelProperty(value="全SQL") private String statement; - @TableField(value = "sqll") + @TableField(value = "statements") @ApiModelProperty(value="后续分组排序") - private String sqll; + private String statements; /** * 是否系统创建 diff --git a/src/main/java/com/huaheng/pc/config/configValue/controller/ConfigValueController.java b/src/main/java/com/huaheng/pc/config/configValue/controller/ConfigValueController.java index 8afc2d8..153a6ec 100644 --- a/src/main/java/com/huaheng/pc/config/configValue/controller/ConfigValueController.java +++ b/src/main/java/com/huaheng/pc/config/configValue/controller/ConfigValueController.java @@ -16,6 +16,8 @@ import com.huaheng.framework.web.page.TableDataInfo; import com.huaheng.framework.web.page.TableSupport; import com.huaheng.pc.config.configValue.domain.ConfigValue; import com.huaheng.pc.config.configValue.service.ConfigValueService; +import com.huaheng.pc.config.cycleCountPreference.domain.CycleCountPreference; +import com.huaheng.pc.config.cycleCountPreference.service.CycleCountPreferenceService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -35,6 +37,8 @@ public class ConfigValueController extends BaseController { @Resource private ConfigValueService configValueService; + @Resource + private CycleCountPreferenceService cycleCountPreferenceService; private String prefix = "config/configValue"; @@ -96,6 +100,17 @@ public class ConfigValueController extends BaseController { @PostMapping("/add") @ResponseBody public AjaxResult addSave(ConfigValue configValue) { + //检测盘点首选项是否停用 + if(configValue.getRecordType().equals("cycleCountPreference")){ + CycleCountPreference cycleCountPreferenceTemp = new CycleCountPreference(); + cycleCountPreferenceTemp.setCode(configValue.getIdentifier()); + cycleCountPreferenceTemp.setWarehouseCode(configValue.getWarehouseCode()); + LambdaQueryWrapper<CycleCountPreference> preferenceLambdaQueryWrapper = Wrappers.lambdaQuery(cycleCountPreferenceTemp); + CycleCountPreference cycleCountPreference = cycleCountPreferenceService.getOne(preferenceLambdaQueryWrapper); + if(cycleCountPreference.getEnable() == false){ + return AjaxResult.error("不能添加已停用的盘点首选项!"); + } + } configValue.setWarehouseCode(ShiroUtils.getWarehouseCode()); configValue.setCreatedBy(ShiroUtils.getLoginName()); configValue.setLastUpdatedBy(ShiroUtils.getLoginName()); diff --git a/src/main/java/com/huaheng/pc/config/cycleCountPreference/controller/cycleCountPreferenceController.java b/src/main/java/com/huaheng/pc/config/cycleCountPreference/controller/cycleCountPreferenceController.java index 0a34cf0..8637304 100644 --- a/src/main/java/com/huaheng/pc/config/cycleCountPreference/controller/cycleCountPreferenceController.java +++ b/src/main/java/com/huaheng/pc/config/cycleCountPreference/controller/cycleCountPreferenceController.java @@ -14,6 +14,8 @@ 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.pc.config.configValue.domain.ConfigValue; +import com.huaheng.pc.config.configValue.service.ConfigValueService; import com.huaheng.pc.config.cycleCountPreference.domain.CycleCountPreference; import com.huaheng.pc.config.cycleCountPreference.service.CycleCountPreferenceService; import com.huaheng.pc.config.receiptPreference.domain.ReceiptPreference; @@ -36,6 +38,8 @@ public class cycleCountPreferenceController extends BaseController { @Resource private CycleCountPreferenceService cycleCountPreferenceService; + @Resource + private ConfigValueService configValueService; private String prefix = "config/cycleCountPreference"; @@ -126,6 +130,19 @@ public class cycleCountPreferenceController extends BaseController { @PostMapping("/edit") @ResponseBody public AjaxResult editSave(CycleCountPreference cycleCountPreference) { + //不允许在被配置默认使用的情况先停用首选项 + if(cycleCountPreference.getEnable() == false){ + ConfigValue configValueTemp = new ConfigValue(); + configValueTemp.setModuleType("cyclecount"); + configValueTemp.setWarehouseCode(cycleCountPreference.getWarehouseCode()); + LambdaQueryWrapper<ConfigValue> configValueLambdaQueryWrapper = Wrappers.lambdaQuery(configValueTemp); + ConfigValue configValue = configValueService.getOne(configValueLambdaQueryWrapper); + if(configValue != null){ + if(configValue.getIdentifier().equals(cycleCountPreference.getCode())){ + return AjaxResult.error("该盘点首选项为系统配置默认选项,请删除系统配置中的选项再停用,修改失败!"); + } + } + } cycleCountPreference.setLastUpdatedBy(ShiroUtils.getLoginName()); cycleCountPreference.setLastUpdated(new Date()); return toAjax(cycleCountPreferenceService.updateById(cycleCountPreference)); diff --git a/src/main/java/com/huaheng/pc/config/cycleCountPreference/service/CycleCountPreferenceService.java b/src/main/java/com/huaheng/pc/config/cycleCountPreference/service/CycleCountPreferenceService.java index e471698..353d69d 100644 --- a/src/main/java/com/huaheng/pc/config/cycleCountPreference/service/CycleCountPreferenceService.java +++ b/src/main/java/com/huaheng/pc/config/cycleCountPreference/service/CycleCountPreferenceService.java @@ -21,8 +21,6 @@ import org.springframework.transaction.annotation.Transactional; public class CycleCountPreferenceService extends ServiceImpl<CycleCountPreferenceMapper, CycleCountPreference> { - @Resource - private CycleCountDetailService cycleCountDetailService; diff --git a/src/main/java/com/huaheng/pc/config/waveFlowDetail/controller/WaveFlowDetailController.java b/src/main/java/com/huaheng/pc/config/waveFlowDetail/controller/WaveFlowDetailController.java index 62765fd..8f57b76 100644 --- a/src/main/java/com/huaheng/pc/config/waveFlowDetail/controller/WaveFlowDetailController.java +++ b/src/main/java/com/huaheng/pc/config/waveFlowDetail/controller/WaveFlowDetailController.java @@ -50,9 +50,9 @@ public class WaveFlowDetailController extends BaseController { @RequiresPermissions("config:waveFlowDetail:view") - @GetMapping("/list/{id}") - public String waveFlowDetail(@PathVariable("id")Integer id, ModelMap mmap) { - mmap.put("headerId",id); + @GetMapping("/list/{headerId}") + public String waveFlowDetail(@PathVariable("id")Integer headerId, ModelMap mmap) { + mmap.put("headerId",headerId); return prefix + "/waveFlowDetail"; } diff --git a/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/service/CycleCountDetailServiceImpl.java b/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/service/CycleCountDetailServiceImpl.java index 2b52eda..e07416a 100644 --- a/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/service/CycleCountDetailServiceImpl.java +++ b/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/service/CycleCountDetailServiceImpl.java @@ -482,6 +482,7 @@ public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMap List<CycleCountDetail> cycs = new ArrayList<>(); /* 根据当前明细条目的盘点首选Code,取出显示要求,再根据显示要求隐藏或显示字段*/ + /*//配置表 ConfigValue configValue = new ConfigValue(); configValue.setModuleType("cyclecount"); @@ -503,9 +504,6 @@ public class CycleCountDetailServiceImpl extends ServiceImpl<CycleCountDetailMap if(cycleCountPreference == null){ throw new SecurityException("没有对应的盘点首选项!"); } - if(cycleCountPreference.getEnable() == false){ - throw new SecurityException("当前默认选中盘点首选项已停用!"); - } //判断字段 if(cycleCountPreference.getPromptLocation() == false){ //库位 diff --git a/src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderServiceImpl.java b/src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderServiceImpl.java index 4a8bd03..e37724a 100644 --- a/src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderServiceImpl.java +++ b/src/main/java/com/huaheng/pc/shipment/shipmentHeader/service/ShipmentHeaderServiceImpl.java @@ -108,6 +108,7 @@ public class ShipmentHeaderServiceImpl extends ServiceImpl<ShipmentHeaderMapper, //说明没有货箱,则直接首位均为新建 shipmentHeader.setFirstStatus(100); shipmentHeader.setLastStatus(100); + this.saveOrUpdate(shipmentHeader); }else { int firstStatus = map.get("maxStatus"); diff --git a/src/main/java/com/huaheng/pc/shipment/shippingCombination/service/ShippingCombinationService.java b/src/main/java/com/huaheng/pc/shipment/shippingCombination/service/ShippingCombinationService.java index e01c992..6a758cf 100644 --- a/src/main/java/com/huaheng/pc/shipment/shippingCombination/service/ShippingCombinationService.java +++ b/src/main/java/com/huaheng/pc/shipment/shippingCombination/service/ShippingCombinationService.java @@ -78,7 +78,7 @@ public class ShippingCombinationService { //根据sql查库存 try { - list = inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll(),shipmentPreference); + list = inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getStatements(),shipmentPreference); }catch (Exception e){ throw new ServiceException("sql错误"); } @@ -98,7 +98,7 @@ public class ShippingCombinationService { } //根据sql查库存 - list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll(),shipmentPreference); + list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getStatements(),shipmentPreference); return list; } @@ -112,7 +112,7 @@ public class ShippingCombinationService { } //根据sql查库存 - list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll(),shipmentPreference); + list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getStatements(),shipmentPreference); return list; } diff --git a/src/main/java/com/huaheng/pc/task/taskDetail/controller/TaskDetailController.java b/src/main/java/com/huaheng/pc/task/taskDetail/controller/TaskDetailController.java index beffabf..e85401e 100644 --- a/src/main/java/com/huaheng/pc/task/taskDetail/controller/TaskDetailController.java +++ b/src/main/java/com/huaheng/pc/task/taskDetail/controller/TaskDetailController.java @@ -9,6 +9,7 @@ import com.huaheng.common.utils.security.ShiroUtils; import com.huaheng.framework.web.page.PageDomain; import com.huaheng.framework.web.page.TableSupport; import com.huaheng.pc.task.taskDetail.service.TaskDetailService; +import com.huaheng.pc.task.taskHeader.domain.TaskHeader; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; @@ -41,6 +42,9 @@ public class TaskDetailController extends BaseController @Resource private TaskDetailService taskDetailService; + + + @RequiresPermissions("task:taskHeader:view") @GetMapping("/{taskId}") public String taskDetail(@PathVariable("taskId") String taskId, ModelMap mmap) @@ -67,17 +71,32 @@ public class TaskDetailController extends BaseController Integer pageSize = pageDomain.getPageSize(); /** * 使用分页查询 + * 700盘点 */ if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ Page<TaskDetail> page = new Page<>(pageNum, pageSize); IPage<TaskDetail> iPage = taskDetailService.page(page, lambdaQueryWrapper); - return getMpDataTable(iPage.getRecords(), iPage.getTotal()); + List<TaskDetail> iPages = iPage.getRecords(); + for(TaskDetail item:iPages){ + if(item.getTaskType() == 700){ + iPages = taskDetailService.preferenceRealize(iPages) ; + } + } + return getMpDataTable(iPages, iPage.getTotal()); } else { List<TaskDetail> list = taskDetailService.list(lambdaQueryWrapper); + for(TaskDetail items:list){ + if(items.getTaskType() == 700){ + list = taskDetailService.preferenceRealize(list); + } + } return getDataTable(list); } - } + + + + // /** // * 新增立库任务明细 // */ diff --git a/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailService.java b/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailService.java index f5ac425..774d896 100644 --- a/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailService.java +++ b/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailService.java @@ -1,8 +1,14 @@ package com.huaheng.pc.task.taskDetail.service; +import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail; import com.huaheng.pc.task.taskDetail.domain.TaskDetail; import com.baomidou.mybatisplus.extension.service.IService; + +import java.util.List; + public interface TaskDetailService extends IService<TaskDetail>{ + List<TaskDetail> preferenceRealize (List<TaskDetail> cycleCoutDetailList); + } diff --git a/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailServiceImpl.java b/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailServiceImpl.java index 2b2343f..710916b 100644 --- a/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailServiceImpl.java +++ b/src/main/java/com/huaheng/pc/task/taskDetail/service/TaskDetailServiceImpl.java @@ -1,13 +1,97 @@ package com.huaheng.pc.task.taskDetail.service; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.huaheng.pc.config.configValue.domain.ConfigValue; +import com.huaheng.pc.config.configValue.service.ConfigValueService; +import com.huaheng.pc.config.cycleCountPreference.domain.CycleCountPreference; +import com.huaheng.pc.config.cycleCountPreference.service.CycleCountPreferenceService; +import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail; +import com.huaheng.pc.inventory.cycleCountDetail.service.CycleCountDetailService; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.List; +import java.util.WeakHashMap; + import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.huaheng.pc.task.taskDetail.mapper.TaskDetailMapper; import com.huaheng.pc.task.taskDetail.domain.TaskDetail; import com.huaheng.pc.task.taskDetail.service.TaskDetailService; +import org.springframework.transaction.annotation.Transactional; + @Service public class TaskDetailServiceImpl extends ServiceImpl<TaskDetailMapper, TaskDetail> implements TaskDetailService{ + + @Resource + private CycleCountDetailService cycleCountDetailService; + @Resource + private CycleCountPreferenceService cycleCountPreferenceService; + + + + + + /** + * 盘点任务首选项 + * @param taskDetailList + * @return + */ + @Transactional + @Override + public List<TaskDetail> preferenceRealize(List<TaskDetail> taskDetailList) { + /*查出盘点明细,找出盘点首选项,根据首选项显示字段*/ + List<TaskDetail> taskDetails = new ArrayList<>(); + + for (TaskDetail item:taskDetailList){ + //盘点明细 + CycleCountDetail cycleCountDetailtemp = new CycleCountDetail(); + cycleCountDetailtemp.setCycleCountHeadCode(item.getBillCode()); + cycleCountDetailtemp.setId(item.getBillDetailId()); + LambdaQueryWrapper<CycleCountDetail> detailLambdaQueryWrapper = Wrappers.lambdaQuery(cycleCountDetailtemp); + CycleCountDetail cycleCountDetail = cycleCountDetailService.getOne(detailLambdaQueryWrapper); + if(cycleCountDetail == null){ + throw new SecurityException("没有找到子任务对应的盘点明细!"); + } + //找盘点首选项 + CycleCountPreference cycleCountPreferenceTemp = new CycleCountPreference(); + cycleCountPreferenceTemp.setCode(cycleCountDetail.getPreferenceCode()); + cycleCountPreferenceTemp.setWarehouseCode(cycleCountDetail.getWarehouseCode()); + LambdaQueryWrapper<CycleCountPreference> preferenceLambdaQueryWrapper = Wrappers.lambdaQuery(cycleCountPreferenceTemp); + CycleCountPreference cycleCountPreference = cycleCountPreferenceService.getOne(preferenceLambdaQueryWrapper); + if(cycleCountPreference == null){ + throw new SecurityException("没有找到盘点首选项!"); + } + //根据首选项判断数据 + if(cycleCountPreference.getPromptLocation() == false){ + //库位 + item.setFromLocation(""); + item.setToLocation(""); + } + if(cycleCountPreference.getPromptLpn() == false){ + //容器 + item.setContainerCode(""); + } + if(cycleCountPreference.getPromptItem() == false){ + //物料 + item.setMaterialCode(""); + item.setMaterialName(""); + item.setMaterialUnit(""); + } + if(cycleCountPreference.getPromptQuantity() == false){ + //系统数量 + item.setQty(null); + } + taskDetails.add(item); + } + return taskDetails; + } + + + + + + + } 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 28da9f8..ff86b47 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 @@ -16,6 +16,9 @@ import com.huaheng.framework.web.page.TableDataInfo; import com.huaheng.framework.web.page.TableSupport; import com.huaheng.pc.config.material.service.MaterialService; import com.huaheng.pc.config.warehouse.domain.Warehouse; +import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail; +import com.huaheng.pc.task.taskDetail.domain.TaskDetail; +import com.huaheng.pc.task.taskDetail.service.TaskDetailService; import com.huaheng.pc.task.taskHeader.domain.TaskHeader; import com.huaheng.pc.task.taskHeader.mapper.TaskHeaderMapper; import com.huaheng.pc.task.taskHeader.service.TaskHeaderService; @@ -36,23 +39,23 @@ import java.util.List; public class TaskHeaderController extends BaseController { + + @Resource + private TaskHeaderService taskHeaderService; + + + private String prefix = "task/taskHeader"; + @RequiresPermissions("task:taskHeader:view") @GetMapping() public String taskHeader(HttpServletRequest request, ModelMap mmap) { - String InternalTaskType= request.getParameter("InternalTaskType"); + String InternalTaskType= request.getParameter("InternalTaskType"); mmap.put("InternalTaskType",InternalTaskType); return prefix + "/taskHeader"; } - - @Resource - private TaskHeaderService taskHeaderService; - - - - /** * 查询任务列表 */ @@ -83,14 +86,20 @@ public class TaskHeaderController extends BaseController { if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ Page<TaskHeader> page = new Page<>(pageNum, pageSize); IPage<TaskHeader> iPage = taskHeaderService.page(page, lambdaQueryWrapper); - return getMpDataTable(iPage.getRecords(), iPage.getTotal()); + List<TaskHeader> iPages = iPage.getRecords(); + if(InternalTaskType == 700){ + iPages = taskHeaderService.preferenceRealize(iPages) ; + } + return getMpDataTable(iPages, iPage.getTotal()); } else { List<TaskHeader> list = taskHeaderService.list(lambdaQueryWrapper); + if(InternalTaskType == 700){ + list = taskHeaderService.preferenceRealize(list); + } return getDataTable(list); } } - /** * 下发任务 */ diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java b/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java index 24a90d6..c246e27 100644 --- a/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java +++ b/src/main/java/com/huaheng/pc/task/taskHeader/service/TaskHeaderService.java @@ -1,6 +1,7 @@ package com.huaheng.pc.task.taskHeader.service; import com.huaheng.framework.web.domain.AjaxResult; +import com.huaheng.pc.inventory.cycleCountDetail.domain.CycleCountDetail; import com.huaheng.pc.task.taskHeader.domain.ShipmentTaskCreateModel; import com.huaheng.pc.task.taskHeader.domain.TaskHeader; import com.baomidou.mybatisplus.extension.service.IService; @@ -24,7 +25,6 @@ public interface TaskHeaderService extends IService<TaskHeader>{ AjaxResult createTransferTask(String sourceLocation, String destinationLocation); - AjaxResult createCheckOutTask(String[] ids); AjaxResult completeSeeOutTask(TaskHeader taskHeader); @@ -39,5 +39,7 @@ public interface TaskHeaderService extends IService<TaskHeader>{ AjaxResult cancelTask(Integer[] taskIds) ; + List<TaskHeader> preferenceRealize (List<TaskHeader> taskHeaderList); + } 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 5e79b92..d62aa4f 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 @@ -106,6 +106,24 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea private TaskAssignService taskAssignService; + /** + * 盘点任务首选项 + * @param taskHeaderList + * @return + */ + @Transactional + @Override + public List<TaskHeader> preferenceRealize(List<TaskHeader> taskHeaderList) { + //任务头,默认不显示库位,容器。 + List<TaskHeader> taskHeaders = new ArrayList<>(); + for(TaskHeader item:taskHeaderList){ + item.setFromLocation(""); + item.setToLocation(""); + item.setContainerCode(""); + taskHeaders.add(item); + } + return taskHeaders; + } /** * 查询容器有无任务 @@ -426,9 +444,9 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea throw new ServiceException("任务(" + taskId + ")任务已经是完成的!"); } //如果没有库位不能完成 - if (StringUtils.isEmpty(task.getFromLocation())) { - throw new ServiceException("任务" + taskId + "没有库位,执行中止"); - } +// if (StringUtils.isEmpty(task.getFromLocation())) { +// throw new ServiceException("任务" + taskId + "没有库位,执行中止"); +// } this.completeTask(task); } @@ -1157,6 +1175,8 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea taskDetail.setCompanyCode(task.getCompanyCode()); taskDetail.setMaterialCode(item.getMaterialCode()); taskDetail.setMaterialName(item.getMaterialName()); + taskDetail.setMaterialSpec(item.getMaterialSpec()); + taskDetail.setMaterialUnit(item.getMaterialUnit()); taskDetail.setBillCode(item.getReceiptCode()); taskDetail.setBillDetailId(item.getReceiptDetailId()); taskDetail.setBillCode(item.getReceiptCode()); diff --git a/src/main/resources/templates/config/filterConfigDetail/add.html b/src/main/resources/templates/config/filterConfigDetail/add.html index 1bf507e..7a557fe 100644 --- a/src/main/resources/templates/config/filterConfigDetail/add.html +++ b/src/main/resources/templates/config/filterConfigDetail/add.html @@ -24,12 +24,12 @@ <!--<input id="recordType" name="recordType" class="form-control" type="text">--> <!--</div>--> <!--</div>--> - <div class="form-group"> - <label class="col-sm-3 control-label">条件名:</label> - <div class="col-sm-8"> - <input id="filterCode" name="filterCode" class="form-control" type="text"> - </div> - </div> + <!--<div class="form-group">--> + <!--<label class="col-sm-3 control-label">条件名:</label>--> + <!--<div class="col-sm-8">--> + <!--<input id="filterCode" name="filterCode" class="form-control" type="text">--> + <!--</div>--> + <!--</div>--> <div class="form-group"> <label class="col-sm-3 control-label">描述:</label> <div class="col-sm-8"> @@ -43,6 +43,12 @@ </div> </div> <div class="form-group"> + <label class="col-sm-3 control-label">后续分组排序:</label> + <div class="col-sm-8"> + <input id="statements" name="statements" class="form-control" type="text"> + </div> + </div> + <div class="form-group"> <label class="col-sm-3 control-label">是否系统创建:</label> <div class="col-sm-8"> <div class="onoffswitch"> @@ -82,15 +88,6 @@ code:{ required:true, }, - // moduleType:{ - // required:true, - // }, - // recordType:{ - // required:true, - // }, - filterCode:{ - required:true, - }, }, submitHandler: function(form) { // $.operate.save(prefix + "/add", $('#form-locationType-add').serialize()); diff --git a/src/main/resources/templates/config/filterConfigDetail/edit.html b/src/main/resources/templates/config/filterConfigDetail/edit.html index 0dc9136..cecdd27 100644 --- a/src/main/resources/templates/config/filterConfigDetail/edit.html +++ b/src/main/resources/templates/config/filterConfigDetail/edit.html @@ -25,12 +25,7 @@ <!--<input id="recordType" name="recordType" class="form-control" type="text" th:field="*{recordType}">--> <!--</div>--> <!--</div>--> - <div class="form-group"> - <label class="col-sm-3 control-label">条件名:</label> - <div class="col-sm-8"> - <input id="filterCode" name="filterCode" class="form-control" type="text" th:field="*{filterCode}"> - </div> - </div> + <div class="form-group"> <label class="col-sm-3 control-label">描述:</label> <div class="col-sm-8"> @@ -83,15 +78,6 @@ code:{ required:true, }, - // moduleType:{ - // required:true, - // }, - // recordType:{ - // required:true, - // }, - filterCode:{ - required:true, - }, }, submitHandler: function(form) { // $.operate.save(prefix + "/add", $('#form-locationType-add').serialize()); diff --git a/src/main/resources/templates/config/filterConfigDetail/filterConfigDetail.html b/src/main/resources/templates/config/filterConfigDetail/filterConfigDetail.html index b728ed2..feef6db 100644 --- a/src/main/resources/templates/config/filterConfigDetail/filterConfigDetail.html +++ b/src/main/resources/templates/config/filterConfigDetail/filterConfigDetail.html @@ -92,6 +92,10 @@ title : '全SQL' }, { + field : 'statements', + title : '后续分组排序' + }, + { field : 'systemCreated', title : '是否系统创建', formatter: function (value, item, index) { diff --git a/src/main/resources/templates/config/waveMaster/add.html b/src/main/resources/templates/config/waveMaster/add.html index 03fade8..7e1217e 100644 --- a/src/main/resources/templates/config/waveMaster/add.html +++ b/src/main/resources/templates/config/waveMaster/add.html @@ -68,21 +68,25 @@ <div class="form-group"> <label class="col-sm-3 control-label">是否补货:</label> <div class="col-sm-8"> - <div class="radio radio-info radio-inline" style="transform: scale(1.1, 1.1);"> - <input type="radio" id="needReplenishment1" name="needReplenishment" value="true" checked="checked" - class="radio_select"> - <label for="needReplenishment1">是</label> - </div> - <div class="radio radio-danger radio-inline " style="transform: scale(1.1, 1.1);"> - <input type="radio" id="needReplenishment2" name="needReplenishment" value="false"> - <label for="needReplenishment2">否</label> + <div class="onoffswitch"> + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="needReplenishment" name="needReplenishment"> + <label class="onoffswitch-label" for="needReplenishment"> + <span class="onoffswitch-inner"></span> + <span class="onoffswitch-switch"></span> + </label> </div> </div> </div> <div class="form-group"> <label class="col-sm-3 control-label">取消波次时保留补货任务:</label> <div class="col-sm-8"> - <input id="holdRplnTask" name="holdRplnTask" class="form-control" type="text"> + <div class="onoffswitch"> + <input type="checkbox" th:checked="true" class="onoffswitch-checkbox" id="holdRplnTask" name="holdRplnTask"> + <label class="onoffswitch-label" for="holdRplnTask"> + <span class="onoffswitch-inner"></span> + <span class="onoffswitch-switch"></span> + </label> + </div> </div> </div> <!--<div class="form-group"> diff --git a/src/main/resources/templates/config/waveMaster/edit.html b/src/main/resources/templates/config/waveMaster/edit.html index a95770c..a2e2383 100644 --- a/src/main/resources/templates/config/waveMaster/edit.html +++ b/src/main/resources/templates/config/waveMaster/edit.html @@ -69,23 +69,28 @@ <div class="form-group"> <label class="col-sm-3 control-label">是否补货:</label> <div class="col-sm-8"> - <div class="radio radio-info radio-inline" style="transform: scale(1.1, 1.1);"> - <input type="radio" id="needReplenishment1" name="needReplenishment" value="true" th:field="*{needReplenishment}" - class="radio_select"> - <label for="needReplenishment1">是</label> - </div> - <div class="radio radio-danger radio-inline " style="transform: scale(1.1, 1.1);"> - <input type="radio" id="needReplenishment2" name="needReplenishment" value="false" th:field="*{needReplenishment}"> - <label for="needReplenishment2">否</label> + <div class="onoffswitch"> + <input type="checkbox" th:checked="*{needReplenishment}" class="onoffswitch-checkbox" id="needReplenishment" name="needReplenishment"> + <label class="onoffswitch-label" for="needReplenishment"> + <span class="onoffswitch-inner"></span> + <span class="onoffswitch-switch"></span> + </label> </div> </div> </div> <div class="form-group"> <label class="col-sm-3 control-label">取消波次时保留补货任务:</label> <div class="col-sm-8"> - <input id="holdRplnTask" name="holdRplnTask" class="form-control" type="text" th:field="*{holdRplnTask}"> + <div class="onoffswitch"> + <input type="checkbox" th:checked="*{holdRplnTask}" class="onoffswitch-checkbox" id="holdRplnTask" name="holdRplnTask"> + <label class="onoffswitch-label" for="holdRplnTask"> + <span class="onoffswitch-inner"></span> + <span class="onoffswitch-switch"></span> + </label> + </div> </div> </div> + <!--<div class="form-group"> <label class="col-sm-3 control-label">数据版本:</label> <div class="col-sm-8"> diff --git a/src/main/resources/templates/config/waveMaster/waveMaster.html b/src/main/resources/templates/config/waveMaster/waveMaster.html index 496759c..9654780 100644 --- a/src/main/resources/templates/config/waveMaster/waveMaster.html +++ b/src/main/resources/templates/config/waveMaster/waveMaster.html @@ -104,8 +104,8 @@ <div class="tab-pane fade" id="tabDetail"> <div class="btn-group hidden-xs" id="toolbar2" role="group"> - <a class="btn btn-outline btn-success btn-rounded" onclick="detailAdd()" - shiro:hasPermission="config:waveFlowHeader:add"> + <a class="btn btn-outline btn-success btn-rounded" onclick="detailAdd()" style="display:none;" + id="detailAdd" shiro:hasPermission="config:waveFlowHeader:add"> <i class="fa fa-plus"></i> 新增 </a> <a class="btn btn-outline btn-danger btn-rounded" onclick="detailBatRemove()" @@ -216,7 +216,15 @@ }, { field : 'holdRplnTask', - title : '取消波次时保留补货任务' + title : '取消波次时保留补货任务', + formatter: function (value, item, index) { + if (value==true) { + return '<span class="badge" style="background-color: #00B83F;color: white;width: 36px;">' + ' 是 ' + '</span>'; + } + else if (value==false) { + return '<span class="badge" style="background-color: #ff0000;color: white;width: 36px;">' + ' 否 ' + '</span>'; + } + } }, { field : 'created', @@ -524,6 +532,7 @@ function detailReg(rowId){ headerId = rowId; + $("#detailAdd").css("display","block"); detail(); } @@ -598,7 +607,7 @@ } function detailAdd() { - var url = prefix2+"/add"; + var url = prefix2+"/add/"+headerId; $.modal.open("添加明细", url); } diff --git a/src/main/resources/templates/task/taskHeader/taskHeader.html b/src/main/resources/templates/task/taskHeader/taskHeader.html index 5749be0..506ddcc 100644 --- a/src/main/resources/templates/task/taskHeader/taskHeader.html +++ b/src/main/resources/templates/task/taskHeader/taskHeader.html @@ -283,11 +283,11 @@ }, { field : 'id', - title : '明细Id' + title : '明细ID' }, { field : 'taskId', - title : '任务Id', + title : '任务头ID', sortable: true }, { @@ -295,17 +295,23 @@ title : '单据编码', }, { + field : 'billDetailId', + title : '单据明细ID', + sortable: true, + visible:true, + }, + { field : 'materialCode', - title : '存货编码', - sortable: true + title : '物料编码', + }, { field : 'materialName', title : '物料名称', - sortable:true + }, { - field : 'project', + field : 'projectNo', title : '项目号', }, { @@ -495,14 +501,6 @@ $.operate.submit(url, "post", "json", data); }) } - - function emptyIn() { - $.modal.open("空托盘入库",prefix+"/emptyIn") - } - - function emptyOut() { - $.modal.open("空托盘出库",prefix+"/emptyOut") - } function queryParams(params) { return {