| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zy.asrs.controller; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.plugins.Page; | 
|---|
|  |  |  | import com.core.annotations.ManagerAuth; | 
|---|
|  |  |  | import com.core.common.DateUtils; | 
|---|
|  |  |  | import com.core.common.R; | 
|---|
|  |  |  | import com.zy.asrs.entity.Pla; | 
|---|
|  |  |  | import com.zy.asrs.service.PlaService; | 
|---|
|  |  |  | import com.zy.common.web.BaseController; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.RequestBody; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.RequestMapping; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.RequestParam; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.RestController; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RestController | 
|---|
|  |  |  | public class PlaController extends BaseController { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private PlaService plaService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/pla/list/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R list(@RequestParam(defaultValue = "1")Integer curr, | 
|---|
|  |  |  | @RequestParam(defaultValue = "10")Integer limit, | 
|---|
|  |  |  | @RequestParam(required = false)String condition, | 
|---|
|  |  |  | @RequestParam Map<String, Object> param){ | 
|---|
|  |  |  | excludeTrash(param); | 
|---|
|  |  |  | EntityWrapper<Pla> wrapper = new EntityWrapper<>(); | 
|---|
|  |  |  | convert(param, wrapper); | 
|---|
|  |  |  | allLike(Pla.class, param.keySet(), wrapper, condition); | 
|---|
|  |  |  | return R.ok(plaService.selectPage(new Page<>(curr, limit), wrapper)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/pla/add/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R add(@RequestBody List<Pla> plas) { | 
|---|
|  |  |  | System.out.println(plas.toString()); | 
|---|
|  |  |  | plas.forEach(pla -> { | 
|---|
|  |  |  | plaService.insert(pla); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/pla/update/auth") | 
|---|
|  |  |  | @ManagerAuth | 
|---|
|  |  |  | public R update(@RequestBody List<Pla> plas) { | 
|---|
|  |  |  | System.out.println(plas.toString()); | 
|---|
|  |  |  | plas.forEach(pla -> { | 
|---|
|  |  |  | plaService.updateById(pla); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | return R.ok(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private <T> void convert(Map<String, Object> map, EntityWrapper<T> wrapper){ | 
|---|
|  |  |  | for (Map.Entry<String, Object> entry : map.entrySet()){ | 
|---|
|  |  |  | String val = String.valueOf(entry.getValue()); | 
|---|
|  |  |  | if (val.contains(RANGE_TIME_LINK)){ | 
|---|
|  |  |  | String[] dates = val.split(RANGE_TIME_LINK); | 
|---|
|  |  |  | wrapper.ge(entry.getKey(), DateUtils.convert(dates[0])); | 
|---|
|  |  |  | wrapper.le(entry.getKey(), DateUtils.convert(dates[1])); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | wrapper.like(entry.getKey(), val); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.enums.IdType; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModelProperty; | 
|---|
|  |  |  | import lombok.Data; | 
|---|
|  |  |  | import org.springframework.format.annotation.DateTimeFormat; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | private Long id; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //入库时间 | 
|---|
|  |  |  | private Date io_time; | 
|---|
|  |  |  | @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") | 
|---|
|  |  |  | private String pakinTime; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //批号 | 
|---|
|  |  |  | private String batch; | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //状态 | 
|---|
|  |  |  | private String status; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //步骤 | 
|---|
|  |  |  | private int step; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Date createTime; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private Date modifyTime; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private String createUser; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private String modifyUser; | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zy.asrs.mapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.BaseMapper; | 
|---|
|  |  |  | import com.zy.asrs.entity.Pla; | 
|---|
|  |  |  | import org.apache.ibatis.annotations.Mapper; | 
|---|
|  |  |  | import org.springframework.stereotype.Repository; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Mapper | 
|---|
|  |  |  | @Repository | 
|---|
|  |  |  | public interface PlaMapper extends BaseMapper<Pla> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zy.asrs.service; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.service.IService; | 
|---|
|  |  |  | import com.zy.asrs.entity.Pla; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public interface PlaService extends IService<Pla> { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | package com.zy.asrs.service.impl; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.service.impl.ServiceImpl; | 
|---|
|  |  |  | import com.zy.asrs.entity.Pla; | 
|---|
|  |  |  | import com.zy.asrs.mapper.PlaMapper; | 
|---|
|  |  |  | import com.zy.asrs.service.PlaService; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Service("plaService") | 
|---|
|  |  |  | public class PlaServiceImpl extends ServiceImpl<PlaMapper, Pla> implements PlaService { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | var initCountVal = 0; | 
|---|
|  |  |  | var initAnfmeVal = "-"; | 
|---|
|  |  |  | var matCodeData = []; | 
|---|
|  |  |  | var currLocNo; | 
|---|
|  |  |  | var matCodeLayerIdx; | 
|---|
|  |  |  | var data = []; | 
|---|
|  |  |  | var checkStatus = []; | 
|---|
|  |  |  | function getCol() { | 
|---|
|  |  |  | var cols = [ | 
|---|
|  |  |  | {field: 'id', title: 'id', align: 'center',hide:true} | 
|---|
|  |  |  | ,{type: 'checkbox'} | 
|---|
|  |  |  | ,{field: 'pakinTime', title: '入库时间', align: 'center'} | 
|---|
|  |  |  | ,{field: 'batch', align: 'center',title: '批号'} | 
|---|
|  |  |  | ,{field: 'packageNo', align: 'center',title: '包号'} | 
|---|
|  |  |  | ,{field: 'brand', align: 'center',title: '牌号'} | 
|---|
|  |  |  | ,{field: 'weight', align: 'center',title: '重量(KG)', hide:true} | 
|---|
|  |  |  | ,{field: 'workshop', align: 'center',title: '生产车间', hide:true} | 
|---|
|  |  |  | ,{field: 'line', align: 'center',title: '生产线', hide:true} | 
|---|
|  |  |  | ,{field: 'packageType', align: 'center',title: '包装类型', hide:true} | 
|---|
|  |  |  | ,{field: 'zpalletType', align: 'center',title: '托盘类型', hide:true} | 
|---|
|  |  |  | ,{field: 'fingerMelting', align: 'center',title: '熔指(g/10min)'} | 
|---|
|  |  |  | ,{field: 'fusingPoint', align: 'center',title: '熔点(℃)'} | 
|---|
|  |  |  | ,{field: 'vadf1', align: 'center',title: '挥发份1(%)', hide:true} | 
|---|
|  |  |  | ,{field: 'vadf2', align: 'center',title: '挥发份2(%)', hide:true} | 
|---|
|  |  |  | ,{field: 'yellowness', align: 'center',title: '黄度',  hide:true} | 
|---|
|  |  |  | ,{field: 'opacity', align: 'center',title: '不透明度(0-100%)', hide:true} | 
|---|
|  |  |  | ,{field: 'water', align: 'center',title: '水分(ppm)', hide:true} | 
|---|
|  |  |  | ,{field: 'massState', align: 'center',title: '质量状态', hide:true} | 
|---|
|  |  |  | ,{field: 'problem', align: 'center',title: '质量问题', hide:true} | 
|---|
|  |  |  | ,{field: 'stash', align: 'center',title: '仓库', edit:true} | 
|---|
|  |  |  | ,{field: 'locNo', align: 'center',title: '库位', edit:true} | 
|---|
|  |  |  | ,{field: 'weightAnfme', align: 'center',title: '剩余重量(KG)', edit:true} | 
|---|
|  |  |  | ,{field: 'status', align: 'center',title: '状态', edit:true} | 
|---|
|  |  |  | ,{field: 'createUser', align: 'center',title: '单号', edit:true} | 
|---|
|  |  |  | ,{field: 'createUser', align: 'center',title: '出库时间', edit:true} | 
|---|
|  |  |  | ,{field: 'createUser', align: 'center',title: '重量', edit:true} | 
|---|
|  |  |  | ,{field: 'createUser', align: 'center',title: '经办人', edit:true} | 
|---|
|  |  |  | ,{field: 'createUser', align: 'center',title: '流转形式', edit:true} | 
|---|
|  |  |  | ,{field: 'createUser', align: 'center',title: '客户名称', edit:true} | 
|---|
|  |  |  | ,{field: 'createUser', align: 'center',title: '调拨到', edit:true} | 
|---|
|  |  |  | ,{field: 'createUser', align: 'center',title: '备注', edit:true} | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | return cols; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | layui.config({ | 
|---|
|  |  |  | base: baseUrl + "/static/layui/lay/modules/" | 
|---|
|  |  |  | }).use(['table','laydate', 'form', 'admin'], function() { | 
|---|
|  |  |  | var table = layui.table; | 
|---|
|  |  |  | var $ = layui.jquery; | 
|---|
|  |  |  | var layer = layui.layer; | 
|---|
|  |  |  | var layDate = layui.laydate; | 
|---|
|  |  |  | var form = layui.form; | 
|---|
|  |  |  | var admin = layui.admin; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 数据渲染 | 
|---|
|  |  |  | tableIns = table.render({ | 
|---|
|  |  |  | elem: '#plaDetl', | 
|---|
|  |  |  | headers: {token: localStorage.getItem('token')}, | 
|---|
|  |  |  | url: baseUrl+'/pla/list/auth?step=3', | 
|---|
|  |  |  | page: true, | 
|---|
|  |  |  | limit: 16, | 
|---|
|  |  |  | limits: [16, 30, 50, 100, 200, 500], | 
|---|
|  |  |  | even: true, | 
|---|
|  |  |  | toolbar: '#toolbar', | 
|---|
|  |  |  | cellMinWidth: 50, | 
|---|
|  |  |  | cols: [getCol()], | 
|---|
|  |  |  | request: { | 
|---|
|  |  |  | pageName: 'curr', | 
|---|
|  |  |  | pageSize: 'limit' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | parseData: function (res) { | 
|---|
|  |  |  | console.log(res) | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | 'code': res.code, | 
|---|
|  |  |  | 'msg': res.msg, | 
|---|
|  |  |  | 'count': res.data.total, | 
|---|
|  |  |  | 'data': res.data.records | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | response: { | 
|---|
|  |  |  | statusCode: 200 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | done: function(res, curr, count) { | 
|---|
|  |  |  | if (res.code === 403) { | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | tableData = table.cache.locDetl; | 
|---|
|  |  |  | console.log(tableData); | 
|---|
|  |  |  | pageCurr=curr; | 
|---|
|  |  |  | limit(); | 
|---|
|  |  |  | form.on('checkbox(tableCheckbox)', function (data) { | 
|---|
|  |  |  | var _index = $(data.elem).attr('table-index')||0; | 
|---|
|  |  |  | if(data.elem.checked){ | 
|---|
|  |  |  | res.data[_index][data.value] = 'Y'; | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | res.data[_index][data.value] = 'N'; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 重置事件 | 
|---|
|  |  |  | form.on('submit(reset)', function (data) { | 
|---|
|  |  |  | reset(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function reset() { | 
|---|
|  |  |  | clearFormVal($('#search-box')); | 
|---|
|  |  |  | matCodeData = []; | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | locTips(false); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 重载表格 | 
|---|
|  |  |  | function tableReload() { | 
|---|
|  |  |  | tableIns.reload({data: matCodeData}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#add', function () { | 
|---|
|  |  |  | var now = dateToStr(new Date()) | 
|---|
|  |  |  | var newRow = {ioTime : now}; | 
|---|
|  |  |  | data = table.cache.plaDetl; | 
|---|
|  |  |  | data.push(newRow); | 
|---|
|  |  |  | table.reload('plaDetl',{ | 
|---|
|  |  |  | data: data | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#delete', function () { | 
|---|
|  |  |  | let dataNew = []; | 
|---|
|  |  |  | let data = table.cache.plaDetl; | 
|---|
|  |  |  | for(var i=0; i<data.length; i++){ | 
|---|
|  |  |  | if(!data[i].LAY_CHECKED){ | 
|---|
|  |  |  | dataNew.push(data[i]); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | table.reload('plaDetl',{ | 
|---|
|  |  |  | data: dataNew | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#submit', function () { | 
|---|
|  |  |  | let data = table.cache.plaDetl; | 
|---|
|  |  |  | let dataSave = []; | 
|---|
|  |  |  | let dataOld = []; | 
|---|
|  |  |  | for(var i=0; i<data.length; i++){ | 
|---|
|  |  |  | if(data[i].LAY_CHECKED){ | 
|---|
|  |  |  | if(!data[i].batch){ | 
|---|
|  |  |  | layer.msg("有未填写字段"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | data[i].step = 3; | 
|---|
|  |  |  | dataSave.push(data[i]); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | dataOld.push(data[i]); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/pla/update/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: JSON.stringify(dataSave), | 
|---|
|  |  |  | contentType:'application/json;charset=UTF-8', | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | async: false, | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | layer.msg("提交成功"); | 
|---|
|  |  |  | table.reload('plaDetl',{ | 
|---|
|  |  |  | data: dataOld | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | var currLocNo; | 
|---|
|  |  |  | var matCodeLayerIdx; | 
|---|
|  |  |  | var data = []; | 
|---|
|  |  |  | var checkStatus = []; | 
|---|
|  |  |  | function getCol() { | 
|---|
|  |  |  | var cols = [ | 
|---|
|  |  |  | {field: 'id', title: 'id', align: 'center',hide:true} | 
|---|
|  |  |  | ,{type: 'checkbox'} | 
|---|
|  |  |  | ,{field: 'ioTime', title: '入库时间', align: 'center'} | 
|---|
|  |  |  | ,{field: 'pakinTime', title: '入库时间', align: 'center'} | 
|---|
|  |  |  | ,{field: 'batch', align: 'center',title: '批号', edit: true} | 
|---|
|  |  |  | ,{field: 'packageNo', align: 'center',title: '包号', edit: true} | 
|---|
|  |  |  | ,{field: 'brand', align: 'center',title: '牌号', edit: true} | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 页面修改 | 
|---|
|  |  |  | table.on('edit(chooseData)', function (obj) { | 
|---|
|  |  |  | let index = obj.tr.attr("data-index"); | 
|---|
|  |  |  | let data = matCodeData[index]; | 
|---|
|  |  |  | let modify = true; | 
|---|
|  |  |  | if (obj.field === 'count'){ | 
|---|
|  |  |  | let vle = Number(obj.value); | 
|---|
|  |  |  | if (isNaN(vle)) { | 
|---|
|  |  |  | layer.msg("请输入数字", {icon: 2}); | 
|---|
|  |  |  | modify = false; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | if (vle <= 0) { | 
|---|
|  |  |  | layer.msg("数量必须大于零", {icon: 2}); | 
|---|
|  |  |  | modify = false; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (modify) { | 
|---|
|  |  |  | data[obj.field] = obj.value; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | tableIns.reload({data: matCodeData}); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 监听头工具栏事件 | 
|---|
|  |  |  | table.on('toolbar(chooseData)', function (obj) { | 
|---|
|  |  |  | switch(obj.event) { | 
|---|
|  |  |  | case 'adjust': | 
|---|
|  |  |  | if (isEmpty(currLocNo)) { | 
|---|
|  |  |  | layer.msg("请先检索库位", {icon: 2}) | 
|---|
|  |  |  | inputTip($("#searchLocNo")); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (matCodeData.length === 0) { | 
|---|
|  |  |  | layer.msg("请先添加明细", {icon: 2}); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | for (var i=0;i<matCodeData.length;i++){ | 
|---|
|  |  |  | if (isNaN(matCodeData[i].count)) { | 
|---|
|  |  |  | layer.msg("请输入数字", {icon: 2}); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (matCodeData[i].count < 0){ | 
|---|
|  |  |  | layer.msg("数量不能小于零", {icon: 2}); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | layer.confirm('确定调整'+currLocNo+'库位的明细吗?', {shadeClose: true}, function(){ | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/manLocDetl/adjust/start", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: JSON.stringify({ | 
|---|
|  |  |  | locNo: currLocNo, | 
|---|
|  |  |  | list: matCodeData | 
|---|
|  |  |  | }), | 
|---|
|  |  |  | contentType:'application/json;charset=UTF-8', | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | async: false, | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | layer.msg(currLocNo + res.msg, {icon: 1}); | 
|---|
|  |  |  | init(currLocNo) | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 监听行工具事件 | 
|---|
|  |  |  | table.on('tool(chooseData)', function(obj){ | 
|---|
|  |  |  | var data = obj.data; | 
|---|
|  |  |  | switch (obj.event) { | 
|---|
|  |  |  | case 'remove': | 
|---|
|  |  |  | let index = obj.tr.attr("data-index"); | 
|---|
|  |  |  | matCodeData.splice(index, 1); | 
|---|
|  |  |  | tableIns.reload({data: matCodeData}); | 
|---|
|  |  |  | break; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 检索事件 | 
|---|
|  |  |  | form.on('submit(search)', function (data) { | 
|---|
|  |  |  | let loc_no = data.field.loc_no; | 
|---|
|  |  |  | if (loc_no === "") { | 
|---|
|  |  |  | inputTip($("#searchLocNo")); | 
|---|
|  |  |  | layer.msg("请输入库位号"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | init(loc_no); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 重置事件 | 
|---|
|  |  |  | form.on('submit(reset)', function (data) { | 
|---|
|  |  |  | reset(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function init(locNo) { | 
|---|
|  |  |  | http.post(baseUrl + "/manLocDetl/list", {loc_no: locNo,limit: 1000}, function (res) { | 
|---|
|  |  |  | matCodeData = []; | 
|---|
|  |  |  | matCodeData = res.data.records; | 
|---|
|  |  |  | for (var i = 0; i<matCodeData.length; i++) { | 
|---|
|  |  |  | matCodeData[i]["count"] = matCodeData[i]["anfme"]; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | locTips(true, locNo); | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function reset() { | 
|---|
|  |  |  | clearFormVal($('#search-box')); | 
|---|
|  |  |  | 
|---|
|  |  |  | tableIns.reload({data: matCodeData}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 库位提示框 | 
|---|
|  |  |  | function locTips(retrieve, locNo) { | 
|---|
|  |  |  | if (retrieve) { | 
|---|
|  |  |  | http.post(baseUrl+"/node/select/"+locNo+"/auth", null, function (res) { | 
|---|
|  |  |  | console.log(res); | 
|---|
|  |  |  | let data = res.data; | 
|---|
|  |  |  | if (data != null) { | 
|---|
|  |  |  | $(".retrieve").show(); | 
|---|
|  |  |  | // $("#locMsg").html(locNo + " ,库位状态:" + data.locSts$); | 
|---|
|  |  |  | $("#locMsg").html(locNo + " "); | 
|---|
|  |  |  | $('.not-retrieve').hide(); | 
|---|
|  |  |  | currLocNo = locNo; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | layer.msg("请输入有效库位号", {icon: 2}); | 
|---|
|  |  |  | $('.not-retrieve').show(); | 
|---|
|  |  |  | $("#locMsg").html(""); | 
|---|
|  |  |  | $(".retrieve").hide(); | 
|---|
|  |  |  | currLocNo = null; | 
|---|
|  |  |  | inputTip($("#searchLocNo")); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | $('.not-retrieve').show(); | 
|---|
|  |  |  | $("#locMsg").html(""); | 
|---|
|  |  |  | $(".retrieve").hide(); | 
|---|
|  |  |  | currLocNo = null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#add', function () { | 
|---|
|  |  |  | var strTime = "20" | 
|---|
|  |  |  | var now = new Date(year,month,date,hrs,min,sec); | 
|---|
|  |  |  | var newRow = {ioTime : now}; | 
|---|
|  |  |  | var now = dateToStr(new Date()) | 
|---|
|  |  |  | var newRow = {pakinTime : now}; | 
|---|
|  |  |  | data = table.cache.productionInfoTable; | 
|---|
|  |  |  | data.push(newRow); | 
|---|
|  |  |  | table.reload('productionInfoTable',{ | 
|---|
|  |  |  | data: data | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#delete', function () { | 
|---|
|  |  |  | let dataNew = []; | 
|---|
|  |  |  | let data = table.cache.productionInfoTable; | 
|---|
|  |  |  | for(var i=0; i<data.length; i++){ | 
|---|
|  |  |  | if(!data[i].LAY_CHECKED){ | 
|---|
|  |  |  | dataNew.push(data[i]); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | table.reload('productionInfoTable',{ | 
|---|
|  |  |  | data: dataNew | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#submit', function () { | 
|---|
|  |  |  | let data = table.cache.productionInfoTable; | 
|---|
|  |  |  | let dataSave = []; | 
|---|
|  |  |  | let dataOld = []; | 
|---|
|  |  |  | for(var i=0; i<data.length; i++){ | 
|---|
|  |  |  | if(data[i].LAY_CHECKED){ | 
|---|
|  |  |  | if(!data[i].batch){ | 
|---|
|  |  |  | layer.msg("有未填写字段"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | data[i].step = 1; | 
|---|
|  |  |  | dataSave.push(data[i]); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | dataOld.push(data[i]); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/pla/add/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: JSON.stringify(dataSave), | 
|---|
|  |  |  | contentType:'application/json;charset=UTF-8', | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | async: false, | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | layer.msg("提交成功"); | 
|---|
|  |  |  | table.reload('productionInfoTable',{ | 
|---|
|  |  |  | data: dataOld | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | var initCountVal = 0; | 
|---|
|  |  |  | var initAnfmeVal = "-"; | 
|---|
|  |  |  | var matCodeData = []; | 
|---|
|  |  |  | var currLocNo; | 
|---|
|  |  |  | var matCodeLayerIdx; | 
|---|
|  |  |  | var data = []; | 
|---|
|  |  |  | var checkStatus = []; | 
|---|
|  |  |  | function getCol() { | 
|---|
|  |  |  | var cols = [ | 
|---|
|  |  |  | {field: 'id', title: 'id', align: 'center',hide:true} | 
|---|
|  |  |  | ,{type: 'checkbox'} | 
|---|
|  |  |  | ,{field: 'pakinTime', title: '入库时间', align: 'center'} | 
|---|
|  |  |  | ,{field: 'batch', align: 'center',title: '批号'} | 
|---|
|  |  |  | ,{field: 'packageNo', align: 'center',title: '包号'} | 
|---|
|  |  |  | ,{field: 'brand', align: 'center',title: '牌号'} | 
|---|
|  |  |  | ,{field: 'weight', align: 'center',title: '重量(KG)', hide:true} | 
|---|
|  |  |  | ,{field: 'workshop', align: 'center',title: '生产车间', hide:true} | 
|---|
|  |  |  | ,{field: 'line', align: 'center',title: '生产线', hide:true} | 
|---|
|  |  |  | ,{field: 'packageType', align: 'center',title: '包装类型', hide:true} | 
|---|
|  |  |  | ,{field: 'zpalletType', align: 'center',title: '托盘类型', hide:true} | 
|---|
|  |  |  | ,{field: 'fingerMelting', align: 'center',title: '熔指(g/10min)', edit: true} | 
|---|
|  |  |  | ,{field: 'fusingPoint', align: 'center',title: '熔点(℃)', edit: true} | 
|---|
|  |  |  | ,{field: 'vadf1', align: 'center',title: '挥发份1(%)', edit: true} | 
|---|
|  |  |  | ,{field: 'vadf2', align: 'center',title: '挥发份2(%)', edit: true} | 
|---|
|  |  |  | ,{field: 'yellowness', align: 'center',title: '黄度', edit: true} | 
|---|
|  |  |  | ,{field: 'opacity', align: 'center',title: '不透明度(0-100%)', edit: true} | 
|---|
|  |  |  | ,{field: 'water', align: 'center',title: '水分(ppm)', edit: true} | 
|---|
|  |  |  | ,{field: 'massState', align: 'center',title: '质量状态', edit: true} | 
|---|
|  |  |  | ,{field: 'problem', align: 'center',title: '质量问题', edit: true} | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | return cols; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | layui.config({ | 
|---|
|  |  |  | base: baseUrl + "/static/layui/lay/modules/" | 
|---|
|  |  |  | }).use(['table','laydate', 'form', 'admin'], function() { | 
|---|
|  |  |  | var table = layui.table; | 
|---|
|  |  |  | var $ = layui.jquery; | 
|---|
|  |  |  | var layer = layui.layer; | 
|---|
|  |  |  | var layDate = layui.laydate; | 
|---|
|  |  |  | var form = layui.form; | 
|---|
|  |  |  | var admin = layui.admin; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 数据渲染 | 
|---|
|  |  |  | tableIns = table.render({ | 
|---|
|  |  |  | elem: '#qualityInfoTable', | 
|---|
|  |  |  | headers: {token: localStorage.getItem('token')}, | 
|---|
|  |  |  | url: baseUrl+'/pla/list/auth?step=1', | 
|---|
|  |  |  | page: true, | 
|---|
|  |  |  | limit: 16, | 
|---|
|  |  |  | limits: [16, 30, 50, 100, 200, 500], | 
|---|
|  |  |  | even: true, | 
|---|
|  |  |  | toolbar: '#toolbar', | 
|---|
|  |  |  | cellMinWidth: 50, | 
|---|
|  |  |  | cols: [getCol()], | 
|---|
|  |  |  | request: { | 
|---|
|  |  |  | pageName: 'curr', | 
|---|
|  |  |  | pageSize: 'limit' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | parseData: function (res) { | 
|---|
|  |  |  | console.log(res) | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | 'code': res.code, | 
|---|
|  |  |  | 'msg': res.msg, | 
|---|
|  |  |  | 'count': res.data.total, | 
|---|
|  |  |  | 'data': res.data.records | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | response: { | 
|---|
|  |  |  | statusCode: 200 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | done: function(res, curr, count) { | 
|---|
|  |  |  | if (res.code === 403) { | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | tableData = table.cache.locDetl; | 
|---|
|  |  |  | console.log(tableData); | 
|---|
|  |  |  | pageCurr=curr; | 
|---|
|  |  |  | limit(); | 
|---|
|  |  |  | form.on('checkbox(tableCheckbox)', function (data) { | 
|---|
|  |  |  | var _index = $(data.elem).attr('table-index')||0; | 
|---|
|  |  |  | if(data.elem.checked){ | 
|---|
|  |  |  | res.data[_index][data.value] = 'Y'; | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | res.data[_index][data.value] = 'N'; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 重置事件 | 
|---|
|  |  |  | form.on('submit(reset)', function (data) { | 
|---|
|  |  |  | reset(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function reset() { | 
|---|
|  |  |  | clearFormVal($('#search-box')); | 
|---|
|  |  |  | matCodeData = []; | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | locTips(false); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 重载表格 | 
|---|
|  |  |  | function tableReload() { | 
|---|
|  |  |  | tableIns.reload({data: matCodeData}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#add', function () { | 
|---|
|  |  |  | var now = dateToStr(new Date()) | 
|---|
|  |  |  | var newRow = {ioTime : now}; | 
|---|
|  |  |  | data = table.cache.qualityInfoTable; | 
|---|
|  |  |  | data.push(newRow); | 
|---|
|  |  |  | table.reload('qualityInfoTable',{ | 
|---|
|  |  |  | data: data | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#delete', function () { | 
|---|
|  |  |  | let dataNew = []; | 
|---|
|  |  |  | let data = table.cache.qualityInfoTable; | 
|---|
|  |  |  | for(var i=0; i<data.length; i++){ | 
|---|
|  |  |  | if(!data[i].LAY_CHECKED){ | 
|---|
|  |  |  | dataNew.push(data[i]); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | table.reload('qualityInfoTable',{ | 
|---|
|  |  |  | data: dataNew | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#submit', function () { | 
|---|
|  |  |  | let data = table.cache.qualityInfoTable; | 
|---|
|  |  |  | let dataSave = []; | 
|---|
|  |  |  | let dataOld = []; | 
|---|
|  |  |  | for(var i=0; i<data.length; i++){ | 
|---|
|  |  |  | if(data[i].LAY_CHECKED){ | 
|---|
|  |  |  | if(!data[i].batch){ | 
|---|
|  |  |  | layer.msg("有未填写字段"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | data[i].step = 2; | 
|---|
|  |  |  | dataSave.push(data[i]); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | dataOld.push(data[i]); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/pla/update/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: JSON.stringify(dataSave), | 
|---|
|  |  |  | contentType:'application/json;charset=UTF-8', | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | async: false, | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | layer.msg("提交成功"); | 
|---|
|  |  |  | table.reload('qualityInfoTable',{ | 
|---|
|  |  |  | data: dataOld | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | var initCountVal = 0; | 
|---|
|  |  |  | var initAnfmeVal = "-"; | 
|---|
|  |  |  | var matCodeData = []; | 
|---|
|  |  |  | var currLocNo; | 
|---|
|  |  |  | var matCodeLayerIdx; | 
|---|
|  |  |  | var data = []; | 
|---|
|  |  |  | var checkStatus = []; | 
|---|
|  |  |  | function getCol() { | 
|---|
|  |  |  | var cols = [ | 
|---|
|  |  |  | {field: 'id', title: 'id', align: 'center',hide:true} | 
|---|
|  |  |  | ,{type: 'checkbox'} | 
|---|
|  |  |  | ,{field: 'pakinTime', title: '入库时间', align: 'center'} | 
|---|
|  |  |  | ,{field: 'batch', align: 'center',title: '批号'} | 
|---|
|  |  |  | ,{field: 'packageNo', align: 'center',title: '包号'} | 
|---|
|  |  |  | ,{field: 'brand', align: 'center',title: '牌号'} | 
|---|
|  |  |  | ,{field: 'weight', align: 'center',title: '重量(KG)', hide:true} | 
|---|
|  |  |  | ,{field: 'workshop', align: 'center',title: '生产车间', hide:true} | 
|---|
|  |  |  | ,{field: 'line', align: 'center',title: '生产线', hide:true} | 
|---|
|  |  |  | ,{field: 'packageType', align: 'center',title: '包装类型', hide:true} | 
|---|
|  |  |  | ,{field: 'zpalletType', align: 'center',title: '托盘类型', hide:true} | 
|---|
|  |  |  | ,{field: 'fingerMelting', align: 'center',title: '熔指(g/10min)'} | 
|---|
|  |  |  | ,{field: 'fusingPoint', align: 'center',title: '熔点(℃)'} | 
|---|
|  |  |  | ,{field: 'vadf1', align: 'center',title: '挥发份1(%)', hide:true} | 
|---|
|  |  |  | ,{field: 'vadf2', align: 'center',title: '挥发份2(%)', hide:true} | 
|---|
|  |  |  | ,{field: 'yellowness', align: 'center',title: '黄度',  hide:true} | 
|---|
|  |  |  | ,{field: 'opacity', align: 'center',title: '不透明度(0-100%)', hide:true} | 
|---|
|  |  |  | ,{field: 'water', align: 'center',title: '水分(ppm)', hide:true} | 
|---|
|  |  |  | ,{field: 'massState', align: 'center',title: '质量状态', hide:true} | 
|---|
|  |  |  | ,{field: 'problem', align: 'center',title: '质量问题', hide:true} | 
|---|
|  |  |  | ,{field: 'stash', align: 'center',title: '仓库', edit:true} | 
|---|
|  |  |  | ,{field: 'locNo', align: 'center',title: '库位', edit:true} | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  | return cols; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | layui.config({ | 
|---|
|  |  |  | base: baseUrl + "/static/layui/lay/modules/" | 
|---|
|  |  |  | }).use(['table','laydate', 'form', 'admin'], function() { | 
|---|
|  |  |  | var table = layui.table; | 
|---|
|  |  |  | var $ = layui.jquery; | 
|---|
|  |  |  | var layer = layui.layer; | 
|---|
|  |  |  | var layDate = layui.laydate; | 
|---|
|  |  |  | var form = layui.form; | 
|---|
|  |  |  | var admin = layui.admin; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 数据渲染 | 
|---|
|  |  |  | tableIns = table.render({ | 
|---|
|  |  |  | elem: '#waitingPakinTable', | 
|---|
|  |  |  | headers: {token: localStorage.getItem('token')}, | 
|---|
|  |  |  | url: baseUrl+'/pla/list/auth?step=2', | 
|---|
|  |  |  | page: true, | 
|---|
|  |  |  | limit: 16, | 
|---|
|  |  |  | limits: [16, 30, 50, 100, 200, 500], | 
|---|
|  |  |  | even: true, | 
|---|
|  |  |  | toolbar: '#toolbar', | 
|---|
|  |  |  | cellMinWidth: 50, | 
|---|
|  |  |  | cols: [getCol()], | 
|---|
|  |  |  | request: { | 
|---|
|  |  |  | pageName: 'curr', | 
|---|
|  |  |  | pageSize: 'limit' | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | parseData: function (res) { | 
|---|
|  |  |  | console.log(res) | 
|---|
|  |  |  | return { | 
|---|
|  |  |  | 'code': res.code, | 
|---|
|  |  |  | 'msg': res.msg, | 
|---|
|  |  |  | 'count': res.data.total, | 
|---|
|  |  |  | 'data': res.data.records | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | response: { | 
|---|
|  |  |  | statusCode: 200 | 
|---|
|  |  |  | }, | 
|---|
|  |  |  | done: function(res, curr, count) { | 
|---|
|  |  |  | if (res.code === 403) { | 
|---|
|  |  |  | top.location.href = baseUrl+"/"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | tableData = table.cache.locDetl; | 
|---|
|  |  |  | console.log(tableData); | 
|---|
|  |  |  | pageCurr=curr; | 
|---|
|  |  |  | limit(); | 
|---|
|  |  |  | form.on('checkbox(tableCheckbox)', function (data) { | 
|---|
|  |  |  | var _index = $(data.elem).attr('table-index')||0; | 
|---|
|  |  |  | if(data.elem.checked){ | 
|---|
|  |  |  | res.data[_index][data.value] = 'Y'; | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | res.data[_index][data.value] = 'N'; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 重置事件 | 
|---|
|  |  |  | form.on('submit(reset)', function (data) { | 
|---|
|  |  |  | reset(); | 
|---|
|  |  |  | }); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | function reset() { | 
|---|
|  |  |  | clearFormVal($('#search-box')); | 
|---|
|  |  |  | matCodeData = []; | 
|---|
|  |  |  | tableReload(); | 
|---|
|  |  |  | locTips(false); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 重载表格 | 
|---|
|  |  |  | function tableReload() { | 
|---|
|  |  |  | tableIns.reload({data: matCodeData}); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#add', function () { | 
|---|
|  |  |  | var now = dateToStr(new Date()) | 
|---|
|  |  |  | var newRow = {ioTime : now}; | 
|---|
|  |  |  | data = table.cache.waitingPakinTable; | 
|---|
|  |  |  | data.push(newRow); | 
|---|
|  |  |  | table.reload('waitingPakinTable',{ | 
|---|
|  |  |  | data: data | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#delete', function () { | 
|---|
|  |  |  | let dataNew = []; | 
|---|
|  |  |  | let data = table.cache.waitingPakinTable; | 
|---|
|  |  |  | for(var i=0; i<data.length; i++){ | 
|---|
|  |  |  | if(!data[i].LAY_CHECKED){ | 
|---|
|  |  |  | dataNew.push(data[i]); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | table.reload('waitingPakinTable',{ | 
|---|
|  |  |  | data: dataNew | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | $(document).on('click','#submit', function () { | 
|---|
|  |  |  | let data = table.cache.waitingPakinTable; | 
|---|
|  |  |  | let dataSave = []; | 
|---|
|  |  |  | let dataOld = []; | 
|---|
|  |  |  | for(var i=0; i<data.length; i++){ | 
|---|
|  |  |  | if(data[i].LAY_CHECKED){ | 
|---|
|  |  |  | if(!data[i].batch){ | 
|---|
|  |  |  | layer.msg("有未填写字段"); | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | data[i].step = 3; | 
|---|
|  |  |  | data[i].status = "待入库"; | 
|---|
|  |  |  | data[i].weightAnfme = data[i].weight; | 
|---|
|  |  |  | dataSave.push(data[i]); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | dataOld.push(data[i]); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | $.ajax({ | 
|---|
|  |  |  | url: baseUrl+"/pla/update/auth", | 
|---|
|  |  |  | headers: {'token': localStorage.getItem('token')}, | 
|---|
|  |  |  | data: JSON.stringify(dataSave), | 
|---|
|  |  |  | contentType:'application/json;charset=UTF-8', | 
|---|
|  |  |  | method: 'POST', | 
|---|
|  |  |  | async: false, | 
|---|
|  |  |  | success: function (res) { | 
|---|
|  |  |  | if (res.code === 200){ | 
|---|
|  |  |  | layer.msg("提交成功"); | 
|---|
|  |  |  | table.reload('waitingPakinTable',{ | 
|---|
|  |  |  | data: dataOld | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | } else if (res.code === 403){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | layer.msg(res.msg, {icon: 2}) | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }) | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }) | 
|---|
|  |  |  |  | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | <!DOCTYPE html> | 
|---|
|  |  |  | <html lang="en"> | 
|---|
|  |  |  | <head> | 
|---|
|  |  |  | <meta charset="utf-8"> | 
|---|
|  |  |  | <title></title> | 
|---|
|  |  |  | <meta name="renderer" content="webkit"> | 
|---|
|  |  |  | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> | 
|---|
|  |  |  | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/cool.css" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/common.css" media="all"> | 
|---|
|  |  |  | <style> | 
|---|
|  |  |  | html { | 
|---|
|  |  |  | height: 100%; | 
|---|
|  |  |  | padding: 10px; | 
|---|
|  |  |  | background-color: #f1f1f1; | 
|---|
|  |  |  | box-sizing: border-box; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | body { | 
|---|
|  |  |  | background-color: #fff; | 
|---|
|  |  |  | border-radius: 5px; | 
|---|
|  |  |  | box-shadow: 0 0 3px rgba(0,0,0,.3); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* search */ | 
|---|
|  |  |  | .layui-card-header { | 
|---|
|  |  |  | border-bottom: none; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box { | 
|---|
|  |  |  | padding: 30px 0 10px 0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box .layui-inline:first-child { | 
|---|
|  |  |  | margin-left: 30px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box .layui-inline { | 
|---|
|  |  |  | margin-right: 5px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #data-search-btn { | 
|---|
|  |  |  | margin-left: 10px; | 
|---|
|  |  |  | display: inline-block; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #data-search-btn.layui-btn-container .layui-btn { | 
|---|
|  |  |  | margin-right: 20px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* add */ | 
|---|
|  |  |  | .function-area { | 
|---|
|  |  |  | padding: 15px 0 20px 40px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .function-btn { | 
|---|
|  |  |  | font-size: 16px; | 
|---|
|  |  |  | padding: 1px 1px 1px 1px; | 
|---|
|  |  |  | width: 120px; | 
|---|
|  |  |  | height: 40px; | 
|---|
|  |  |  | border-color: #2b425b; | 
|---|
|  |  |  | border-radius: 4px; | 
|---|
|  |  |  | border-width: 1px; | 
|---|
|  |  |  | background: none; | 
|---|
|  |  |  | border-style: solid; | 
|---|
|  |  |  | transition: 0.4s; | 
|---|
|  |  |  | cursor: pointer; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .function-btn:hover { | 
|---|
|  |  |  | background-color: #2b425b; | 
|---|
|  |  |  | color: #fff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #mat-query { | 
|---|
|  |  |  | /*display: none;*/ | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #btn-adjust { | 
|---|
|  |  |  | /*display: none;*/ | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | .layui-table-cell { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | line-height: 20px !important; | 
|---|
|  |  |  | vertical-align: middle; | 
|---|
|  |  |  | height: auto; | 
|---|
|  |  |  | overflow: visible; | 
|---|
|  |  |  | text-overflow: inherit; | 
|---|
|  |  |  | white-space: normal; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | </head> | 
|---|
|  |  |  | <body style="padding-bottom: 30px"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <hr> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 功能区 --> | 
|---|
|  |  |  | <div class="function-area"> | 
|---|
|  |  |  | <button id="rework" style="alignment: right" class="function-btn">重做</button> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 行 --> | 
|---|
|  |  |  | <script type="text/html" id="operate"> | 
|---|
|  |  |  | <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="remove">移除</a> | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 表格 --> | 
|---|
|  |  |  | <table class="layui-table" id="plaDetl" lay-filter="plaDetl"></table> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/pla/plaDetl.js" charset="utf-8"></script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </body> | 
|---|
|  |  |  | </html> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | #btn-adjust { | 
|---|
|  |  |  | /*display: none;*/ | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .layui-table-cell { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | line-height: 20px !important; | 
|---|
|  |  |  | vertical-align: middle; | 
|---|
|  |  |  | height: auto; | 
|---|
|  |  |  | overflow: visible; | 
|---|
|  |  |  | text-overflow: inherit; | 
|---|
|  |  |  | white-space: normal; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | </head> | 
|---|
|  |  |  | <body style="padding-bottom: 30px"> | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | <!DOCTYPE html> | 
|---|
|  |  |  | <html lang="en"> | 
|---|
|  |  |  | <head> | 
|---|
|  |  |  | <meta charset="utf-8"> | 
|---|
|  |  |  | <title></title> | 
|---|
|  |  |  | <meta name="renderer" content="webkit"> | 
|---|
|  |  |  | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> | 
|---|
|  |  |  | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/cool.css" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/common.css" media="all"> | 
|---|
|  |  |  | <style> | 
|---|
|  |  |  | html { | 
|---|
|  |  |  | height: 100%; | 
|---|
|  |  |  | padding: 10px; | 
|---|
|  |  |  | background-color: #f1f1f1; | 
|---|
|  |  |  | box-sizing: border-box; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | body { | 
|---|
|  |  |  | background-color: #fff; | 
|---|
|  |  |  | border-radius: 5px; | 
|---|
|  |  |  | box-shadow: 0 0 3px rgba(0,0,0,.3); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* search */ | 
|---|
|  |  |  | .layui-card-header { | 
|---|
|  |  |  | border-bottom: none; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box { | 
|---|
|  |  |  | padding: 30px 0 10px 0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box .layui-inline:first-child { | 
|---|
|  |  |  | margin-left: 30px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box .layui-inline { | 
|---|
|  |  |  | margin-right: 5px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #data-search-btn { | 
|---|
|  |  |  | margin-left: 10px; | 
|---|
|  |  |  | display: inline-block; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #data-search-btn.layui-btn-container .layui-btn { | 
|---|
|  |  |  | margin-right: 20px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* add */ | 
|---|
|  |  |  | .function-area { | 
|---|
|  |  |  | padding: 15px 0 20px 40px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .function-btn { | 
|---|
|  |  |  | font-size: 16px; | 
|---|
|  |  |  | padding: 1px 1px 1px 1px; | 
|---|
|  |  |  | width: 120px; | 
|---|
|  |  |  | height: 40px; | 
|---|
|  |  |  | border-color: #2b425b; | 
|---|
|  |  |  | border-radius: 4px; | 
|---|
|  |  |  | border-width: 1px; | 
|---|
|  |  |  | background: none; | 
|---|
|  |  |  | border-style: solid; | 
|---|
|  |  |  | transition: 0.4s; | 
|---|
|  |  |  | cursor: pointer; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .function-btn:hover { | 
|---|
|  |  |  | background-color: #2b425b; | 
|---|
|  |  |  | color: #fff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #mat-query { | 
|---|
|  |  |  | /*display: none;*/ | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #btn-adjust { | 
|---|
|  |  |  | /*display: none;*/ | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .layui-table-cell { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | line-height: 20px !important; | 
|---|
|  |  |  | vertical-align: middle; | 
|---|
|  |  |  | height: auto; | 
|---|
|  |  |  | overflow: visible; | 
|---|
|  |  |  | text-overflow: inherit; | 
|---|
|  |  |  | white-space: normal; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | </head> | 
|---|
|  |  |  | <body style="padding-bottom: 30px"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <hr> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 功能区 --> | 
|---|
|  |  |  | <div class="function-area"> | 
|---|
|  |  |  | <button id="submit" style="alignment: right" class="function-btn">提交</button> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 行 --> | 
|---|
|  |  |  | <script type="text/html" id="operate"> | 
|---|
|  |  |  | <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="remove">移除</a> | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 表格 --> | 
|---|
|  |  |  | <table class="layui-table" id="qualityInfoTable" lay-filter="qualityInfoTable"></table> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/pla/qualityInfo.js" charset="utf-8"></script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </body> | 
|---|
|  |  |  | </html> | 
|---|
|  |  |  |  | 
|---|
| New file | 
|  |  |  | 
|---|
|  |  |  | <!DOCTYPE html> | 
|---|
|  |  |  | <html lang="en"> | 
|---|
|  |  |  | <head> | 
|---|
|  |  |  | <meta charset="utf-8"> | 
|---|
|  |  |  | <title></title> | 
|---|
|  |  |  | <meta name="renderer" content="webkit"> | 
|---|
|  |  |  | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> | 
|---|
|  |  |  | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/admin.css?v=318" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/cool.css" media="all"> | 
|---|
|  |  |  | <link rel="stylesheet" href="../../static/css/common.css" media="all"> | 
|---|
|  |  |  | <style> | 
|---|
|  |  |  | html { | 
|---|
|  |  |  | height: 100%; | 
|---|
|  |  |  | padding: 10px; | 
|---|
|  |  |  | background-color: #f1f1f1; | 
|---|
|  |  |  | box-sizing: border-box; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | body { | 
|---|
|  |  |  | background-color: #fff; | 
|---|
|  |  |  | border-radius: 5px; | 
|---|
|  |  |  | box-shadow: 0 0 3px rgba(0,0,0,.3); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* search */ | 
|---|
|  |  |  | .layui-card-header { | 
|---|
|  |  |  | border-bottom: none; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box { | 
|---|
|  |  |  | padding: 30px 0 10px 0; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box .layui-inline:first-child { | 
|---|
|  |  |  | margin-left: 30px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #search-box .layui-inline { | 
|---|
|  |  |  | margin-right: 5px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #data-search-btn { | 
|---|
|  |  |  | margin-left: 10px; | 
|---|
|  |  |  | display: inline-block; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #data-search-btn.layui-btn-container .layui-btn { | 
|---|
|  |  |  | margin-right: 20px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /* add */ | 
|---|
|  |  |  | .function-area { | 
|---|
|  |  |  | padding: 15px 0 20px 40px; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .function-btn { | 
|---|
|  |  |  | font-size: 16px; | 
|---|
|  |  |  | padding: 1px 1px 1px 1px; | 
|---|
|  |  |  | width: 120px; | 
|---|
|  |  |  | height: 40px; | 
|---|
|  |  |  | border-color: #2b425b; | 
|---|
|  |  |  | border-radius: 4px; | 
|---|
|  |  |  | border-width: 1px; | 
|---|
|  |  |  | background: none; | 
|---|
|  |  |  | border-style: solid; | 
|---|
|  |  |  | transition: 0.4s; | 
|---|
|  |  |  | cursor: pointer; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .function-btn:hover { | 
|---|
|  |  |  | background-color: #2b425b; | 
|---|
|  |  |  | color: #fff; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #mat-query { | 
|---|
|  |  |  | /*display: none;*/ | 
|---|
|  |  |  | } | 
|---|
|  |  |  | #btn-adjust { | 
|---|
|  |  |  | /*display: none;*/ | 
|---|
|  |  |  | } | 
|---|
|  |  |  | .layui-table-cell { | 
|---|
|  |  |  | text-align: center; | 
|---|
|  |  |  | line-height: 20px !important; | 
|---|
|  |  |  | vertical-align: middle; | 
|---|
|  |  |  | height: auto; | 
|---|
|  |  |  | overflow: visible; | 
|---|
|  |  |  | text-overflow: inherit; | 
|---|
|  |  |  | white-space: normal; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | </style> | 
|---|
|  |  |  | </head> | 
|---|
|  |  |  | <body style="padding-bottom: 30px"> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <hr> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 功能区 --> | 
|---|
|  |  |  | <div class="function-area"> | 
|---|
|  |  |  | <button id="submit" style="alignment: right" class="function-btn">通知入库</button> | 
|---|
|  |  |  | </div> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 行 --> | 
|---|
|  |  |  | <script type="text/html" id="operate"> | 
|---|
|  |  |  | <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="remove">移除</a> | 
|---|
|  |  |  | </script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <!-- 表格 --> | 
|---|
|  |  |  | <table class="layui-table" id="waitingPakinTable" lay-filter="qualityInfoTable"></table> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> | 
|---|
|  |  |  | <script type="text/javascript" src="../../static/js/pla/waitingPakin.js" charset="utf-8"></script> | 
|---|
|  |  |  |  | 
|---|
|  |  |  | </body> | 
|---|
|  |  |  | </html> | 
|---|
|  |  |  |  | 
|---|