From d9290250eb43bc4e30e81ab047dbfa4858c9672e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=A3=E5=9C=A3=E5=8D=8E?= <752718920@qq.com> Date: Wed, 23 Dec 2020 23:53:21 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=8F=98=E5=8D=95=E6=8D=AE=E6=98=8E?= =?UTF-8?q?=E7=BB=86=E7=9A=84=E5=B1=95=E7=A4=BA=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- erp_web/js/pages/bill/in_out.js | 103 ++++++++++++++----- erp_web/pages/bill/allocation_out_list.html | 7 +- erp_web/pages/bill/assemble_list.html | 7 +- erp_web/pages/bill/disassemble_list.html | 7 +- erp_web/pages/bill/other_in_list.html | 7 +- erp_web/pages/bill/other_out_list.html | 7 +- erp_web/pages/bill/purchase_back_list.html | 7 +- erp_web/pages/bill/purchase_in_list.html | 7 +- erp_web/pages/bill/purchase_orders_list.html | 7 +- erp_web/pages/bill/retail_back_list.html | 7 +- erp_web/pages/bill/retail_out_list.html | 7 +- erp_web/pages/bill/sale_back_list.html | 7 +- erp_web/pages/bill/sale_orders_list.html | 7 +- erp_web/pages/bill/sale_out_list.html | 7 +- 14 files changed, 89 insertions(+), 105 deletions(-) diff --git a/erp_web/js/pages/bill/in_out.js b/erp_web/js/pages/bill/in_out.js index 318d408c..d46e4245 100644 --- a/erp_web/js/pages/bill/in_out.js +++ b/erp_web/js/pages/bill/in_out.js @@ -332,22 +332,24 @@ return materialExtendId; }, //优惠率、合计的统计方法 - statisticsFun: function (body,UnitPrice,OperNumber,footer,taxRate) { + statisticsFun: function (body,UnitPrice,TaxUnitPrice,OperNumber,footer,taxRate) { var TotalPrice = 0; var taxLastMoneyTotal = 0; //金额的合计 body.find("[field='AllPrice']").each(function(){ - if($(this).find("input").val()!==""){ - TotalPrice = TotalPrice + parseFloat($(this).find("input").val().toString()); + if($(this).find("div").text()!==""){ + TotalPrice = TotalPrice + parseFloat($(this).find("div").text().toString()); } }); + TotalPrice = TotalPrice + UnitPrice*OperNumber; footer.find("[field='AllPrice']").find("div").text((TotalPrice).toFixed(2)); //金额的合计 //价税合计的总计 body.find("[field='TaxLastMoney']").each(function(){ - if($(this).find("input").val()!==""){ - taxLastMoneyTotal = taxLastMoneyTotal + (parseFloat($(this).find("input").val().toString())-0); + if($(this).find("div").text()!==""){ + taxLastMoneyTotal = taxLastMoneyTotal + (parseFloat($(this).find("div").text().toString())-0); } }); + taxLastMoneyTotal = taxLastMoneyTotal + (TaxUnitPrice*OperNumber); footer.find("[field='TaxLastMoney']").find("div").text((taxLastMoneyTotal).toFixed(2)); //价税合计的页脚总计 var discount = $("#Discount").val(); //优惠率 var discountMoney = (taxLastMoneyTotal*discount/100).toFixed(2); @@ -1092,7 +1094,7 @@ $(this).closest(".datagrid-cell").click(); //点击操作 var row = $('#materialData').datagrid('getChecked'); $('#materialData').datagrid('deleteRow', $('#materialData').datagrid("getRowIndex", row[0])); - self.statisticsFun(body,0,0,footer,0); + self.statisticsFun(body,0,0,0,footer,0); }); //修改数量,自动计算金额和合计,另外计算含税单价、税额、价税合计 body.find("[field='OperNumber']").find(input).off("keyup").on("keyup",function(){ @@ -1103,9 +1105,10 @@ var OperNumber =$(this).val()-0; //数量 rowDom.find("[field='AllPrice']").find(input).val((UnitPrice*OperNumber).toFixed(2)); //金额 rowDom.find("[field='TaxUnitPrice']").find(input).val((UnitPrice*(1+taxRate/100)).toFixed(2)); //含税单价 + var TaxUnitPrice = rowDom.find("[field='TaxUnitPrice']").find(input).val()-0; //含税单价 rowDom.find("[field='TaxMoney']").find(input).val((UnitPrice*OperNumber*(taxRate/100)).toFixed(2)); //税额 rowDom.find("[field='TaxLastMoney']").find(input).val((UnitPrice*OperNumber*(1+taxRate/100)).toFixed(2)); //价税合计 - self.statisticsFun(body,UnitPrice,OperNumber,footer,taxRate); + self.statisticsFun(body,UnitPrice,TaxUnitPrice,OperNumber,footer,taxRate); }); //修改单价,自动计算金额和合计 body.find("[field='UnitPrice']").find(input).off("keyup").on("keyup",function(){ @@ -1116,9 +1119,10 @@ var OperNumber = rowDom.find("[field='OperNumber']").find(input).val(); //数量 rowDom.find("[field='AllPrice']").find(input).val((UnitPrice*OperNumber).toFixed(2)); //金额 rowDom.find("[field='TaxUnitPrice']").find(input).val((UnitPrice*(1+taxRate/100)).toFixed(2)); //含税单价 + var TaxUnitPrice = rowDom.find("[field='TaxUnitPrice']").find(input).val()-0; //含税单价 rowDom.find("[field='TaxMoney']").find(input).val((UnitPrice*OperNumber*(taxRate/100)).toFixed(2)); //税额 rowDom.find("[field='TaxLastMoney']").find(input).val((UnitPrice*OperNumber*(1+taxRate/100)).toFixed(2)); //价税合计 - self.statisticsFun(body,UnitPrice,OperNumber,footer,taxRate); + self.statisticsFun(body,UnitPrice,TaxUnitPrice,OperNumber,footer,taxRate); }); //修改含税单价,自动计算单价、金额、税额、价税合计和合计 body.find("[field='TaxUnitPrice']").find(input).off("keyup").on("keyup",function(){ @@ -1132,7 +1136,7 @@ rowDom.find("[field='AllPrice']").find(input).val((UnitPrice*OperNumber).toFixed(2)); //金额 rowDom.find("[field='TaxMoney']").find(input).val((UnitPrice*OperNumber*(taxRate/100)).toFixed(2)); //税额 rowDom.find("[field='TaxLastMoney']").find(input).val((UnitPrice*OperNumber*(1+taxRate/100)).toFixed(2)); //价税合计 - self.statisticsFun(body,UnitPrice,OperNumber,footer,taxRate); + self.statisticsFun(body,UnitPrice,TaxUnitPrice,OperNumber,footer,taxRate); }); //修改金额,自动计算单价、税额、价税合计和合计 body.find("[field='AllPrice']").find(input).off("keyup").on("keyup",function(){ @@ -1144,9 +1148,10 @@ var UnitPrice = (AllPrice/OperNumber).toFixed(2); rowDom.find("[field='UnitPrice']").find(input).val(UnitPrice); //单价 rowDom.find("[field='TaxUnitPrice']").find(input).val((UnitPrice*(1+taxRate/100)).toFixed(2)); //含税单价 + var TaxUnitPrice = rowDom.find("[field='TaxUnitPrice']").find(input).val()-0; //含税单价 rowDom.find("[field='TaxMoney']").find(input).val((UnitPrice*OperNumber*(taxRate/100)).toFixed(2)); //税额 rowDom.find("[field='TaxLastMoney']").find(input).val((UnitPrice*OperNumber*(1+taxRate/100)).toFixed(2)); //价税合计 - self.statisticsFun(body,UnitPrice,OperNumber,footer,taxRate); + self.statisticsFun(body,UnitPrice,TaxUnitPrice,OperNumber,footer,taxRate); }); //修改税率,自动计算含税单价、税额、价税合计和合计 body.find("[field='TaxRate']").find(input).off("keyup").on("keyup",function(){ @@ -1156,9 +1161,10 @@ var OperNumber = rowDom.find("[field='OperNumber']").find(input).val(); //数量 var UnitPrice = rowDom.find("[field='UnitPrice']").find(input).val(); //单价 rowDom.find("[field='TaxUnitPrice']").find(input).val((UnitPrice*(1+taxRate/100)).toFixed(2)); //含税单价 + var TaxUnitPrice = rowDom.find("[field='TaxUnitPrice']").find(input).val()-0; //含税单价 rowDom.find("[field='TaxMoney']").find(input).val((UnitPrice*OperNumber*(taxRate/100)).toFixed(2)); //税额 rowDom.find("[field='TaxLastMoney']").find(input).val((UnitPrice*OperNumber*(1+taxRate/100)).toFixed(2)); //价税合计 - self.statisticsFun(body,UnitPrice,OperNumber,footer,taxRate); + self.statisticsFun(body,UnitPrice,TaxUnitPrice,OperNumber,footer,taxRate); }); //修改税额,自动计算税率、含税单价、价税合计和合计 body.find("[field='TaxMoney']").find(input).off("keyup").on("keyup",function(){ @@ -1170,9 +1176,10 @@ var OperNumber = rowDom.find("[field='OperNumber']").find(input).val(); //数量 var UnitPrice = rowDom.find("[field='UnitPrice']").find(input).val(); //单价 rowDom.find("[field='TaxUnitPrice']").find(input).val((UnitPrice*(1+taxRate/100)).toFixed(2)); //含税单价 + var TaxUnitPrice = rowDom.find("[field='TaxUnitPrice']").find(input).val()-0; //含税单价 rowDom.find("[field='TaxRate']").find(input).val((taxRate).toFixed(2)); //税率 rowDom.find("[field='TaxLastMoney']").find(input).val((UnitPrice*OperNumber*(1+taxRate/100)).toFixed(2)); //价税合计 - self.statisticsFun(body,UnitPrice,OperNumber,footer,taxRate); + self.statisticsFun(body,UnitPrice,TaxUnitPrice,OperNumber,footer,taxRate); }); //修改价税合计,自动计算税率、含税单价、税额和合计 body.find("[field='TaxLastMoney']").find(input).off("keyup").on("keyup",function(){ @@ -1184,9 +1191,10 @@ var OperNumber = rowDom.find("[field='OperNumber']").find(input).val(); //数量 var UnitPrice = rowDom.find("[field='UnitPrice']").find(input).val(); //单价 rowDom.find("[field='TaxUnitPrice']").find(input).val((UnitPrice*(1+taxRate/100)).toFixed(2)); //含税单价 + var TaxUnitPrice = rowDom.find("[field='TaxUnitPrice']").find(input).val()-0; //含税单价 rowDom.find("[field='TaxRate']").find(input).val((taxRate).toFixed(2)); //税率 rowDom.find("[field='TaxMoney']").find(input).val((UnitPrice*OperNumber*(taxRate/100)).toFixed(2)); //税额 - self.statisticsFun(body,UnitPrice,OperNumber,footer,taxRate); + self.statisticsFun(body,UnitPrice,TaxUnitPrice,OperNumber,footer,taxRate); }); setTimeout(function(){ var body =$("#depotHeadFM .datagrid-view2 .datagrid-body"); @@ -1208,12 +1216,59 @@ } },100); }, + onClickCell: function(index, field) { + if (editIndex != index) { + if (inOutService.endEditing()) { + if(field == "op") { + $(this).datagrid('deleteRow', index); + var body =$("#depotHeadFM .datagrid-view2 .datagrid-body"); + var footer =$("#depotHeadFM .datagrid-view2 .datagrid-footer"); + inOutService.statisticsFun(body,0,0,0,footer,0); + } else { + $(this).datagrid('beginEdit', index); + var ed = $(this).datagrid('getEditor', {index: index, field: field}); + if(ed){ + $(ed.target).select(); + } + editIndex = index; + inOutService.autoReckon(); + } + } else { + $(this).datagrid('selectRow', editIndex); + } + } + }, //新增明细 append: function () { - $('#materialData').datagrid('appendRow', {DepotId:defDepotId}); - editIndex = $('#materialData').datagrid('getRows').length - 1; - $('#materialData').datagrid('selectRow', editIndex).datagrid('beginEdit', editIndex); - this.autoReckon(); + if (this.endEditing()) { + $('#materialData').datagrid('appendRow', {DepotId: defDepotId}); + editIndex = $('#materialData').datagrid('getRows').length - 1; + $('#materialData').datagrid('selectRow', editIndex).datagrid('beginEdit', editIndex); + this.autoReckon(); + } + }, + //结束编辑 + endEditing: function(){ + if (editIndex == undefined) { return true } + if ($('#materialData').datagrid('validateRow', editIndex)) { + //仓库信息 + var edDepot = $('#materialData').datagrid('getEditor', {index:editIndex,field:'DepotId'}); + if(edDepot) { + var DepotName = $(edDepot.target).combobox('getText'); + $('#materialData').datagrid('getRows')[editIndex]['DepotName'] = DepotName; + } + //调入仓库 + var edAnotherDepot = $('#materialData').datagrid('getEditor', {index:editIndex,field:'AnotherDepotId'}); + if(edAnotherDepot) { + var AnotherDepotName = $(edAnotherDepot.target).combobox('getText'); + $('#materialData').datagrid('getRows')[editIndex]['AnotherDepotName'] = AnotherDepotName; + } + $('#materialData').datagrid('endEdit', editIndex); + editIndex = undefined; + return true; + } else { + return false; + } }, //新增仓库 appendDepot: function () { @@ -1472,9 +1527,10 @@ currentRowDom.find("[field='AllPrice']").find(input).val(detailPrice); var taxRate = currentRowDom.find("[field='TaxRate']").find(input).val()-0; //获取税率 currentRowDom.find("[field='TaxUnitPrice']").find(input).val((detailPrice*(1+taxRate/100)).toFixed(2)); //含税单价 + var TaxUnitPrice = currentRowDom.find("[field='TaxUnitPrice']").find(input).val()-0; //含税单价 currentRowDom.find("[field='TaxMoney']").find(input).val((detailPrice*(taxRate/100)).toFixed(2)); //税额 currentRowDom.find("[field='TaxLastMoney']").find(input).val((detailPrice*(1+taxRate/100)).toFixed(2)); //价税合计 - self.statisticsFun(body,detailPrice,1,footer,taxRate); + self.statisticsFun(body,detailPrice,TaxUnitPrice,1,footer,taxRate); //查询库存信息 var depotId = currentRowDom.find("[field='DepotId']").find(".textbox-value").val(); @@ -1490,20 +1546,13 @@ }); } }, - //结束全部的编辑 - endAllEdit: function(){ - var rowLen = $("#materialData").datagrid('getRows').length; - for(var i=0; i