diff --git a/.idea/MyBatisCodeHelperDatasource.xml b/.idea/MyBatisCodeHelperDatasource.xml index 86bf49b..26774c4 100644 --- a/.idea/MyBatisCodeHelperDatasource.xml +++ b/.idea/MyBatisCodeHelperDatasource.xml @@ -5,9 +5,9 @@ <ProjectProfile> <option name="addSerializeUid" value="true" /> <option name="generateService" value="true" /> - <option name="javaMapperPackage" value="com.huaheng.pc.config.configValue.mapper" /> + <option name="javaMapperPackage" value="com.huaheng.pc.inventory.adjust.mapper" /> <option name="javaMapperPath" value="$PROJECT_DIR$/src/main/java" /> - <option name="javaModelPackage" value="com.huaheng.pc.config.configValue.domain" /> + <option name="javaModelPackage" value="com.huaheng.pc.inventory.adjust.domain" /> <option name="javaModelPath" value="$PROJECT_DIR$/src/main/java" /> <option name="lastDatabaseCrudChooseModuleName" value="huaheng" /> <option name="moduleNameToPackageAndPathMap"> @@ -29,13 +29,13 @@ <entry key="huaheng"> <value> <UserPackageAndPathInfoByModule> - <option name="javaMapperPackage" value="com.huaheng.pc.config.configValue.mapper" /> + <option name="javaMapperPackage" value="com.huaheng.pc.inventory.adjust.mapper" /> <option name="javaMapperPath" value="$PROJECT_DIR$/src/main/java" /> - <option name="javaModelPacakge" value="com.huaheng.pc.config.configValue.domain" /> + <option name="javaModelPacakge" value="com.huaheng.pc.inventory.adjust.domain" /> <option name="javaModelPath" value="$PROJECT_DIR$/src/main/java" /> - <option name="javaServicePackage" value="com.huaheng.pc.config.configValue.service" /> + <option name="javaServicePackage" value="com.huaheng.pc.inventory.adjust.service" /> <option name="javaServicePath" value="$PROJECT_DIR$/src/main/java" /> - <option name="xmlPackage" value="config" /> + <option name="xmlPackage" value="inventory" /> <option name="xmlPath" value="E:\code\wms2\src\main\resources\mybatis" /> </UserPackageAndPathInfoByModule> </value> @@ -135,16 +135,6 @@ </TableGenerateConfig> </value> </entry> - <entry key="wms_v2:config_value"> - <value> - <TableGenerateConfig> - <option name="generatedKey" value="id" /> - <option name="javaModelName" value="ConfigValue" /> - <option name="moduleName" value="huaheng" /> - <option name="useActualColumnName" value="true" /> - </TableGenerateConfig> - </value> - </entry> <entry key="wms_v2:container"> <value> <TableGenerateConfig> @@ -275,16 +265,6 @@ </TableGenerateConfig> </value> </entry> - <entry key="wms_v2:material_type"> - <value> - <TableGenerateConfig> - <option name="generatedKey" value="id" /> - <option name="javaModelName" value="MaterialType" /> - <option name="moduleName" value="huaheng" /> - <option name="useActualColumnName" value="true" /> - </TableGenerateConfig> - </value> - </entry> <entry key="wms_v2:material_unit"> <value> <TableGenerateConfig> @@ -571,7 +551,7 @@ <option name="useLomBokOnModel" value="true" /> <option name="useSwagger" value="true" /> <option name="userMybatisPlus" value="true" /> - <option name="xmlMapperPackage" value="config" /> + <option name="xmlMapperPackage" value="inventory" /> <option name="xmlMapperPath" value="E:\code\wms2\src\main\resources\mybatis" /> </ProjectProfile> </option> diff --git a/.idea/WMSV1.iml b/.idea/WMSV1.iml deleted file mode 100644 index 88aff5d..0000000 --- a/.idea/WMSV1.iml +++ /dev/null @@ -1,17 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<module type="JAVA_MODULE" version="4"> - <component name="FacetManager"> - <facet type="Spring" name="Spring"> - <configuration /> - </facet> - <facet type="web" name="Web"> - <configuration> - <webroots /> - <sourceRoots> - <root url="file://$MODULE_DIR$/src/main/java" /> - <root url="file://$MODULE_DIR$/src/main/resources" /> - </sourceRoots> - </configuration> - </facet> - </component> -</module> \ No newline at end of file diff --git a/src/main/java/com/huaheng/pc/config/statusFlow/controller/StatusFlowDetailController.java b/src/main/java/com/huaheng/pc/config/statusFlow/controller/StatusFlowDetailController.java index 7322de5..3622ce4 100644 --- a/src/main/java/com/huaheng/pc/config/statusFlow/controller/StatusFlowDetailController.java +++ b/src/main/java/com/huaheng/pc/config/statusFlow/controller/StatusFlowDetailController.java @@ -65,7 +65,7 @@ public class StatusFlowDetailController extends BaseController { lambdaQueryWrapper.gt(StringUtils.isNotEmpty(createdBegin), StatusFlowDetail::getCreated, createdBegin) .lt(StringUtils.isNotEmpty(createdEnd), StatusFlowDetail::getCreated, createdEnd) .eq(StatusFlowDetail::getWarehouseCode, ShiroUtils.getWarehouseCode()) - .eq(StringUtils.isNotNull(statusFlowDetail.getHeaderId()), + .eq(StringUtils.isNull(statusFlowDetail.getHeaderId()), StatusFlowDetail::getHeaderId, statusFlowDetail.getHeaderId()) .eq(StringUtils.isNotEmpty(statusFlowDetail.getFlowCode()), StatusFlowDetail::getFlowCode, statusFlowDetail.getFlowCode()) diff --git a/src/main/java/com/huaheng/pc/inventory/adjustDetail/controller/adjustDetailController.java b/src/main/java/com/huaheng/pc/inventory/adjustDetail/controller/adjustDetailController.java index 7620d16..601ef19 100644 --- a/src/main/java/com/huaheng/pc/inventory/adjustDetail/controller/adjustDetailController.java +++ b/src/main/java/com/huaheng/pc/inventory/adjustDetail/controller/adjustDetailController.java @@ -66,6 +66,7 @@ public class adjustDetailController extends BaseController { .le(StringUtils.isNotEmpty(createdEnd), AdjustDetail::getCreated, createdEnd)//创建时间范围 .eq(AdjustDetail::getWarehouseCode, ShiroUtils.getWarehouseCode()) //仓库 .eq(adjustDetail.getId() != null, AdjustDetail::getId, adjustDetail.getId())//ID + .eq(StringUtils.isNotEmpty(adjustDetail.getAdjustCode()),AdjustDetail::getAdjustCode,adjustDetail.getAdjustCode())//调整单编码 .orderByDesc(AdjustDetail::getId); diff --git a/src/main/java/com/huaheng/pc/inventory/adjustDetail/domain/AdjustDetail.java b/src/main/java/com/huaheng/pc/inventory/adjustDetail/domain/AdjustDetail.java index 9014bf4..fb36eb4 100644 --- a/src/main/java/com/huaheng/pc/inventory/adjustDetail/domain/AdjustDetail.java +++ b/src/main/java/com/huaheng/pc/inventory/adjustDetail/domain/AdjustDetail.java @@ -235,5 +235,20 @@ public class AdjustDetail implements Serializable { @ApiModelProperty(value="处理标记") private String processStamp; + /** + * 库位编号 + * */ + @TableField(value = "locationCode") + @ApiModelProperty(value = "库位") + private String locationCode; + + /** + *容器编号 + * */ + @TableField(value = "containerCode") + @ApiModelProperty(value = "容器编码") + private String containerCode; + + private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/src/main/java/com/huaheng/pc/receipt/receiptDetail/controller/ReceiptDetailController.java b/src/main/java/com/huaheng/pc/receipt/receiptDetail/controller/ReceiptDetailController.java index 0521038..5b977d1 100644 --- a/src/main/java/com/huaheng/pc/receipt/receiptDetail/controller/ReceiptDetailController.java +++ b/src/main/java/com/huaheng/pc/receipt/receiptDetail/controller/ReceiptDetailController.java @@ -139,21 +139,21 @@ public class ReceiptDetailController extends BaseController { /** * 删除入库单 */ - @ApiOperation(value="删除入库单 ", notes="删除入库单 ", httpMethod = "POST") - @RequiresPermissions("receipt:receiptDetail:remove") - @Log(title = "入库-入库单 ",operating = "删除入库单 ", action = BusinessType.INSERT) - @PostMapping("/remove") - @ResponseBody - public AjaxResult remove(String ids) { - if (StringUtils.isEmpty(ids)){ - return AjaxResult.error("id为空"); - } - List<Integer> list = new ArrayList<>(); - for (Integer id : Convert.toIntArray(ids)){ - list.add(id); - } - return toAjax(receiptDetailService.removeByIds(list)); - } + //@ApiOperation(value="删除入库单 ", notes="删除入库单 ", httpMethod = "POST") + //@RequiresPermissions("receipt:receiptDetail:add") + //@Log(title = "入库-入库单 ",operating = "修改入库单 ", action = BusinessType.INSERT) + //@PostMapping("/edit") + //@ResponseBody + //public AjaxResult remove(String ids) { + // if (StringUtils.isEmpty(ids)){ + // return AjaxResult.error("id为空"); + // } + // List<Integer> list = new ArrayList<>(); + // for (Integer id : Convert.toIntArray(ids)){ + // list.add(id); + // } + // return toAjax(receiptDetailService.removeByIds(list)); + //} /** * 审核入库单 diff --git a/src/main/java/com/huaheng/pc/receipt/receiptDetailHistory/controller/ReceiptDetailHistoryController.java b/src/main/java/com/huaheng/pc/receipt/receiptDetailHistory/controller/ReceiptDetailHistoryController.java deleted file mode 100644 index a66287c..0000000 --- a/src/main/java/com/huaheng/pc/receipt/receiptDetailHistory/controller/ReceiptDetailHistoryController.java +++ /dev/null @@ -1,81 +0,0 @@ -package com.huaheng.pc.receipt.receiptDetailHistory.controller; - -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.common.utils.StringUtils; -import com.huaheng.framework.aspectj.lang.annotation.Log; -import com.huaheng.framework.aspectj.lang.constant.BusinessType; -import com.huaheng.framework.web.controller.BaseController; -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.receipt.receiptDetailHistory.domain.ReceiptDetailHistory; -import com.huaheng.pc.receipt.receiptDetailHistory.service.ReceiptDetailHistoryService; -import com.huaheng.pc.receipt.receiptHeaderHistory.domain.ReceiptHeaderHistory; -import com.huaheng.pc.receipt.receiptHeaderHistory.service.ReceiptHeaderHistoryService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import io.swagger.annotations.ApiParam; -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.springframework.stereotype.Controller; -import org.springframework.ui.ModelMap; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -@Api(tags = "历史入库明细") -@Controller -@RequestMapping("/receipt/receiptDetailHistory") -public class ReceiptDetailHistoryController extends BaseController { - - @Resource - private ReceiptDetailHistoryService receiptDetailHistoryService; - - @Resource - private ReceiptHeaderHistoryService receiptHeaderHistoryService; - - private String prefix = "receipt/receiptDetailHistory"; - - @RequiresPermissions("receipt:receiptDetail:view") - @Log(title = "入库-厉史入库详情列表", operating = "历史入库详情列表", action = BusinessType.GRANT) - @GetMapping("/list/{id}") - public String list(@PathVariable("id")Integer id, ModelMap mmap) { - ReceiptHeaderHistory receiptHeaderHistory = receiptHeaderHistoryService.getById(id); - mmap.put("receiptId", id); - mmap.put("receiptCode", receiptHeaderHistory.getCode()); - return prefix+"/receiptDetail"; - } - - /** - * 查询入库详情 - */ - @ApiOperation(value="查看入库详情", notes="根据头表id获取入库单明细信息", httpMethod = "POST") - @RequiresPermissions("receipt:receiptDetail:list") - @Log(title = "入库-入库单明细管理", operating = "查看入库单明细", action = BusinessType.GRANT) - @PostMapping("/list") - @ResponseBody - public TableDataInfo list(@ApiParam(name="receiptDetail",value="入库详情") ReceiptDetailHistory receiptDetail, - @ApiParam(name = "createdBegin", value = "起止时间") String createdBegin, - @ApiParam(name = "createdEnd", value = "结束时间") String createdEnd) { - LambdaQueryWrapper<ReceiptDetailHistory> lambdaQueryWrapper = Wrappers.lambdaQuery(); - PageDomain pageDomain = TableSupport.buildPageRequest(); - Integer pageNum = pageDomain.getPageNum(); - Integer pageSize = pageDomain.getPageSize(); - lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin), ReceiptDetailHistory::getCreated, createdBegin) - .le(StringUtils.isNotEmpty(createdEnd), ReceiptDetailHistory::getCreated, createdEnd) - .eq(ReceiptDetailHistory::getReceiptId, receiptDetail.getReceiptId()); - - if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ - /*使用分页查询*/ - Page<ReceiptDetailHistory> page = new Page<>(pageNum, pageSize); - IPage<ReceiptDetailHistory> iPage = receiptDetailHistoryService.page(page, lambdaQueryWrapper); - return getMpDataTable(iPage.getRecords(), iPage.getTotal()); - } else { - List<ReceiptDetailHistory> list = receiptDetailHistoryService.list(lambdaQueryWrapper); - return getDataTable(list); - } - } -} diff --git a/src/main/java/com/huaheng/pc/receipt/receiptHeaderHistory/controller/ReceiptHeaderHistoryController.java b/src/main/java/com/huaheng/pc/receipt/receiptHeaderHistory/controller/ReceiptHeaderHistoryController.java deleted file mode 100644 index 5645228..0000000 --- a/src/main/java/com/huaheng/pc/receipt/receiptHeaderHistory/controller/ReceiptHeaderHistoryController.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.huaheng.pc.receipt.receiptHeaderHistory.controller; - -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.common.utils.StringUtils; -import com.huaheng.common.utils.security.ShiroUtils; -import com.huaheng.framework.aspectj.lang.annotation.Log; -import com.huaheng.framework.aspectj.lang.constant.BusinessType; -import com.huaheng.framework.web.controller.BaseController; -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.receipt.receiptHeaderHistory.domain.ReceiptHeaderHistory; -import com.huaheng.pc.receipt.receiptHeaderHistory.service.ReceiptHeaderHistoryService; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiParam; -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; - -import javax.annotation.Resource; -import java.util.List; - -@Api(tags = "入库单历史") -@Controller -@RequestMapping("/receipt/receiptHeaderHistory") -public class ReceiptHeaderHistoryController extends BaseController { - - private String prefix="receipt/receiptHeaderHistory"; - - @Resource - private ReceiptHeaderHistoryService receiptHeaderHistoryService; - - @RequiresPermissions("receipt:receiptHeaderHistory:view") - @GetMapping() - public String containerCapacity() - { - return prefix + "/receiptHeaderHistory"; - } - - /** - * 查询入库单 - */ - @RequiresPermissions("receipt:receiptHeader:list") - @Log(title = "入库-入库单头表", operating = "查看入库单列表", action = BusinessType.GRANT) - @PostMapping("/list") - @ResponseBody - public TableDataInfo list(@ApiParam(name="receiptDetail",value="入库头表") ReceiptHeaderHistory receiptHeader, - @ApiParam(name = "createdBegin", value = "起止时间") String createdBegin, - @ApiParam(name = "createdEnd", value = "结束时间") String createdEnd) { - LambdaQueryWrapper<ReceiptHeaderHistory> lambdaQueryWrapper = Wrappers.lambdaQuery(); - PageDomain pageDomain = TableSupport.buildPageRequest(); - Integer pageNum = pageDomain.getPageNum(); - Integer pageSize = pageDomain.getPageSize(); - - lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin), ReceiptHeaderHistory::getCreated, createdBegin) - .le(StringUtils.isNotEmpty(createdEnd), ReceiptHeaderHistory::getCreated, createdEnd) - .in(ReceiptHeaderHistory::getCompanyCode, ShiroUtils.getCompanyCodeList()) - .eq(ReceiptHeaderHistory::getWarehouseCode, ShiroUtils.getWarehouseCode()) - .eq(StringUtils.isNotEmpty(receiptHeader.getReceiptType()), - ReceiptHeaderHistory::getReceiptType, receiptHeader.getReceiptType()) - .eq(StringUtils.isNotEmpty(receiptHeader.getCode()), ReceiptHeaderHistory::getCode, receiptHeader.getCode()) - .eq(StringUtils.isNotNull(receiptHeader.getFirstStatus()), - ReceiptHeaderHistory::getFirstStatus, receiptHeader.getFirstStatus()) - .eq(StringUtils.isNotNull(receiptHeader.getLastStatus()), - ReceiptHeaderHistory::getLastStatus, receiptHeader.getLastStatus()); - - if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)){ - /** - * 使用分页查询 - */ - Page<ReceiptHeaderHistory> page = new Page<>(pageNum, pageSize); - IPage<ReceiptHeaderHistory> iPage = receiptHeaderHistoryService.page(page, lambdaQueryWrapper); - return getMpDataTable(iPage.getRecords(),iPage.getTotal()); - } else { - List<ReceiptHeaderHistory> list = receiptHeaderHistoryService.list(lambdaQueryWrapper); - return getDataTable(list); - } - } -} diff --git a/src/main/java/com/huaheng/pc/receipt/receiptHeaderHistory/service/ReceiptHeaderHistoryService.java b/src/main/java/com/huaheng/pc/receipt/receiptHeaderHistory/service/ReceiptHeaderHistoryService.java index d81f68d..dcd509c 100644 --- a/src/main/java/com/huaheng/pc/receipt/receiptHeaderHistory/service/ReceiptHeaderHistoryService.java +++ b/src/main/java/com/huaheng/pc/receipt/receiptHeaderHistory/service/ReceiptHeaderHistoryService.java @@ -1,83 +1,12 @@ package com.huaheng.pc.receipt.receiptHeaderHistory.service; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.huaheng.common.exception.service.ServiceException; -import com.huaheng.common.utils.security.ShiroUtils; -import com.huaheng.framework.web.domain.AjaxResult; -import com.huaheng.pc.receipt.receiptDetail.domain.ReceiptDetail; -import com.huaheng.pc.receipt.receiptDetail.service.ReceiptDetailService; -import com.huaheng.pc.receipt.receiptDetailHistory.domain.ReceiptDetailHistory; -import com.huaheng.pc.receipt.receiptDetailHistory.service.ReceiptDetailHistoryService; -import com.huaheng.pc.receipt.receiptHeader.domain.ReceiptHeader; -import com.huaheng.pc.receipt.receiptHeader.service.ReceiptHeaderService; -import org.apache.commons.beanutils.BeanUtils; -import org.apache.commons.collections.CollectionUtils; -import org.apache.wml.WMLSetvarElement; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.lang.reflect.InvocationTargetException; -import java.util.ArrayList; -import java.util.Collections; import java.util.List; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.huaheng.pc.receipt.receiptHeaderHistory.domain.ReceiptHeaderHistory; import com.huaheng.pc.receipt.receiptHeaderHistory.mapper.ReceiptHeaderHistoryMapper; -import org.springframework.transaction.annotation.Transactional; - @Service public class ReceiptHeaderHistoryService extends ServiceImpl<ReceiptHeaderHistoryMapper, ReceiptHeaderHistory> { - @Resource - private ReceiptHeaderService receiptHeaderService; - @Resource - private ReceiptDetailService receiptDetailService; - @Resource - private ReceiptDetailHistoryService receiptDetailHistoryService; - - @Transactional - public AjaxResult add(Integer id){ - ReceiptHeader receiptHeader = receiptHeaderService.getById(id); - if (receiptHeader == null) return AjaxResult.success(""); - if(receiptHeader.getFirstStatus()>=800 && receiptHeader.getLastStatus()>=800){ - ReceiptHeaderHistory receiptHeaderHistory = new ReceiptHeaderHistory(); - List<ReceiptDetailHistory> receiptDetailHistoryList = new ArrayList<>(); - //查询入库单明细 - LambdaQueryWrapper<ReceiptDetail> lambdaQueryWrapper = Wrappers.lambdaQuery(); - lambdaQueryWrapper.eq(ReceiptDetail::getReceiptId, id); - List<ReceiptDetail> list = receiptDetailService.list(lambdaQueryWrapper); - try { - //复制到入库历史实体 - BeanUtils.copyProperties(receiptHeaderHistory, receiptHeader); - for (ReceiptDetail receiptDetail: list) { - ReceiptDetailHistory receiptDetailHistory = new ReceiptDetailHistory(); - BeanUtils.copyProperties(receiptDetailHistory, receiptDetail); - receiptDetailHistoryList.add(receiptDetailHistory); - } - } catch (IllegalAccessException e) { - e.printStackTrace(); - } catch (InvocationTargetException e) { - e.printStackTrace(); - } - - receiptHeaderHistory.setLastUpdatedBy(ShiroUtils.getLoginName()); - if (!receiptHeaderService.removeById(receiptHeader.getId())){ - throw new ServiceException("删除头表失败"); - } - //删除入库明细 - List<Integer> ids = new ArrayList<>(); - for (int i=0; i<receiptDetailHistoryList.size();i++){ - receiptDetailHistoryList.get(i).setLastUpdatedBy(ShiroUtils.getLoginName()); - ids.add(receiptDetailHistoryList.get(i).getId()); - } - if (!receiptDetailService.removeByIds(ids)) { - throw new ServiceException("删除明细表失败"); - } - receiptDetailHistoryService.saveBatch(receiptDetailHistoryList); - this.save(receiptHeaderHistory); - }else { - return AjaxResult.success("入库单没有完成,无法删除"); - } - return AjaxResult.success("删除成功"); - } } 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 725f91d..8abcd35 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 @@ -8,7 +8,6 @@ import com.huaheng.common.utils.DataUtils; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; import com.huaheng.framework.web.domain.AjaxResult; -import com.huaheng.pc.config.container.domain.Container; import com.huaheng.pc.config.location.domain.Location; import com.huaheng.pc.config.location.service.LocationService; import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail; @@ -17,11 +16,7 @@ import com.huaheng.pc.inventory.inventoryHeader.domain.InventoryHeader; import com.huaheng.pc.inventory.inventoryHeader.service.InventoryHeaderService; import com.huaheng.pc.inventory.inventoryTransaction.domain.InventoryTransaction; import com.huaheng.pc.inventory.inventoryTransaction.service.InventoryTransactionService; -import com.huaheng.pc.receipt.receiptContainerDetail.domain.ReceiptContainerDetail; -import com.huaheng.pc.receipt.receiptContainerDetail.service.ReceiptContainerDetailService; import com.huaheng.pc.receipt.receiptContainerHeader.domain.ReceiptContainerHeader; -import com.huaheng.pc.receipt.receiptHeader.domain.ReceiptHeader; -import com.huaheng.pc.receipt.receiptHeader.service.ReceiptHeaderService; import com.huaheng.pc.shipment.shipmentContainerDetail.domain.ShipmentContainerDetail; import com.huaheng.pc.shipment.shipmentContainerDetail.service.ShipmentContainerDetailService; import com.huaheng.pc.shipment.shipmentContainerHeader.domain.ShipmentContainerHeader; @@ -68,15 +63,6 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea @Autowired private InventoryTransactionService inventoryTransactionService; - @Autowired - private ReceiptHeaderService receiptHeaderService; - - @Autowired - private ReceiptContainerDetailService receiptContainerDetailService; - - - - @Resource private TaskHeaderMapper taskHeaderMapper; @@ -307,6 +293,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea @Override public AjaxResult completeReceiptTask(TaskHeader task) throws Exception { +// String LocationCode = task.getIsDoubleIn().intValue() == 0 ? task.getDestinationLocation() : task.getSecondDestinationLocation(); List<Map<String, Object>> taskReceiptContainerDetail =taskHeaderMapper.getReceiptTask(task.getId()); if (taskReceiptContainerDetail.size()<1){ return AjaxResult.success("未找到对应任务的入库单号!!!"); @@ -317,7 +304,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea LambdaQueryWrapper<InventoryDetail> inventory =Wrappers.lambdaQuery(); inventory.eq(InventoryDetail::getWarehouseCode,ShiroUtils.getWarehouseCode()) .eq(InventoryDetail::getLocationCode,task.getLocationCode()) - .eq(InventoryDetail::getReceiptDetailId,DataUtils.getString(map.get("receiptDetailId"))) + .eq(InventoryDetail::getReceiptDetailId,DataUtils.getString(map.get("id"))) .eq(InventoryDetail::getContainerCode,DataUtils.getString(map.get("containerCode"))); InventoryDetail detail=inventoryDetailService.getOne(inventory); if (detail == null) @@ -345,14 +332,14 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea detail.setMaterialName(DataUtils.getString(map.get("materialName")));//物料名称 detail.setMaterialSpec(DataUtils.getString(map.get("materialSpec")));//物料规格 detail.setReceiptCode(DataUtils.getString(map.get("receiptCode")));//入库单编码 - detail.setReceiptDetailId(DataUtils.getInteger(map.get("receiptDetailId")));//入库单明细ID + detail.setReceiptDetailId(DataUtils.getInteger(map.get("id")));//入库单明细ID detail.setBatch(DataUtils.getString(map.get("batch")));//批次 detail.setLot(DataUtils.getString(map.get("lot")));//批号 detail.setInventorySts(DataUtils.getString(map.get("inventorySts")));//库存状态 detail.setManufactureDate(DataUtils.getDateTime(map.get("manufactureDate")));//生产日期 detail.setExpirationDate(DataUtils.getDateTime(map.get("expirationDate")));//失效日期 detail.setQty(DataUtils.getBigDecimal(map.get("qty")));//数量 - detail.setTaskQty(DataUtils.getBigDecimal(map.get("qty"))); + detail.setTaskQty(DataUtils.getBigDecimal(map.get("taskQty"))); detail.setCreatedBy(ShiroUtils.getLoginName());//创建人 detail.setLastUpdatedBy(ShiroUtils.getLoginName());//创建时间 inventoryDetailService.save(detail); @@ -362,7 +349,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea detail.setQty(detail.getQty().add(DataUtils.getBigDecimal(map.get("qty")))); detail.setLastUpdatedBy(ShiroUtils.getLoginName()); LambdaUpdateWrapper<InventoryDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate(); - lambdaUpdateWrapper.eq(InventoryDetail::getId,DataUtils.getInteger(map.get("receiptDetailId"))); + lambdaUpdateWrapper.eq(InventoryDetail::getId,DataUtils.getInteger(map.get("id"))); inventoryDetailService.update(detail, lambdaUpdateWrapper); } //记录库存交易记录 @@ -375,56 +362,51 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea inventoryTransaction.setMaterialCode(DataUtils.getString(map.get("materialCode"))); inventoryTransaction.setMaterialName(DataUtils.getString(map.get("materialName"))); inventoryTransaction.setBillCode(DataUtils.getString(map.get("receiptCode"))); - inventoryTransaction.setBillDetailId(DataUtils.getInteger(map.get("receiptDetailId"))); + inventoryTransaction.setBillDetailId(DataUtils.getInteger(map.get("id"))); inventoryTransaction.setBatch(DataUtils.getString(map.get("batch"))); inventoryTransaction.setLot(DataUtils.getString(map.get("lot"))); inventoryTransaction.setManufactureDate(DataUtils.getDateTime(map.get("manufactureDate"))); inventoryTransaction.setExpirationDate(DataUtils.getDateTime(map.get("expirationDate"))); inventoryTransaction.setInventorySts(DataUtils.getString((map.get("inventorySts")))); - inventoryTransaction.setTaskQty(DataUtils.getInteger(map.get("qty"))); + inventoryTransaction.setTaskQty(DataUtils.getInteger(map.get("taskQty"))); inventoryTransaction.setCreated(new Date()); inventoryTransaction.setCreatedBy(ShiroUtils.getLoginName()); inventoryTransactionService.save(inventoryTransaction); - //修改任务明细的状态为完成 - TaskDetail taskDetail = new TaskDetail(); - taskDetail.setStatus(100); - taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); - taskDetail.setAgingDate(new Date()); //入库时间 - LambdaUpdateWrapper<TaskDetail> lambdaUpdateWrapper = Wrappers.lambdaUpdate(); - lambdaUpdateWrapper.eq(TaskDetail::getTaskId, DataUtils.getInteger(map.get("taskDetailId"))); - taskDetailService.update(taskDetail, lambdaUpdateWrapper); - //修改入库单的状态 - ReceiptHeader receiptHeader =new ReceiptHeader(); - receiptHeader.setFirstStatus(100); - receiptHeader.setLastStatus(100); - LambdaUpdateWrapper<ReceiptHeader> receiptHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate(); - receiptHeaderLambdaUpdateWrapper.eq(ReceiptHeader::getId, DataUtils.getInteger(map.get("receiptId"))); - receiptHeaderService.update(receiptHeader, receiptHeaderLambdaUpdateWrapper); - - //修改任务主表状态,因为立库任务表单头只对应一个货箱,表单详情的任务会同时完成 - task.setStatus(100); - task.setLastUpdatedBy(ShiroUtils.getLoginName()); - task.setLastUpdated(new Date()); - LambdaUpdateWrapper<TaskHeader> taskHeaderLambdaUpdateWrapper = Wrappers.lambdaUpdate(); - taskHeaderLambdaUpdateWrapper.eq(TaskHeader::getId, task.getId()); - taskHeaderService.update(task, taskHeaderLambdaUpdateWrapper); - //修改库位状态和对应的容器 - Location location =new Location(); - location.setContainerCode(task.getContainerCode()); - location.setStatus("empty"); - LambdaUpdateWrapper<Location> locationLambdaUpdateWrapper = Wrappers.lambdaUpdate(); - locationLambdaUpdateWrapper.eq(Location::getCode, task.getLocationCode()); - locationService.update(location, locationLambdaUpdateWrapper); - //修改容器状态和对应的库位 - Container container =new Container(); - container.setLocationCode(task.getLocationCode()); - container.setStatus("some"); - //修改组盘表状态为20 - ReceiptContainerDetail receiptContainerDetail = new ReceiptContainerDetail(); - receiptContainerDetail.setStatus(20); - LambdaUpdateWrapper<ReceiptContainerDetail> receiptContainerDetailLambdaUpdateWrapper = Wrappers.lambdaUpdate(); - receiptContainerDetailLambdaUpdateWrapper.eq(ReceiptContainerDetail::getReceiptId,DataUtils.getInteger(map.get("receiptId"))); - receiptContainerDetailService.update(receiptContainerDetail, receiptContainerDetailLambdaUpdateWrapper); +// //修改任务明细的状态为完成 +// TaskDetail taskDetail = new TaskDetail(); +// taskDetail.setId(DataUtils.getInteger(map.get("taskDetailId"))); +// taskDetail.setStatus((short)100); +// taskDetail.setLastUpdatedBy(ShiroUtils.getLoginName()); +// taskDetail.setEndTime(new Date()); //完成时间 +// taskDetailService.updateByModel(taskDetail); +// //修改入库单明细的状态 +// receiptHeaderService.updateDetailStatus(DataUtils.getInteger(map.get("billDetailId")), (short)800); +// } +// } +// //更新收货单主表的首状态 +// taskReceiptContainerDetail.stream(). +// filter(X -> DataUtils.getInteger(X.get("status")) < 100). +// map(X -> X.get("billId")). +// distinct(). +// forEach(X -> receiptHeaderService.receiptStatusUpdate(DataUtils.getInteger(X), (short)800)); +// //修改任务主表状态,因为立库任务表单头只对应一个货箱,表单详情的任务会同时完成 +// task.setFirstStatus((short)100); +// task.setLastStatus((short)100); +// task.setLastUpdatedBy(ShiroUtils.getLoginName()); +// task.setEndTime(new Date()); +// this.updateByModel(task); +// //修改库位状态和对应的容器 +// locationService.updateContainerCodeAndStatus(LocationCode, task.getContainerCode(),"empty"); +// if (task.getIsDoubleIn().intValue() != 0) { +// locationService.updateStatus(task.getDestinationLocation(), "empty"); +// } +// //修改容器状态和对应的库位 +// containerService.updateLocationCodeAndStatus(task.getContainerCode(), LocationCode, "some"); +// //修改组盘表状态为20 +// ReceiptContainerHeader receiptContainerHeader = new ReceiptContainerHeader(); +// receiptContainerHeader.setId(task.getAllocationHeadId()); +// receiptContainerHeader.setStatus((short)20); +// receiptContainerHeaderService.updateByModel(receiptContainerHeader); } } return AjaxResult.success("完成入库任务"); diff --git a/src/main/resources/mybatis/inventory/AdjustDetailMapper.xml b/src/main/resources/mybatis/inventory/AdjustDetailMapper.xml index 0fa741e..ecc41cb 100644 --- a/src/main/resources/mybatis/inventory/AdjustDetailMapper.xml +++ b/src/main/resources/mybatis/inventory/AdjustDetailMapper.xml @@ -13,6 +13,8 @@ <result column="referDetailId" jdbcType="INTEGER" property="referDetailId" /> <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode" /> <result column="companyCode" jdbcType="VARCHAR" property="companyCode" /> + <result column="containerCode" jdbcType="VARCHAR" property="containerCode" /> + <result column="locationCode" jdbcType="VARCHAR" property="locationCode" /> <result column="materialCode" jdbcType="VARCHAR" property="materialCode" /> <result column="materialName" jdbcType="VARCHAR" property="materialName" /> <result column="materialSpec" jdbcType="VARCHAR" property="materialSpec" /> @@ -39,7 +41,7 @@ <sql id="Base_Column_List"> <!--@mbg.generated--> id, adjustCode, cycleCountCode, cycleDetailId, checkCode, checkDetailId, referCode, - referDetailId, warehouseCode, companyCode, materialCode, materialName, + referDetailId, warehouseCode, companyCode, containerCode, locationCode ,materialCode, materialName, materialSpec, materialUnit, problemType, attributeId, fromInventorySts, toInventorySts, fromQty, toQty, gapQty, `status`, created, createdBy, agreeTime, Remark, version, userDef1, userDef2, userDef3, processStamp diff --git a/src/main/resources/mybatis/task/TaskHeaderMapper.xml b/src/main/resources/mybatis/task/TaskHeaderMapper.xml index c634821..9c2b157 100644 --- a/src/main/resources/mybatis/task/TaskHeaderMapper.xml +++ b/src/main/resources/mybatis/task/TaskHeaderMapper.xml @@ -48,13 +48,9 @@ <result column="processStamp" jdbcType="VARCHAR" property="processStamp" /> </resultMap> <select id="getReceiptTask" resultType="java.util.Map"> - SELECT rd.id receiptDetailId,rd.receiptId,td.taskId, td.warehouseCode, td.id taskDetailId, td.status, - td.containerCode, td.qty, td.materialCode,rd.totalQty,td.materialSpec, - rd.receiptCode,td.inventorySts, - td.materialName, rd.batch, rd.lot, - rd.manufactureDate, rd.expirationDate - FROM task_detail td - INNER JOIN receipt_detail rd ON rd.id = td.billDetailId AND td.taskId = #{taskId,jdbcType=INTEGER} + SELECT * + FROM task_detail td + INNER JOIN receipt_detail rd ON rd.id = td.billDetailId AND td.taskId = #{taskId,jdbcType=INTEGER} </select> <sql id="Base_Column_List"> diff --git a/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html b/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html index 3b32bda..33914ac 100644 --- a/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html +++ b/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html @@ -1,4 +1,4 @@ - <!DOCTYPE HTML> +<!DOCTYPE HTML> <html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> <meta charset="utf-8"> <head th:include="include :: header"></head> @@ -6,49 +6,99 @@ <div class="row"> <div class="col-sm-12"> <div class="col-sm-12 select-info"> - <div class="select-list" > + <div class="select-list"> <ul> <li> <form id="cycleHeader-form"> - 调整单编码:<input type="text" id="cyclecountAdjustId" name="cyclecountAdjustId" /> + 调整主单编码:<input type="text" id="adjustCode" name="adjustCode"/> </form> </li> <li> - 货主编码:<input id="companyCode" type="text" name="companyCode" /> + 调整单明细ID:<input id="id" type="text" name="id"/> </li> <li> - 调整单编码:<input id="code" type="text" name="code" /> + 货主编码:<input id="companyCode" type="text" name="companyCode"/> </li> <li> - 盘点单号:<input id="sourceCode" type="text" name="sourceCode" /> + 盘点单编码:<input id="cycleCountCode" type="text" name="cycleCountCode"/> </li> <li> - 调整单状态:<input id = "status" type="text" name="status" /> + 盘点明细状态:<input id="cycleDetailId" type="text" name="cycleDetailId"/> </li> <li> - 创建时间:<input id="created" type="text" name="created" /> - + 质检单编码:<input id="checkCode" type="text" name="checkCode"/> + </li> + <li> + 质检单明细ID:<input id="checkDetailId" type="text" name="checkDetailId"/> + </li> + <li> + 调整单关联单编码:<input id="referCode" type="text" name="referCode"/> + </li> + <li> + 调整单关联明细行号:<input id="referDetailId" type="text" name="referDetailId"/> + </li> + <li> + 容器:<input id="containerCode" type="text" name="containerCode"/> + </li> + <li> + 库位:<input id="locationCode" type="text" name="locationCode"/> + </li> + <li> + 物料编码:<input id="materialCode" type="text" name="materialCode"/> + </li> + <li> + 物料名称:<input id="materialName" type="text" name="materialName"/> + </li> + <li> + 调整单类型:<select name="problemType" + th:with="problemType=${@dict.getType('cyclecountStatus')}"> + <option value="">所有</option> + <option th:each="e : ${problemType}" th:text="${e['dictLabel']}" + th:value="${e['dictValue']}"></option> + </select> + </li> + <li> + 物料规格:<input id="materialSpec" type="text" name="materialSpec"/> + </li> + <li> + 属性号:<input id="attributeId" type="text" name="attributeId"/> + </li> + <li> + 调整明细状态:<select name="status" + th:with="status=${@dict.getType('cyclecountStatus')}"> + <option value="">所有</option> + <option th:each="e : ${status}" th:text="${e['dictLabel']}" + th:value="${e['dictValue']}"></option> + </select> </li> <li> - 创建人:<input id="createdBy" type="text" name="createdBy" /> + 创建人:<input id="createdBy" type="text" name="createdBy"/> + </li> + <li class="time"> + <label>创建时间: </label> + <input type="text" class="time-input" id="startTime" placeholder="开始时间" + name="createdBegin"/> + <span>-</span> + <input type="text" class="time-input" id="endTime" placeholder="结束时间" + name="createdEnd"/> </li> <li> - <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i - class="fa fa-search"></i> 搜索</a> + <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i + class="fa fa-search"></i> 搜索</a> </li> </ul> </div> </div> - <div class="btn-group hidden-xs" id="toolbar" role="group"> + <div class="btn-group hidden-xs" id="toolbar" role="group"> - <a class="btn btn-outline btn-danger btn-rounded" onclick="addAdjust()" /> - <!--shiro:hasPermission="inventory:cyclecountAdjustDetail:addAdjust"--> - <i class="fa fa-vcard"></i>差异调整 + <a class="btn btn-outline btn-danger btn-rounded" onclick="addAdjust()"/> + <!--shiro:hasPermission="inventory:cyclecountAdjustDetail:addAdjust"--> + <i class="fa fa-vcard"></i>差异调整 </a> - <!--<a class="btn btn-outline btn-danger btn-rounded" onclick="createCyclecountWithGapQty()" - shiro:hasPermission="inventoryHeader:cycleCountDetail:cyclecountRepeat"> - <i class="fa fa-vcard"></i> 差异复盘 - </a>--> + <!--<a class="btn btn-outline btn-danger btn-rounded" onclick="createCyclecountWithGapQty()" + shiro:hasPermission="inventoryHeader:cycleCountDetail:cyclecountRepeat"> + <i class="fa fa-vcard"></i> 差异复盘 + </a>--> <!--<a class="btn btn-outline btn-danger btn-rounded" onclick="adjust()" shiro:hasPermission="inventoryHeader:cycleCountDetail:adjust"> <i class="fa fa-vcard"></i> 差异库存调整 @@ -65,33 +115,39 @@ var prefix = ctx + "inventory/adjustDetail"; var prefix_head = ctx + "inventory/adjustHeader"; var datas = [[${@dict.getType('adjustType')}]]; - var inventoryStatus=[[${@dict.getType('inventoryStatus')}]]; - var created ; + var inventoryStatus = [[${@dict.getType('inventoryStatus')}]]; + var created; $(function () { - var options = { - // url: prefix + "/list", -/* createUrl: prefix + "/add", - updateUrl: prefix + "/edit/{id}", - removeUrl: prefix + "/remove",*/ + update(); + }); + + function update() { + let adjustCode=null; + let options = { + url:prefix + "/list", modalName: "调整单明细", sortName: "id", sortOrder: "desc", - showRefresh:false, + showRefresh: false, search: false, - // pagination:false, columns: [ { - radio: true - }, + radio: true + }, { field: 'id', title: '明细id', - sortable:true + sortable: true + }, + { + field: 'adjustCode', + title: '调整主单编码', + visible: true }, { - field: 'cyclecountAdjustCode', - title: '差异单编码', + field: 'warehouseCode', + title: '仓库', visible: false }, { @@ -99,14 +155,14 @@ title: '货主' }, { - field: 'cyclecountHeadCode', + field: 'cycleCountCode', title: '盘点单编码', }, { - field: 'cyclecountDetailId', - title: '盘点单明细id', - sortable:true, - visible: false + field: 'cycleDetailId', + title: '盘点单明细ID', + sortable: true, + visible: true }, { field: 'locationCode', @@ -127,174 +183,168 @@ }, { - field: 'materialSpecification', + field: 'materialSpec', title: '物料规格', }, { - field: 'receiptCode', - title: '入库单编码' + field: 'materialUnit', + title: '物料单位', + }, { - field: 'receiptId', - title: '入库单id', - sortable:true, - visible: false + field: 'checkCode', + title: '质检单号', + visible: true }, { - field: 'receiptDetailId', - title: '入库单明细id', - sortable:true, + field: 'checkDetailId', + title: '质检单明细行号', visible: false }, { - field: 'systemQty', - title: '系统数量' + field: 'referCode', + title: '调整单关联单号', + visible: true }, { - title: '实际盘点数量', - field:'countedQty' + field: 'referDetailId', + title: '调整单关联明细ID', + visible: false }, + { - title: '差异数量', - field: 'gapQty' + field: 'problemType', + title: '调整类型', + sortable: true, + visible: true }, { - title: '调整数量', - field: 'adjustQty' + field: 'fromQty', + title: '调整前数量' }, { - field: 'batch', - title: '批次', - sortable:true, - sortable:true + field: 'toQty', + title: '调整后数量' }, { - field: 'lot', - title: '批号', - sortable:true, - sortable:true + field: 'gapQty', + title: '调整数量' }, { - field: 'project', - title: '项目号', - sortable:true, - sortable:true + field: 'fromInventorySts', + title: '调整前状态', + visible: true }, { - field: 'manufactureDate', - title: '生产日期', - sortable:true, - visible: false - + field: 'toInventorySts', + title: '调整后状态', + visible: true }, { - field: 'expirationDate', - title: '失效日期', - sortable:true, + field: 'attributeId', + title: '属性号', + sortable: true, visible: false + }, { - field: 'inventoryStatus', + field: 'inventorySts', title: '库存状态', - formatter: function(value, row, index) { + formatter: function (value, row, index) { return $.table.selectDictLabel(inventoryStatus, value); }, - sortable:true + sortable: true }, { field: 'created', title: '创建时间', - sortable:true + sortable: true }, { field: 'createdBy', title: '创建用户' }, { - field: 'lastUpdated', - title: '更新时间', - sortable:true - }, - { - field: 'lastUpdatedBy', - title: '更新用户' + field: 'agreeTime', + title: '审批时间', + sortable: true }, { - field: 'fromSource', - title: '物料来源' + field: 'agreeBy', + title: '审批人' }, { field: 'status', title: '明细状态', - formatter: function(value, row, index) { + formatter: function (value, row, index) { return $.table.selectDictLabel(datas, value); }, - sortable:true - }, - // { - // field: 'userDef1', - // title: '自定义字段1' - // }, - /*{ - title: '操作', - align: 'center', - formatter: function (value, row, index) { - var actions = []; - actions.push('<a class="btn btn-success btn-xs " href="#" onclick="addAdjust(\'' + row.id + '\')"><i class="fa fa-edit"></i>差异调整</a>'); - return actions.join(''); - } - }*/ + sortable: true + }, + { + field: 'Remark', + title: '备注', + visible: true + }, + { + field: 'version', + title: '数据版本', + visible: false + }, + { + field: 'processStamp', + title: '处理标记', + visible: false + }, + + ] }; - $.table.init(options); - update(); - }); - - function update() { - var url = location.search; //获取url中"?"符后的字串 + let url = location.search; //获取url中"?"符后的字串 if (url.indexOf("?") != -1) { //判断是否有参数 - var str = url.substr(1); //从第一个字符开始 因为第0个是?号 获取所有除问号的所有符串 - strs = str.split("="); //用等号进行分隔 (因为知道只有一个参数 所以直接用等号进分隔 如果有多个参数 要用&号分隔 再用等号进行分隔) - $.ajax({ - url: prefix + "/list", - type:"post", - data:{ - code:strs[1] - }, - success:function (res) { - $("#bootstrap-table").bootstrapTable('removeAll'); - // $("#bootstrap-table").bootstrapTable('append', res.data); - for (var i = 0; i < res.data.length; i++) { - $("#bootstrap-table").bootstrapTable('insertRow', {index:i,row:res.data[i]}); - - } - } - }) + let str = url.substr(1); //从第一个字符开始 因为第0个是?号 获取所有除问号的所有符串 + options.queryParams=function(params) { + return { + // 传递参数查询参数 + adjustCode: adjustCode, + pageSize: params.limit, + pageNum: params.offset / params.limit + 1, + searchValue: params.search, + orderByColumn: params.sort, + isAsc: params.order + }; + }; + adjustCode=str.split("=")[1]; + $.table.init(options); + } + else{ + $.table.init(options); } - $.ajax({ - url:prefix_head+ "/getHeader", - type:"post", - data:{ - id:$('#cyclecountAdjustId').val() + + /*$.ajax({ + url: prefix_head + "/getHeader", + type: "post", + data: { + id: $('#cyclecountAdjustId').val() }, - success:function (value) { + success: function (value) { if (value.data) { $('#code').val(value.data.code); - // $('#type').val(value.data.typeLabel); + // $('#type').val(value.data.typeLabel); $('#status').val(value.data.statusLabel); $('#created').val(value.data.created); - var text_val=$('#created').val(); - $('#created').val(text_val.replace("T"," ")); + var text_val = $('#created').val(); + $('#created').val(text_val.replace("T", " ")); //$('#createdBy').val(value.data.createdBy); $('#lastUpdated').val(value.data.lastUpdated); - var text_val_t=$('#lastUpdated').val(); - $('#lastUpdated').val(text_val_t.replace("T"," ")); + var text_val_t = $('#lastUpdated').val(); + $('#lastUpdated').val(text_val_t.replace("T", " ")); //$('#lastUpdatedBy').val(value.data.lastUpdatedBy); } } - }) + })*/ } /**盘点差异调整*/ @@ -302,35 +352,36 @@ var row = $('#bootstrap-table').bootstrapTable('getSelections'); $.modal.confirm("注意:该操作将更改库存,当实盘数量为0且库位上只剩空容器时,请手动执行空托出库任务,容器上有货则无需其他操作!", - function() { - var cyclecountAdjustId = $('#cyclecountAdjustId').val(); - var companyCode = $('#companyCode').val(); - var code = $('#code').val(); - var cyclecountHeadCode = $('#sourceCode').val(); - //判断有没有选取明细条目,进的页面不同 - if(row.length !== 0){ - /*判断是否已经调整过*/ - if(row[0].status == 40){ - $.modal.msg('该条明细已调整,请勿重复调整!') - }else{ - $.modal.open("差异调整单",prefix+"/adjustEdit?id=" + row[0].id) - } - }else{ - $.modal.open("调整单",prefix+"/addAdjust?cyclecountAdjustId=" + cyclecountAdjustId + "&companyCode=" + companyCode + "&code=" + code + "&cyclecountHeadCode=" + cyclecountHeadCode); - } - }); + function () { + var cyclecountAdjustId = $('#cyclecountAdjustId').val(); + var companyCode = $('#companyCode').val(); + var code = $('#code').val(); + var cyclecountHeadCode = $('#sourceCode').val(); + //判断有没有选取明细条目,进的页面不同 + if (row.length !== 0) { + /*判断是否已经调整过*/ + if (row[0].status == 40) { + $.modal.msg('该条明细已调整,请勿重复调整!') + } else { + $.modal.open("差异调整单", prefix + "/adjustEdit?id=" + row[0].id) + } + } else { + $.modal.open("调整单", prefix + "/addAdjust?cyclecountAdjustId=" + cyclecountAdjustId + "&companyCode=" + companyCode + "&code=" + code + "&cyclecountHeadCode=" + cyclecountHeadCode); + } + }); } + // - function open(title, url, width, height){ + function open(title, url, width, height) { if (navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) { width = 'auto'; height = 'auto'; } - if (title==null){ + if (title == null) { title = false; } - if (url==null){ - url="404.html"; + if (url == null) { + url = "404.html"; } if ($.common.isEmpty(width)) { width = 800; @@ -356,46 +407,46 @@ * 差异复盘 */ function createCyclecountWithGapQty() { - $.modal.confirm("确认进行差异复盘么?该操作会将有差异的明细重新生成一个新的盘点单。", function() { + $.modal.confirm("确认进行差异复盘么?该操作会将有差异的明细重新生成一个新的盘点单。", function () { var url = prefix + "/createCyclecountWithGapQty"; - var data = { "headId": $('#headId').val() }; + var data = {"headId": $('#headId').val()}; postInner(url, data); }); } -/* //调整差异库存 - function adjust() { - $.modal.confirm("注意:该操作将更改库存,当实盘数量为0且库位上只剩空容器时,请手动执行空托出库任务,容器上有货则无需其他操作!", - function() { - var url = prefix + "/adjust"; - var data = { "headId": $('#headId').val() }; - postInner(url,data); - }); - } - function postInner(url,data) { - $.modal.loading("正在处理中,请稍后..."); - $.ajax({ - url:url, - type:"post", - data:data, - success:function (result) { - if (result.code == web_status.SUCCESS) { - $.modal.msgSuccess(result.msg); - update(); - } else { - $.modal.alertError(result.msg); + /* //调整差异库存 + function adjust() { + $.modal.confirm("注意:该操作将更改库存,当实盘数量为0且库位上只剩空容器时,请手动执行空托出库任务,容器上有货则无需其他操作!", + function() { + var url = prefix + "/adjust"; + var data = { "headId": $('#headId').val() }; + postInner(url,data); + }); + } + function postInner(url,data) { + $.modal.loading("正在处理中,请稍后..."); + $.ajax({ + url:url, + type:"post", + data:data, + success:function (result) { + if (result.code == web_status.SUCCESS) { + $.modal.msgSuccess(result.msg); + update(); + } else { + $.modal.alertError(result.msg); + } + $.modal.closeLoading(); } - $.modal.closeLoading(); - } - }) - }*/ + }) + }*/ -/* //下发单条盘点 - function outcheck(id) { - var url = prefix + "/createCyccoutTaskByDetailId"; - var data = { "detailId": id }; - postInner(url,data); - }*/ + /* //下发单条盘点 + function outcheck(id) { + var url = prefix + "/createCyccoutTaskByDetailId"; + var data = { "detailId": id }; + postInner(url,data); + }*/ </script> diff --git a/src/main/resources/templates/inventory/adjustHeader/adjustHeader.html b/src/main/resources/templates/inventory/adjustHeader/adjustHeader.html index 8edd4a8..e099f03 100644 --- a/src/main/resources/templates/inventory/adjustHeader/adjustHeader.html +++ b/src/main/resources/templates/inventory/adjustHeader/adjustHeader.html @@ -25,10 +25,10 @@ <div class="select-list"> <ul> <li> - 调整单编号:<input type="text" name="code"/> + 调整单编码:<input type="text" name="code"/> </li> <li> - 盘点单号:<input type="text" name="sourceCode"/> + 盘点单编码:<input type="text" name="sourceCode"/> </li> <li> 盘点类型:<select name="problemType" @@ -39,7 +39,7 @@ </select> </li> <li> - 质检单号:<input type="text" name="checkCode"/> + 质检单编码:<input type="text" name="checkCode"/> </li> <li> 上游单编码:<input type="text" name="referCode"/> @@ -178,14 +178,18 @@ }; $.table.init(options); $("#myTab li:eq(1)").one('click', (function () { - var cyc_id = $("#bootstrap-table tr:eq(1) td:eq(1)").text(); - var cyc_code = $("#bootstrap-table tr:eq(1) td:eq(2)").text(); - detail(cyc_id, cyc_code); + // var cyc_id = $("#bootstrap-table tr:eq(1) td:eq(1)").text(); + // var cyc_code = $("#bootstrap-table tr:eq(1) td:eq(2)").text(); + // detail(cyc_id, cyc_code); + detail(); })); }); function detail(id, code) { - var url = ctx + "inventory/adjustDetail?adjustCode=" + code; + let url = ctx + "inventory/adjustDetail"; + if (id || code) { + url = ctx + "inventory/adjustDetail?adjustCode=" + code; + } $("#tabDetail").children().remove(); $("#myTab li").removeClass("active"); var height = $(document).height() - 100 + 'px'; diff --git a/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html b/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html index ebfbd71..257950a 100644 --- a/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html +++ b/src/main/resources/templates/inventory/cycleCountDetail/cycleCountDetail.html @@ -122,8 +122,12 @@ $(function () { - var options = { - // url: prefix + "/list", + update(); + }); + + function update() { + let options = { + url: prefix + "/list", createUrl: prefix + "/add", updateUrl: prefix + "/edit/{id}", removeUrl: prefix + "/remove", @@ -132,11 +136,10 @@ sortOrder: "desc", showRefresh:false, search: false, - pagination:false, columns: [ { - checkbox: true - }, + checkbox: true + }, { field: 'id', title: '明细ID', @@ -324,44 +327,25 @@ return actions.join(''); } }] - }; - $.table.init(options); - update(); - }); - - function update() { - let url = location.search; //获取url中"?"符后的字串 + },url = location.search; //获取url中"?"符后的字串 if (url.indexOf("?") != -1) { //判断是否有参数 - let str = url.substr(1); //从第一个字符开始 因为第0个是?号 获取所有除问号的所有符串 - let strs = str.split("="); //用等号进行分隔 (因为知道只有一个参数 所以直接用等号进分隔 如果有多个参数 要用&号分隔 再用等号进行分隔) - $.ajax({ - url: prefix + "/list", - type:"post", - data:{ - cycleCountHeadId:strs[1] - }, - success:function (res) { - $("#bootstrap-table").bootstrapTable('removeAll'); - // $("#bootstrap-table").bootstrapTable('append', res.data); - for (var i = 0; i < res.data.length; i++) { - $("#bootstrap-table").bootstrapTable('insertRow', {index:i,row:res.data[i]}); - } - } - }); - return false + let strs = url.substr(1).split("="); + options.queryParams=function(params) { + return { + // 传递参数查询参数 + cycleCountHeadId:strs[1], + pageSize: params.limit, + pageNum: params.offset / params.limit + 1, + searchValue: params.search, + orderByColumn: params.sort, + isAsc: params.order + }; + }; + $.table.init(options); + } + else{ + $.table.init(options); } - $.ajax({ - url: prefix + "/list", - type:"post", - data:{}, - success:function (res) { - $("#bootstrap-table").bootstrapTable('removeAll'); - // $("#bootstrap-table").bootstrapTable('append', res.data); - for (var i = 0; i < res.data.length; i++) { - $("#bootstrap-table").bootstrapTable('insertRow', {index:i,row:res.data[i]}); - } - } - }) } function add() { var cycleCountHeadId = $('#cycleCountHeadId').val(); diff --git a/src/main/resources/templates/inventory/inventoryDetail/inventoryDetail.html b/src/main/resources/templates/inventory/inventoryDetail/inventoryDetail.html index 7e9274e..e33a9ab 100644 --- a/src/main/resources/templates/inventory/inventoryDetail/inventoryDetail.html +++ b/src/main/resources/templates/inventory/inventoryDetail/inventoryDetail.html @@ -103,6 +103,7 @@ function update() { let options = { + url : prefix + "/inventoryDetailLook", createUrl: prefix + "/add", updateUrl: prefix + "/edit/{id}", removeUrl: prefix + "/remove", @@ -306,25 +307,21 @@ $("#locationCode").val(strs[1]); $("#containerCode").val(strs[2]); if (location.search.indexOf("?") === -1) { - options.url = prefix + "/inventoryDetailLook"; $.table.init(options); } else{ + options.queryParams=function(params) { + return { + // 传递参数查询参数 + inventoryHeaderId: strs[0], + pageSize: params.limit, + pageNum: params.offset / params.limit + 1, + searchValue: params.search, + orderByColumn: params.sort, + isAsc: params.order + }; + }; $.table.init(options); - $.ajax({ - url: prefix + "/inventoryDetailLook", - type: "post", - data: { - inventoryHeaderId: strs[0] || null - }, - success: function (res) { - $("#bootstrap-table").bootstrapTable('removeAll'); - for (let i = 0; i < res.data.length; i++) { - $("#bootstrap-table").bootstrapTable('insertRow', {index: i, row: res.data[i]}); - - } - } - }) } } diff --git a/src/main/resources/templates/receipt/receiptDetailHistory/receiptDetailHistory.html b/src/main/resources/templates/receipt/receiptDetailHistory/receiptDetailHistory.html index 2ac2672..8c7dc9b 100644 --- a/src/main/resources/templates/receipt/receiptDetailHistory/receiptDetailHistory.html +++ b/src/main/resources/templates/receipt/receiptDetailHistory/receiptDetailHistory.html @@ -2,228 +2,145 @@ <html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> <meta charset="utf-8"> <head th:include="include :: header"></head> -<body> -<div class="col-sm-12 select-info"> - <form id="receiptDetail-form"> - <div class="select-list"> - <ul> - <li> - 入库单号:<input type="text" name="code"/> - </li> - <li> - 物料编码:<input type="text" name="materialCode"/> - </li> - <li> - 物料批次:<input type="text" name="batch"/> - </li> - <!--<li class="time">--> - <!--<label>创建时间: </label>--> - <!--<input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[beginTime]"/>--> - <!--<span>-</span>--> - <!--<input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[endTime]"/>--> - <!--</li>--> - <li> - <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> - <!--<a class="btn btn-success btn-rounded btn-sm" onclick="$.table.exportExcel()" shiro:hasPermission="receipt:receiptDetail:export"><i class="fa fa-download"></i> 导出</a>--> - </li> - </ul> +<body class="gray-bg"> + <div class="container-div"> + <div class="row"> + <div class="btn-group hidden-xs" id="toolbar" role="group"> + <input type="hidden" id="receiptId" name="receiptId" th:value="${receiptId}"/> + </div> + + <div class="col-sm-12 select-info"> + <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table> + </div> </div> - </form> -</div> + </div> + <div th:include="include :: footer"></div> + <script th:inline="javascript"> + var editFlag = [[${@permission.hasPermi('receipt:history:edit')}]]; + var removeFlag = [[${@permission.hasPermi('receipt:history:remove')}]]; + var prefix = ctx + "receipt/receiptDetailHistory" -<input type="hidden" id="receiptId" name="receiptId" th:value="${receiptId}"/> -<input type="hidden" id="receiptCode" name="receiptCode" th:value="${receiptCode}"/> -<div class="btn-group hidden-xs" id="toolbar" role="group"> - <a class="btn btn-outline btn-success btn-rounded" onclick="add()" shiro:hasPermission="receipt:receiptDetail:add"> - <i class="fa fa-plus"></i> 新增 - </a> - <a class="btn btn-outline btn-danger btn-rounded" onclick="$.operate.batRemove()" shiro:hasPermission="receipt:receiptDetail:remove"> - <i class="fa fa-trash-o"></i> 删除 - </a> -</div> - -<div class="col-sm-12 select-info"> - <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table> -</div> - - -<div th:include="include :: footer"></div> -<script th:inline="javascript"> - var editFlag = [[${@permission.hasPermi('receipt:receiptDetail:edit')}]]; - var removeFlag = [[${@permission.hasPermi('receipt:receiptDetail:remove')}]]; - var approvalFlag = [[${@permission.hasPermi('receipt:receiptHeader:approval')}]] - var prefix = ctx + "receipt/receiptDetailHistory"; - var datas = [[${@dict.getType('isVirtualBom')}]]; - $(function() { - var options = { - url: prefix + "/list", - createUrl: prefix + "/add", - updateUrl: prefix + "/edit/{id}", - removeUrl: prefix + "/remove", - queryParams: queryParams, - modalName: "入库明细历史", - search: false, - sortName: "id", - sortOrder: "desc", - columns: [{ - checkbox: true - }, - { - field : 'id', - title : 'id' - }, - { - field : 'receiptCode', - title : '入库单编码' - }, - { - field : 'materialCode', - title : '物料编码' - }, + $(function() { + var options = { + url: prefix + "/list", + createUrl: prefix + "/add", + updateUrl: prefix + "/edit/{id}", + removeUrl: prefix + "/remove", + queryParams: queryParams, + modalName: "入库明细历史", + search: false, + sortName: "id", + sortOrder: "desc", + columns: [{ + checkbox: true + }, { - field : 'materialName', - title : '物料名称' + field : 'id', + title : '入库明细id' }, { - field : 'materialSpec', - title : '物料规格' + field : 'sourceLine', + title : '上游系统行号' }, { - field : 'materialUnit', - title : '物料单位' + field : 'receiptId', + title : '入库单id' }, { - field : 'supplierCode', - title : '供应商编码' + field : 'receiptCode', + title : '入库单编码' }, { - field : 'batch', - title : '批次' + field : 'materialId', + title : '物料Id' }, { - field : 'lot', - title : '批号' , - visible:false + field : 'materialCode', + title : '存货编码' }, { - field : 'qcCheck', - title : '是否质检' + field : 'batch', + title : '批次' }, { - field : 'projectNo', - title : '项目号' + field : 'lot', + title : '批号' }, { - field : 'manufactureDate', - title : '生产日期' , - visible:false + field : 'project', + title : '项目号' }, { - field : 'expirationDate', - title : '失效日期' , - visible:false + field : 'manufactureDate', + title : '生产日期' }, { - field : 'agingDate', - title : '入库日期' , - visible:false + field : 'expirationDate', + title : '失效日期' }, { - field : 'totalQty', - title : '总数量' + field : 'inventoryStatus', + title : '库存状态' }, { - field : 'openQty', - title : '未收数量' + field : 'qty', + title : '收货数量' }, { - field : 'referCode', - title : 'ERP单号', - visible : false + field : 'price', + title : '单价' }, { - field : 'referId', - title : 'ERP内部号', - visible : false + field : 'created', + title : '创建时间' }, { - field : 'referLineNum', - title : 'ERP行号', - visible : false + field : 'createdBy', + title : '创建用户' }, { - field : 'locatingRule', - title : '定位规则' + field : 'lastUpdated', + title : '最后修改时间' }, { - field : 'inventorySts', - title : '库存状态', - visible : false + field : 'lastUpdatedBy', + title : '更新用户' }, { - field : 'itemListPrice', - title : '标价' + field : 'deleted', + title : '是否删除' }, { - field : 'itemNetPrice', - title : '净价' + field : 'userDef1', + title : '自定义字段1' }, { - field : 'price', - title : '单价' , - visible:false + field : 'userDef2', + title : '自定义字段2' }, { - field : 'isVirtualBom', - title : '是否虚拟套件', - formatter: function(value, row, index) { - return $.table.selectDictLabel(datas, value); - } + field : 'userDef3', + title : '自定义字段3' }, - { - field : 'created', - title : '创建时间' - }, - { - field : 'createdBy', - title : '创建用户', - visible:false - }, - { - field : 'lastUpdated', - title : '最后修改时间', - visible:false - }, - { - field : 'lastUpdatedBy', - title : '更新用户' , - visible:false - }, - { - field : 'userDef1', - title : '自定义字段1' , - visible:false - }, - { - field : 'userDef2', - title : '自定义字段2' , - visible:false - }, - { - field : 'userDef3', - title : '自定义字段3' , - visible:false - }] - }; - $.table.init(options); - }); - - function queryParams(params) { - return { - receiptId:$("#receiptId").val() - }; - }; + { + title: '操作', + 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>'); + return actions.join(''); + } + }] + }; + $.table.init(options); + }); -</script> + function queryParams(params) { + return { + receiptId: $("#receiptId").val() + }; + } + </script> </body> </html> \ No newline at end of file diff --git a/src/main/resources/templates/receipt/receiptHeaderHistory/edit.html b/src/main/resources/templates/receipt/receiptHeaderHistory/edit.html new file mode 100644 index 0000000..101a056 --- /dev/null +++ b/src/main/resources/templates/receipt/receiptHeaderHistory/edit.html @@ -0,0 +1,174 @@ +<!DOCTYPE HTML> +<html lang="zh" xmlns:th="http://www.thymeleaf.org"> +<meta charset="utf-8"> +<head th:include="include :: header"></head> +<body class="white-bg"> + <div class="wrapper wrapper-content animated fadeInRight ibox-content"> + <form class="form-horizontal m" id="form-receiptHeaderHistory-edit" th:object="${receiptHeaderHistory}"> + <input id="id" name="id" th:field="*{id}" type="hidden"> + <div class="form-group"> + <label class="col-sm-3 control-label">入库单号:</label> + <div class="col-sm-8"> + <input id="code" name="code" th:field="*{code}" class="form-control" type="text"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">货主id:</label> + <div class="col-sm-8"> + <input id="companyId" name="companyId" th:field="*{companyId}" 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="companyCode" name="companyCode" th:field="*{companyCode}" class="form-control" type="text"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">供应商id:</label> + <div class="col-sm-8"> + <input id="supplierId" name="supplierId" th:field="*{supplierId}" 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="supplierCode" name="supplierCode" th:field="*{supplierCode}" 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="type" name="type" th:field="*{type}" 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="sourceCode" name="sourceCode" th:field="*{sourceCode}" 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="sourcePlatform" name="sourcePlatform" th:field="*{sourcePlatform}" 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="totalQty" name="totalQty" th:field="*{totalQty}" 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="totalLines" name="totalLines" th:field="*{totalLines}" 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="remark" name="remark" th:field="*{remark}" 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="uploadStatus" name="uploadStatus" th:field="*{uploadStatus}" 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="uploadremark" name="uploadremark" th:field="*{uploadremark}" 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="uploadTime" name="uploadTime" th:field="*{uploadTime}" 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="appointmentTime" name="appointmentTime" th:field="*{appointmentTime}" 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="firstStatus" name="firstStatus" th:field="*{firstStatus}" 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="lastStatus" name="lastStatus" th:field="*{lastStatus}" 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="created" name="created" th:field="*{created}" 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="createdBy" name="createdBy" th:field="*{createdBy}" 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="lastUpdated" name="lastUpdated" th:field="*{lastUpdated}" 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="lastUpdatedBy" name="lastUpdatedBy" th:field="*{lastUpdatedBy}" 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="enable" name="enable" th:field="*{enable}" 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="deleted" name="deleted" th:field="*{deleted}" class="form-control" type="text"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">自定义字段1:</label> + <div class="col-sm-8"> + <input id="userDef1" name="userDef1" th:field="*{userDef1}" class="form-control" type="text"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">自定义字段2:</label> + <div class="col-sm-8"> + <input id="userDef2" name="userDef2" th:field="*{userDef2}" class="form-control" type="text"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">自定义字段3:</label> + <div class="col-sm-8"> + <input id="userDef3" name="userDef3" th:field="*{userDef3}" class="form-control" type="text"> + </div> + </div> + <div class="form-group"> + <div class="form-control-static col-sm-offset-9"> + <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button> + </div> + </div> + </form> + </div> + <div th:include="include::footer"></div> +</body> +</html> diff --git a/src/main/resources/templates/receipt/receiptHeaderHistory/receiptHeaderHistory.html b/src/main/resources/templates/receipt/receiptHeaderHistory/receiptHeaderHistory.html index 00df531..fdb46a3 100644 --- a/src/main/resources/templates/receipt/receiptHeaderHistory/receiptHeaderHistory.html +++ b/src/main/resources/templates/receipt/receiptHeaderHistory/receiptHeaderHistory.html @@ -3,281 +3,162 @@ <meta charset="utf-8"> <head th:include="include :: header"></head> <body class="gray-bg"> + <div class="container-div"> + <div class="row"> + <div class="btn-group hidden-xs" id="toolbar" role="group"> -<div class="container-div"> - <div class="row"> - <div class="col-sm-12 select-info"> - <ul id="myTab" class="nav nav-tabs"> - <li class="active"><a href="#tabHeader" data-toggle="tab">主表</a></li> - <li><a href="#tabDetail" data-toggle="tab">明细</a></li> - </ul> - <div id="myTabContent" class="tab-content"> - <div class="tab-pane fade in active" id="tabHeader"> - <div class="col-sm-12 select-info"> - <form id="receiptHeader-form"> - <div class="select-list"> - <ul> - <li> - 入库单号:<input type="text" name="code"/> - </li> - <li> - <!--入库类型:<input type="text" name="sourceCode"/>--> - 入库类型:<select name="type" th:with="type=${@receiptTypeService.getType()}"> - <option value="">所有</option> - <option th:each="e : ${type}" th:text="${e['name']}" th:value="${e['code']}"></option></select> - </li> - <li> - <!--头 状 态:<input type="text" name="firstStatus"/>--> - 头 状 态:<select name="firstStatus" th:with="firstStatus=${@dict.getType('receiptHeaderStatus')}"> - <option value="">所有</option> - <option th:each="e : ${firstStatus}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option></select> - </li> - <li> - <!--尾 状 态:<input type="text" name="lastStatus"/>--> - 尾 状 态:<select name="lastStatus" th:with="lastStatus=${@dict.getType('receiptHeaderStatus')}"> - <option value="">所有</option> - <option th:each="e : ${lastStatus}" th:text="${e['dictLabel']}" th:value="${e['dictValue']}"></option></select> - </li> - <li class="time"> - <label>创建时间: </label> - <input type="text" class="time-input" id="startTime" placeholder="开始时间" name="params[createdBegin]"/> - <span>-</span> - <input type="text" class="time-input" id="endTime" placeholder="结束时间" name="params[createdEnd]"/> - </li> - <li> - <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> - <!--<a class="btn btn-success btn-rounded btn-sm" onclick="$.table.exportExcel()" shiro:hasPermission="receipt:receiptHeader:export"><i class="fa fa-download"></i> 导出</a>--> - </li> - </ul> - </div> - </form> - </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="receipt:receiptHeader:add"> - <i class="fa fa-plus"></i> 新增 - </a> - <a class="btn btn-outline btn-danger btn-rounded" onclick="$.operate.batRemove()" - shiro:hasPermission="receipt:receiptHeader:remove"> - <i class="fa fa-trash-o"></i> 删除 - </a> - </div> - <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table> - </div> - - <div class="tab-pane fade" id="tabDetail"> - <table id="bootstrap-table1" data-mobile-responsive="true" - class="table table-bordered table-hover"></table> - </div> - </div> + </div> + + <div class="col-sm-12 select-info"> + <table id="bootstrap-table" data-mobile-responsive="true" class="table table-bordered table-hover"></table> + </div> </div> </div> -</div> -<div th:include="include :: footer"></div> -<script th:inline="javascript"> - var prefix = ctx + "receipt/receiptHeaderHistory"; - var prefix1 = ctx + "receipt/receiptDetailHistory"; - var editFlag = [[${@permission.hasPermi('receipt:receiptHeader:edit')}]]; - var removeFlag = [[${@permission.hasPermi('receipt:receiptHeader:remove')}]]; - var receiptTypes = [[${@receiptTypeService.getType()}]]; - var receiptHeaderStatus = [[${@dict.getType('receiptHeaderStatus')}]]; - var printFlag = [[${@permission.hasPermi('receipt:receiptHeader:report')}]]; - var addFlag= [[${@permission.hasPermi('receipt:receiptHeader:add')}]]; - - - $(function() { - var options = { - url: prefix + "/list", - createUrl: prefix + "/add", - updateUrl: prefix + "/edit/{id}", - removeUrl: prefix + "/remove", - modalName: "入库历史", - search: false, - sortName: "id", - sortOrder: "desc", - columns: [{ - checkbox: true - }, - { - field : 'id', - title : '入库单id' - }, - { - field : 'code', - title : '入库单号' - }, - { - field : 'referCode', - title : '关联单号' - }, - { - field : 'referId', - title : '关联单号(内部号)' - }, - { - field : 'referType', - title : '关联订单类型' - }, - { - field : 'companyCode', - title : '货主编码', - visible:false - }, - { - field : 'warehouseCode', - title : '仓库编码', - visible:false - }, - { - field : 'receiptType', - title : '入库类型', - align: 'center', - formatter: function(value, row, index) { - var actions = []; - $.each(receiptTypes, function(index, dict) { - if (dict.code == value) { - actions.push("<span class='badge badge-info'>" + dict.name + "</span>"); - return false; - } - }); - return actions.join(''); - } - }, - { - field : 'scheduledArriveDate', - title : '预计到达日期' - }, - { - field : 'actualArriveDate', - title : '实际到达日期' - }, - { - field : 'startCheckinDatetime', - title : '开始收货日期' - }, - { - field : 'endCheckinDatetime', - title : '结束收货日期' - }, - { - field : 'recvDock', - title : '月台货位' - }, - { - field : 'closedAt', - title : '关闭时间', - visible : false - }, - { - field : 'closedBy', - title : '强制关闭用户', - visible :false - }, - { - field : 'totalQty', - title : '总数量' - }, - { - field : 'totalLines', - title : '总行数' - }, - { - field : 'remark', - title : '备注', - visible : false - }, - { - field : 'uploadStatus', - title : '上传状态', - visible:false - }, - { - field : 'receiptNote', - title : '入库单备注', - visible:false - }, - { - field : 'locked', - title : '锁定', - visible:false - }, - { - field : 'lockedBy', - title : '锁定用户', - visible:false - }, - { - field : 'firstStatus', - title : '头状态', - align: 'center', - formatter: function(value, row, index) { - return $.table.selectDictLabel(receiptHeaderStatus, value); - } - }, - { - field : 'lastStatus', - title : '尾状态', - align: 'center', - formatter: function(value, row, index) { - return $.table.selectDictLabel(receiptHeaderStatus, value); - } - }, - { - field : 'created', - title : '创建时间', - sortable:true, - visible:false - }, - { - field : 'createdBy', - title : '创建用户', - visible:false - }, - { - field : 'lastUpdated', - title : '最后修改时间', - sortable:true, - visible:false - }, - { - field : 'lastUpdatedBy', - title : '更新用户', - visible:false - }, - { - field : 'userDef1', - title : '自定义字段1', - visible: false - }, - { - field : 'userDef2', - title : '自定义字段2', - visible: false - }, - { - field : 'userDef3', - title : '自定义字段3' , - visible: false - }] - }; - $.table.init(options); - }); + <div th:include="include :: footer"></div> + <script th:inline="javascript"> + var editFlag = [[${@permission.hasPermi('receipt:history:edit')}]]; + var removeFlag = [[${@permission.hasPermi('receipt:history:remove')}]]; + var prefix = ctx + "receipt/receiptHeaderHistory" - function detail(id, code) { - var url = prefix1+"/list/" + id; - createtable(url); - } + $(function() { + var options = { + url: prefix + "/list", + createUrl: prefix + "/add", + updateUrl: prefix + "/edit/{id}", + removeUrl: prefix + "/remove", + modalName: "入库单历史", + search: false, + columns: [{ + checkbox: true + }, + { + field : 'id', + title : '入库id号' + }, + { + field : 'code', + title : '入库单号' + }, + { + field : 'companyId', + title : '货主id' + }, + { + field : 'companyCode', + title : '货主编码' + }, + { + field : 'supplierId', + title : '供应商id' + }, + { + field : 'supplierCode', + title : '供应商编码' + }, + { + field : 'type', + title : '入库类型' + }, + { + field : 'sourceCode', + title : '上游系统单号' + }, + { + field : 'sourcePlatform', + title : '上游平台' + }, + { + field : 'totalQty', + title : '总数量' + }, + { + field : 'totalLines', + title : '总行数' + }, + { + field : 'remark', + title : '入库单备注' + }, + { + field : 'uploadStatus', + title : '上传状态' + }, + { + field : 'uploadremark', + title : '上传备注' + }, + { + field : 'uploadTime', + title : '上传时间' + }, + { + field : 'appointmentTime', + title : '入库预约时间' + }, + { + field : 'firstStatus', + title : '单据头状态' + }, + { + field : 'lastStatus', + title : '单据尾状态' + }, + { + field : 'created', + title : '创建时间' + }, + { + field : 'createdBy', + title : '创建用户' + }, + { + field : 'lastUpdated', + title : '最后修改时间' + }, + { + field : 'lastUpdatedBy', + title : '更新用户' + }, + { + field : 'enable', + title : '是否有效' + }, + { + field : 'deleted', + title : '是否删除' + }, + { + field : 'userDef1', + title : '自定义字段1' + }, + { + field : 'userDef2', + title : '自定义字段2' + }, + { + field : 'userDef3', + title : '自定义字段3' + }, + { + title: '操作', + 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-info btn-xs " href="#" onclick="detail(\'' + row.id + '\')"><i class="fa fa-list-ul"></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>'); + return actions.join(''); + } + }] + }; + $.table.init(options); + }); - function createtable(url) { - $("#tabDetail").children().remove(); - $("#myTab li").removeClass("active"); - var height = $(document).height()-100 + 'px'; - var str = '<iframe class="huaheng_iframe" name="iframe" width="100%" height="' + height + '" src="' + url + '" frameborder="0" data-id="' + url + '" seamless></iframe>'; - $("#tabDetail").append(str); - $(".tab-pane").removeClass("in active"); - $("#myTab li:eq(1)").addClass("active"); - $("#tabDetail").addClass("in active"); - } -</script> + /*入库单列表-详细*/ + function detail(receiptId) { + var url = 'receipt/receiptDetailHistory/' + receiptId; + createMenuItem(url, "入库单据历史明细"); + } + </script> </body> </html> \ No newline at end of file