<!DOCTYPE html>
|
<html>
|
<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.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
|
<link rel="stylesheet" href="../../layuiadmin/layui/css/layui.css" media="all">
|
<link rel="stylesheet" href="../../layuiadmin/style/admin.css" media="all">
|
</head>
|
<body>
|
<div class="layui-fluid" style="padding-bottom: 0;">
|
<div class="layui-card">
|
<div class="layui-form layui-card-header layuiadmin-card-header-auto" style="border-bottom:1px solid #CCC">
|
<div class="layui-form-item">
|
<!-- 单据
|
<div class="layui-inline">
|
<label class="layui-form-label" style="width: 60px;">入库单据</label>
|
<div class="layui-input-inline">
|
<input type="text" id="ASNNo" name="ASNNo" placeholder="请输入入库单据" autocomplete="off" class="layui-input">
|
</div>
|
</div> -->
|
<!-- 批次 -->
|
<div class="layui-inline">
|
<label class="layui-form-label" style="width: 60px;">批次号</label>
|
<div class="layui-input-inline">
|
<input type="text" id="LotNo" name="LotNo" placeholder="请输入物料名称" autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
<div class="layui-inline">
|
<label class="layui-form-label" >物料信息</label>
|
<div class="layui-input-inline">
|
<select name="SkuNo" id="SkuNo" lay-verify="" lay-search>
|
<option value=""></option>
|
</select>
|
</div>
|
</div>
|
<!-- <div class="layui-inline">
|
<label class="layui-form-label">物料编码</label>
|
<div class="layui-input-inline">
|
<input type="text" id="SkuNo" name="SkuNo" placeholder="物料编码" autocomplete="off"
|
class="layui-input">
|
</div>
|
</div>
|
<div class="layui-inline">
|
<label class="layui-form-label">物料名称</label>
|
<div class="layui-input-inline">
|
<input type="text" id="SkuName" name="SkuName" placeholder="物料名称" autocomplete="off"
|
class="layui-input">
|
</div>
|
</div> -->
|
<div class="layui-inline">
|
<!-- 是否合格 -->
|
<label class="layui-form-label" style="width: 60px;">是否合格</label>
|
<div class="layui-input-inline">
|
<select name="IsQualified" id="IsQualified" lay-verify="" lay-verify="" lay-search>
|
<option value=""></option>
|
<option value="0">不合格</option>
|
<option value="1">合格</option>
|
<option value="2" selected>待检验</option>
|
|
</select>
|
</div>
|
</div>
|
<div id="layout-bill" class="layui-inline" style="display: none;">
|
<!-- 是否合格 -->
|
<label class="layui-form-label" style="width: 60px;">是否合格</label>
|
<div class="layui-input-inline">
|
<select name="IsQualified1" id="IsQualified1" lay-verify="" lay-verify="" lay-search>
|
<!-- <option value=""></option> -->
|
<option value="0">不合格</option>
|
<option value="1" selected>合格</option>
|
<option value="2">待检验</option>
|
|
</select>
|
</div>
|
</div>
|
<div class="layui-inline">
|
<button class="layui-btn layui-btn-sm layuiadmin-btn-list" lay-submit lay-filter="LAY-app-contlist-search">
|
<i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>搜索
|
</button>
|
<button class="layui-btn layui-btn-sm layuiadmin-btn-list" lay-submit
|
lay-filter="LAY-app-contlist-UptIsQualified" id="UptIsQualified">
|
<i class="layui-icon layui-icon-UptIsQualified layuiadmin-button-btn"></i>质检状态
|
</button>
|
</div>
|
</div>
|
</div>
|
<div class="layui-card-body" id="bodywidth">
|
<!-- <div style="padding-bottom: 5px; display: flex; flex-direction: row-reverse;">
|
<button class="layui-btn layui-btn-sm layuiadmin-btn-list approvalBtn" style="margin-right: 10px;" data-type="add" id="approvalBtn">
|
<i class="layui-icon"></i>添加
|
</button>
|
</div> -->
|
<table id="LAY-app-content-list" lay-filter="LAY-app-content-list"></table>
|
|
<!-- <script type="text/html" id="IsQualifiedButton">
|
{{# if(d.IsQualified == '0') { }}
|
<button class="layui-btn layui-btn-radius layui-btn-danger layui-btn-xs">不合格</button>
|
{{# } else if(d.IsQualified == '1'){ }}
|
<button class="layui-btn layui-btn-radius layui-btn-xs">检验合格</button>
|
{{# } else if(d.IsQualified == '2'){ }}
|
<button class="layui-btn layui-btn-radius layui-btn-warm layui-btn-xs">待检验</button>
|
{{# } }}
|
</script> -->
|
<!-- <script type="text/html" id="IsQualifiedButton">
|
<button class="layui-btn layui-btn-primary dropdpwn-demo">
|
<span>{{= d.IsQualified || '保密' }}</span>
|
<i class="layui-icon layui-icon-down layui-font-12"></i>
|
</button>
|
</script> -->
|
<style>
|
/*使下拉列表框不被遮挡*/
|
.layui-table-cell {
|
overflow: visible !important;
|
}
|
/*使列表框与表格单元格重合*/
|
td .layui-form-select {
|
margin-top: -10px;
|
margin-left: -15px;
|
margin-right: -15px;
|
}
|
</style>
|
</div>
|
</div>
|
</div>
|
<script src="../../layuiadmin/layui/layui.js"></script>
|
<script src="../../js/public.js"></script>
|
<script src="../../js/jquery-3.5.1.min.js"></script>
|
<script src="../../js/jquery.cookie.js"></script>
|
<script>
|
layui.config({
|
base: '../../layuiadmin/' //静态资源所在路径
|
}).extend({
|
index: 'lib/index' //主入口模块
|
}).use(['index', 'table', 'laypage', 'layer'], function() {
|
var table = layui.table,
|
form = layui.form,
|
laypage = layui.laypage,
|
layer = layui.layer;
|
var dropdown = layui.dropdown;
|
var $ = layui.$;
|
//获取物料信息
|
sendData(IP + "/basis/GetMateList", {}, 'get', function(res) {
|
var html = '';
|
if (res.code == 0) //成功
|
{
|
var list = res.data;
|
for (var i = 0; i < list.length; i++) {
|
//判断空托盘
|
if (list[i].SkuNo != "100099" && list[i].SkuNo != "100098" && list[i].SkuNo != "100097")
|
{
|
html += '<option value = "' + list[i].SkuNo + '">' + list[i].SkuName + '</option>';
|
}
|
}
|
$("#SkuNo").append(html);
|
form.render('select');
|
}
|
else //不成功
|
{
|
layer.msg('获取物料信息失败!', {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {});
|
}
|
});
|
|
refreshTable('','','');
|
var tableIns;
|
var h1 = GetTableHeight();
|
|
function refreshTable(LotNo,SkuNo,IsQualified) {
|
var param = {
|
// ASNNo: ASNNo,
|
LotNo: $("#LotNo").val(),
|
SkuNo: $("#SkuNo").val(),
|
// SkuName: SkuName,
|
IsQualified: $("#IsQualified").val()
|
};
|
console.log(param)
|
var url = "/BllQuality/GetBllQualityList";
|
sendData(IP + url, param, 'post', function(res) {
|
if (res.code == 0) //成功
|
{
|
var list = res.data;
|
$.extend(infoOptions, {
|
data: list
|
});
|
infoOptions.page = {
|
curr: 1
|
}
|
console.log(res)
|
tableIns = table.render(infoOptions);
|
}
|
else //不成功
|
{
|
layer.msg('获取质检列表信息失败!', {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {});
|
}
|
});
|
}
|
sendData(IP + "/basis/GetRoleRightList", {}, "get", function (res) {
|
$(function() {
|
$("#approvalBtn").hide();
|
});
|
if (res.code == 0) //成功
|
{
|
for (var k = 0; k < res.data.length; k++) {
|
if (res.data[k].MenuName == "添加质检结果")
|
{
|
$(function() {
|
$("#approvalBtn").show();
|
});
|
}
|
}
|
}
|
else //不成功
|
{
|
layer.msg(
|
"获取信息失败",
|
{
|
icon: 2,
|
time: 2000, //2秒关闭(如果不配置,默认是3秒)
|
},
|
function () {
|
//回调
|
}
|
);
|
}
|
});
|
var isChongFu = true;
|
|
var infoOptions = {
|
elem: "#LAY-app-content-list",
|
// height: h1,
|
height: "full-96",
|
id: "LAY-app-content-list",
|
page: true,
|
limit: pageCnt,
|
limits: pageLimits,
|
even: true,
|
cellMinWidth: 80, //全局定义常规单元格的最小宽度,layui 2.2.1 新增
|
cols:
|
[[
|
{
|
title: '序号',type: 'checkbox',fixed: 'left'
|
},
|
{
|
title: '序号',type: 'numbers',fixed: 'left'
|
},
|
{
|
field: 'InspectNo',title: '检验号',align: 'center'
|
},
|
{
|
field: 'SkuNo',title: '物料号',align: 'center'
|
},
|
{
|
field: 'SkuName',title: '物料名称',align: 'center'
|
},
|
{
|
field: 'LotNo',title: '批次号',align: 'center'
|
},
|
{
|
field: 'Standard',title: '规格',align: 'center'
|
},
|
{
|
field: 'Qty',title: '入库数量',align: 'center'
|
},
|
{
|
field: 'IsQualified',title: '检验结果',align: 'center',templet: function(d){
|
var opt = '<select name="IsQualified" id="IsQualified" class="province-selector" lay-filter="reuseDegreeFileter" >\n'
|
// console.log(d)
|
if(d.IsQualified == "0"){
|
opt = opt + ' <option value="0" selected >不合格</option>\n' +
|
' <option value="1" >检验合格</option>\n' +
|
' <option value="2" >待检验</option>\n'
|
}else if(d.IsQualified == "1"){
|
opt = opt + ' <option value="0">不合格</option>\n' +
|
' <option value="1" selected >检验合格</option>\n' +
|
' <option value="2" >待检验</option>\n'
|
}else if(d.IsQualified == "2"){
|
opt = opt + ' <option value="0">不合格</option>\n' +
|
' <option value="1" >检验合格</option>\n' +
|
' <option value="2" selected >待检验</option>\n'
|
}
|
opt = opt + ' </select>'
|
return opt
|
},
|
},
|
{
|
field: 'Origin',title: '来源',align: 'center'
|
},
|
{
|
field: 'PassQty',title: '合格数量',align: 'center'
|
},
|
{
|
field: 'FailQty',title: '不合格数量',align: 'center'
|
},
|
{
|
field: 'CreateUserName',title: '创建人',align: 'center'
|
},
|
{
|
field: 'CreateTime',title: '创建时间',align: 'center',
|
templet: function (d) {
|
return formatDate(d.CreateTime);
|
}
|
},
|
]],
|
};
|
|
|
//table列表中的复用新增利旧下拉选点击事件
|
form.on('select(reuseDegreeFileter)',data=>{
|
var tableCache = table.cache['LAY-app-content-list'], // 获得数据表格的缓存数据
|
value = data.value, // 得到下拉列表改变后的value值
|
field = data.othis.parents('td').attr('data-field'), // 获得下拉列表的父级td标签的字段名称
|
dataIndex = parseInt(data.othis.parents('tr').attr('data-index')), // 获得变化的下拉列表所在的行index
|
lineDate = tableCache[dataIndex]; // 获得数据表格中该行的缓存数据
|
|
// console.log("lineDate:", lineDate)
|
console.log("value:", value)
|
console.log("lineDate:", lineDate)
|
|
layer.confirm('确定修改当前选中质检信息状态吗?', function(index) {
|
// 代码区域
|
var param = {
|
ASNNo: lineDate.ASNNo,
|
Id: lineDate.Id, //id
|
InspectNo: lineDate.InspectNo, //质检号
|
IsQualified: value, //质检更改后状态
|
LotNo: lineDate.LotNo, //批次
|
SkuName: lineDate.SkuName, //物料名称
|
SkuNo: lineDate.SkuNo //物料号
|
};
|
sendData(IP + "/BllQuality/UpdateQuality", param, 'post', function (res) {
|
if (res.code == 0) { //成功
|
layer.msg(res.msg, {
|
icon: 1,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function () {
|
refreshTable($("#LotNo").val(),$("#SkuNo").val(),$("#IsQualified").val());
|
doing = true
|
});
|
} else { //不成功
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function () {
|
doing = true
|
refreshTable($("#LotNo").val(),$("#SkuNo").val(),$("#IsQualified").val());
|
});
|
}
|
});
|
});
|
|
|
// febs.get(ctx + 'sjyMydaibanExcel/updateReuseDegree?id='+lineDate.id+'&reuseDegree='+value
|
// , null, function () {
|
// //设置成功刷新大table和小table
|
// tabresidence.reload({where: { }, page: {curr: 1}});
|
// tableIns2.reload({where: { }, page: {curr: 1}});
|
// tableIns1.reload();
|
// tabresidence.reload();
|
// });
|
});
|
|
|
|
//监听搜索
|
form.on('submit(LAY-app-contlist-search)', function(data) {
|
// var ASNNo = data.field.ASNNo;
|
var LotNo = data.field.LotNo;
|
var SkuNo = data.field.SkuNo;
|
// var SkuName = data.field.SkuName;
|
var IsQualified = data.field.IsQualified;
|
|
refreshTable(LotNo,SkuNo,IsQualified);
|
});
|
//变更质检状态
|
form.on('submit(LAY-app-contlist-UptIsQualified)', function(data) {
|
layer.open({
|
type: 1,
|
title: '变更质检状态',
|
content: $('#layout-bill'),
|
maxmin: true,
|
area: ['335px', '305px'],
|
btn: ['确定', '取消'],
|
yes: function(index, layero) {
|
var checkStatus = table.checkStatus('LAY-app-content-list'),
|
checkData = checkStatus.data; //得到选中的数据
|
// console.log(checkData)
|
if (checkData.length === 0) {
|
return layer.msg('请选择数据');
|
}
|
|
var Ida = [];
|
checkData.forEach(a => {
|
console.log(a.Id)
|
Ida.push(a.Id);
|
});
|
|
var pa = $('#IsQualified1').val();
|
console.log(pa)
|
if (pa == "") {
|
layer.msg("未选择质检状态,请选择!", {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function () { });
|
return
|
}
|
if (pa == "2")
|
{
|
layer.msg("质检状态不可变更为待检验,请选择!", {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function () { });
|
return
|
}
|
if (isChongFu == true) {
|
isChongFu = false;
|
var param = {
|
id: 0,
|
IsQualified: pa,
|
Ids: Ida
|
};
|
sendData(IP + "/BllQuality/UpdateQualitys", param, 'post', function(res) {
|
// console.log("出库:"+JSON.stringify(res))
|
if (res.code == 0) { //成功
|
layer.msg(res.msg, {
|
icon: 1,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
isChongFu = true;
|
refreshTable();
|
});
|
} else { //不成功
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {isChongFu = true;});
|
}
|
});
|
}else{
|
layer.msg("请勿重复点击", {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
});
|
}
|
layer.close(index);
|
},
|
});
|
});
|
var doing = true;
|
var $ = layui.$,
|
active = {
|
//新增
|
add: function() {
|
layer.open({
|
type: 2,
|
title: '添加物料信息',
|
content: 'QualityInformationFrom.html',
|
maxmin: true,
|
area: ['500px', '350px'],
|
btn: ['确定', '取消'],
|
yes: function(index, layero) {
|
var iframeWindow = window['layui-layer-iframe' + index],
|
submitID = 'layuiadmin-app-form-submit',
|
submit = layero.find('iframe').contents().find('#' + submitID);
|
//监听提交
|
iframeWindow.layui.form.on('submit(' + submitID + ')', function(
|
data) {
|
var field = data.field; //获取提交的字段
|
//提交 Ajax 成功后,静态更新表格中的数据
|
var param = {
|
InspectNo: field.InspectNo,
|
LotNo: field.LotNo,
|
IsQualified: field.IsQualified,
|
};
|
if(doing)
|
{
|
doing = false;
|
sendData(IP + "/BllQuality/InsertQuality", param, 'post',function(res) {
|
console.log(res);
|
if (res.code == 0) { //成功
|
layer.msg(res.msg, {
|
icon: 1,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
layer.close(index); //关闭弹层
|
refreshTable
|
(
|
// $("#ASNNo").val(),
|
$("#LotNo").val(),
|
$("#SkuNo").val(),
|
// $("#SkuName").val(),
|
$("#InsertQuality").val(),
|
);
|
doing = true;
|
});
|
}
|
else //不成功
|
{
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {doing = true;});
|
}
|
});
|
}
|
else{
|
console.log(123);
|
}
|
|
});
|
submit.trigger('click');
|
}
|
});
|
},
|
};
|
$('.layui-btn.layuiadmin-btn-list').on('click', function() {
|
var type = $(this).data('type');
|
active[type] ? active[type].call(this) : '';
|
});
|
|
|
var element = layui.element;
|
var houseId = 0;
|
var param = {
|
Id: $.cookie('userId')
|
}
|
var xml = '';
|
function getchiled(data, mainId) {
|
if (data)
|
{
|
var list = data.filter(item => item.ParentId == mainId);
|
if (list)
|
{
|
for (var i = 0; i < list.length; i++)
|
{
|
var id = list[i].Id;
|
//查询有无子菜单
|
var count = data.filter(item => item.ParentId == id).length;
|
if (count > 0)
|
{
|
xml = xml + '<dd>' + '<a href="javascript:;">' + list[i].Name + '</a>' + '<dl class="layui-nav-child">';
|
getchiled(data, id);
|
xml = xml + '</dl></dd>';
|
}
|
else
|
{
|
xml = xml + '<dd>' + '<a lay-href="' + list[i].Url + '">' + list[i].Name + '</a>' + '</dd>';
|
}
|
}
|
}
|
}
|
}
|
|
|
});
|
</script>
|
</body>
|
</html>
|