提交 8d99ffc4 编写于 作者: Skyeye云's avatar Skyeye云

【ERP】调拨单整改完成

上级 f37fcd6e
...@@ -12,11 +12,9 @@ layui.config({ ...@@ -12,11 +12,9 @@ layui.config({
var $ = layui.$, var $ = layui.$,
laydate = layui.laydate, laydate = layui.laydate,
textool = layui.textool; textool = layui.textool;
var rowNum = 1; //表格的序号
var usetableTemplate = $("#usetableTemplate").html();
var selOption = getFileContent('tpl/template/select-option.tpl'); var selOption = getFileContent('tpl/template/select-option.tpl');
//已经选择的商品集合key:表格的行trId,value:商品信息 // 已经选择的商品集合key:表格的行trId,value:商品信息
var allChooseProduct = {}; var allChooseProduct = {};
// 单据时间 // 单据时间
...@@ -28,47 +26,46 @@ layui.config({ ...@@ -28,47 +26,46 @@ layui.config({
erpOrderUtil.getDepotList(function (json){ erpOrderUtil.getDepotList(function (json){
// 加载仓库数据 // 加载仓库数据
$("#inDepotId").html(getDataUseHandlebars(selOption, json)); $("#inDepotId").html(getDataUseHandlebars(selOption, json));
$("#outDepotId").html(getDataUseHandlebars(selOption, json)); $("#depotId").html(getDataUseHandlebars(selOption, json));
// 初始化一行数据
addRow();
matchingLanguage();
}); });
//产品规格加载变化事件 // 商品
form.on('select(selectUnitProperty)', function(data) { initTableChooseUtil.initTable({
var thisRowValue = data.value; id: "productList",
var thisRowNum = data.elem.id.replace("unitId", "");//获取当前行 cols: [
//当前当前行选中的商品信息 {id: 'materialId', title: '商品(型号)', formType: 'chooseInput', width: '150', iconClassName: 'chooseProductBtn', verify: 'required'},
if(!isNull(thisRowValue) && thisRowValue != '请选择') { {id: 'mUnitId', title: '单位', formType: 'select', width: '50', verify: 'required', layFilter: 'selectUnitProperty'},
var product = allChooseProduct["tr" + thisRowNum.toString()]; {id: 'currentTock', title: '库存(调出仓库)', formType: 'detail', width: '80'},
$.each(product.unitList, function(j, bean) { {id: 'rkNum', title: '数量', formType: 'input', width: '80', className: 'change-input rkNum', verify: 'required|number', value: '1'},
if(thisRowValue == bean.id){//获取规格 {id: 'unitPrice', title: '单价', formType: 'input', width: '80', className: 'change-input unitPrice', verify: 'required|money'},
//获取当前行数量 {id: 'amountOfMoney', title: '金额', formType: 'input', width: '80', className: 'change-input amountOfMoney', verify: 'required|money'},
var rkNum = parseInt($("#rkNum" + thisRowNum).val()); {id: 'remark', title: '备注', formType: 'input', width: '100'}
$("#unitPrice" + thisRowNum).val(bean.estimatePurchasePrice.toFixed(2));//单价 ],
$("#amountOfMoney" + thisRowNum).val((rkNum * parseFloat(bean.estimatePurchasePrice)).toFixed(2));//金额 deleteRowCallback: function (trcusid) {
return false; delete allChooseProduct[trcusid];
} // 计算价格
}); calculatedTotalPrice();
} else { },
$("#unitPrice" + thisRowNum).val("0.00");//重置单价为空 addRowCallback: function (trcusid) {
$("#amountOfMoney" + thisRowNum).val("0.00");//重置金额为空 // 设置根据某列变化的颜色
} $("." + showTdByEdit).parent().css({'background-color': '#e6e6e6'});
},
//加载库存 form: form,
loadTockByDepotAndMUnit(thisRowNum, $("#outDepotId").val()); minData: 1
//计算价格
calculatedTotalPrice();
}); });
matchingLanguage();
// 商品规格加载变化事件
mUnitChangeEvent(form, allChooseProduct, "estimatePurchasePrice", calculatedTotalPrice);
// 调出仓库变化事件 // 调出仓库变化事件
form.on('select(depotId)', function(data) { form.on('select(depotId)', function(data) {
loadMaterialDepotStockByDepotId(data.value); loadMaterialDepotStockByDepotId(data.value);
}); });
var showTdByEdit = 'rkNum';//根据那一列的值进行变化,默认根据数量 var showTdByEdit = 'rkNum';//根据那一列的值进行变化,默认根据数量
//数量变化 // 数量变化
$("body").on("input", ".rkNum, .unitPrice, .amountOfMoney", function() { $("body").on("input", ".rkNum, .unitPrice, .amountOfMoney", function() {
if($(this).attr("class").replace("layui-input change-input ", "") != showTdByEdit){ if($(this).attr("class").replace("layui-input change-input ", "") != showTdByEdit){
showTdByEdit = $(this).attr("class").replace("layui-input change-input ", ""); showTdByEdit = $(this).attr("class").replace("layui-input change-input ", "");
...@@ -86,80 +83,64 @@ layui.config({ ...@@ -86,80 +83,64 @@ layui.config({
calculatedTotalPrice(); calculatedTotalPrice();
}); });
//计算总价 // 计算总价
function calculatedTotalPrice(){ function calculatedTotalPrice() {
var rowTr = $("#useTable tr");
var allPrice = 0; var allPrice = 0;
$.each(rowTr, function(i, item) { $.each(initTableChooseUtil.getDataRowIndex('productList'), function (i, item) {
//获取行坐标 // 获取行坐标
var rowNum = $(item).attr("trcusid").replace("tr", ""); var thisRowKey = item;
//获取数量 // 获取数量
var rkNum = parseInt(isNull($("#rkNum" + rowNum).val()) ? "0" : $("#rkNum" + rowNum).val()); var rkNum = parseInt(isNull($("#rkNum" + thisRowKey).val()) ? "0" : $("#rkNum" + thisRowKey).val());
//获取单价 // 获取单价
var unitPrice = parseFloat(isNull($("#unitPrice" + rowNum).val()) ? "0" : $("#unitPrice" + rowNum).val()); var unitPrice = parseFloat(isNull($("#unitPrice" + thisRowKey).val()) ? "0" : $("#unitPrice" + thisRowKey).val());
//获取单价 // 获取单价
var amountOfMoney = parseFloat(isNull($("#amountOfMoney" + rowNum).val()) ? "0" : $("#amountOfMoney" + rowNum).val()); var amountOfMoney = parseFloat(isNull($("#amountOfMoney" + thisRowKey).val()) ? "0" : $("#amountOfMoney" + thisRowKey).val());
if("rkNum" === showTdByEdit){//数量 if ("rkNum" === showTdByEdit) {//数量
//输出金额 // 输出金额
$("#amountOfMoney" + rowNum).val((rkNum * unitPrice).toFixed(2)); $("#amountOfMoney" + thisRowKey).val((rkNum * unitPrice).toFixed(2));
}else if("unitPrice" === showTdByEdit){//单价 } else if ("unitPrice" === showTdByEdit) {//单价
//输出金额 // 输出金额
$("#amountOfMoney" + rowNum).val((rkNum * unitPrice).toFixed(2)); $("#amountOfMoney" + thisRowKey).val((rkNum * unitPrice).toFixed(2));
}else if("amountOfMoney" === showTdByEdit){//金额 } else if ("amountOfMoney" === showTdByEdit) {//金额
//输出单价 // 输出单价
$("#unitPrice" + rowNum).val((amountOfMoney / rkNum).toFixed(2)); $("#unitPrice" + thisRowKey).val((amountOfMoney / rkNum).toFixed(2));
} }
allPrice += parseFloat($("#amountOfMoney" + rowNum).val()); allPrice += parseFloat($("#amountOfMoney" + thisRowKey).val());
}); });
$("#allPrice").html(allPrice.toFixed(2)); $("#allPrice").html(allPrice.toFixed(2));
} }
form.on('submit(formAddBean)', function(data) { form.on('submit(formAddBean)', function(data) {
if(winui.verifyForm(data.elem)) { if(winui.verifyForm(data.elem)) {
//获取已选商品数据 var result = initTableChooseUtil.getDataList('productList');
var rowTr = $("#useTable tr"); if (!result.checkResult) {
if(rowTr.length == 0) {
winui.window.msg('请选择商品.', {icon: 2, time: 2000});
return false;
}
if($("#inDepotId").val() === $("#outDepotId").val()) {
winui.window.msg('调入仓库不能和调出仓库一致.', {icon: 2, time: 2000});
return false; return false;
} }
var tableData = new Array(); var noError = false;
var noError = false; //循环遍历表格数据时,是否有其他错误信息 var tableData = [];
$.each(rowTr, function(i, item) { $.each(result.dataList, function(i, item) {
//获取行编号 //获取行编号
var rowNum = $(item).attr("trcusid").replace("tr", ""); var thisRowKey = item["trcusid"].replace("tr", "");
//表格数量对象 if (parseInt(item.rkNum) == 0) {
var rkNum = $("#rkNum" + rowNum); $("#rkNum" + thisRowKey).addClass("layui-form-danger");
if(parseInt(rkNum.val()) == 0) { $("#rkNum" + thisRowKey).focus();
rkNum.addClass("layui-form-danger");
rkNum.focus();
winui.window.msg('数量不能为0', {icon: 2, time: 2000}); winui.window.msg('数量不能为0', {icon: 2, time: 2000});
noError = true; noError = true;
return false; return false;
} }
//商品对象 //商品对象
var product = allChooseProduct["tr" + rowNum.toString()]; var product = allChooseProduct["tr" + thisRowKey];
if(inTableDataArrayByAssetarId(product.productId, $("#unitId" + rowNum).val(), tableData)) { if (inTableDataArrayByAssetarId(product.productId, item.mUnitId, tableData)) {
winui.window.msg('一张单中不允许出现相同单位的商品信息.', {icon: 2, time: 2000}); winui.window.msg('一张单中不允许出现相同单位的商品信息.', {icon: 2, time: 2000});
noError = true; noError = true;
return false; return false;
} }
var row = { item["materialId"] = product.productId;
depotId: $("#outDepotId").val(), item["depotId"] = $("#depotId").val();
materialId: $("#materialId" + rowNum).val(), item["anotherDepotId"] = $("#inDepotId").val(),
mUnitId: $("#unitId" + rowNum).val(), tableData.push(item);
rkNum: rkNum.val(),
unitPrice: $("#unitPrice" + rowNum).val(),
anotherDepotId: $("#inDepotId").val(),
remark: $("#remark" + rowNum).val()
};
tableData.push(row);
}); });
if(noError) { if (noError) {
return false; return false;
} }
...@@ -175,85 +156,13 @@ layui.config({ ...@@ -175,85 +156,13 @@ layui.config({
} }
return false; return false;
}); });
//判断选中的产品是否也在数组中
function inTableDataArrayByAssetarId(materialId, unitId, array) {
var isIn = false;
$.each(array, function(i, item) {
if(item.mUnitId === unitId && item.materialId === materialId) {
isIn = true;
return false;
}
});
return isIn;
}
//新增行
$("body").on("click", "#addRow", function() {
addRow();
});
//删除行 // 加载商品选择事件
$("body").on("click", "#deleteRow", function() { initChooseProductBtnEnent(form, function(trId, chooseProductMation) {
deleteRow(); // 商品赋值
//计算价格 allChooseProduct[trId] = chooseProductMation;
calculatedTotalPrice(); }, calculatedTotalPrice);
});
//新增行
function addRow() {
var par = {
id: "row" + rowNum.toString(), //checkbox的id
trId: "tr" + rowNum.toString(), //行的id
materialId: "materialId" + rowNum.toString(), //产品id
unitId: "unitId" + rowNum.toString(), //规格id
currentTock: "currentTock" + rowNum.toString(), //库存id
rkNum: "rkNum" + rowNum.toString(), //数量id
unitPrice: "unitPrice" + rowNum.toString(), //单价id
amountOfMoney: "amountOfMoney" + rowNum.toString(), //金额id
remark: "remark" + rowNum.toString() //备注id
};
$("#useTable").append(getDataUseHandlebars(usetableTemplate, par));
form.render();
rowNum++;
//设置根据某列变化的颜色
$("." + showTdByEdit).parent().css({'background-color': '#e6e6e6'});
}
//删除行
function deleteRow() {
var checkRow = $("#useTable input[type='checkbox'][name='tableCheckRow']:checked");
if(checkRow.length > 0) {
$.each(checkRow, function(i, item) {
//删除allChooseProduct已选择的商品信息
var trId = $(item).parent().parent().attr("trcusid");
allChooseProduct[trId] = undefined;
//移除界面上的信息
$(item).parent().parent().remove();
});
} else {
winui.window.msg('请选择要删除的行', {icon: 2, time: 2000});
}
}
//商品选择
$("body").on("click", ".chooseProductBtn", function (e) {
var trId = $(this).parent().parent().attr("trcusid");
erpOrderUtil.openMaterialChooseChoosePage(function (chooseProductMation) {
//获取表格行号
var thisRowNum = trId.replace("tr", "");
//商品赋值
allChooseProduct[trId] = chooseProductMation;
//表格商品名称赋值
$("#materialId" + thisRowNum.toString()).val(allChooseProduct[trId].productName + "(" + allChooseProduct[trId].productModel + ")");
//表格单位赋值
$("#unitId" + thisRowNum.toString()).html(getDataUseHandlebars(selOption, {rows: allChooseProduct[trId].unitList}));
form.render('select');
//计算价格
calculatedTotalPrice();
});
});
$("body").on("click", "#cancle", function() { $("body").on("click", "#cancle", function() {
parent.layer.close(index); parent.layer.close(index);
}); });
......
...@@ -12,15 +12,13 @@ layui.config({ ...@@ -12,15 +12,13 @@ layui.config({
var $ = layui.$, var $ = layui.$,
laydate = layui.laydate, laydate = layui.laydate,
textool = layui.textool; textool = layui.textool;
var rowNum = 1; //表格的序号
var usetableTemplate = $("#usetableTemplate").html();
var beanTemplate = $("#beanTemplate").html(); var beanTemplate = $("#beanTemplate").html();
var selOption = getFileContent('tpl/template/select-option.tpl'); var selOption = getFileContent('tpl/template/select-option.tpl');
//已经选择的商品集合key:表格的行trId,value:商品信息 // 已经选择的商品集合key:表格的行trId,value:商品信息
var allChooseProduct = {}; var allChooseProduct = {};
//加载单据数据 // 加载单据数据
var orderObject = []; var orderObject = [];
showGrid({ showGrid({
id: "showForm", id: "showForm",
...@@ -39,72 +37,79 @@ layui.config({ ...@@ -39,72 +37,79 @@ layui.config({
// 初始化仓库 // 初始化仓库
function initDepotHtml() { function initDepotHtml() {
erpOrderUtil.getDepotList(function (json){ erpOrderUtil.getDepotList(function (json){
// 加载仓库数据
$("#inDepotId").html(getDataUseHandlebars(selOption, json)); $("#inDepotId").html(getDataUseHandlebars(selOption, json));
$("#outDepotId").html(getDataUseHandlebars(selOption, json)); $("#depotId").html(getDataUseHandlebars(selOption, json));
// 渲染数据到页面
initDataToShow();
}); });
// 渲染数据到页面
initDataToShow();
} }
//渲染数据到页面 // 渲染数据到页面
function initDataToShow(){ function initDataToShow(){
//渲染列表项 initTable();
$.each(orderObject.bean.items, function(i, item){
addRow(); // 回显商品列表
if(i == 0){ initTableChooseUtil.deleteAllRow('productList');
$("#outDepotId").val(item.depotId); $.each(orderObject.bean.items, function(i, item) {
if (i == 0) {
$("#depotId").val(item.depotId);
$("#inDepotId").val(item.anotherDepotId); $("#inDepotId").val(item.anotherDepotId);
} }
//将规格所属的商品信息加入到对象中存储 var params = {
allChooseProduct["tr" + (rowNum - 1)] = item.product; "materialType": {
//单位回显 "value": item.mType
$("#unitId" + (rowNum - 1)).html(getDataUseHandlebars(selOption, {rows: item.product.unitList})); },
$("#unitId" + (rowNum - 1)).val(item.mUnitId); "materialId": item.product.productName + "(" + item.product.productModel + ")",
$("#materialTypeId" + (rowNum - 1)).val(item.mType);//产品类型回显 "mUnitId": {
//产品回显 "html": getDataUseHandlebars(selOption, {rows: item.product.unitList}),
$("#materialId" + (rowNum - 1)).val(item.product.productName + "(" + item.product.productModel + ")"); "value": item.mUnitId
$("#currentTock" + (rowNum - 1)).html(item.currentTock);//库存回显 },
$("#rkNum" + (rowNum - 1)).val(item.operNum);//数量回显 "currentTock": item.currentTock,
$("#unitPrice" + (rowNum - 1)).val(item.unitPrice.toFixed(2));//单价回显 "rkNum": item.operNum,
$("#amountOfMoney" + (rowNum - 1)).val(item.allPrice.toFixed(2));//金额回显 "unitPrice": item.unitPrice.toFixed(2),
$("#remark" + (rowNum - 1)).val(item.remark);//备注回显 "amountOfMoney": item.allPrice.toFixed(2),
//设置标识 "remark": item.remark
$("tr[trcusid='tr" + (rowNum - 1) + "']").attr("thisid", item.id); };
var trcusid = initTableChooseUtil.resetData('productList', params);
// 将规格所属的商品信息加入到对象中存储
allChooseProduct[trcusid] = item.product;
}); });
textool.init({eleId: 'remark', maxlength: 200}); textool.init({eleId: 'remark', maxlength: 200});
matchingLanguage(); matchingLanguage();
form.render(); form.render();
} }
//产品规格加载变化事件 function initTable() {
form.on('select(selectUnitProperty)', function(data) { // 商品
var thisRowValue = data.value; initTableChooseUtil.initTable({
var thisRowNum = data.elem.id.replace("unitId", "");//获取当前行 id: "productList",
//当前当前行选中的商品信息 cols: [
if(!isNull(thisRowValue) && thisRowValue != '请选择') { {id: 'materialId', title: '商品(型号)', formType: 'chooseInput', width: '150', iconClassName: 'chooseProductBtn', verify: 'required'},
var product = allChooseProduct["tr" + thisRowNum.toString()]; {id: 'mUnitId', title: '单位', formType: 'select', width: '50', verify: 'required', layFilter: 'selectUnitProperty'},
$.each(product.unitList, function(j, bean) { {id: 'currentTock', title: '库存(调出仓库)', formType: 'detail', width: '80'},
if(thisRowValue == bean.id){//获取规格 {id: 'rkNum', title: '数量', formType: 'input', width: '80', className: 'change-input rkNum', verify: 'required|number', value: '1'},
//获取当前行数量 {id: 'unitPrice', title: '单价', formType: 'input', width: '80', className: 'change-input unitPrice', verify: 'required|money'},
var rkNum = parseInt($("#rkNum" + thisRowNum).val()); {id: 'amountOfMoney', title: '金额', formType: 'input', width: '80', className: 'change-input amountOfMoney', verify: 'required|money'},
$("#unitPrice" + thisRowNum).val(bean.estimatePurchasePrice.toFixed(2));//单价 {id: 'remark', title: '备注', formType: 'input', width: '100'}
$("#amountOfMoney" + thisRowNum).val((rkNum * parseFloat(bean.estimatePurchasePrice)).toFixed(2));//金额 ],
return false; deleteRowCallback: function (trcusid) {
} delete allChooseProduct[trcusid];
}); // 计算价格
} else { calculatedTotalPrice();
$("#unitPrice" + thisRowNum).val("0.00");//重置单价为空 },
$("#amountOfMoney" + thisRowNum).val("0.00");//重置金额为空 addRowCallback: function (trcusid) {
} // 设置根据某列变化的颜色
$("." + showTdByEdit).parent().css({'background-color': '#e6e6e6'});
//加载库存 },
loadTockByDepotAndMUnit(thisRowNum, $("#outDepotId").val()); form: form,
//计算价格 minData: 1
calculatedTotalPrice(); });
}); }
// 商品规格加载变化事件
mUnitChangeEvent(form, allChooseProduct, "estimatePurchasePrice", calculatedTotalPrice);
// 调出仓库变化事件 // 调出仓库变化事件
form.on('select(depotId)', function(data) { form.on('select(depotId)', function(data) {
...@@ -129,81 +134,65 @@ layui.config({ ...@@ -129,81 +134,65 @@ layui.config({
} }
calculatedTotalPrice(); calculatedTotalPrice();
}); });
//计算总价 // 计算总价
function calculatedTotalPrice(){ function calculatedTotalPrice() {
var rowTr = $("#useTable tr");
var allPrice = 0; var allPrice = 0;
$.each(rowTr, function(i, item) { $.each(initTableChooseUtil.getDataRowIndex('productList'), function (i, item) {
//获取行坐标 // 获取行坐标
var rowNum = $(item).attr("trcusid").replace("tr", ""); var thisRowKey = item;
//获取数量 // 获取数量
var rkNum = parseInt(isNull($("#rkNum" + rowNum).val()) ? "0" : $("#rkNum" + rowNum).val()); var rkNum = parseInt(isNull($("#rkNum" + thisRowKey).val()) ? "0" : $("#rkNum" + thisRowKey).val());
//获取单价 // 获取单价
var unitPrice = parseFloat(isNull($("#unitPrice" + rowNum).val()) ? "0" : $("#unitPrice" + rowNum).val()); var unitPrice = parseFloat(isNull($("#unitPrice" + thisRowKey).val()) ? "0" : $("#unitPrice" + thisRowKey).val());
//获取单价 // 获取单价
var amountOfMoney = parseFloat(isNull($("#amountOfMoney" + rowNum).val()) ? "0" : $("#amountOfMoney" + rowNum).val()); var amountOfMoney = parseFloat(isNull($("#amountOfMoney" + thisRowKey).val()) ? "0" : $("#amountOfMoney" + thisRowKey).val());
if("rkNum" === showTdByEdit){//数量 if ("rkNum" === showTdByEdit) {//数量
//输出金额 // 输出金额
$("#amountOfMoney" + rowNum).val((rkNum * unitPrice).toFixed(2)); $("#amountOfMoney" + thisRowKey).val((rkNum * unitPrice).toFixed(2));
}else if("unitPrice" === showTdByEdit){//单价 } else if ("unitPrice" === showTdByEdit) {//单价
//输出金额 // 输出金额
$("#amountOfMoney" + rowNum).val((rkNum * unitPrice).toFixed(2)); $("#amountOfMoney" + thisRowKey).val((rkNum * unitPrice).toFixed(2));
}else if("amountOfMoney" === showTdByEdit){//金额 } else if ("amountOfMoney" === showTdByEdit) {//金额
//输出单价 // 输出单价
$("#unitPrice" + rowNum).val((amountOfMoney / rkNum).toFixed(2)); $("#unitPrice" + thisRowKey).val((amountOfMoney / rkNum).toFixed(2));
} }
allPrice += parseFloat($("#amountOfMoney" + rowNum).val()); allPrice += parseFloat($("#amountOfMoney" + thisRowKey).val());
}); });
$("#allPrice").html(allPrice.toFixed(2)); $("#allPrice").html(allPrice.toFixed(2));
} }
form.on('submit(formEditBean)', function(data) { form.on('submit(formEditBean)', function(data) {
if(winui.verifyForm(data.elem)) { if(winui.verifyForm(data.elem)) {
//获取已选商品数据 var result = initTableChooseUtil.getDataList('productList');
var rowTr = $("#useTable tr"); if (!result.checkResult) {
if(rowTr.length == 0) {
winui.window.msg('请选择商品.', {icon: 2, time: 2000});
return false; return false;
} }
if($("#inDepotId").val() === $("#outDepotId").val()) { var noError = false;
winui.window.msg('调入仓库不能和调出仓库一致.', {icon: 2, time: 2000}); var tableData = [];
return false; $.each(result.dataList, function(i, item) {
}
var tableData = new Array();
var noError = false; //循环遍历表格数据时,是否有其他错误信息
$.each(rowTr, function(i, item) {
//获取行编号 //获取行编号
var rowNum = $(item).attr("trcusid").replace("tr", ""); var thisRowKey = item["trcusid"].replace("tr", "");
//表格数量对象 if (parseInt(item.rkNum) == 0) {
var rkNum = $("#rkNum" + rowNum); $("#rkNum" + thisRowKey).addClass("layui-form-danger");
if(parseInt(rkNum.val()) == 0) { $("#rkNum" + thisRowKey).focus();
rkNum.addClass("layui-form-danger");
rkNum.focus();
winui.window.msg('数量不能为0', {icon: 2, time: 2000}); winui.window.msg('数量不能为0', {icon: 2, time: 2000});
noError = true; noError = true;
return false; return false;
} }
//商品对象 //商品对象
var product = allChooseProduct["tr" + rowNum.toString()]; var product = allChooseProduct["tr" + thisRowKey];
if(inTableDataArrayByAssetarId(product.productId, $("#unitId" + rowNum).val(), tableData)) { if (inTableDataArrayByAssetarId(product.productId, item.mUnitId, tableData)) {
winui.window.msg('一张单中不允许出现相同单位的商品信息.', {icon: 2, time: 2000}); winui.window.msg('一张单中不允许出现相同单位的商品信息.', {icon: 2, time: 2000});
noError = true; noError = true;
return false; return false;
} }
var row = { item["materialId"] = product.productId;
depotId: $("#outDepotId").val(), item["depotId"] = $("#depotId").val();
materialId: $("#materialId" + rowNum).val(), item["anotherDepotId"] = $("#inDepotId").val(),
mUnitId: $("#unitId" + rowNum).val(), tableData.push(item);
rkNum: rkNum.val(),
unitPrice: $("#unitPrice" + rowNum).val(),
anotherDepotId: $("#inDepotId").val(),
thisId: isNull($(item).attr("thisid")) ? "" : $(item).attr("thisid"),
remark: $("#remark" + rowNum).val()
};
tableData.push(row);
}); });
if(noError) { if (noError) {
return false; return false;
} }
...@@ -220,84 +209,12 @@ layui.config({ ...@@ -220,84 +209,12 @@ layui.config({
} }
return false; return false;
}); });
//判断选中的产品是否也在数组中
function inTableDataArrayByAssetarId(materialId, unitId, array) {
var isIn = false;
$.each(array, function(i, item) {
if(item.mUnitId === unitId && item.materialId === materialId) {
isIn = true;
return false;
}
});
return isIn;
}
//新增行
$("body").on("click", "#addRow", function() {
addRow();
});
//删除行 // 加载商品选择事件
$("body").on("click", "#deleteRow", function() { initChooseProductBtnEnent(form, function(trId, chooseProductMation) {
deleteRow(); // 商品赋值
//计算价格 allChooseProduct[trId] = chooseProductMation;
calculatedTotalPrice(); }, calculatedTotalPrice);
});
//新增行
function addRow() {
var par = {
id: "row" + rowNum.toString(), //checkbox的id
trId: "tr" + rowNum.toString(), //行的id
materialId: "materialId" + rowNum.toString(), //产品id
unitId: "unitId" + rowNum.toString(), //规格id
currentTock: "currentTock" + rowNum.toString(), //库存id
rkNum: "rkNum" + rowNum.toString(), //数量id
unitPrice: "unitPrice" + rowNum.toString(), //单价id
amountOfMoney: "amountOfMoney" + rowNum.toString(), //金额id
remark: "remark" + rowNum.toString() //备注id
};
$("#useTable").append(getDataUseHandlebars(usetableTemplate, par));
form.render();
rowNum++;
//设置根据某列变化的颜色
$("." + showTdByEdit).parent().css({'background-color': '#e6e6e6'});
}
//删除行
function deleteRow() {
var checkRow = $("#useTable input[type='checkbox'][name='tableCheckRow']:checked");
if(checkRow.length > 0) {
$.each(checkRow, function(i, item) {
//删除allChooseProduct已选择的商品信息
var trId = $(item).parent().parent().attr("trcusid");
allChooseProduct[trId] = undefined;
//移除界面上的信息
$(item).parent().parent().remove();
});
} else {
winui.window.msg('请选择要删除的行', {icon: 2, time: 2000});
}
}
//商品选择
$("body").on("click", ".chooseProductBtn", function (e) {
var trId = $(this).parent().parent().attr("trcusid");
erpOrderUtil.openMaterialChooseChoosePage(function (chooseProductMation) {
//获取表格行号
var thisRowNum = trId.replace("tr", "");
//商品赋值
allChooseProduct[trId] = chooseProductMation;
//表格商品名称赋值
$("#materialId" + thisRowNum.toString()).val(allChooseProduct[trId].productName + "(" + allChooseProduct[trId].productModel + ")");
//表格单位赋值
$("#unitId" + thisRowNum.toString()).html(getDataUseHandlebars(selOption, {rows: allChooseProduct[trId].unitList}));
form.render('select');
//计算价格
calculatedTotalPrice();
});
});
$("body").on("click", "#cancle", function() { $("body").on("click", "#cancle", function() {
parent.layer.close(index); parent.layer.close(index);
......
...@@ -18,7 +18,7 @@ ...@@ -18,7 +18,7 @@
<div class="layui-form-item layui-col-xs6"> <div class="layui-form-item layui-col-xs6">
<label class="layui-form-label">调出仓库<i class="red">*</i></label> <label class="layui-form-label">调出仓库<i class="red">*</i></label>
<div class="layui-input-block"> <div class="layui-input-block">
<select id="outDepotId" name="outDepotId" lay-search="" win-verify="required" lay-filter="depotId"> <select id="depotId" name="depotId" lay-search="" win-verify="required" lay-filter="depotId">
</select> </select>
</div> </div>
...@@ -33,29 +33,8 @@ ...@@ -33,29 +33,8 @@
</div> </div>
<div class="layui-form-item layui-col-xs12"> <div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">列表项<i class="red">*</i></label> <label class="layui-form-label">列表项<i class="red">*</i></label>
<div class="layui-input-block"> <div class="layui-input-block" id="productList">
<div class="winui-toolbar">
<div class="winui-tool" style="text-align: left;">
<button id="addRow" class="winui-toolbtn" type="button"><i class="fa fa-plus" aria-hidden="true"></i>新增行</button>
<button id="deleteRow" class="winui-toolbtn" type="button"><i class="fa fa-trash-o" aria-hidden="true"></i>删除行</button>
</div>
</div>
<table class="layui-table">
<thead>
<tr>
<th style="width: 30px;"></th>
<th style="width: 150px;">商品(型号)</th>
<th style="width: 50px;">单位</th>
<th style="width: 80px;">库存(调出仓库)</th>
<th style="width: 80px;">数量</th>
<th style="width: 80px;">单价</th>
<th style="width: 80px;">金额</th>
<th style="min-width: 100px;">备注</th>
</tr>
</thead>
<tbody id="useTable" class="insurance-table">
</tbody>
</table>
</div> </div>
</div> </div>
<div class="layui-form-item layui-col-xs4"> <div class="layui-form-item layui-col-xs4">
...@@ -79,23 +58,6 @@ ...@@ -79,23 +58,6 @@
</form> </form>
</div> </div>
<!-- usetableTemplate -->
<script type="text/x-handlebars-template" id="usetableTemplate">
<tr trcusid="{{trId}}">
<td><input type="checkbox" rowId="{{id}}" lay-filter="checkboxProperty" name="tableCheckRow"/></td>
<td>
<input type="text" id="{{materialId}}" name="{{materialId}}" placeholder="请选择商品" class="layui-input" readonly="readonly"/>
<i class="fa fa-plus-circle input-icon chooseProductBtn" style="top: 12px;"></i>
</td>
<td><select id="{{unitId}}" lay-filter="selectUnitProperty" lay-search win-verify="required"></select></td>
<td id="{{currentTock}}"></td>
<td><input type="text" class="layui-input change-input rkNum" value="1" id="{{rkNum}}" win-verify="required|number"/></td>
<td><input type="text" class="layui-input change-input unitPrice" id="{{unitPrice}}" win-verify="required|money"/></td>
<td><input type="text" class="layui-input change-input amountOfMoney" id="{{amountOfMoney}}" win-verify="required|money"/></td>
<td><input type="text" class="layui-input" id="{{remark}}"/></td>
</tr>
</script>
<script src="../../assets/lib/layui/layui.js"></script> <script src="../../assets/lib/layui/layui.js"></script>
<script src="../../assets/lib/layui/custom.js"></script> <script src="../../assets/lib/layui/custom.js"></script>
<script src="../../js/erpcommon/loadStock.js"></script> <script src="../../js/erpcommon/loadStock.js"></script>
......
...@@ -13,23 +13,6 @@ ...@@ -13,23 +13,6 @@
</form> </form>
</div> </div>
<!-- usetableTemplate -->
<script type="text/x-handlebars-template" id="usetableTemplate">
<tr trcusid="{{trId}}">
<td><input type="checkbox" rowId="{{id}}" lay-filter="checkboxProperty" name="tableCheckRow"/></td>
<td>
<input type="text" id="{{materialId}}" name="{{materialId}}" placeholder="请选择商品" class="layui-input" readonly="readonly"/>
<i class="fa fa-plus-circle input-icon chooseProductBtn" style="top: 12px;"></i>
</td>
<td><select id="{{unitId}}" lay-filter="selectUnitProperty" lay-search win-verify="required"></select></td>
<td id="{{currentTock}}"></td>
<td><input type="text" class="layui-input change-input rkNum" value="1" id="{{rkNum}}" win-verify="required|number"/></td>
<td><input type="text" class="layui-input change-input unitPrice" id="{{unitPrice}}" win-verify="required|money"/></td>
<td><input type="text" class="layui-input change-input amountOfMoney" id="{{amountOfMoney}}" win-verify="required|money"/></td>
<td><input type="text" class="layui-input" id="{{remark}}"/></td>
</tr>
</script>
<!-- beanTemplate --> <!-- beanTemplate -->
<script type="text/x-handlebars-template" id="beanTemplate"> <script type="text/x-handlebars-template" id="beanTemplate">
{{#bean}} {{#bean}}
...@@ -42,7 +25,7 @@ ...@@ -42,7 +25,7 @@
<div class="layui-form-item layui-col-xs6"> <div class="layui-form-item layui-col-xs6">
<label class="layui-form-label">调出仓库<i class="red">*</i></label> <label class="layui-form-label">调出仓库<i class="red">*</i></label>
<div class="layui-input-block"> <div class="layui-input-block">
<select id="outDepotId" name="outDepotId" lay-search="" win-verify="required" lay-filter="depotId"> <select id="depotId" name="depotId" lay-search="" win-verify="required" lay-filter="depotId">
</select> </select>
</div> </div>
...@@ -57,29 +40,8 @@ ...@@ -57,29 +40,8 @@
</div> </div>
<div class="layui-form-item layui-col-xs12"> <div class="layui-form-item layui-col-xs12">
<label class="layui-form-label">列表项<i class="red">*</i></label> <label class="layui-form-label">列表项<i class="red">*</i></label>
<div class="layui-input-block"> <div class="layui-input-block" id="productList">
<div class="winui-toolbar">
<div class="winui-tool" style="text-align: left;">
<button id="addRow" class="winui-toolbtn" type="button"><i class="fa fa-plus" aria-hidden="true"></i>新增行</button>
<button id="deleteRow" class="winui-toolbtn" type="button"><i class="fa fa-trash-o" aria-hidden="true"></i>删除行</button>
</div>
</div>
<table class="layui-table">
<thead>
<tr>
<th style="width: 30px;"></th>
<th style="width: 150px;">商品(型号)</th>
<th style="width: 50px;">单位</th>
<th style="width: 80px;">库存(调出仓库)</th>
<th style="width: 80px;">数量</th>
<th style="width: 80px;">单价</th>
<th style="width: 80px;">金额</th>
<th style="min-width: 100px;">备注</th>
</tr>
</thead>
<tbody id="useTable" class="insurance-table">
</tbody>
</table>
</div> </div>
</div> </div>
<div class="layui-form-item layui-col-xs4"> <div class="layui-form-item layui-col-xs4">
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册