var currentUserName; var $type; var tabIndex; var genre; var code; var $projectid; initData = function () { NumberBind(); var genre = getQueryVariable("genre"); $type = getQueryVariable("type"); if (window.sysid === '') { $.ajax({ url: "/ContractPretrial/InitData", async: false, cache: false, dataType: "json", success: function (data) { currentUserName = data.CurrentUserName; $("#oa_contractpretrial_Code").val(data.Code); $("input:radio[name='oa_contractpretrial.NoFreight']").eq([value = '' + data.NoFreight+'']).click(); } }); if (genre !== '') { var $control = $(''); $(".main").append($control); } switch ($type) { case "1": $('#txtTitle').html("主材采购合同预审"); $("#oa_contractpretrial_Title").val("主材采购合同预审(" + currentUserName + ")"); break; case "3": $('#txtTitle').html("施工费/措施费合同预审"); $("#oa_contractpretrial_Title").val("施工费/措施费合同预审(" + currentUserName + ")"); break; case "4": $('#txtTitle').html("房产采购合同预审"); $("#oa_contractpretrial_Title").val("房产采购合同预审(" + currentUserName + ")"); break; case "5": $('#txtTitle').html("机械设备合同预审"); $("#oa_contractpretrial_Title").val("机械设备合同预审(" + currentUserName + ")"); break; case "6": $('#txtTitle').html("固定资产/周转材料合同预审"); $("#oa_contractpretrial_Title").val("固定资产/周转材料合同预审(" + currentUserName + ")"); break; case "8": $('#txtTitle').html("行政办公设备/行政车辆合同预审"); $("#oa_contractpretrial_Title").val("行政办公设备/行政车辆合同预审(" + currentUserName + ")"); break; case "9": $('#txtTitle').html("设备维修/改装合同预审"); $("#oa_contractpretrial_Title").val("设备维修/改装合同预审(" + currentUserName + ")"); break; case "10": $('#txtTitle').html("桩机配件采购合同预审"); $("#oa_contractpretrial_Title").val("桩机配件采购合同预审(" + currentUserName + ")"); break; case "11": $('#txtTitle').html("设备部劳务班组费用合同预审"); $("#oa_contractpretrial_Title").val("设备部劳务班组费用合同预审(" + currentUserName + ")"); break; case "13": $('#txtTitle').html("运输费用合同预审"); $("#oa_contractpretrial_Title").val("运输费用合同预审(" + currentUserName + ")"); break; } var $pcontrol = $(''); $(".main").append($pcontrol); } else { $type = initItems.Type; var $pcontrol = $(''); $(".main").append($pcontrol); $("#oa_contractpretrial_PartyBId").val(initItems.PartyBId); } $("#oa_contractpretrial_Code").attr("disabled", "disabled"); $("#oa_contractpretrial_Title").attr("disabled", "disabled"); $("#oa_contractpretrial_createtime").attr("disabled", "disabled"); $("#oa_contractpretrial_Amount").attr("disabled", "disabled"); } deleteMethod = function () { countmoney(); totalcompute(); } //计算金额 countmoney = function () { var total = 0; $('.grid').find("table .body").each(function () { var price = $(this).find("#oa_contractpretrialdtl_TotalPrice").val(); if (price > 0) total += parseFloat(price); }); $("#oa_contractpretrial_Amount").val(total); } createMethod = function () { NumberBind(); } totalcompute = function () { var total = 0; $('.grid').find("table .body").each(function () { var $price = $(this).find("#oa_contractpretrialdtl_UnitPrice").val(); var $count = $(this).find("#oa_contractpretrialdtl_Quantity").val(); var $value = $(this).find("select[name='oa_contractpretrialdtl.TaxRate']").val(); if ($count > 0 && $price) total += accMul($price, $count).toFixed(2); var $taxPrice = (parseFloat($price) / (1 + parseFloat($value) / 100) * (parseFloat($value) / 100)); var $nonTaxPrice = ($price - $taxPrice).toFixed(8); if ($nonTaxPrice > 0) $(this).find("#oa_contractpretrialdtl_NonTaxPrice").val($nonTaxPrice); }); $("#oa_contractpretrial_Amount").val(total); } $(document).ready(function () { $(".grid").on("blur", "#oa_contractpretrialdtl_TotalPrice", function () { countmoney(); }); $(".grid").on("blur", "#oa_contractpretrialdtl_UnitPrice", function () { totalcompute(); }); $(".grid").on("blur", "#oa_contractpretrialdtl_Quantity", function () { totalcompute(); }); $(".grid").on("change", "#oa_contractpretrialdtl_TaxRate", function () { var $trindex = $(this).closest("tr").index();//行索引 var $value = $(this).val(); var $unitPrice = $('#girdtable').find('tr:eq("' + $trindex + '")').find("#oa_contractpretrialdtl_UnitPrice").val(); var $taxPrice = (parseFloat($unitPrice) / (1 + parseFloat($value) / 100) * (parseFloat($value) / 100)); var $nonTaxPrice = ($unitPrice - $taxPrice).toFixed(8); if ($nonTaxPrice > 0) $('#girdtable').find('tr:eq("' + $trindex + '")').find("#oa_contractpretrialdtl_NonTaxPrice").val($nonTaxPrice); }); $(".main").on("change", "#oa_contractpretrial_ProjectId", function () {//更换项目 $('input[name="oa_contractpretrial.PartyBId"]').val(''); $('input[name="oa_contractpretrial.PartyB"]').val(''); $('input[name="oa_contractpretrial.PartyBDeputy"]').val(''); $('input[name="oa_contractpretrial.AssociateOrderCode"]').val(''); $(".grid tbody tr").each(function (index, element) { if (index >= 1) $(this).remove(); }); $(".subtradd_js").click(); }); }); getQueryVariable = function (parameter) { var query = window.location.search.substring(1); var vars = query.split("&"); for (var i = 0; i < vars.length; i++) { var pair = vars[i].split("="); if (pair[0] === parameter) { return pair[1]; } } return ""; } ///合同采购明细编码或名称点击事件 $(document).on("click", "input[name='oa_contractpretrialdtl.MaterialCode'],input[name='oa_contractpretrialdtl.MaterialName']", function() { var $ordercode = $("#oa_contractpretrial_AssociateOrderCode").val();//获取关联单号 var $supplierid = $("#oa_contractpretrial_PartyBId").val();// tabIndex = $(this).closest('tr').index(); if ($supplierid == undefined || $supplierid == '') { layer.alert("请先选择供应商"); return; } layer.open({ type: 2, title: '资源库', shadeClose: true, shade: 0.4, area: ['80%', '80%'], content: "/FixedPrice/index?ordercode=" + $ordercode + "&supplierid=" + $supplierid }); }); //采购合同明细项赋值 setBaseInfo = function (materialCode, materialName, resourceClassificationId, resourceClassificationName, specificationModel, measurementUnit, index, measurementUnitName, resourceClassificationSupName) { var $row = $("table tr:eq(" + tabIndex + ")"); $row.find("input[field='MaterialCode']").val(materialCode); $row.find("input[field='MaterialName']").val(materialName); $row.find("input[field='Unit']").val(measurementUnitName); layer.closeAll(); } //选择供应商 $(document).on("click", "input[name='oa_contractpretrial.PartyB']", function () { var $type = getQueryVariable("type");//业务类型 if ($type == undefined || $type == '') $type = initItems.Type; var $project = $("#oa_contractpretrial_ProjectId").find("option:selected").val();//相关业务项目ID if ($project == undefined || $project == '') { layer.alert("请先选择项目"); return; } layer.open({ type: 2, title: '供应商单位', shadeClose: true, shade: 0.4, area: ['90%', '90%'], content: "/Supplier/Index?projectid=" + $project + "&type=" + $type }); }); //供应商赋值 setCompanyInfo = function (id, name, UserName, Phone, BankName, BankDeposit, BankAccount) { debugger; $('input[name="oa_contractpretrial.PartyBId"]').val(id); $('input[name="oa_contractpretrial.PartyB"]').val(name); $('input[name="oa_contractpretrial.PartyBDeputy"]').val(UserName); $('input[name="oa_contractpretrial.AssociateOrderCode"]').val(''); $(".grid tbody tr").each(function (index, element) { if (index >= 1) $(this).remove(); }); $(".subtradd_js").click(); layer.closeAll(); } //关联定价单号 $(document).on("click", "#oa_contractpretrial_AssociateOrderCode", function () { var $type = getQueryVariable("type");//业务类型 if ($type == undefined || $type == '') $type = initItems.Type; var supplierid = $("#oa_contractpretrial_PartyBId").val(); var $project = $("#oa_contractpretrial_ProjectId").find("option:selected").val(); if (supplierid == undefined || supplierid == '') { layer.alert("请先选择乙方单位"); return; } layer.open({ type: 2, title: '供应商定价单', shadeClose: true, shade: 0.4, area: ['90%', '90%'], content: "/Supplier/SelectPricing?supplierid=" + supplierid + "&projectid=" + $project + "&type=" + $type }); }); setAssociateOrderCode = function (associateOrderCode) { $("#oa_contractpretrial_AssociateOrderCode").val(associateOrderCode); $(".grid tbody tr").each(function (index, element) { if (index >= 1) $(this).remove(); }); $(".subtradd_js").click(); layer.closeAll(); } setFixedPrice = function (mCode, mName, mUnit, mPrice, mTotal, mTaxrate, mSpecification) { if (hasRepeat(mCode, mName)) { layer.confirm("明细中已存在[" + mName + "(" + mCode + ")],是否叠加数量!", { btn: ['确认', '取消'] //按钮 }, function () { var trindex = 99; $(".grid tbody tr").each(function (index, element) { if ($(this).find("input[field='MaterialCode']").length > 0 && $(this).find("input[field='MaterialCode']").val() != undefined) { if ($(this).find('#oa_contractpretrialdtl_MaterialCode').val() == mCode) trindex = index; } else if ($(this).find("select[field='MaterialCode']").length > 0) { var comboxValue = $(this).find("select[field='MaterialCode']").find("option:selected").trigger("chosen:updated").val(); if (comboxValue == mCode) trindex = index; } }); var $row = $("table tr:eq(" + trindex + ")"); var theTotal = $row.find("input[field='Quantity']").val(); theTotal = $.trim(theTotal) == '' ? 0 : theTotal; mTotal = $.trim(mTotal) == '' ? 0 : mTotal; $row.find("input[field='Quantity']").val(parseFloat(mTotal) + parseFloat(theTotal)); $row.find("input[field='UnitPrice']").val(mPrice); totalcompute(); layer.closeAll();//关闭当前窗口的弹出层 }, function () { layer.closeAll();//关闭当前窗口的弹出层 }); return; } var $row = $("table tr:eq(" + tabIndex + ")"); if ($row.find("input[field='MaterialCode']").length > 0) { $row.find("input[field='MaterialCode']").val(mCode); $row.find("input[field='MaterialName']").attr("disabled", "disabled"); } else if ($row.find("select[field='MaterialCode']").length > 0) { $row.find("select[name='oa_contractpretrialdtl.MaterialCode']").val(mCode); $row.find("select[name='oa_contractpretrialdtl.MaterialCode']").attr("disabled", "disabled").trigger("chosen:updated"); } else { var $hidden = $(''); $row.append($hidden); } $row.find("input[field='MaterialName']").val(mName); if ($row.find("input[field='Unit']").length > 0) { $row.find("input[field='Unit']").val(mUnit); } else { $row.find("select[name='oa_contractpretrialdtl.Unit']").val(mUnit); $row.find("select[name='oa_contractpretrialdtl.Unit']").attr("disabled", "disabled"); $row.find("select[name='oa_contractpretrialdtl.Unit']").trigger("chosen:updated"); } $row.find("input[field='Unit']").attr("disabled", "disabled"); $row.find("input[field='Quantity']").val(mTotal); $row.find("input[field='UnitPrice']").val(mPrice); $row.find("input[field='UnitPrice']").attr("maxValue", mPrice); $row.find("select[field='TaxRate']").val(mTaxrate); $row.find("select[field='TaxRate']").trigger("chosen:updated"); $row.find("input[field='Model']").val(mSpecification); totalcompute(); NumberBind(); layer.closeAll(); } hasRepeat = function (value, name) { var $array = []; $(".grid tbody tr").each(function () { if ($(this).find("input[field='MaterialCode']").length > 0 && $(this).find("input[field='MaterialCode']").val() != undefined) { console.log("文本框:MaterialCode"); $array.push($(this).find('#oa_contractpretrialdtl_MaterialCode').val()); } else if ($(this).find("select[field='MaterialCode']").length > 0) { var comboxValue = $(this).find("select[field='MaterialCode']").find("option:selected").val(); var comboxText = $(this).find("input[field='MaterialName']").val(); if (comboxValue != null && comboxValue != '' && comboxText != undefined && comboxText != '' && comboxText == name && comboxValue == value) $array.push(comboxValue); console.log("下拉框:MaterialCode"); } }); if ($array.Contains(value) && value != null && value != '' && name != null && name != '') return true; else return false; } Array.prototype.Contains = function (val) { for (var i = 0; i < this.length; i++) { if (this[i] == val) { return true; } } return false; }; NumberBind = function () { $("[name='oa_contractpretrialdtl.Quantity']").addClass("countTxtBox"); $("[name='oa_contractpretrialdtl.UnitPrice']").addClass("priceTxtBox"); NumberBoxBind(); }