diff --git a/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java b/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java index e53547a..2071bff 100644 --- a/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java +++ b/src/main/java/com/huaheng/pc/config/shipmentPreference/service/ShipmentPreferenceServiceImpl.java @@ -7,6 +7,8 @@ import com.huaheng.common.exception.service.ServiceException; import com.huaheng.common.support.Convert; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; +import com.huaheng.pc.config.configValue.domain.ConfigValue; +import com.huaheng.pc.config.configValue.service.ConfigValueService; import com.huaheng.pc.config.shipmentPreference.domain.ShipmentPreference; import com.huaheng.pc.config.shipmentPreference.mapper.ShipmentPreferenceMapper; import com.huaheng.pc.config.statusFlow.domain.StatusFlowDetail; @@ -32,6 +34,8 @@ public class ShipmentPreferenceServiceImpl extends ServiceImpl<ShipmentPreferenc private StatusFlowDetailService statusFlowDetailService; @Autowired private ShipmentHeaderService shipmentHeaderService; + @Autowired + private ConfigValueService configValueService; /** @@ -46,6 +50,15 @@ public class ShipmentPreferenceServiceImpl extends ServiceImpl<ShipmentPreferenc */ @Override public List<ShipmentHeader> checkShipmentProcess(String ids, Integer code) { + + LambdaQueryWrapper<ConfigValue> configValueLambdaQueryWrapper=Wrappers.lambdaQuery(); + configValueLambdaQueryWrapper.eq(ConfigValue::getModuleType,"shipment") + .eq(ConfigValue::getWarehouseCode,ShiroUtils.getWarehouseCode()); + ConfigValue configValue=configValueService.getOne(configValueLambdaQueryWrapper); + if(configValue==null){ + throw new ServiceException("仓库的出库配置不存在"); + } + //查找出库首选项 ShipmentPreference shipmentPreference = shipmentPreferenceService.list().get(0); if(shipmentPreference == null){ 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 1651e75..86c7cf7 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 @@ -17,7 +17,9 @@ import com.huaheng.framework.web.page.TableSupport; import com.huaheng.pc.inventory.adjustDetail.domain.AdjustDetail; import com.huaheng.pc.inventory.adjustDetail.service.AdjustDetailService; import com.huaheng.pc.inventory.adjustHeader.domain.AdjustHeader; +import com.huaheng.pc.inventory.adjustHeader.mapper.AdjustHeaderMapper; import com.huaheng.pc.inventory.adjustHeader.service.AdjustHeaderService; +import com.huaheng.pc.inventory.cycleCountHeader.domain.CycleCountHeader; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; @@ -38,6 +40,8 @@ public class adjustDetailController extends BaseController { @Resource private AdjustHeaderService adjustHeaderService; @Resource + private AdjustHeaderMapper adjustHeaderMapper; + @Resource private AdjustDetailService adjustDetailService; @@ -102,6 +106,41 @@ public class adjustDetailController extends BaseController { } /** + * 新增调整明细 + */ + @GetMapping("/add") + public String add(String adjustCode, ModelMap m) + { + if( adjustCode== null){ + throw new SecurityException("调整单头编码不能为空!"); + } + m.put("adjustCode",adjustCode); + return prefix + "/add"; + } + + /** + * 保存新增调整明细 + */ + //@RequiresPermissions("inventory:cyclecountDetail:add") + @Log(title = "库存-盘点", operating = "新增盘点补货明细", action = BusinessType.INSERT) + @PostMapping("/addAdjust") + @ResponseBody + public AjaxResult addSave(AdjustDetail adjustDetail) + { + //查询货主 + AdjustHeader adjustHeader = new AdjustHeader(); + adjustHeader.setCode(adjustDetail.getAdjustCode()); + LambdaQueryWrapper<AdjustHeader> lambdaQueryWrapper = Wrappers.lambdaQuery(adjustHeader); + AdjustHeader ah = adjustHeaderMapper.selectOne(lambdaQueryWrapper); + if(ah == null){ + throw new SecurityException("没有对应的主单据!"); + } + adjustDetail.setWarehouseCode(ah.getWarehouseCode()); + adjustDetail.setCompanyCode(ah.getCompanyCode()); + return adjustDetailService.addDetails(adjustDetail); + } + + /** * 调整, * 调整数量,调整库存状态 * 调整插入库存 diff --git a/src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailService.java b/src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailService.java index 0d78463..21f1cec 100644 --- a/src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailService.java +++ b/src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailService.java @@ -8,6 +8,8 @@ import com.huaheng.pc.inventory.adjustDetail.domain.AdjustDetail; public interface AdjustDetailService extends IService<AdjustDetail> { + AjaxResult addDetails(AdjustDetail adjustDetail); + AjaxResult updateAdjustDetail(AdjustDetail adjustDetail); AjaxResult adjustAgree(AdjustDetail adjustDetail); diff --git a/src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailServiceImpl.java b/src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailServiceImpl.java index 96a387d..7a1e006 100644 --- a/src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailServiceImpl.java +++ b/src/main/java/com/huaheng/pc/inventory/adjustDetail/service/AdjustDetailServiceImpl.java @@ -54,8 +54,23 @@ public class AdjustDetailServiceImpl extends ServiceImpl<AdjustDetailMapper, Adj + /** + *新增调整明细 + * @param adjustDetail + * @return + */ + @Transactional + @Override + public AjaxResult addDetails(AdjustDetail adjustDetail) { + + + + + return AjaxResult.success("新增调整明细成功!"); + } + /** * 调整审批 * @param adjustDetail diff --git a/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java b/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java index cb634bb..7f66033 100644 --- a/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java +++ b/src/main/java/com/huaheng/pc/inventory/cycleCountDetail/controller/CycleCountDetailController.java @@ -126,7 +126,7 @@ public class CycleCountDetailController extends BaseController { public String add(String cycleCountHeadCode,String companyCode, ModelMap m) { if(cycleCountHeadCode == null){ - throw new SecurityException("盘点头ID不能为空!"); + throw new SecurityException("盘点头编码不能为空!"); } //相同货主才能盘点,取出盘点头的货主 CycleCountHeader cycleCountHeader = new CycleCountHeader(); diff --git a/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailService.java b/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailService.java index a8c9a78..77adfb0 100644 --- a/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailService.java +++ b/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailService.java @@ -2,6 +2,7 @@ package com.huaheng.pc.inventory.inventoryDetail.service; import com.baomidou.mybatisplus.extension.service.IService; import com.huaheng.framework.web.domain.AjaxResult; +import com.huaheng.pc.config.shipmentPreference.domain.ShipmentPreference; import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail; import com.huaheng.pc.shipment.shipmentDetail.domain.ShipmentDetail; @@ -14,7 +15,7 @@ public interface InventoryDetailService extends IService<InventoryDetail> { void detailcreateCheckOutTask (Integer id); - List<InventoryDetail> selectBysql(String sql, ShipmentDetail shipmentDetail,String sqll); + List<InventoryDetail> selectBysql(String sql, ShipmentDetail shipmentDetail, String sqll, ShipmentPreference shipmentPreference); AjaxResult detailCheckTask (Integer[] ids) throws InvocationTargetException, IllegalAccessException; diff --git a/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java b/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java index 65504f1..579b1ba 100644 --- a/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java +++ b/src/main/java/com/huaheng/pc/inventory/inventoryDetail/service/InventoryDetailServiceImpl.java @@ -12,6 +12,7 @@ import com.huaheng.pc.check.checkHeader.domain.CheckHeader; import com.huaheng.pc.check.checkHeader.service.CheckHeaderService; import com.huaheng.pc.config.location.domain.Location; import com.huaheng.pc.config.location.service.LocationService; +import com.huaheng.pc.config.shipmentPreference.domain.ShipmentPreference; import com.huaheng.pc.inventory.inventoryDetail.domain.InventoryDetail; import com.huaheng.pc.inventory.inventoryHeader.service.InventoryHeaderService; import com.huaheng.pc.receipt.receiptDetail.domain.ReceiptDetail; @@ -128,18 +129,19 @@ public class InventoryDetailServiceImpl extends ServiceImpl<InventoryDetailMappe } @Override - public List<InventoryDetail> selectBysql(String sql, ShipmentDetail shipmentDetail,String sqll) { - if(StringUtils.isEmpty(sqll)) { - sql = sql + " \n" + "and warehouseCode='" + shipmentDetail.getWarehouseCode() + "' \n" + - "and companyCode='" + shipmentDetail.getCompanyCode() + "' \n" + - "and materialCode='" + shipmentDetail.getMaterialCode() + "' \n" + - "and inventorySts='" + shipmentDetail.getInventorySts() + "'"; - }else { - sql = sql + " \n" + "and warehouseCode='" + shipmentDetail.getWarehouseCode() + "' \n" + - "and companyCode='" + shipmentDetail.getCompanyCode() + "' \n" + - "and materialCode='" + shipmentDetail.getMaterialCode() + "' \n" + - "and inventorySts='" + shipmentDetail.getInventorySts() + "'"+ " \n" +sqll; - } + public List<InventoryDetail> selectBysql(String sql, ShipmentDetail shipmentDetail, String sqll, ShipmentPreference shipmentPreference) { + if(shipmentPreference.getAllowQcCheckResult() == false) { + sql = sql + " \n" + "and warehouseCode='" + shipmentDetail.getWarehouseCode() + "' \n" + + "and companyCode='" + shipmentDetail.getCompanyCode() + "' \n" + + "and materialCode='" + shipmentDetail.getMaterialCode() + "' \n" + + "and inventorySts='" + shipmentDetail.getInventorySts() + "'\n"+ sqll; + }else { + sql = sql + " \n" + "and warehouseCode='" + shipmentDetail.getWarehouseCode() + "' \n" + + "and companyCode='" + shipmentDetail.getCompanyCode() + "' \n" + + "and materialCode='" + shipmentDetail.getMaterialCode() + "' \n" + + "and inventorySts='" + shipmentDetail.getInventorySts() + "'\n"+ + "and qcCheck=1\n"+ sqll; + } return inventoryDetailMapper.selectBysql(sql); } 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 a603558..e01c992 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 @@ -46,6 +46,23 @@ public class ShippingCombinationService { //根据分配规则查找库存 public List<InventoryDetail> getInventorys(ShipmentDetail shipmentDetail) { + LambdaQueryWrapper<ConfigValue> configValueLambdaQueryWrapper=Wrappers.lambdaQuery(); + configValueLambdaQueryWrapper.eq(ConfigValue::getModuleType,"shipment") + .eq(ConfigValue::getWarehouseCode,shipmentDetail.getWarehouseCode()); + ConfigValue configValue=configValueService.getOne(configValueLambdaQueryWrapper); + if(configValue==null){ + throw new ServiceException("仓库的出库配置不存在"); + } + + //查找出库首选项 + LambdaQueryWrapper<ShipmentPreference> slam=Wrappers.lambdaQuery(); + slam.eq(ShipmentPreference::getCode,configValue.getIdentifier()) + .eq(ShipmentPreference::getWarehouseCode,configValue.getWarehouseCode()); + ShipmentPreference shipmentPreference=shipmentPreferenceService.getOne(slam); + if(shipmentPreference==null){ + throw new ServiceException("仓库的出库配置中出库首选项不存在"); + } + List<InventoryDetail> list=new ArrayList<>(); FilterConfigDetail filterConfigDetail=new FilterConfigDetail(); LambdaQueryWrapper<FilterConfigDetail> filterConfigDetailLambdaQueryWrapper= Wrappers.lambdaQuery(); @@ -61,7 +78,7 @@ public class ShippingCombinationService { //根据sql查库存 try { - list = inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll()); + list = inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll(),shipmentPreference); }catch (Exception e){ throw new ServiceException("sql错误"); } @@ -81,27 +98,12 @@ public class ShippingCombinationService { } //根据sql查库存 - list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll()); + list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll(),shipmentPreference); return list; } //都没有时,默认仓库的分配规则 - LambdaQueryWrapper<ConfigValue> configValueLambdaQueryWrapper=Wrappers.lambdaQuery(); - configValueLambdaQueryWrapper.eq(ConfigValue::getModuleType,"shipment") - .eq(ConfigValue::getWarehouseCode,shipmentDetail.getWarehouseCode()); - ConfigValue configValue=configValueService.getOne(configValueLambdaQueryWrapper); - if(configValue==null){ - throw new ServiceException("仓库的出库配置不存在"); - } - //查找出库首选项 - LambdaQueryWrapper<ShipmentPreference> slam=Wrappers.lambdaQuery(); - slam.eq(ShipmentPreference::getCode,configValue.getIdentifier()) - .eq(ShipmentPreference::getWarehouseCode,configValue.getWarehouseCode()); - ShipmentPreference shipmentPreference=shipmentPreferenceService.getOne(slam); - if(shipmentPreference==null){ - throw new ServiceException("仓库的出库配置中出库首选项不存在"); - } //查找分配规则 filterConfigDetailLambdaQueryWrapper.eq(FilterConfigDetail::getCode,shipmentPreference.getAllocationRule()); filterConfigDetail=filterConfigDetailService.getOne(filterConfigDetailLambdaQueryWrapper); @@ -110,7 +112,7 @@ public class ShippingCombinationService { } //根据sql查库存 - list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll()); + list=inventoryDetailService.selectBysql(filterConfigDetail.getStatement(),shipmentDetail,filterConfigDetail.getSqll(),shipmentPreference); return list; } 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 ff2f6e1..fb7843a 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 @@ -425,11 +425,11 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea @Transactional public void completeTask(TaskHeader task) { //区分任务类型 - if (task.getTaskType() == 100) { + if (task.getInternalTaskType() == 100) { //入库任务 completeReceiptTask(task); } - if (task.getTaskType() == 200) { + if (task.getInternalTaskType() == 200) { // 出库任务 completeShipmentTask(task); } diff --git a/src/main/resources/templates/inventory/adjustDetail/add.html b/src/main/resources/templates/inventory/adjustDetail/add.html index fb5e0e8..d54f90d 100644 --- a/src/main/resources/templates/inventory/adjustDetail/add.html +++ b/src/main/resources/templates/inventory/adjustDetail/add.html @@ -1,111 +1,209 @@ <!DOCTYPE HTML> -<html lang="zh" xmlns:th="http://www.thymeleaf.org"> +<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"> +<div class="wrapper wrapper-content animated fadeInRight ibox-content"> - <form class="form-horizontal m" id="form-cyclecountAdjustDetail-addAdjust" > - <input type="hidden" id="cyclecountAdjustId" name="cyclecountAdjustId" th:value="${cyclecountAdjustId}"> + <form class="form-horizontal m" id="form-adjustDetail-add"> + <!--<input type="hidden" id="adjustCode" name="adjustCode" th:value="${adjustCode}">--> - <div class="form-group"> - <label class="col-sm-3 control-label">调整单编号:</label> - <div class="col-sm-8"> - <input id="code" name="code" th:value="${code}" class="form-control" type="text" readonly="readonly"> - </div> + <div class="form-group"> + <label class="col-sm-3 control-label">调整单编号:</label> + <div class="col-sm-8"> + <input id="adjustCode" name="adjustCode" th:value="${adjustCode}" class="form-control" type="text" + readonly="readonly"> </div> - <div class="form-group"> - <label class="col-sm-3 control-label">货主编码:</label> - <div class="col-sm-8"> - <input id="companyId" name="companyId" type="hidden" th:value="*{companyId}"> - <input id="companyCode" name="companyCode" th:value="${companyCode}" class="form-control" type="text" readonly="readonly"> - </div> + </div> + <!-- <div class="form-group"> + <label class="col-sm-3 control-label">货主编码:</label> + <div class="col-sm-8"> + <input id="companyCode" name="companyCode" class="form-control" type="text" readonly="readonly"> + </div> + </div>--> + <div class="form-group"> + <label class="col-sm-3 control-label">库存明细ID:</label> + <div class="col-sm-8"> + <input id="inventoryDetailId" name="inventoryDetailId" class="form-control" type="text"> </div> - <div class="form-group"> - <label class="col-sm-3 control-label">盘点单编号:</label> - <div class="col-sm-8"> - <input id="cyclecountHeadCode" name="cyclecountHeadCode" th:value="${cyclecountHeadCode}" class="form-control" type="text" readonly="readonly"> - </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">盘点单号:</label> + <div class="col-sm-8"> + <input id="cycleCountCode" name="cycleCountCode" class="form-control" type="text"> </div> - <div class="form-group"> - <label class="col-sm-3 control-label">物料编码:</label> - <div class="col-sm-8"> - <input id="materialCode" name="materialCode" class="form-control" type="text" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"> - </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">盘点明细单号:</label> + <div class="col-sm-8"> + <input id="cycleDetailId" name="cycleDetailId" class="form-control" type="text"> </div> - <div class="form-group"> - <label class="col-sm-3 control-label">库位编码:</label> - <div class="col-sm-8"> - <input id="locationCode" name="locationCode" class="form-control" type="text" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"> - </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">质检单号:</label> + <div class="col-sm-8"> + <input id="checkCode" name="checkCode" class="form-control" type="text"> </div> - <div class="form-group"> - <label class="col-sm-3 control-label">容器编号:</label> - <div class="col-sm-8"> - <input id="containerCode" name="containerCode" class="form-control" type="text" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"> - </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">质检单明细行号:</label> + <div class="col-sm-8"> + <input id="checkDetailId" name="checkDetailId" class="form-control" type="text"> </div> - <!-- <div class="form-group"> - <label class="col-sm-3 control-label">重量kg:</label> - <div class="col-sm-8"> - <input id="weight" name="weight" class="form-control" type="text" onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"> - </div> - </div>--> - <div class="form-group"> - <label class="col-sm-3 control-label">库存状态:</label> - <div class="col-sm-8"> - <select id="inventoryStatus" name="inventoryStatus" class="form-control" th:with="inventoryStatus=${@dict.getType('inventoryStatus')}"> - <option th:each="dict : ${inventoryStatus}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> - </select> - </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">调整单关联单号:</label> + <div class="col-sm-8"> + <input id="referCode" name="referCode" class="form-control" type="text"> </div> - <div class="form-group"> - <label class="col-sm-3 control-label">系统数量:</label> - <div class="col-sm-8"> - <input id="systemQty" name="systemQty" value="0" class="form-control" type="text" onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')" readonly="readonly"> - </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">调整单关联明细行号:</label> + <div class="col-sm-8"> + <input id="referDetailId" name="referDetailId" 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="locationCode" name="locationCode" class="form-control" type="text" + onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">容器编号:</label> + <div class="col-sm-8"> + <input id="containerCode" name="containerCode" class="form-control" type="text" + onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">商品编码:</label> + <div class="col-sm-8"> + <input id="materialCode" name="materialCode" class="form-control" type="text" + onkeyup="this.value=this.value.replace(/(^\s*)|(\s*$)/g,'')"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">商品名称:</label> + <div class="col-sm-8"> + <input id="materialName" name="materialName" 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="materialSpec" name="materialSpec" 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="materialUnit" name="materialUnit" class="form-control" type="text"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">调整类型:</label> + <div class="col-sm-8"> + <select id="problemType" name="problemType" class="form-control" + th:with="problemType=${@dict.getType('adjustType')}"> + <option th:each="dict : ${problemType}" th:text="${dict['dictLabel']}" + th:value="${dict['dictValue']}"></option> + </select> + <!--<input id="problemType" name="problemType" 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="attributeId" name="attributeId" 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="fromQty" name="fromQty" class="form-control" type="text" + onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">调整后数量:</label> + <div class="col-sm-8"> + <input id="toQty" name="toQty" class="form-control" type="text" + onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">调整变动数量:</label> + <div class="col-sm-8"> + <input id="gapQty" name="gapQty" class="form-control" type="text" + onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')"> + </div> + </div> + <div class="form-group"> + <label class="col-sm-3 control-label">调整前库存状态:</label> + <div class="col-sm-8"> + <select id="fromInventorySts" name="fromInventorySts" class="form-control" + th:with="fromInventorySts=${@dict.getType('inventoryStatus')}"> + <option th:each="dict : ${fromInventorySts}" th:text="${dict['dictLabel']}" + th:value="${dict['dictValue']}"></option> + </select> + </div> + </div> <div class="form-group"> - <label class="col-sm-3 control-label">实际数量:</label> + <label class="col-sm-3 control-label">调整后库存状态:</label> <div class="col-sm-8"> - <input id="countedQty" name="countedQty" class="form-control" type="text" onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')" > + <select id="toInventorySts" name="toInventorySts" class="form-control" + th:with="toInventorySts=${@dict.getType('inventoryStatus')}"> + <option th:each="dict : ${toInventorySts}" th:text="${dict['dictLabel']}" + th:value="${dict['dictValue']}"></option> + </select> </div> </div> - <div class="form-group"> - <label class="col-sm-3 control-label">差异数量:</label> + <!--<div class="form-group"> + <label class="col-sm-3 control-label">调整状态:</label> <div class="col-sm-8"> - <input id="gapQty" name="gapQty" class="form-control" type="text" onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')" > + <select id="status" name="status" class="form-control" + th:with="status=${@dict.getType('inventoryStatus')}"> + <option th:each="dict : ${status}" th:text="${dict['dictLabel']}" + th:value="${dict['dictValue']}"></option> + </select> </div> - </div> + </div>--> <div class="form-group"> - <label class="col-sm-3 control-label">调整数量:</label> + <label class="col-sm-3 control-label">重量:</label> <div class="col-sm-8"> - <input id="adjustQty" name="adjustQty" class="form-control" type="text" onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')"> + <input id="weight" name="weight" 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="batch" name="batch" class="form-control" type="text" > + <input id="batch" name="batch" 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="lot" name="lot" class="form-control" type="text" > + <input id="lot" name="lot" 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="project" name="project" class="form-control" type="text" > + <input id="projectNO" name="projectNo" 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" 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="manufactureDate" name="manufactureDate" class="form-control" type="text" > + <input id="manufactureDate" name="manufactureDate" class="form-control" type="text"> </div> </div> <div class="form-group"> @@ -114,60 +212,58 @@ <input id="expirationDate" name="expirationDate" class="form-control" type="text"> </div> </div> + <div class="form-group"> + <div class="form-control-static col-sm-offset-9"> + <button type="submit" class="btn btn-primary">提交</button><!--盘有 adjustInsert--> + <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button> + </div> + </div> + </form> +</div> +<div th:include="include::footer"></div> +<script type="text/javascript"> + var prefix = ctx + "inventory/adjustDetail" + $("#form-adjustDetail-add").validate({ + rules: { + adjustCode: { + required: true, + }, + problemType: { + required: true, + }, + inventoryDetailId: { + required: true, + }, + status: { + required: true, + }, + materialCode: { + required: true, + }, + containerCode: { + required: true, + }, + locationCode: { + required: true, + }, - <div class="form-group"> - <div class="form-control-static col-sm-offset-9"> - <button type="submit" class="btn btn-primary">提交</button><!--盘有 adjustInsert--> - <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button> - </div> - </div> - </form> - </div> - <div th:include="include::footer"></div> - <script type="text/javascript"> - var prefix = ctx + "inventory/cyclecountAdjustDetail" - - $("#form-cyclecountAdjustDetail-addAdjust").validate({ - rules:{ - materialCode:{ - required:true, - }, - containerCode:{ - required:true, - }, - locationCode:{ - required:true, - }, - systemQty:{ - required:true, - }, - countedQty:{ - required:true, - }, - gapQty:{ - required:true, - }, - adjustQty:{ - required:true, - }, + //必须填值判定 + }, + submitHandler: function (form) { + $.operate.save(prefix + "/addAdjust", $('#form-adjustDetail-add').serialize()); + } + }); - //必须填值判定 - }, - submitHandler: function(form) { - $.operate.save(prefix + "/addAdjust", $('#form-cyclecountAdjustDetail-addAdjust').serialize()); - } + /*时间弹框*/ + $(function () { + layui.use('laydate', function () { + var laydate = layui.laydate; + laydate.render({elem: '#manufactureDate', max: 0, theme: 'molv', type: 'datetime'}); + laydate.render({elem: '#expirationDate', min: 0, theme: 'molv', type: 'datetime'}); }); + }) - /*时间弹框*/ - $(function () { - layui.use('laydate', function() { - var laydate = layui.laydate; - laydate.render({ elem: '#manufactureDate',max: 0, theme: 'molv' ,type: 'datetime'}); - laydate.render({ elem: '#expirationDate',min: 0, theme: 'molv' ,type: 'datetime'}); - }); - }) - - </script> +</script> </body> </html> diff --git a/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html b/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html index 8d62267..232ca9c 100644 --- a/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html +++ b/src/main/resources/templates/inventory/adjustDetail/adjustDetail.html @@ -91,7 +91,7 @@ </div> </div> <div class="btn-group hidden-xs" id="toolbar" role="group"> - <a class="btn btn-outline btn-success btn-rounded" onclick="$.operate.add()"> + <a class="btn btn-outline btn-success btn-rounded" onclick="add()"> <i class="fa fa-plus"></i> 新增 </a> <a class="btn btn-outline btn-primary btn-rounded" onclick="agree()"> @@ -251,11 +251,17 @@ { field: 'fromInventorySts', title: '调整前状态', + formatter: function (value, row, index) { + return $.table.selectDictLabel(inventoryStatus, value); + }, visible: true }, { field: 'toInventorySts', title: '调整后状态', + formatter: function (value, row, index) { + return $.table.selectDictLabel(inventoryStatus, value); + }, visible: true }, { @@ -266,22 +272,9 @@ }, { - field: 'inventorySts', - title: '库存状态', - formatter: function (value, row, index) { - return $.table.selectDictLabel(inventoryStatus, value); - }, - sortable: true - }, - - { - field: 'created', - title: '创建时间', - sortable: true - }, - { - field: 'createdBy', - title: '创建用户' + field: 'supplierCode', + title: '供应商编码', + visible: true }, { field: 'agreeTime', @@ -301,6 +294,46 @@ sortable: true }, { + field: 'batch', + title: '批次', + visible: true + }, + { + field: 'lot', + title: '批号', + visible: true + }, + { + field: 'projectNo', + title: '项目号', + visible: true + }, + { + field: 'weight', + title: '重量', + visible: true + }, + { + field: 'manufactureDate', + title: '生产日期', + visible: true + }, + { + field: 'expirationDate', + title: '失效日期', + visible: true + }, + { + field: 'created', + title: '创建时间', + sortable: true + }, + { + field: 'createdBy', + title: '创建用户' + }, + + { field: 'Remark', title: '备注', visible: true @@ -353,6 +386,15 @@ }); + + /*新增调整明细*/ + function add() { + var adjustCode = $('#adjustCode').val(); + if(adjustCode !=null && adjustCode!="" && adjustCode!=undefined){ + open("新增调整明细", prefix+"/add?adjustCode=" + adjustCode); + } + } + /*审批*/ function agree() { var rows = $.common.isEmpty($.table._option.id) ? $.table.selectFirstColumns() : $.table.selectColumns($.table._option.id); diff --git a/src/main/resources/templates/inventory/adjustDetail/adjustEdit.html b/src/main/resources/templates/inventory/adjustDetail/adjustEdit.html deleted file mode 100644 index ecffbfd..0000000 --- a/src/main/resources/templates/inventory/adjustDetail/adjustEdit.html +++ /dev/null @@ -1,168 +0,0 @@ -<!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-cyclecountAdjustDetail-AdjustEdit" th:object="${cyclecountAdjustDetailEdit}" > - <input type="hidden" id="cyclecountAdjustId" name="cyclecountAdjustId" th:value="*{cyclecountAdjustId}"> - - <div class="form-group"> - <label class="col-sm-3 control-label">明细id:</label> - <div class="col-sm-8"> - <input id="id" name="id" th:value="*{id}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">调整单编号:</label> - <div class="col-sm-8"> - <input id="cyclecountAdjustCode" name="cyclecountAdjustCode" th:value="*{cyclecountAdjustCode}" class="form-control" type="text" readonly="readonly"> - </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:value="*{companyCode}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">盘点单编号:</label> - <div class="col-sm-8"> - <input id="cyclecountHeadCode" name="cyclecountHeadCode" th:value="*{cyclecountHeadCode}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">物料编码:</label> - <div class="col-sm-8"> - <input id="materialCode" name="materialCode" th:value="*{materialCode}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - - <div class="form-group"> - <label class="col-sm-3 control-label">库位编码:</label> - <div class="col-sm-8"> - <input id="locationCode" name="locationCode" th:value="*{locationCode}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">容器编号:</label> - <div class="col-sm-8"> - <input id="containerCode" name="containerCode" th:value="*{containerCode}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">入库单编码:</label> - <div class="col-sm-8"> - <input id="receiptCode" name="receiptCode" th:value="*{receiptCode}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <!--<div class="form-group"> - <label class="col-sm-3 control-label">重量kg:</label> - <div class="col-sm-8"> - <input id="weight" name="weight" th:value="*{weight}" class="form-control" type="text" readonly="readonly"> - </div> - </div>--> - <div class="form-group"> - <label class="col-sm-3 control-label">库存id:</label> - <div class="col-sm-8"> - <input id="inventoryId" name="inventoryId" th:value="*{inventoryId}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">库存状态:</label> - <div class="col-sm-8"> - <select id="inventoryStatus" name="inventoryStatus" class="form-control" th:with="inventoryStatus=${@dict.getType('inventoryStatus')}" disabled="disabled"> - <option th:each="dict : ${inventoryStatus}" th:field="*{inventoryStatus}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> - </select> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">系统数量:</label> - <div class="col-sm-8"> - <input id="systemQty" name="systemQty" th:value="*{systemQty}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">实际数量:</label> - <div class="col-sm-8"> - <input id="countedQty" name="countedQty" th:value="*{countedQty}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">差异数量:</label> - <div class="col-sm-8"> - <input id="gapQty" name="gapQty" th:value="*{gapQty}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">调整数量:</label> - <div class="col-sm-8"> - <input id="adjustQty" name="adjustQty" class="form-control" type="text" placeholder="填写物料的差异数值" onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')"> - </div> - </div> - - <div class="form-group"> - <label class="col-sm-3 control-label">批次:</label> - <div class="col-sm-8"> - <input id="batch" name="batch" th:value="*{batch}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">批号:</label> - <div class="col-sm-8"> - <input id="lot" name="lot" th:value="*{lot}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">项目号:</label> - <div class="col-sm-8"> - <input id="project" name="project" th:value="*{project}" class="form-control"readonly="readonly"> - </div> - </div> - <!--<div class="form-group"> - <label class="col-sm-3 control-label">生产日期:</label> - <div class="col-sm-8"> - <input id="manufactureDate" name="manufactureDate" th:value="*{manufactureDate}" class="form-control" type="text" readonly="readonly"> - </div> - </div>--> - <div class="form-group"> - <label class="col-sm-3 control-label">失效日期:</label> - <div class="col-sm-8"> - <input id="expirationDate" name="expirationDate" th:value="*{expirationDate}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - - <div class="form-group"> - <div class="form-control-static col-sm-offset-9"> - <button type="submit" class="btn btn-success">确认</button><!--只调整数量 adjustUpdate--> - <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button> - </div> - </div> - </form> -</div> -<div th:include="include::footer"></div> -<script type="text/javascript"> - var prefix = ctx + "inventory/cyclecountAdjustDetail" - $("#form-cyclecountAdjustDetail-AdjustEdit").validate({ - rules:{ - adjustQty:{ - required:true, - }, - //必填判定 - }, - submitHandler: function(form) { - $.operate.save(prefix + "/editAdjustSave", $('#form-cyclecountAdjustDetail-AdjustEdit').serialize()); - } - }); - /*时间弹框*/ - $(function () { - layui.use('laydate', function() { - var laydate = layui.laydate; - laydate.render({ elem: '#manufactureDate',max: 0, theme: 'molv' ,type: 'datetime'}); - laydate.render({ elem: '#expirationDate',min: 0, theme: 'molv' ,type: 'datetime'}); - }); - }) - -</script> -</body> -</html> diff --git a/src/main/resources/templates/inventory/adjustHeader/adjustEdit.html b/src/main/resources/templates/inventory/adjustHeader/adjustEdit.html deleted file mode 100644 index ecffbfd..0000000 --- a/src/main/resources/templates/inventory/adjustHeader/adjustEdit.html +++ /dev/null @@ -1,168 +0,0 @@ -<!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-cyclecountAdjustDetail-AdjustEdit" th:object="${cyclecountAdjustDetailEdit}" > - <input type="hidden" id="cyclecountAdjustId" name="cyclecountAdjustId" th:value="*{cyclecountAdjustId}"> - - <div class="form-group"> - <label class="col-sm-3 control-label">明细id:</label> - <div class="col-sm-8"> - <input id="id" name="id" th:value="*{id}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">调整单编号:</label> - <div class="col-sm-8"> - <input id="cyclecountAdjustCode" name="cyclecountAdjustCode" th:value="*{cyclecountAdjustCode}" class="form-control" type="text" readonly="readonly"> - </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:value="*{companyCode}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">盘点单编号:</label> - <div class="col-sm-8"> - <input id="cyclecountHeadCode" name="cyclecountHeadCode" th:value="*{cyclecountHeadCode}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">物料编码:</label> - <div class="col-sm-8"> - <input id="materialCode" name="materialCode" th:value="*{materialCode}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - - <div class="form-group"> - <label class="col-sm-3 control-label">库位编码:</label> - <div class="col-sm-8"> - <input id="locationCode" name="locationCode" th:value="*{locationCode}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">容器编号:</label> - <div class="col-sm-8"> - <input id="containerCode" name="containerCode" th:value="*{containerCode}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">入库单编码:</label> - <div class="col-sm-8"> - <input id="receiptCode" name="receiptCode" th:value="*{receiptCode}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <!--<div class="form-group"> - <label class="col-sm-3 control-label">重量kg:</label> - <div class="col-sm-8"> - <input id="weight" name="weight" th:value="*{weight}" class="form-control" type="text" readonly="readonly"> - </div> - </div>--> - <div class="form-group"> - <label class="col-sm-3 control-label">库存id:</label> - <div class="col-sm-8"> - <input id="inventoryId" name="inventoryId" th:value="*{inventoryId}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">库存状态:</label> - <div class="col-sm-8"> - <select id="inventoryStatus" name="inventoryStatus" class="form-control" th:with="inventoryStatus=${@dict.getType('inventoryStatus')}" disabled="disabled"> - <option th:each="dict : ${inventoryStatus}" th:field="*{inventoryStatus}" th:text="${dict['dictLabel']}" th:value="${dict['dictValue']}"></option> - </select> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">系统数量:</label> - <div class="col-sm-8"> - <input id="systemQty" name="systemQty" th:value="*{systemQty}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">实际数量:</label> - <div class="col-sm-8"> - <input id="countedQty" name="countedQty" th:value="*{countedQty}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">差异数量:</label> - <div class="col-sm-8"> - <input id="gapQty" name="gapQty" th:value="*{gapQty}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">调整数量:</label> - <div class="col-sm-8"> - <input id="adjustQty" name="adjustQty" class="form-control" type="text" placeholder="填写物料的差异数值" onkeyup="this.value=this.value.replace(/[^\-?\d.]/g,'')"> - </div> - </div> - - <div class="form-group"> - <label class="col-sm-3 control-label">批次:</label> - <div class="col-sm-8"> - <input id="batch" name="batch" th:value="*{batch}" class="form-control" type="text" readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">批号:</label> - <div class="col-sm-8"> - <input id="lot" name="lot" th:value="*{lot}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - <div class="form-group"> - <label class="col-sm-3 control-label">项目号:</label> - <div class="col-sm-8"> - <input id="project" name="project" th:value="*{project}" class="form-control"readonly="readonly"> - </div> - </div> - <!--<div class="form-group"> - <label class="col-sm-3 control-label">生产日期:</label> - <div class="col-sm-8"> - <input id="manufactureDate" name="manufactureDate" th:value="*{manufactureDate}" class="form-control" type="text" readonly="readonly"> - </div> - </div>--> - <div class="form-group"> - <label class="col-sm-3 control-label">失效日期:</label> - <div class="col-sm-8"> - <input id="expirationDate" name="expirationDate" th:value="*{expirationDate}" class="form-control" type="text"readonly="readonly"> - </div> - </div> - - <div class="form-group"> - <div class="form-control-static col-sm-offset-9"> - <button type="submit" class="btn btn-success">确认</button><!--只调整数量 adjustUpdate--> - <button onclick="$.modal.close()" class="btn btn-danger" type="button">关闭</button> - </div> - </div> - </form> -</div> -<div th:include="include::footer"></div> -<script type="text/javascript"> - var prefix = ctx + "inventory/cyclecountAdjustDetail" - $("#form-cyclecountAdjustDetail-AdjustEdit").validate({ - rules:{ - adjustQty:{ - required:true, - }, - //必填判定 - }, - submitHandler: function(form) { - $.operate.save(prefix + "/editAdjustSave", $('#form-cyclecountAdjustDetail-AdjustEdit').serialize()); - } - }); - /*时间弹框*/ - $(function () { - layui.use('laydate', function() { - var laydate = layui.laydate; - laydate.render({ elem: '#manufactureDate',max: 0, theme: 'molv' ,type: 'datetime'}); - laydate.render({ elem: '#expirationDate',min: 0, theme: 'molv' ,type: 'datetime'}); - }); - }) - -</script> -</body> -</html>