You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
590 lines
38 KiB
590 lines
38 KiB
<!DOCTYPE html>
|
|
<html lang="en" xmlns:th="http://www.thymeleaf.org">
|
|
<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/lib/layui-v2.8.6/css/layui.css" media="all">
|
|
<link rel="stylesheet" href="/static/css/public.css" media="all">
|
|
<link rel="stylesheet" href="/static/js/lay-module/step-lay/step.css" media="all">
|
|
<link rel="stylesheet" href="/static/css/inputTag.css">
|
|
<link rel="stylesheet" href="/static/lib/font-awesome-4.7.0/css/font-awesome.min.css" media="all">
|
|
|
|
<style>
|
|
.inputdiv {
|
|
display: flex;
|
|
background-color: #fff;
|
|
height: 38px;
|
|
line-height: 38px;
|
|
border: 1px solid rgb(238, 238, 238);
|
|
}
|
|
|
|
.layui-card-body {
|
|
padding: 0px;
|
|
}
|
|
|
|
.layui-form-label {
|
|
padding: 9px 0px;
|
|
text-align: left;
|
|
}
|
|
|
|
.layui-input-block {
|
|
margin-left: 80px;
|
|
}
|
|
|
|
.layui-form-select {
|
|
width: 100%;
|
|
height: 38px;
|
|
|
|
}
|
|
|
|
.lay-step {
|
|
display: none;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
|
|
<div class="layuimini-container">
|
|
<div class="layuimini-main">
|
|
<div class="layui-fluid">
|
|
|
|
|
|
<div class="layui-tab">
|
|
<ul class="layui-tab-title" style="text-align: center">
|
|
<li class="layui-this">物料盘点</li>
|
|
<li >位置盘点</li>
|
|
</ul>
|
|
<div class="layui-tab-content">
|
|
<div class="layui-tab-item layui-show">
|
|
<div class="layui-carousel" id="stepForm" lay-filter="stepForm" style="margin: 0 auto; ">
|
|
<div carousel-item style="overflow: inherit">
|
|
<div>
|
|
<form class="layui-form"
|
|
style="margin: 0 auto;max-width: 700px;"
|
|
lay-filter="form1" id="form1">
|
|
<div class="layui-card-body" id="takingHeader" style="padding-right: 0px">
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label" style="height: 40px;">物料名称:</label>
|
|
|
|
<div class="layui-input-block" style="margin: 0px;">
|
|
<div class="inputdiv">
|
|
<input type="text" placeholder="请选择物料" class="layui-input"
|
|
style="border-style: none"
|
|
id="mname"
|
|
onblur="selectMaterialByName(this)"
|
|
lay-verify="required"/>
|
|
<i class="layui-icon layui-icon-search"
|
|
style="display: inline;"
|
|
id="selectMaterial" onclick="selectMaterial(this)"></i>
|
|
</div>
|
|
<input type="text" name="mid" class="layui-input" id="mid"
|
|
style="display: none" lay-verify="required"/>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label" style="height: 40px;">物料编码:</label>
|
|
<div class="layui-input-block" style="margin: 0px;">
|
|
<div class="inputdiv">
|
|
<input id="code" name="code" type="text"
|
|
placeholder="请填写入物料编码"
|
|
value=""
|
|
onblur="selectCode(this)"
|
|
class="layui-input" lay-verify="required"
|
|
style="border-style: none">
|
|
<img src="/static/images/search.ico" height="16" width="16"
|
|
id="qrCodeImg"
|
|
style="margin-top: 10px"
|
|
onclick="scanCodeForMaterial(this)">
|
|
<input id="qrCode" name="qrCode" type="text"
|
|
style="display:none;">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label" style="height: 40px;">负责人:</label>
|
|
<div class="layui-input-block">
|
|
|
|
<div class="fairy-tag-container" style="border-style: none">
|
|
<div class="inputdiv">
|
|
<input type="text" id="departmentManagerForMaterial"
|
|
style="display: none"
|
|
th:value="${departmentHeadName}"/>
|
|
<i class="layui-icon layui-icon-search"
|
|
style="display: inline;right: 0;position: absolute;"
|
|
id="selectdepartmentManagerForMaterial"></i>
|
|
<input type="text" id="departmentManagerIdForMaterial"
|
|
name="departmentManagerId"
|
|
th:value="${departmentHeadId}"
|
|
class="layui-input" style="display: none"
|
|
lay-verify="required"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
<table class="layui-hide" id="currentTableForMaterial"
|
|
lay-filter="currentTableFilterForMaterial"
|
|
style="margin-top: 123px"></table>
|
|
<!-- 提交按钮-->
|
|
<div class="layui-form-item" style="margin-top: 10px;">
|
|
<div class="layui-input-block">
|
|
<button type="button" class="layui-btn layui-btn-normal layui-btn-lg"
|
|
submitType="Material"
|
|
lay-submit
|
|
lay-filter="formStep">
|
|
 提交 
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- 下一步-->
|
|
<div>
|
|
<form class="layui-form" style="margin: 0 auto;max-width: 460px;padding-top: 40px;">
|
|
<div style="text-align: center;margin-top: 90px;">
|
|
<i class="layui-icon layui-circle"
|
|
style="color: white;font-size:30px;font-weight:bold;background: #52C41A;padding: 20px;line-height: 80px;"></i>
|
|
<div style="font-size: 24px;color: #333;font-weight: 500;margin-top: 30px;">
|
|
提交成功
|
|
</div>
|
|
<div style="text-align: center;margin-top: 50px;">
|
|
<button class="layui-btn next">再填写一次</button>
|
|
</div>
|
|
</div>
|
|
|
|
</form>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="layui-tab-item">
|
|
<div class="layui-carousel" id="stepForm1" lay-filter="stepForm" style="margin: 0 auto; ">
|
|
<div carousel-item style="overflow: inherit">
|
|
<div>
|
|
<div class="layui-card">
|
|
<form class="layui-form"
|
|
style="margin: 0 auto;max-width: 700px;"
|
|
lay-filter="form1">
|
|
<div class="layui-card-body" style="padding-right: 0px">
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label" style="height: 40px;">盘点位置:</label>
|
|
<div class="layui-input-block">
|
|
<div class="inputdiv">
|
|
<input type="text" placeholder="请选择盘点位置" class="layui-input"
|
|
style="border-style: none"
|
|
id="openSonByDepository" readonly
|
|
lay-verify="required"/>
|
|
<img src="/static/images/search.ico" height="16" width="16"
|
|
id="scanCodeImg"
|
|
style="margin-top: 10px" onclick="scanCode(this)">
|
|
</div>
|
|
<input type="text" name="depositoryId" class="layui-input"
|
|
id="depositoryId"
|
|
style="display: none" lay-verify="required"/>
|
|
<input type="text" name="placeId" class="layui-input"
|
|
id="placeId"
|
|
style="display: none" lay-verify="required"/>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label" style="height: 40px;">负责人:</label>
|
|
<div class="layui-input-block">
|
|
|
|
<div class="fairy-tag-container" style="border-style: none">
|
|
<div class="inputdiv">
|
|
<input type="text" id="departmentManagerForLocation"
|
|
style="display: none"
|
|
th:value="${departmentHeadName}"/>
|
|
<i class="layui-icon layui-icon-search"
|
|
id="selectdepartmentManagerForLocation"
|
|
style="display: inline;right: 0;position: absolute;"
|
|
></i>
|
|
<input type="text" id="departmentManagerIdForLocation"
|
|
name="departmentManagerId"
|
|
th:value="${departmentHeadId}"
|
|
class="layui-input" style="display: none"
|
|
lay-verify="required"/>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</form>
|
|
<div class="layui-tab">
|
|
<ul class="layui-tab-title" style="text-align: center">
|
|
<li class="layui-this">表格</li>
|
|
<li class="layui-this">卡片</li>
|
|
</ul>
|
|
<div class="layui-tab-content">
|
|
<div class="layui-tab-item layui-show">
|
|
<table class="layui-hide" lay-filter="currentTableFilterForLocation"
|
|
id="currentTableForLocation"
|
|
style="margin-top: 123px"></table>
|
|
<!-- 提交按钮-->
|
|
<div class="layui-form-item" style="margin-top: 10px;">
|
|
<div class="layui-input-block">
|
|
<button type="button"
|
|
class="layui-btn layui-btn-normal layui-btn-lg"
|
|
submitType="Location"
|
|
lay-submit
|
|
lay-filter="formStep">
|
|
 提交 
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="layui-tab-item">
|
|
<form class="layui-form" id="locationCard">
|
|
<fieldset class="table-search-fieldset">
|
|
<legend>盘点明细</legend>
|
|
|
|
<div class="layui-card-body" id="InventoryDetails"
|
|
style="padding-right: 0px">
|
|
<hr>
|
|
<i class="layui-icon layui-icon-subtraction"
|
|
style="display: inline"
|
|
onclick="deleteItem(this)"></i>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label"
|
|
style="height: 40px;">物料名称:</label>
|
|
|
|
<div class="layui-input-block" style="margin: 0px;">
|
|
<div class="inputdiv">
|
|
<input type="text" placeholder="请选择物料"
|
|
class="layui-input fairy-tag-input"
|
|
style="border-style: none"
|
|
id="mnameForLocation"
|
|
onblur="selectMaterialByNameForLocation(this)"
|
|
lay-verify="required"/>
|
|
<i class="layui-icon layui-icon-search"
|
|
style="display: inline"
|
|
id="selectMaterialForLocation"
|
|
onclick="selectMaterialForLocation(this)"></i>
|
|
</div>
|
|
<input type="text" name="mid"
|
|
class="layui-input" id="midForLocation"
|
|
style="display: none"
|
|
lay-verify="required"/>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label"
|
|
style="height: 40px;">物料编码:</label>
|
|
<div class="layui-input-block" style="margin: 0px;">
|
|
<div class="inputdiv">
|
|
<input id="codeForLocation" name="code"
|
|
type="text" placeholder="请填写入物料编码"
|
|
value=""
|
|
onblur="selectCodeForLocation(this)"
|
|
class="layui-input"
|
|
lay-verify="required"
|
|
style="border-style: none">
|
|
<img src="/static/images/search.ico"
|
|
height="16" width="16"
|
|
style="margin-top: 10px"
|
|
onclick="scanMaterialCodeForTaking(this)">
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">物料类型:</label>
|
|
<div class="layui-input-block">
|
|
<input type="text" placeholder="请选择物料类型"
|
|
class="layui-input"
|
|
id="openSonByMateralType" readonly
|
|
lay-verify="required"/>
|
|
<input type="text" id="materialTypeId"
|
|
name="typeId"
|
|
placeholder="请选择物料类型" class="layui-input"
|
|
style="display: none"
|
|
lay-verify="required"/>
|
|
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">材质:</label>
|
|
<div class="layui-input-block">
|
|
<input type="text" placeholder="请填写材质名称"
|
|
class="layui-input" readonly
|
|
name="texture"/>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">规格型号:</label>
|
|
<div class="layui-input-block">
|
|
<input type="text" placeholder="请填写规格型号"
|
|
class="layui-input" readonly
|
|
name="version"/>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">计量单位:</label>
|
|
<div class="layui-input-block">
|
|
<select id="unit"
|
|
onchange="changeSelectValueForUnit(this)"
|
|
class="layui-form-select"
|
|
name="unit"></select>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item" style="display: none"
|
|
id="producedDateItem">
|
|
<label class="layui-form-label">生产日期:</label>
|
|
<div class="layui-input-block">
|
|
<!-- <input type="text" name="producedDate" id="producedDate" placeholder="请填写生产日期" onclick="selectDate(this)"-->
|
|
<!-- autocomplete="off" class="layui-input">-->
|
|
<select name="producedDate" id="producedDate"
|
|
onchange="changeSelectValueForProducedDate(this)"
|
|
class="layui-form-select">
|
|
|
|
</select>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">库存数量:</label>
|
|
<div class="layui-input-block">
|
|
<input type="number" class="layui-input"
|
|
readonly id="oldInventory"
|
|
name="oldInventory"
|
|
lay-verify="required"/>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">盘点数量:</label>
|
|
<div class="layui-input-block">
|
|
<input type="number" class="layui-input"
|
|
onblur="calculate(this)"
|
|
name="newInventory"
|
|
lay-verify="required"/>
|
|
</div>
|
|
</div>
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">盘点结果:</label>
|
|
<div class="layui-input-block">
|
|
<select name="takingResult" id="result"
|
|
class="layui-form-select">
|
|
|
|
</select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="layui-form-item">
|
|
<label class="layui-form-label">盈亏数量:</label>
|
|
<div class="layui-input-block">
|
|
<input type="number" class="layui-input"
|
|
readonly
|
|
id="Inventory_number"
|
|
name="inventory" lay-verify="required"/>
|
|
</div>
|
|
</div>
|
|
<i class="layui-icon layui-icon-addition"
|
|
style="display: inline"
|
|
onclick="addItem(this)"></i>
|
|
</div>
|
|
<div class="layui-form-item" style="margin-top: 10px;">
|
|
<div class="layui-input-block">
|
|
<button type="button"
|
|
class="layui-btn layui-btn-normal layui-btn-lg"
|
|
lay-submit
|
|
lay-filter="formStep3">
|
|
 提交 
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</fieldset>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- 下一步-->
|
|
<div>
|
|
<form class="layui-form"
|
|
style="margin: 0 auto;max-width: 460px;padding-top: 40px;">
|
|
<div style="text-align: center;margin-top: 90px;">
|
|
<i class="layui-icon layui-circle"
|
|
style="color: white;font-size:30px;font-weight:bold;background: #52C41A;padding: 20px;line-height: 80px;"></i>
|
|
<div style="font-size: 24px;color: #333;font-weight: 500;margin-top: 30px;">
|
|
提交成功
|
|
</div>
|
|
<div style="text-align: center;margin-top: 50px;">
|
|
<button class="layui-btn next">再填写一次</button>
|
|
</div>
|
|
</div>
|
|
|
|
</form>
|
|
</div>
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<script id="changeUnit" type="text/html">
|
|
<a class="layui-btn layui-btn-xs" lay-event="more">{{d.unit}}<i class="layui-icon layui-icon-down"></i></a>
|
|
</script>
|
|
|
|
<script type="text/html" id="currentTableBarForMaterial">
|
|
<a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="clear">清空</a>
|
|
</script>
|
|
|
|
<script type="text/html" id="currentTableBarForLocation">
|
|
<a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="clear">清空</a>
|
|
</script>
|
|
|
|
<script src="/static/lib/layui-v2.8.6/layui.js" charset="utf-8"></script>
|
|
<script src="/static/js/lay-config.js?v=1.0.4" charset="utf-8"></script>
|
|
<script src="/static/js/stockTaking/stockTakingForMaterial.js" charset="utf-8"></script>
|
|
<script src="/static/js/stockTaking/stockTakingForLocationTable.js" charset="utf-8"></script>
|
|
<script src="/static/js/stockTaking/stockTakingForLocationCard.js" charset="utf-8"></script>
|
|
<script>
|
|
// 用于存储当前选择的盘点位置
|
|
let depositoryId;
|
|
let placeId;
|
|
// 用于存储当前选择的负责人
|
|
let departmentManagerIdForMaterial;
|
|
// 用于存储当前选择的负责人
|
|
let departmentManagerIdForLocation;
|
|
|
|
// 用于标志是否为第一次提交
|
|
let flagForForm = false;
|
|
let flagForForm1 = false;
|
|
layui.use(['form', 'step', 'flow', 'table', 'inputTag'], function () {
|
|
var $ = layui.$,
|
|
form = layui.form,
|
|
table = layui.table,
|
|
inputTag = layui.inputTag,
|
|
dropdown = layui.dropdown, //下拉菜单
|
|
step = layui.step;
|
|
|
|
// 用于分步表单加载
|
|
step.render({
|
|
elem: '#stepForm',
|
|
filter: 'stepForm',
|
|
width: '100%', //设置容器宽度
|
|
height: '900px',
|
|
stepItems: [{
|
|
title: '填写信息'
|
|
}, {
|
|
title: '提交成功'
|
|
}]
|
|
});
|
|
|
|
// 用于分步表单加载
|
|
step.render({
|
|
elem: '#stepForm1',
|
|
filter: 'stepForm',
|
|
width: '100%', //设置容器宽度
|
|
height: '900px',
|
|
stepItems: [{
|
|
title: '填写信息'
|
|
}, {
|
|
title: '提交成功'
|
|
}]
|
|
});
|
|
|
|
|
|
// 用于提交盘点情况
|
|
form.on('submit(formStep)', function (data) {
|
|
if (!flagForForm) {
|
|
flagForForm = true;
|
|
data = data.field;
|
|
data.depositoryId = depositoryId;
|
|
data.placeId = placeId;
|
|
let submitType = this.getAttribute("submitType");
|
|
if ("Material" === submitType) {
|
|
data.departmentManager = departmentManagerIdForMaterial;
|
|
} else if ("Location" === submitType) {
|
|
data.departmentManager = departmentManagerIdForLocation;
|
|
}
|
|
$.ajax({
|
|
url: "/stockTaking/submitStockTaking",
|
|
type: 'post',
|
|
dataType: 'json',
|
|
contentType: "application/json;charset=utf-8",
|
|
data: JSON.stringify(data),
|
|
beforeSend: function () {
|
|
this.layerIndex = layer.load(0, {shade: [0.5, '#393D49']});
|
|
},
|
|
success: function (data) {
|
|
layer.msg("申请提交成功", {
|
|
icon: 6,//成功的表情
|
|
time: 500 //1秒关闭(如果不配置,默认是3秒)
|
|
}, function () {
|
|
step.next('#stepForm');
|
|
});
|
|
},
|
|
complete: function () {
|
|
layer.close(this.layerIndex);
|
|
}
|
|
});
|
|
}
|
|
|
|
});
|
|
|
|
|
|
form.on('submit(formStep2)', function (data) {
|
|
step.next('#stepForm');
|
|
return false;
|
|
});
|
|
|
|
// 用于提交盘点情况
|
|
form.on('submit(formStep3)', function (data) {
|
|
if (!flagForForm1) {
|
|
flagForForm1 = true;
|
|
data = data.field;
|
|
data.params = params;
|
|
data.departmentManagerId = departmentManagerIdForLocation;
|
|
data.depositoryId = depositoryId;
|
|
data.placeId = placeId;
|
|
$.ajax({
|
|
url: "/stockTaking/addStockTakingRecord",
|
|
type: 'post',
|
|
dataType: 'json',
|
|
contentType: "application/json;charset=utf-8",
|
|
data: JSON.stringify(data),
|
|
beforeSend: function () {
|
|
this.layerIndex = layer.load(0, {shade: [0.5, '#393D49']});
|
|
},
|
|
success: function (data) {
|
|
layer.msg("申请提交成功", {
|
|
icon: 6,//成功的表情
|
|
time: 500 //1秒关闭(如果不配置,默认是3秒)
|
|
}, function () {
|
|
step.next('#stepForm');
|
|
});
|
|
},
|
|
complete: function () {
|
|
layer.close(this.layerIndex);
|
|
}
|
|
});
|
|
}
|
|
|
|
});
|
|
|
|
$('.pre').click(function () {
|
|
step.pre('#stepForm');
|
|
});
|
|
|
|
$('.next').click(function () {
|
|
step.next('#stepForm');
|
|
});
|
|
|
|
$('body').on('click', '[data-refresh]', function () {
|
|
location.reload();
|
|
})
|
|
})
|
|
</script>
|
|
</body>
|
|
</html>
|