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); } }); 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 "801": $('#txtTitle').html("行政办公设备合同预审"); $("#oa_contractpretrial_Title").val("行政办公设备合同预审(" + currentUserName + ")"); break; case "802": $('#txtTitle').html("行政车辆合同预审"); $("#oa_contractpretrial_Title").val("行政车辆合同预审(" + currentUserName + ")"); break; case "803": $('#txtTitle').html("电脑、打印机、会议系统合同预审"); $("#oa_contractpretrial_Title").val("电脑、打印机、会议系统合同预审(" + currentUserName + ")"); break; case "9": $('#txtTitle').html("设备维修/改装合同预审"); $("#oa_contractpretrial_Title").val("设备维修/改装合同预审(" + currentUserName + ")"); break; case "901": $('#txtTitle').html("设备委外维修合同预审"); $("#oa_contractpretrial_Title").val("设备委外维修合同预审(" + currentUserName + ")"); break; case "902": $('#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); switch ($type) { case "1": $('#txtTitle').html("主材采购合同预审"); break; case "3": $('#txtTitle').html("施工费/措施费合同预审"); break; case "4": $('#txtTitle').html("房产采购合同预审"); break; case "5": $('#txtTitle').html("机械设备合同预审"); break; case "6": $('#txtTitle').html("固定资产/周转材料合同预审"); break; case "8": $('#txtTitle').html("行政办公设备/行政车辆合同预审"); break; case "801": $('#txtTitle').html("行政办公设备合同预审"); break; case "802": $('#txtTitle').html("行政车辆合同预审"); break; case "803": $('#txtTitle').html("电脑、打印机、会议系统合同预审"); break; case "9": $('#txtTitle').html("设备维修/改装合同预审"); break; case "901": $('#txtTitle').html("设备委外维修合同预审"); break; case "902": $('#txtTitle').html("设备改造合同预审"); break; case "10": $('#txtTitle').html("桩机配件采购合同预审"); break; case "11": $('#txtTitle').html("设备部劳务班组费用合同预审"); break; case "13": $('#txtTitle').html("运输费用合同预审"); break; } } $("#oa_contractpretrial_Code").attr("disabled", "disabled"); $("#oa_contractpretrial_Title").attr("disabled", "disabled"); $("#oa_contractpretrial_createtime").attr("disabled", "disabled"); $("#oa_contractpretrial_Amount").attr("disabled", "disabled"); if ($type == '801' || $type == '802' || $type == '803' || $type == '901' || $type == '902') { var hiddenHtml = ''; $("#oa_contractpretrial_Code").after(hiddenHtml); } } 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 $type = getQueryVariable("type"); var $classfy = ""; if ($type == undefined || $type == '') $type = initItems.Type + ''; switch ($type) { case "4": $classfy = "05"; break; case "8": $classfy = "07,08,09,05"; break; case "801": $classfy = "07,08,09"; break; case "802": $classfy = "050005,040007,060003,030002"; break; case "803": $classfy = "050007"; break; case "10": $classfy = "06"; break; case "13": $classfy = "99"; break; } if ($classfy == "99") return; if ($type == "901" || $type == "902") return; tabIndex = $(this).closest('tr').index(); layer.open({ type: 2, title: '资源库', shadeClose: true, shade: 0.4, area: ['80%', '80%'], //content: "/Article/index?type=" + $classfy content: "/Article/index" }); }); //采购合同明细项赋值 setBaseInfo = function (materialCode, materialName, resourceClassificationId, resourceClassificationName, specificationModel, measurementUnit, index, measurementUnitName, resourceClassificationSupName) { debugger; 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); if (($row.find("input[field='Model']").length) > 0) { $row.find("input[field='Model']").val(specificationModel); } layer.closeAll(); } //选择供应商 $(document).on("click", "input[name='oa_contractpretrial.PartyB']", function () { layer.open({ type: 2, title: '供应商单位', shadeClose: true, shade: 0.4, area: ['90%', '90%'], content: "/oa/General/company" }); }); //供应商赋值 setCompanyInfo = function (id, name, UserName, Phone, BankName, BankDeposit, BankAccount) { $('input[name="oa_contractpretrial.PartyBId"]').val(id); $('input[name="oa_contractpretrial.PartyB"]').val(name); $('input[name="oa_contractpretrial.PartyBDeputy"]').val(UserName); $(".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; layer.open({ type: 2, title: '采购申请', shadeClose: true, shade: 0.4, area: ['90%', '90%'], content: "/Supplier/SelectApply?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) { debugger; 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").val(); if (comboxValue == mCode) trindex = index; } }); var $row = $("table tr:eq(" + trindex + ")"); var theTotal = $row.find("input[field='Quantity']").val(); $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"); $row.find("select[name='oa_contractpretrialdtl.MaterialCode']").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(); }