|
|
@ -46,9 +46,7 @@ |
|
|
<div class="layui-fluid"> |
|
|
<div class="layui-fluid"> |
|
|
<!-- 入库申请提交--> |
|
|
<!-- 入库申请提交--> |
|
|
<div class="layui-carousel" id="stepForm" lay-filter="stepForm" style="margin: 0 auto; "> |
|
|
<div class="layui-carousel" id="stepForm" lay-filter="stepForm" style="margin: 0 auto; "> |
|
|
<input th:value="${materialList}" style="display:none;" id="scanValue_materialList"> |
|
|
<input th:value="${inventoryList}" style="display:none;" id="temporaryValue"> |
|
|
<input th:value="${depository}" style="display: none" id="scanValue_depositoryId"> |
|
|
|
|
|
<input th:value="${place}" style="display: none" id="scanValue_placeId"> |
|
|
|
|
|
<div carousel-item style="overflow: inherit"> |
|
|
<div carousel-item style="overflow: inherit"> |
|
|
<div> |
|
|
<div> |
|
|
<form class="layui-form layui-form-pane" |
|
|
<form class="layui-form layui-form-pane" |
|
|
@ -147,40 +145,12 @@ |
|
|
let scanValue = {}; |
|
|
let scanValue = {}; |
|
|
// 页面初始化 |
|
|
// 页面初始化 |
|
|
$(function () { |
|
|
$(function () { |
|
|
let depository = $("#scanValue_depositoryId").val(); |
|
|
let inventoryList = JSON.parse($("#temporaryValue").val()); |
|
|
let place = $("#scanValue_placeId").val(); |
|
|
if (inventoryList.length > 0) { |
|
|
let materialList = $("#scanValue_materialList").val(); |
|
|
for (let i = 0; i < inventoryList.length; i++) { |
|
|
materialList = JSON.parse(materialList); |
|
|
initForm(i, inventoryList[i]); |
|
|
if (depository !== undefined && depository !== null && depository !== "") { |
|
|
|
|
|
// 如果扫描到仓库 |
|
|
|
|
|
depository = JSON.parse(depository); |
|
|
|
|
|
scanValue.depository = depository; |
|
|
|
|
|
} |
|
|
|
|
|
if (place !== undefined && place !== null && place !== "") { |
|
|
|
|
|
// 如果扫描到库位 |
|
|
|
|
|
place = JSON.parse(place); |
|
|
|
|
|
scanValue.place = place; |
|
|
|
|
|
} |
|
|
|
|
|
if (materialList.length > 0) { |
|
|
|
|
|
for (let i = 0; i < materialList.length; i++) { |
|
|
|
|
|
initForm(i, materialList[i]); |
|
|
|
|
|
form.render(); |
|
|
|
|
|
var materialAndBarCodeList = materialList[i]["materialAndBarCodeList"]; |
|
|
|
|
|
var num = i; |
|
|
|
|
|
if (num === 0) { |
|
|
|
|
|
num = ""; |
|
|
|
|
|
} |
|
|
|
|
|
$.each(materialAndBarCodeList, function (index, item) { |
|
|
|
|
|
$("#barCode" + num).append(new Option(item.bmcode, item.bmcode));//往下拉菜单里添加元素 |
|
|
|
|
|
}); |
|
|
|
|
|
form.render() |
|
|
form.render() |
|
|
} |
|
|
} |
|
|
} else { |
|
|
|
|
|
var material = {}; |
|
|
|
|
|
material.mname = ''; |
|
|
|
|
|
material.mid = ''; |
|
|
|
|
|
material.code = ''; |
|
|
|
|
|
initForm(0, material); |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
}); |
|
|
}); |
|
|
@ -206,71 +176,8 @@ |
|
|
if (num === 0) { // 如果是第一个 |
|
|
if (num === 0) { // 如果是第一个 |
|
|
NewIdNumber = ""; |
|
|
NewIdNumber = ""; |
|
|
} |
|
|
} |
|
|
var depositoryItem = ` |
|
|
|
|
|
<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: none" |
|
|
|
|
|
id="openSonByDepository" readonly onclick="openDepositoryTree(this)" |
|
|
|
|
|
lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "depositoryId" + NewIdNumber + ` class="layui-input" id="depositoryId" |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "placeId" + NewIdNumber + ` class="layui-input" id="placeId" value="0" |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
|
|
|
id="scanLocation" |
|
|
|
|
|
style="margin-top: 10px" onclick="scanLocationByQrCode(this)"> |
|
|
|
|
|
|
|
|
|
|
|
</div> |
|
|
var splitInfoList = obj.splitInfoList; |
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
`; |
|
|
|
|
|
if (scanValue.depository !== undefined && scanValue.depository !== null && scanValue.depository !== "") { |
|
|
|
|
|
let depository = scanValue.depository; |
|
|
|
|
|
// 如果扫描了仓库 |
|
|
|
|
|
depositoryItem = `<div class="layui-form-item"> |
|
|
|
|
|
<label class="layui-form-label" style="height: 40px;">仓库:</label> |
|
|
|
|
|
<div class="layui-input-block"> |
|
|
|
|
|
<div class="inputdiv"> |
|
|
|
|
|
<input style="border: none" type="text" placeholder="请选择仓库" class="layui-input" value=` + depository.dname + ` |
|
|
|
|
|
id="openSonByDepository" readonly onclick="openDepositoryTree(this)" |
|
|
|
|
|
lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "depositoryId" + NewIdNumber + ` class="layui-input" id="depositoryId" value=` + depository.did + ` |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "placeId" + NewIdNumber + ` class="layui-input" id="placeId" value="0" |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
|
|
|
id="scanLocation" |
|
|
|
|
|
style="margin-top: 10px" onclick="scanLocationByQrCode(this)"> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div>`; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (scanValue.place !== undefined && scanValue.place !== null && scanValue.place !== "") { |
|
|
|
|
|
// 如果扫描了库位 |
|
|
|
|
|
let place = scanValue.place; |
|
|
|
|
|
depositoryItem = `<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: none" |
|
|
|
|
|
id="openSonByDepository" readonly onclick="openDepositoryTree(this)" value=` + place.dname + "-" + place.code + ` |
|
|
|
|
|
lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "depositoryId" + NewIdNumber + ` class="layui-input" id="depositoryId" value=` + place.depositoryId + ` |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "placeId" + NewIdNumber + ` class="layui-input" id="placeId" value=` + place.pid + ` |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
|
|
|
id="scanLocation" |
|
|
|
|
|
style="margin-top: 10px" onclick="scanLocationByQrCode(this)"> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div>`; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
var splitInfoList = obj.splitList; |
|
|
|
|
|
let splitInfoItem = ""; |
|
|
let splitInfoItem = ""; |
|
|
if (splitInfoList !== undefined) { |
|
|
if (splitInfoList !== undefined) { |
|
|
for (let i = 0; i < splitInfoList.length; i++) { |
|
|
for (let i = 0; i < splitInfoList.length; i++) { |
|
|
@ -278,8 +185,7 @@ |
|
|
splitInfoItem += optinItem; |
|
|
splitInfoItem += optinItem; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
var firstItem = |
|
|
var materialItem = |
|
|
// 前半部分 |
|
|
|
|
|
`<div class="layui-card-body" style="padding-right: 0px" id=` + "cardItem" + NewIdNumber + `> |
|
|
`<div class="layui-card-body" style="padding-right: 0px" id=` + "cardItem" + NewIdNumber + `> |
|
|
<hr> |
|
|
<hr> |
|
|
<i class="layui-icon layui-icon-subtraction" style="display: inline" onclick="deleteItem(this)"></i> |
|
|
<i class="layui-icon layui-icon-subtraction" style="display: inline" onclick="deleteItem(this)"></i> |
|
|
@ -287,22 +193,22 @@ |
|
|
<label class="layui-form-label" style="height: 40px;">物料名称</label> |
|
|
<label class="layui-form-label" style="height: 40px;">物料名称</label> |
|
|
<div class="layui-input-block"> |
|
|
<div class="layui-input-block"> |
|
|
<div class="inputdiv"> |
|
|
<div class="inputdiv"> |
|
|
<input type="text" placeholder="请选择物料" class="layui-input" style="border-style: none" |
|
|
<input type="text" placeholder="请选择物料" class="layui-input" style="border-style: none" value="${obj.mname}" |
|
|
id="openSonByMaterial" lay-verify="required" value="${obj.mname}" onblur="selectMaterialByName(this)"/> |
|
|
id="openSonByMaterial" lay-verify="required" onblur="selectMaterialByName(this)"/> |
|
|
<i class="layui-icon layui-icon-search" style="display: inline" id="selectMaterial" onclick="selectMaterial(this)"></i> |
|
|
<i class="layui-icon layui-icon-search" style="display: inline" id="selectMaterial" onclick="selectMaterial(this)"></i> |
|
|
</div> |
|
|
</div> |
|
|
<input type="text" name=` + "mid" + NewIdNumber + ` class="layui-input" id="mid" value="${obj.mid}" |
|
|
<input type="text" name=` + "mid" + NewIdNumber + ` class="layui-input" id=` + "mid" + NewIdNumber + ` value="${obj.mid}" |
|
|
style="display: none" lay-verify="required" /> |
|
|
style="display: none" lay-verify="required" /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="layui-form-item"> |
|
|
<div class="layui-form-item"> |
|
|
<label class="layui-form-label" style="height: 40px;">物料编码:</label> |
|
|
<label class="layui-form-label" style="height: 40px;">物料编码:</label> |
|
|
<div class="layui-input-block"> |
|
|
<div class="layui-input-block" style="margin: 0px;"> |
|
|
<div class="inputdiv"> |
|
|
<div class="inputdiv"> |
|
|
<input id="code" style="border: none" name=` + "code" + NewIdNumber + ` type="text" placeholder="请填写入物料编码" onblur="selectCode(this)" |
|
|
<input id="code" name=` + "code" + NewIdNumber + ` type="text" placeholder="请填写入物料编码" value="${obj.code}" onblur="selectCode(this)" |
|
|
class="layui-input" lay-verify="required" value="${obj.code}"> |
|
|
class="layui-input" lay-verify="required" style="border-style: none"> |
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
<img id=` + "qrCodeImg" + NewIdNumber + ` src="/static/images/search.ico" height="16" width="16" style="margin-top: 10px" onclick="scanCodeInStorage(this)" > |
|
|
style="margin-top: 10px" onclick="scanCodeInStorage(this)"> |
|
|
<input id=` + "qrCode" + NewIdNumber + ` name=` + "qrCode" + NewIdNumber + ` type="text" style="display:none;"> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
@ -310,10 +216,20 @@ |
|
|
<label class="layui-form-label" style="height: 40px;">条形编码:</label> |
|
|
<label class="layui-form-label" style="height: 40px;">条形编码:</label> |
|
|
<div class="layui-input-block" style="margin: 0px;"> |
|
|
<div class="layui-input-block" style="margin: 0px;"> |
|
|
<div class="inputdiv"> |
|
|
<div class="inputdiv"> |
|
|
<select id=` + "barCode" + NewIdNumber + ` name=` + "barCode" + NewIdNumber + `></select> |
|
|
<input id="barcode" name=` + "barCode" + NewIdNumber + ` type="text" placeholder="请填写入条形编码" value="" |
|
|
<img id= ` + "barCodeImg" + NewIdNumber + ` name=` + "barCodeImg" + NewIdNumber + ` src="/static/images/search.ico" height="16" width="16" style="margin-top: 10px" onclick="scanBarCode(this)" > |
|
|
class="layui-input" style="border-style: none"> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" |
|
|
|
|
|
id = ` + "barCodeImg" + NewIdNumber + ` |
|
|
|
|
|
width="16" style="margin-top: 10px" onclick="scanBarCode(this)" > |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div class="layui-form-item" style="display: none" id=` + "producedDateItem" + NewIdNumber + `> |
|
|
|
|
|
<label class="layui-form-label">生产日期:</label> |
|
|
|
|
|
<div class="layui-input-block"> |
|
|
|
|
|
<input type="text" name=` + "producedDate" + NewIdNumber + ` id=` + "producedDate" + NewIdNumber + ` placeholder="请填写生产日期" |
|
|
|
|
|
onclick="selectDate(this)" autocomplete="off" class="layui-input"> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="layui-form-item"> |
|
|
<div class="layui-form-item"> |
|
|
<label class="layui-form-label">物料数量:</label> |
|
|
<label class="layui-form-label">物料数量:</label> |
|
|
@ -326,15 +242,29 @@ |
|
|
<label class="layui-form-label">计量单位:</label> |
|
|
<label class="layui-form-label">计量单位:</label> |
|
|
<div class="layui-input-block"> |
|
|
<div class="layui-input-block"> |
|
|
<select id=` + "unit" + NewIdNumber + ` name=` + "unit" + NewIdNumber + `> |
|
|
<select id=` + "unit" + NewIdNumber + ` name=` + "unit" + NewIdNumber + `> |
|
|
<option value="-1">${obj.unit}</option> |
|
|
<option value="-1">${obj.unit}</option>` + |
|
|
` + splitInfoItem + ` |
|
|
splitInfoItem + |
|
|
</select> |
|
|
`</select> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
`; |
|
|
<div class="layui-form-item"> |
|
|
|
|
|
<label class="layui-form-label" style="height: 40px;">仓库:</label> |
|
|
|
|
|
<div class="layui-input-block"> |
|
|
var lastItem = `<div class="layui-form-item"> |
|
|
<div class="inputdiv"> |
|
|
|
|
|
<input type="text" placeholder="请选择仓库" class="layui-input" style="border: none" |
|
|
|
|
|
id="openSonByDepository" readonly onclick="openDepositoryTree(this)" value="" |
|
|
|
|
|
lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "depositoryId" + NewIdNumber + ` class="layui-input" id=` + "depositoryId" + NewIdNumber + ` |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "placeId" + NewIdNumber + ` class="layui-input" id=` + "placeId" + NewIdNumber + ` |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
|
|
|
id="scanLocation" |
|
|
|
|
|
style="margin-top: 10px" onclick="scanLocationByQrCode(this)"> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
<div class="layui-form-item"> |
|
|
<label class="layui-form-label">备注说明:</label> |
|
|
<label class="layui-form-label">备注说明:</label> |
|
|
<div class="layui-input-block"> |
|
|
<div class="layui-input-block"> |
|
|
<input name=` + "applyRemark" + NewIdNumber + ` placeholder="请填写相关原因及申请原因" value="" |
|
|
<input name=` + "applyRemark" + NewIdNumber + ` placeholder="请填写相关原因及申请原因" value="" |
|
|
@ -342,20 +272,19 @@ |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<i class="layui-icon layui-icon-addition" style="display: inline" onclick="addItem(this)"></i> |
|
|
<i class="layui-icon layui-icon-addition" style="display: inline" onclick="addItem(this)"></i> |
|
|
</div>`; |
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
`; |
|
|
// 获取当前高度 |
|
|
// 获取当前高度 |
|
|
var height = parseInt(($("#stepForm").css('height')).split("px")[0]); |
|
|
var height = parseInt(($("#stepForm").css('height')).split("px")[0]); |
|
|
if (NewIdNumber !== "") { |
|
|
if (NewIdNumber !== "") { |
|
|
params.push(NewIdNumber) |
|
|
params.push(NewIdNumber) |
|
|
} |
|
|
} |
|
|
$("#stepForm").css("height", height + 460 + 'px'); |
|
|
$("#stepForm").css("height", height + 460 + 'px'); |
|
|
var materialItem = firstItem + depositoryItem + lastItem; // 最终 |
|
|
|
|
|
$("#btn_sub").prepend(materialItem) |
|
|
$("#btn_sub").prepend(materialItem) |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 用于提交操作 |
|
|
// 用于提交操作 |
|
|
form.on('submit(formStep)', function (data) { |
|
|
form.on('submit(formStep)', function (data) { |
|
|
if (!flagForForm) { |
|
|
if (!flagForForm) { |
|
|
@ -377,7 +306,9 @@ |
|
|
if (data.status >= 300) { |
|
|
if (data.status >= 300) { |
|
|
var d = data.data; |
|
|
var d = data.data; |
|
|
if (d === "") { |
|
|
if (d === "") { |
|
|
layer.msg(data.statusInfo.detail); |
|
|
layer.msg(data.statusInfo.detail, {icon: 0, time: 500}, function () { |
|
|
|
|
|
flagForForm = false; |
|
|
|
|
|
}); |
|
|
} else { |
|
|
} else { |
|
|
var err = d["err"]; |
|
|
var err = d["err"]; |
|
|
var success = d["success"]; |
|
|
var success = d["success"]; |
|
|
@ -386,6 +317,7 @@ |
|
|
errMsg += "物料编码: "; |
|
|
errMsg += "物料编码: "; |
|
|
errMsg += err[i]["code"]; |
|
|
errMsg += err[i]["code"]; |
|
|
} |
|
|
} |
|
|
|
|
|
if (err.length > 0) { |
|
|
errMsg += "添加失败,请选择新仓库或库位"; |
|
|
errMsg += "添加失败,请选择新仓库或库位"; |
|
|
layer.msg(errMsg, { |
|
|
layer.msg(errMsg, { |
|
|
icon: 5, |
|
|
icon: 5, |
|
|
@ -393,6 +325,9 @@ |
|
|
}, function () { |
|
|
}, function () { |
|
|
step.next('#stepForm'); |
|
|
step.next('#stepForm'); |
|
|
}); |
|
|
}); |
|
|
|
|
|
} else { |
|
|
|
|
|
step.next('#stepForm'); |
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
} else { |
|
|
} else { |
|
|
@ -431,75 +366,12 @@ |
|
|
addItem = function (obj) { |
|
|
addItem = function (obj) { |
|
|
// 获取父元素id |
|
|
// 获取父元素id |
|
|
var parentId = obj.parentNode.id; |
|
|
var parentId = obj.parentNode.id; |
|
|
|
|
|
if (NewIdNumber === "") { |
|
|
|
|
|
NewIdNumber = 0; |
|
|
|
|
|
} |
|
|
NewIdNumber = NewIdNumber + 1; |
|
|
NewIdNumber = NewIdNumber + 1; |
|
|
// 物料名称栏目 |
|
|
// 物料名称栏目 |
|
|
var depositoryItem = ` <div class="layui-form-item"> |
|
|
var materialItem = ` |
|
|
<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: none" |
|
|
|
|
|
id="openSonByDepository" readonly onclick="openDepositoryTree(this)" |
|
|
|
|
|
lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "depositoryId" + NewIdNumber + ` class="layui-input" id="depositoryId" |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "placeId" + NewIdNumber + ` class="layui-input" id="placeId" |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
|
|
|
id="scanLocation" |
|
|
|
|
|
style="margin-top: 10px" onclick="scanLocationByQrCode(this)"> |
|
|
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
`; |
|
|
|
|
|
if (scanValue.depository !== undefined && scanValue.depository !== null && scanValue.depository !== "") { |
|
|
|
|
|
let depository = scanValue.depository; |
|
|
|
|
|
// 如果扫描了仓库 |
|
|
|
|
|
depositoryItem = `<div class="layui-form-item"> |
|
|
|
|
|
<label class="layui-form-label" style="height: 40px;">仓库:</label> |
|
|
|
|
|
<div class="layui-input-block"> |
|
|
|
|
|
<div class="inputdiv"> |
|
|
|
|
|
<input style="border: none" type="text" placeholder="请选择仓库" class="layui-input" value=` + depository.dname + ` |
|
|
|
|
|
id="openSonByDepository" readonly onclick="openDepositoryTree(this)" |
|
|
|
|
|
lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "depositoryId" + NewIdNumber + ` class="layui-input" id="depositoryId" value=` + depository.did + ` |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "placeId" + NewIdNumber + ` class="layui-input" id="placeId" value="0" |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
|
|
|
id="scanLocation" |
|
|
|
|
|
style="margin-top: 10px" onclick="scanLocationByQrCode(this)"> |
|
|
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div>`; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
if (scanValue.place !== undefined && scanValue.place !== null && scanValue.place !== "") { |
|
|
|
|
|
// 如果扫描了库位 |
|
|
|
|
|
let place = scanValue.place; |
|
|
|
|
|
depositoryItem = `<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: none" |
|
|
|
|
|
id="openSonByDepository" readonly onclick="openDepositoryTree(this)" value=` + place.dname + "-" + place.code + ` |
|
|
|
|
|
lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "depositoryId" + NewIdNumber + ` class="layui-input" id="depositoryId" value=` + place.depositoryId + ` |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "placeId" + NewIdNumber + ` class="layui-input" id="placeId" value=` + place.pid + ` |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
|
|
|
id="scanLocation" |
|
|
|
|
|
style="margin-top: 10px" onclick="scanLocationByQrCode(this)"> |
|
|
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div>`; |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
var firstItem = |
|
|
|
|
|
` |
|
|
|
|
|
<div class="layui-card-body" style="padding-right: 0px" id=` + "cardItem" + NewIdNumber + `> |
|
|
<div class="layui-card-body" style="padding-right: 0px" id=` + "cardItem" + NewIdNumber + `> |
|
|
<hr> |
|
|
<hr> |
|
|
<i class="layui-icon layui-icon-subtraction" style="display: inline" onclick="deleteItem(this)"></i> |
|
|
<i class="layui-icon layui-icon-subtraction" style="display: inline" onclick="deleteItem(this)"></i> |
|
|
@ -511,18 +383,18 @@ |
|
|
id="openSonByMaterial" lay-verify="required" onblur="selectMaterialByName(this)"/> |
|
|
id="openSonByMaterial" lay-verify="required" onblur="selectMaterialByName(this)"/> |
|
|
<i class="layui-icon layui-icon-search" style="display: inline" id="selectMaterial" onclick="selectMaterial(this)"></i> |
|
|
<i class="layui-icon layui-icon-search" style="display: inline" id="selectMaterial" onclick="selectMaterial(this)"></i> |
|
|
</div> |
|
|
</div> |
|
|
<input type="text" name=` + "mid" + NewIdNumber + ` class="layui-input" id="mid" |
|
|
<input type="text" name=` + "mid" + NewIdNumber + ` class="layui-input" id=` + "mid" + NewIdNumber + ` |
|
|
style="display: none" lay-verify="required" /> |
|
|
style="display: none" lay-verify="required" /> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<div class="layui-form-item"> |
|
|
<div class="layui-form-item"> |
|
|
<label class="layui-form-label" style="height: 40px;">物料编码:</label> |
|
|
<label class="layui-form-label" style="height: 40px;">物料编码:</label> |
|
|
<div class="layui-input-block"> |
|
|
<div class="layui-input-block" style="margin: 0px;"> |
|
|
<div class="inputdiv"> |
|
|
<div class="inputdiv"> |
|
|
<input id="code" name=` + "code" + NewIdNumber + ` type="text" placeholder="请填写入物料编码" value="" onblur="selectCode(this)" |
|
|
<input id="code" name=` + "code" + NewIdNumber + ` type="text" placeholder="请填写入物料编码" value="" onblur="selectCode(this)" |
|
|
style="border: none" class="layui-input" lay-verify="required"> |
|
|
class="layui-input" lay-verify="required" style="border-style: none"> |
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
<img id=` + "qrCodeImg" + NewIdNumber + ` src="/static/images/search.ico" height="16" width="16" style="margin-top: 10px" onclick="scanCodeInStorage(this)" > |
|
|
style="margin-top: 10px" onclick="scanCodeInStorage(this)"> |
|
|
<input id=` + "qrCode" + NewIdNumber + ` name=` + "qrCode" + NewIdNumber + ` type="text" style="display:none;"> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
@ -538,7 +410,13 @@ |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
<div class="layui-form-item" style="display: none" id=` + "producedDateItem" + NewIdNumber + `> |
|
|
|
|
|
<label class="layui-form-label">生产日期:</label> |
|
|
|
|
|
<div class="layui-input-block"> |
|
|
|
|
|
<input type="text" name=` + "producedDate" + NewIdNumber + ` id=` + "producedDate" + NewIdNumber + ` placeholder="请填写生产日期" |
|
|
|
|
|
onclick="selectDate(this)" autocomplete="off" class="layui-input"> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
<div class="layui-form-item"> |
|
|
<div class="layui-form-item"> |
|
|
<label class="layui-form-label">物料数量:</label> |
|
|
<label class="layui-form-label">物料数量:</label> |
|
|
<div class="layui-input-block"> |
|
|
<div class="layui-input-block"> |
|
|
@ -554,10 +432,24 @@ |
|
|
</select> |
|
|
</select> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
`; |
|
|
<div class="layui-form-item"> |
|
|
|
|
|
<label class="layui-form-label" style="height: 40px;">仓库:</label> |
|
|
|
|
|
<div class="layui-input-block"> |
|
|
var lastItem = `<div class="layui-form-item"> |
|
|
<div class="inputdiv"> |
|
|
|
|
|
<input type="text" placeholder="请选择仓库" class="layui-input" style="border-style: none" |
|
|
|
|
|
id="openSonByDepository" readonly onclick="openDepositoryTree(this)" |
|
|
|
|
|
lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "depositoryId" + NewIdNumber + ` class="layui-input" id="depositoryId" |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<input type="text" name=` + "placeId" + NewIdNumber + ` class="layui-input" id="placeId" |
|
|
|
|
|
style="display: none" lay-verify="required"/> |
|
|
|
|
|
<img src="/static/images/search.ico" height="16" width="16" |
|
|
|
|
|
id="scanLocation" |
|
|
|
|
|
style="margin-top: 10px" onclick="scanLocationByQrCode(this)"> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
</div> |
|
|
|
|
|
<div class="layui-form-item"> |
|
|
<label class="layui-form-label">备注说明:</label> |
|
|
<label class="layui-form-label">备注说明:</label> |
|
|
<div class="layui-input-block"> |
|
|
<div class="layui-input-block"> |
|
|
<input name=` + "applyRemark" + NewIdNumber + ` placeholder="请填写相关原因及申请原因" value="" |
|
|
<input name=` + "applyRemark" + NewIdNumber + ` placeholder="请填写相关原因及申请原因" value="" |
|
|
@ -570,7 +462,6 @@ |
|
|
var height = parseInt(($("#stepForm").css('height')).split("px")[0]); |
|
|
var height = parseInt(($("#stepForm").css('height')).split("px")[0]); |
|
|
params.push(NewIdNumber); |
|
|
params.push(NewIdNumber); |
|
|
$("#stepForm").css("height", height + 520 + 'px'); |
|
|
$("#stepForm").css("height", height + 520 + 'px'); |
|
|
var materialItem = firstItem + depositoryItem + lastItem; |
|
|
|
|
|
$("#" + parentId).after(materialItem); |
|
|
$("#" + parentId).after(materialItem); |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
@ -609,7 +500,7 @@ |
|
|
// 获取对应元素 |
|
|
// 获取对应元素 |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
var priceChildren = parent.childNodes[11]; |
|
|
var priceChildren = parent.childNodes[13]; |
|
|
var barCodeChildren = parent.childNodes[9]; |
|
|
var barCodeChildren = parent.childNodes[9]; |
|
|
// 物料条目 |
|
|
// 物料条目 |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
@ -617,13 +508,12 @@ |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
// 条形码条码 |
|
|
// 条形码条码 |
|
|
var barCodeItem = barCodeChildren.childNodes[3]; |
|
|
var barCodeItem = barCodeChildren.childNodes[3]; |
|
|
|
|
|
|
|
|
var req = {}; |
|
|
var req = {}; |
|
|
req.code = code; |
|
|
req.code = code; |
|
|
req.type = "in"; |
|
|
req.type = "in"; |
|
|
if (code !== "") { |
|
|
if (code !== "") { |
|
|
|
|
|
// 展示遮盖层 |
|
|
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0}); |
|
|
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0}); |
|
|
|
|
|
|
|
|
$.ajax({ |
|
|
$.ajax({ |
|
|
url: "/material/findMatrialByCode", |
|
|
url: "/material/findMatrialByCode", |
|
|
type: "get", |
|
|
type: "get", |
|
|
@ -634,35 +524,43 @@ |
|
|
var d = d.data; |
|
|
var d = d.data; |
|
|
var idNumber = materialId.name.split("mid")[1]; |
|
|
var idNumber = materialId.name.split("mid")[1]; |
|
|
if (d == null) { |
|
|
if (d == null) { |
|
|
layer.msg("没有该编码,请确认是否输入正确",{icon:5,time:500},function () { |
|
|
layer.msg("没有该编码,请确认是否输入正确", { |
|
|
|
|
|
icon: 0, |
|
|
|
|
|
time: 500 |
|
|
|
|
|
}, function () { |
|
|
|
|
|
layer.close(loading2) |
|
|
materialName.value = ""; |
|
|
materialName.value = ""; |
|
|
materialId.value = ""; |
|
|
materialId.value = ""; |
|
|
obj.value = ""; |
|
|
obj.value = ""; |
|
|
$("#barCode" + idNumber).remove(); |
|
|
$("#barCode" + idNumber).empty(); |
|
|
|
|
|
$("#unit" + idNumber).empty(); |
|
|
form.render(); |
|
|
form.render(); |
|
|
layer.close(loading2) |
|
|
|
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
} else { |
|
|
} else { |
|
|
|
|
|
|
|
|
materialName.value = d.mname; |
|
|
materialName.value = d.mname; |
|
|
materialId.value = d.id; |
|
|
materialId.value = d.mid; |
|
|
// 获取物料与条形码的对应关系 |
|
|
// 获取物料与条形码的对应关系 |
|
|
var materialAndBarCodeList = d["materialAndBarCodeList"]; |
|
|
var materialAndBarCodeList = d["materialAndBarCodeList"]; |
|
|
var splitInfoList = d["splitInfoList"]; |
|
|
var barCode = $("#barCode" + idNumber); |
|
|
let unit = $("#unit" + idNumber); |
|
|
if (barCode.length > 0) { |
|
|
|
|
|
barCode.empty(); |
|
|
|
|
|
} |
|
|
|
|
|
var unit = $("#unit" + idNumber); |
|
|
unit.empty(); |
|
|
unit.empty(); |
|
|
unit.append(new Option(d.unit, "-1")); |
|
|
$("#unit" + idNumber).append(new Option(d.baseUnit, "-1")); |
|
|
$.each(splitInfoList, function (index, item) { |
|
|
var unitList = d["splitInfoList"]; |
|
|
unit.append(new Option(item.newUnit, item.newUnit));//往下拉菜单里添加元素 |
|
|
for (let i = 0; i < unitList.length; i++) { |
|
|
}); |
|
|
$("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); |
|
|
|
|
|
} |
|
|
form.render(); |
|
|
form.render(); |
|
|
if (materialAndBarCodeList.length > 0) { |
|
|
if (materialAndBarCodeList.length > 0) { |
|
|
// 如果有对应的条形码 |
|
|
// 如果有对应的条形码 |
|
|
var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; |
|
|
|
|
|
var barCodeImg = barCodeItem.childNodes[1].childNodes[3]; |
|
|
var barCodeImg = barCodeItem.childNodes[1].childNodes[3]; |
|
|
|
|
|
var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; |
|
|
var id = barCodeInput.id; |
|
|
var id = barCodeInput.id; |
|
|
$("#" + id).remove(); |
|
|
$("#" + id).remove(); |
|
|
$("#barCode" + idNumber).empty(); |
|
|
|
|
|
var barCode = $("#barCode" + idNumber); |
|
|
var barCode = $("#barCode" + idNumber); |
|
|
if (barCode.length > 0) { |
|
|
if (barCode.length > 0) { |
|
|
barCode.empty(); |
|
|
barCode.empty(); |
|
|
@ -675,43 +573,43 @@ |
|
|
form.render(); |
|
|
form.render(); |
|
|
|
|
|
|
|
|
$.each(materialAndBarCodeList, function (index, item) { |
|
|
$.each(materialAndBarCodeList, function (index, item) { |
|
|
$("#barCode" + idNumber).append(new Option(item.bmcode, item.id));//往下拉菜单里添加元素 |
|
|
$("#barCode" + idNumber).append(new Option(item.bmcode, item.bmcode));//往下拉菜单里添加元素 |
|
|
}); |
|
|
}); |
|
|
layer.close(loading2) |
|
|
|
|
|
form.render(); |
|
|
form.render(); |
|
|
|
|
|
} |
|
|
|
|
|
var shelfLife = d.shelfLife; |
|
|
|
|
|
if (shelfLife !== null && shelfLife !== undefined) { |
|
|
|
|
|
$("#" + "producedDateItem" + idNumber).show(); |
|
|
|
|
|
$("#" + "producedDate" + idNumber).attr("lay-verify", "required"); |
|
|
} else { |
|
|
} else { |
|
|
var barCode = $("#barCode" + idNumber); |
|
|
$("#" + "producedDateItem" + idNumber).hide(); |
|
|
if (barCode.length > 0) { |
|
|
|
|
|
barCode.empty(); |
|
|
|
|
|
} |
|
|
} |
|
|
layer.close(loading2) |
|
|
layer.close(loading2) |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
}); |
|
|
}); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}; |
|
|
// 用于实现点击搜索按钮 |
|
|
// 用于实现点击搜索按钮 |
|
|
selectMaterial = function (obj) { |
|
|
selectMaterial = function (obj) { |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var parentId = parent.id; |
|
|
var parentId = parent.id; |
|
|
var codeChildren = parent.childNodes[7]; |
|
|
var codeChildren = parent.childNodes[7]; |
|
|
|
|
|
var priceChildren = parent.childNodes[13]; |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
var priceChildren = parent.childNodes[11]; |
|
|
// 条形码 |
|
|
var codeItem = codeChildren.childNodes[3].childNodes; |
|
|
var barCodeChildren = parent.childNodes[9]; |
|
|
var codeValue = codeItem[1].childNodes[1]; |
|
|
var codeItem = codeChildren.childNodes[3].childNodes[1]; |
|
|
|
|
|
var codeValue = codeItem.childNodes[1]; |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
var materialName = materialItem[1]; |
|
|
var materialName = materialItem[1]; |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
var mname = materialName.value; |
|
|
var mname = materialName.value; |
|
|
mname = mname.split(",")[0]; |
|
|
|
|
|
// 条形码条码 |
|
|
// 条形码条码 |
|
|
// 条形码 |
|
|
|
|
|
var barCodeChildren = parent.childNodes[9]; |
|
|
|
|
|
var barCodeItem = barCodeChildren.childNodes[3]; |
|
|
var barCodeItem = barCodeChildren.childNodes[3]; |
|
|
var idNumber = materialId.id.split("mid")[1]; |
|
|
mname = mname.split(",")[0]; |
|
|
layer.open({ |
|
|
layer.open({ |
|
|
type: 2, |
|
|
type: 2, |
|
|
title: '弹窗内容', |
|
|
title: '弹窗内容', |
|
|
@ -755,6 +653,7 @@ |
|
|
// 如果有对应的条形码 |
|
|
// 如果有对应的条形码 |
|
|
var id = barCodeInput.id; |
|
|
var id = barCodeInput.id; |
|
|
$("#" + id).remove(); |
|
|
$("#" + id).remove(); |
|
|
|
|
|
// barCodeInput.style = "display:none"; |
|
|
var barCodeSelect = ` |
|
|
var barCodeSelect = ` |
|
|
<select id=` + "barCode" + idNumber + ` name=` + "barCode" + idNumber + `> |
|
|
<select id=` + "barCode" + idNumber + ` name=` + "barCode" + idNumber + `> |
|
|
</select>`; |
|
|
</select>`; |
|
|
@ -791,7 +690,6 @@ |
|
|
} |
|
|
} |
|
|
}); |
|
|
}); |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
//用于实现物料名称搜索 |
|
|
//用于实现物料名称搜索 |
|
|
selectMaterialByName = function (obj) { |
|
|
selectMaterialByName = function (obj) { |
|
|
// 输入code |
|
|
// 输入code |
|
|
@ -800,16 +698,16 @@ |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
var codeChildren = parent.childNodes[7]; |
|
|
var codeChildren = parent.childNodes[7]; |
|
|
var codeItem = codeChildren.childNodes[3].childNodes; |
|
|
var codeItem = codeChildren.childNodes[3].childNodes[1]; |
|
|
var codeValue = codeItem[1].childNodes[1]; |
|
|
var codeValue = codeItem.childNodes[1]; |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
var materialName = materialItem[1]; |
|
|
var materialName = materialItem[1]; |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
var req = {}; |
|
|
var req = {}; |
|
|
data = data.split(",")[0]; |
|
|
data = data.split(",")[0]; |
|
|
if (data !== "") { |
|
|
if (data !== "") { |
|
|
req.mname = data; |
|
|
|
|
|
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0}); |
|
|
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0}); |
|
|
|
|
|
req.mname = data; |
|
|
$.ajax({ |
|
|
$.ajax({ |
|
|
url: "/material/findMaterialByCondition", |
|
|
url: "/material/findMaterialByCondition", |
|
|
type: "post", |
|
|
type: "post", |
|
|
@ -818,15 +716,20 @@ |
|
|
contentType: "application/json;charset=utf-8", |
|
|
contentType: "application/json;charset=utf-8", |
|
|
success: function (d) { |
|
|
success: function (d) { |
|
|
if (d.count > 1) { |
|
|
if (d.count > 1) { |
|
|
layer.msg("请点击右侧搜索确定物品",{icon:0,time:500},function () { |
|
|
layer.msg("请点击右侧搜索确定物品", { |
|
|
|
|
|
icon: 0, |
|
|
|
|
|
time: 500 |
|
|
|
|
|
}, function () { |
|
|
materialId.value = ""; |
|
|
materialId.value = ""; |
|
|
codeValue.value = ""; |
|
|
codeValue.value = ""; |
|
|
layer.close(loading2) |
|
|
layer.close(loading2) |
|
|
}); |
|
|
}); |
|
|
|
|
|
|
|
|
return false; |
|
|
return false; |
|
|
} else if (d.count === 0) { |
|
|
} else if (d.count === 0) { |
|
|
layer.msg("没有该物品,请确认输入是否正确",{icon:5,time:500},function () { |
|
|
layer.msg("没有该物品,请确认输入是否正确", { |
|
|
|
|
|
icon: 5, |
|
|
|
|
|
time: 500 |
|
|
|
|
|
}, function () { |
|
|
materialId.value = ""; |
|
|
materialId.value = ""; |
|
|
codeValue.value = ""; |
|
|
codeValue.value = ""; |
|
|
materialName.value = ""; |
|
|
materialName.value = ""; |
|
|
@ -839,7 +742,6 @@ |
|
|
materialName.value = material.mname; |
|
|
materialName.value = material.mname; |
|
|
materialId.value = material.mid; |
|
|
materialId.value = material.mid; |
|
|
codeValue.value = material.code; |
|
|
codeValue.value = material.code; |
|
|
|
|
|
|
|
|
var shelfLife = material.shelfLife; |
|
|
var shelfLife = material.shelfLife; |
|
|
if (shelfLife !== null && shelfLife !== undefined) { |
|
|
if (shelfLife !== null && shelfLife !== undefined) { |
|
|
$("#" + "producedDateItem" + idNumber).show(); |
|
|
$("#" + "producedDateItem" + idNumber).show(); |
|
|
@ -855,50 +757,173 @@ |
|
|
for (let i = 0; i < unitList.length; i++) { |
|
|
for (let i = 0; i < unitList.length; i++) { |
|
|
$("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); |
|
|
$("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); |
|
|
} |
|
|
} |
|
|
form.render(); |
|
|
|
|
|
layer.close(loading2) |
|
|
layer.close(loading2) |
|
|
|
|
|
form.render(); |
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
}); |
|
|
}); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
}; |
|
|
}; |
|
|
|
|
|
// 用于扫码入库 |
|
|
|
|
|
scanCodeInStorage = function (obj) { |
|
|
|
|
|
let wxScan = parent; |
|
|
|
|
|
|
|
|
scanBarCode = function (obj) { |
|
|
if (wxScan.wx === undefined) { |
|
|
parent.parent.wx.scanQRCode({ |
|
|
wxScan = wxScan.parent.wx; |
|
|
|
|
|
} else { |
|
|
|
|
|
wxScan = wxScan.wx; |
|
|
|
|
|
} |
|
|
|
|
|
wxScan.scanQRCode({ |
|
|
desc: 'scanQRCode desc', |
|
|
desc: 'scanQRCode desc', |
|
|
needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, |
|
|
needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, |
|
|
scanType: ["barCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 |
|
|
scanType: ["qrCode,barCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 |
|
|
success: function (res) { |
|
|
success: function (res) { |
|
|
// 回调 |
|
|
// 回调 |
|
|
var result = res.resultStr;//当needResult为1时返回处理结果 |
|
|
var result = res.resultStr;//当needResult为1时返回处理结果 |
|
|
var req = {}; |
|
|
var req = {}; |
|
|
req.qrCode = result; |
|
|
req.qrCode = result; |
|
|
|
|
|
req.codeFlag = 2; |
|
|
|
|
|
$("#qrCode" + obj.id.split("qrCodeImg")[1]).val(result); |
|
|
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0}); |
|
|
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0}); |
|
|
$.ajax({ |
|
|
$.ajax({ |
|
|
url: "/material/qywxApplicationInScanBarCode", |
|
|
url: "/material/qywxApplicationInScanQrCode", |
|
|
type: "post", |
|
|
type: "post", |
|
|
dataType: 'json', |
|
|
dataType: 'json', |
|
|
data: JSON.stringify(req), |
|
|
data: JSON.stringify(req), |
|
|
contentType: "application/json;charset=utf-8", |
|
|
contentType: "application/json;charset=utf-8", |
|
|
success: function (d) { |
|
|
success: function (d) { |
|
|
var data = d.data; |
|
|
var data = d.data; |
|
|
var material = data["material"]; |
|
|
|
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var codeChildren = parent.childNodes[7]; |
|
|
var codeChildren = parent.childNodes[7]; |
|
|
var priceChildren = parent.childNodes[11]; |
|
|
var priceChildren = parent.childNodes[13]; |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
|
|
|
// 条形码 |
|
|
|
|
|
var barCodeChildren = parent.childNodes[9]; |
|
|
var codeItem = codeChildren.childNodes[3].childNodes[1]; |
|
|
var codeItem = codeChildren.childNodes[3].childNodes[1]; |
|
|
var codeValue = codeItem.childNodes[1]; |
|
|
var codeValue = codeItem.childNodes[1]; |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
var materialName = materialItem[1]; |
|
|
var materialName = materialItem[1]; |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
|
|
|
var mname = materialName.value; |
|
|
|
|
|
// 条形码条码 |
|
|
|
|
|
var barCodeItem = barCodeChildren.childNodes[3]; |
|
|
|
|
|
if (data === null) { |
|
|
|
|
|
// 如果没有对应关系 |
|
|
|
|
|
layer.msg("对于编码:" + result + ",并未发现对应的物料", { |
|
|
|
|
|
icon: 0, |
|
|
|
|
|
time: 1000 //0.5秒关闭(如果不配置,默认是3秒) |
|
|
|
|
|
}, function () { |
|
|
|
|
|
layer.close(loading2) |
|
|
|
|
|
}) |
|
|
|
|
|
} else { |
|
|
|
|
|
var code = data.code; |
|
|
|
|
|
if (code === undefined) { |
|
|
|
|
|
code = ""; |
|
|
|
|
|
} |
|
|
|
|
|
materialName.value = data.mname; |
|
|
|
|
|
materialId.value = data.mid; |
|
|
|
|
|
codeValue.value = code; |
|
|
|
|
|
var materialAndBarCodeList = data["materialAndBarCodeList"]; |
|
|
|
|
|
var idNumber = materialId.name.split("mid")[1]; |
|
|
|
|
|
if (materialAndBarCodeList.length > 0) { |
|
|
|
|
|
// 如果有对应的条形码 |
|
|
|
|
|
var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; |
|
|
|
|
|
var barCodeImg = barCodeItem.childNodes[1].childNodes[3]; |
|
|
|
|
|
var id = barCodeInput.id; |
|
|
|
|
|
$("#" + id).remove(); |
|
|
|
|
|
$("#barCode" + idNumber).empty(); |
|
|
|
|
|
var barCode = $("#barCode" + idNumber); |
|
|
|
|
|
if (barCode.length > 0) { |
|
|
|
|
|
barCode.empty(); |
|
|
|
|
|
} else { |
|
|
|
|
|
var barCodeSelect = ` |
|
|
|
|
|
<select id=` + "barCode" + idNumber + ` name=` + "barCode" + idNumber + `> |
|
|
|
|
|
</select>`; |
|
|
|
|
|
$("#" + barCodeImg.id).before(barCodeSelect); |
|
|
|
|
|
} |
|
|
|
|
|
form.render(); |
|
|
|
|
|
|
|
|
|
|
|
$.each(materialAndBarCodeList, function (index, item) { |
|
|
|
|
|
$("#barCode" + idNumber).append(new Option(item.bmcode, item.id));//往下拉菜单里添加元素 |
|
|
|
|
|
}); |
|
|
|
|
|
form.render(); |
|
|
|
|
|
} |
|
|
|
|
|
var shelfLife = data.shelfLife; |
|
|
|
|
|
if (shelfLife !== null && shelfLife !== undefined) { |
|
|
|
|
|
$("#" + "producedDateItem" + idNumber).show(); |
|
|
|
|
|
$("#" + "producedDate" + idNumber).attr("lay-verify", "required"); |
|
|
|
|
|
} else { |
|
|
|
|
|
$("#" + "producedDateItem" + idNumber).hide(); |
|
|
|
|
|
form.render(); |
|
|
|
|
|
} |
|
|
|
|
|
var unit = $("#unit" + idNumber); |
|
|
|
|
|
unit.empty(); |
|
|
|
|
|
unit.append(new Option(data.unit, "-1")); |
|
|
|
|
|
var unitList = data["splitInfoList"]; |
|
|
|
|
|
for (let i = 0; i < unitList.length; i++) { |
|
|
|
|
|
$("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); |
|
|
|
|
|
} |
|
|
|
|
|
layer.close(loading2) |
|
|
|
|
|
form.render(); |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}) |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 用于扫描条形码 |
|
|
|
|
|
scanBarCode = function (obj) { |
|
|
|
|
|
let wxScan = parent; |
|
|
|
|
|
|
|
|
|
|
|
if (wxScan.wx === undefined) { |
|
|
|
|
|
wxScan = wxScan.parent.wx; |
|
|
|
|
|
} else { |
|
|
|
|
|
wxScan = wxScan.wx; |
|
|
|
|
|
} |
|
|
|
|
|
wxScan.scanQRCode({ |
|
|
|
|
|
desc: 'scanQRCode desc', |
|
|
|
|
|
needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, |
|
|
|
|
|
scanType: ["barCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 |
|
|
|
|
|
success: function (res) { |
|
|
|
|
|
// 回调 |
|
|
|
|
|
var result = res.resultStr;//当needResult为1时返回处理结果 |
|
|
|
|
|
var req = {}; |
|
|
|
|
|
req.qrCode = result; |
|
|
|
|
|
req.codeFlag = 1; |
|
|
|
|
|
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0}); |
|
|
|
|
|
$.ajax({ |
|
|
|
|
|
url: "/material/qywxApplicationInScanBarCode", |
|
|
|
|
|
type: "post", |
|
|
|
|
|
dataType: 'json', |
|
|
|
|
|
data: JSON.stringify(req), |
|
|
|
|
|
contentType: "application/json;charset=utf-8", |
|
|
|
|
|
success: function (d) { |
|
|
|
|
|
var data = d.data; |
|
|
|
|
|
var material = data["material"]; |
|
|
|
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
// 条形码 |
|
|
// 条形码 |
|
|
var barCodeChildren = parent.childNodes[9]; |
|
|
var barCodeChildren = parent.childNodes[9]; |
|
|
var barCodeItem = barCodeChildren.childNodes[3]; |
|
|
var barCodeItem = barCodeChildren.childNodes[3]; |
|
|
var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; |
|
|
var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; |
|
|
if (material !== null) { |
|
|
if (material !== null) { |
|
|
// 如果发现对应关系 |
|
|
// 如果发现对应关系 |
|
|
|
|
|
|
|
|
|
|
|
var codeChildren = parent.childNodes[7]; |
|
|
|
|
|
var priceChildren = parent.childNodes[13]; |
|
|
|
|
|
var materialChildren = parent.childNodes[5]; |
|
|
|
|
|
|
|
|
|
|
|
var codeItem = codeChildren.childNodes[3].childNodes[1]; |
|
|
|
|
|
var codeValue = codeItem.childNodes[1]; |
|
|
|
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
|
|
|
var materialName = materialItem[1]; |
|
|
|
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
// 条形码条码 |
|
|
// 条形码条码 |
|
|
var code = material.mcode; |
|
|
var code = material.mcode; |
|
|
if (code === undefined) { |
|
|
if (code === undefined) { |
|
|
@ -920,15 +945,16 @@ |
|
|
form.render(); |
|
|
form.render(); |
|
|
var unit = $("#unit" + idNumber); |
|
|
var unit = $("#unit" + idNumber); |
|
|
unit.empty(); |
|
|
unit.empty(); |
|
|
$("#unit" + idNumber).append(new Option(material.baseUnit, "-1")); |
|
|
$("#unit" + idNumber).append(new Option(material.unit, "-1")); |
|
|
var unitList = material["splitInfoList"]; |
|
|
var unitList = material["splitInfoList"]; |
|
|
for (let i = 0; i < unitList.length; i++) { |
|
|
for (let i = 0; i < unitList.length; i++) { |
|
|
$("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); |
|
|
$("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); |
|
|
} |
|
|
} |
|
|
|
|
|
layer.close(loading2) |
|
|
form.render(); |
|
|
form.render(); |
|
|
layer.close(loading2); |
|
|
|
|
|
} |
|
|
} else { |
|
|
else{ |
|
|
// 如果没有对应关系 |
|
|
layer.msg("对于编码:" + result + ",并未发现对应的物料", { |
|
|
layer.msg("对于编码:" + result + ",并未发现对应的物料", { |
|
|
icon: 0, |
|
|
icon: 0, |
|
|
time: 1000 //0.5秒关闭(如果不配置,默认是3秒) |
|
|
time: 1000 //0.5秒关闭(如果不配置,默认是3秒) |
|
|
@ -949,7 +975,6 @@ |
|
|
} |
|
|
} |
|
|
}); |
|
|
}); |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
// 用于打开仓库树形菜单 |
|
|
// 用于打开仓库树形菜单 |
|
|
openDepositoryTree = function (obj) { |
|
|
openDepositoryTree = function (obj) { |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
@ -974,102 +999,40 @@ |
|
|
}); |
|
|
}); |
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
// 用于扫码入库 |
|
|
// 用于打开仓库树形菜单 |
|
|
scanCodeInStorage = function (obj) { |
|
|
selectDepositroy = function (obj) { |
|
|
parent.parent.wx.scanQRCode({ |
|
|
|
|
|
desc: 'scanQRCode desc', |
|
|
|
|
|
needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, |
|
|
|
|
|
scanType: ["qrCode","barCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 |
|
|
|
|
|
success: function (res) { |
|
|
|
|
|
// 回调 |
|
|
|
|
|
var result = res.resultStr;//当needResult为1时返回处理结果 |
|
|
|
|
|
var req = {}; |
|
|
|
|
|
req.qrCode = result; |
|
|
|
|
|
let loading2 = layer.open({ type: 3, shade: [0.25, '#000'], icon: 2, speed: 0}); |
|
|
|
|
|
$.ajax({ |
|
|
|
|
|
url: "/material/qywxApplicationInScanQrCode", |
|
|
|
|
|
type: "post", |
|
|
|
|
|
dataType: 'json', |
|
|
|
|
|
data: JSON.stringify(req), |
|
|
|
|
|
contentType: "application/json;charset=utf-8", |
|
|
|
|
|
success: function (d) { |
|
|
|
|
|
var data = d.data; |
|
|
|
|
|
|
|
|
|
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var parent = obj.parentNode.parentNode.parentNode.parentNode; |
|
|
var codeChildren = parent.childNodes[7]; |
|
|
var parentId = parent.id; |
|
|
var priceChildren = parent.childNodes[11]; |
|
|
layer.open({ |
|
|
var materialChildren = parent.childNodes[5]; |
|
|
type: 2, |
|
|
// 条形码 |
|
|
title: '弹窗内容', |
|
|
var barCodeChildren = parent.childNodes[9]; |
|
|
skin: 'layui-layer-rim', |
|
|
var codeItem = codeChildren.childNodes[3].childNodes[1]; |
|
|
maxmin: true, |
|
|
var codeValue = codeItem.childNodes[1]; |
|
|
shadeClose: true, //点击遮罩关闭层 |
|
|
var materialItem = materialChildren.childNodes[3].childNodes[1].childNodes; |
|
|
area: ['70%', '70%'], |
|
|
var materialName = materialItem[1]; |
|
|
move: '.layui-layer-title', |
|
|
var materialId = materialName.parentNode.parentNode.childNodes[3]; |
|
|
fixed: false, |
|
|
var mname = materialName.value; |
|
|
content: '/selectDepositoryByCard?type=1&flagForGroup=true&clickObj=' + parentId, |
|
|
// 条形码条码 |
|
|
success: function (layero, index) { |
|
|
var barCodeItem = barCodeChildren.childNodes[3]; |
|
|
var children = layero.children(); |
|
|
if (data === null) { |
|
|
var content = $(children[1]); |
|
|
// 如果没有对应关系 |
|
|
var iframeChildren = $(content.children()); |
|
|
layer.msg("对于编码:" + result + ",并未发现对应的物料", { |
|
|
content.css('height', '100%'); |
|
|
icon: 0, |
|
|
iframeChildren.css('height', '100%'); |
|
|
time: 1000 //0.5秒关闭(如果不配置,默认是3秒) |
|
|
|
|
|
}, function () { |
|
|
|
|
|
layer.close(loading2) |
|
|
|
|
|
}) |
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
|
|
|
|
var code = data.code; |
|
|
|
|
|
if (code === undefined) { |
|
|
|
|
|
code = ""; |
|
|
|
|
|
} |
|
|
|
|
|
materialName.value = data.mname; |
|
|
|
|
|
materialId.value = data.id; |
|
|
|
|
|
codeValue.value = code; |
|
|
|
|
|
var materialAndBarCodeList = data["materialAndBarCodeList"]; |
|
|
|
|
|
var idNumber = materialId.name.split("mid")[1]; |
|
|
|
|
|
if (materialAndBarCodeList.length > 0) { |
|
|
|
|
|
// 如果有对应的条形码 |
|
|
|
|
|
var barCodeInput = barCodeItem.childNodes[1].childNodes[1]; |
|
|
|
|
|
var barCodeImg = barCodeItem.childNodes[1].childNodes[3]; |
|
|
|
|
|
var id = barCodeInput.id; |
|
|
|
|
|
$("#" + id).remove(); |
|
|
|
|
|
$("#barCode" + idNumber).empty(); |
|
|
|
|
|
var barCode = $("#barCode" + idNumber); |
|
|
|
|
|
if (barCode.length > 0) { |
|
|
|
|
|
barCode.empty(); |
|
|
|
|
|
} else { |
|
|
|
|
|
var barCodeSelect = ` |
|
|
|
|
|
<select id=` + "barCode" + idNumber + ` name=` + "barCode" + idNumber + `> |
|
|
|
|
|
</select>`; |
|
|
|
|
|
$("#" + barCodeImg.id).before(barCodeSelect); |
|
|
|
|
|
} |
|
|
} |
|
|
form.render(); |
|
|
|
|
|
|
|
|
|
|
|
$.each(materialAndBarCodeList, function (index, item) { |
|
|
|
|
|
$("#barCode" + idNumber).append(new Option(item.bmcode, item.id));//往下拉菜单里添加元素 |
|
|
|
|
|
}); |
|
|
}); |
|
|
form.render(); |
|
|
|
|
|
} |
|
|
|
|
|
var unit = $("#unit" + idNumber); |
|
|
|
|
|
unit.empty(); |
|
|
|
|
|
unit.append(new Option(data.unit, "-1")); |
|
|
|
|
|
var unitList = data["splitInfoList"]; |
|
|
|
|
|
for (let i = 0; i < unitList.length; i++) { |
|
|
|
|
|
$("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit)); |
|
|
|
|
|
} |
|
|
|
|
|
form.render(); |
|
|
|
|
|
layer.close(loading2) |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
} |
|
|
|
|
|
}) |
|
|
|
|
|
}; |
|
|
}; |
|
|
|
|
|
|
|
|
// 用于扫描入库位置 |
|
|
// 用于扫描入库位置 |
|
|
scanLocationByQrCode = function (obj) { |
|
|
scanLocationByQrCode = function (obj) { |
|
|
parent.parent.wx.scanQRCode({ |
|
|
let wxScan = parent; |
|
|
|
|
|
|
|
|
|
|
|
if (wxScan.wx === undefined) { |
|
|
|
|
|
wxScan = wxScan.parent.wx; |
|
|
|
|
|
} else { |
|
|
|
|
|
wxScan = wxScan.wx; |
|
|
|
|
|
} |
|
|
|
|
|
wxScan.scanQRCode({ |
|
|
desc: 'scanQRCode desc', |
|
|
desc: 'scanQRCode desc', |
|
|
needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, |
|
|
needResult: 1, // 默认为0,扫描结果由企业微信处理,1则直接返回扫描结果, |
|
|
scanType: ["qrCode", "barCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 |
|
|
scanType: ["qrCode", "barCode"], // 可以指定扫二维码还是条形码(一维码),默认二者都有 |
|
|
@ -1120,7 +1083,7 @@ |
|
|
}) |
|
|
}) |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
} |
|
|
}; |
|
|
}) |
|
|
}) |
|
|
</script> |
|
|
</script> |
|
|
</body> |
|
|
</body> |