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 = $('<input id="oa_contractpretrial_AssociateType" name="oa_contractpretrial.AssociateType" field="AssociateType" type="hidden" value="' + genre + '" />');
|
$(".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 = $('<input id="oa_contractpretrial_PartyBId" name="oa_contractpretrial.PartyBId" field="PartyBId" type="hidden"/>');
|
$(".main").append($pcontrol);
|
} else {
|
$type = initItems.Type + '';
|
var $pcontrol = $('<input id="oa_contractpretrial_PartyBId" name="oa_contractpretrial.PartyBId" field="PartyBId" type="hidden"/>');
|
$(".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 = '<input type="hidden" id="oa_contractpretrial_Type" name="oa_contractpretrial.Type" field="Type" class="form-control" isvalid="yes" value="' + $type + '">';
|
$("#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 = $('<input id="oa_contractpretrialdtl_MaterialCode" name="oa_contractpretrialdtl.MaterialCode" field="MaterialCode" type="hidden" value="' + mCode + '"/>');
|
$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();
|
}
|