编辑部分调试

dev_1.0.0
‘wangjiuyun 2024-10-28 20:03:47 +08:00
parent 4662f1bbbd
commit b65457f0ec
7 changed files with 449 additions and 77 deletions

View File

@ -185,7 +185,12 @@ $(function () {
// return;
// }
// console.log(message);
// 保存付款计划表
var dataPay = collectData("am-modal-prompt-input-pay");
dataPay = prepareAjaxDataVerify(dataPay, pay_DETAIL2, $("#id").val());
if(dataPay){
postAjax(base+"/project/budgetEditSaveBudgetPayPlan", dataPay);
}
var startTime = $("#startDate").val();
var endTime = $("#endDate").val();
if (startTime > endTime) {

View File

@ -4,43 +4,25 @@
//COST_DETAIL_ARR=["type","category","name","unit","amount","price","taxRate","totalTaxInclude","totalTaxExclude"];
COST_DETAIL2={
"num":[false,"序号","string"],
"type":[false,"费用项目","string"],
"category":[false,"采购类别","string"],
// "name":[false,"名称","string"],
// "unit":[false,"单位","string"],
// "amount":[false,"数量","number"],
// "price":[false,"单价","price"],
"type":[false,"采购成本项目","string"],
"category":[false,"产品大类","string"],
"taxRate":[false,"税率","number"],
"totalTaxInclude":[false,"含税总金额","number"],
"totalTaxExclude":[false,"不含税金额","number"],
"totalTax":[false,"税金","number"],
// "contractParty":[false,"签约方","string"],
// "isUnderwritten":[false,"是否垫资","string"],
// "underwrittenAmount":[false,"预估垫资金额","number"],
// "payTime":[false,"支出时间","string"],
// "payAmount":[false,"支出金额","number"],
// "payWay":[false,"付款方式","string"],
"contractParty":[false,"供应商","string"],
"remark":[false,"备注","string"]
};
COST_DETAIL={
"num":[false,"序号","string"],
"type":[true,"费用项目","string"],
"category":[true,"产品大类","string"],
"name":[true,"名称","string"],
// "unit":[true,"单位","string"],
// "amount":[true,"数量","number"],
// "price":[true,"单价","price"],
"taxRate":[true,"税率","number"],
"totalTaxInclude":[true,"含税总金额","number"],
"totalTaxExclude":[true,"不含税金额","number"],
"totalTax":[true,"税金","number"],
"type":[false,"采购成本项目","string"],
"category":[false,"产品大类","string"],
"taxRate":[false,"税率","number"],
"totalTaxInclude":[false,"含税总金额","number"],
"totalTaxExclude":[false,"不含税金额","number"],
"totalTax":[false,"税金","number"],
"contractParty":[false,"供应商","string"],
// "isUnderwritten":[false,"是否垫资","string"],
// "underwrittenAmount":[false,"预估垫资金额","number"],
// "payTime":[false,"支出时间","string"],
// "payAmount":[false,"支出金额","number"],
// "payWay":[false,"付款方式","string"],
"remark":[false,"备注","string"]
};
/*

View File

@ -6,11 +6,6 @@ INCOME_DETAIL2={
"num":[false,"序号","string"],
"type":[false,"类别","string"],
"name":[false,"产品大类","string"],
// "spec":[false,"规格类型","string"],
// "param":[false,"参数","string"],
// "unit":[false,"单位","string"],
// "amount":[false,"数量","number"],
// "price":[false,"单价","price"],
"taxRate":[false,"税率","number"],
"totalTaxInclude":[false,"含税总金额","number"],
"totalTaxExclude":[false,"不含税金额","number"],
@ -19,17 +14,12 @@ INCOME_DETAIL2={
INCOME_DETAIL={
"num":[false,"序号","string"],
"type":[true,"类别","string"],
"name":[true,"名称","string"],
"spec":[true,"规格类型","string"],
"param":[true,"参数","string"],
"unit":[true,"单位","string"],
"amount":[true,"数量","number"],
"price":[true,"单价","price"],
"taxRate":[true,"税率","number"],
"totalTaxInclude":[true,"含税总金额","number"],
"totalTaxExclude":[true,"不含税金额","number"],
"totalTax":[true,"税金","number"]
"type":[false,"类别","string"],
"name":[false,"产品大类","string"],
"taxRate":[false,"税率","number"],
"totalTaxInclude":[false,"含税总金额","number"],
"totalTaxExclude":[false,"不含税金额","number"],
"totalTax":[false,"税金","number"]
};
/*$(function () {

View File

@ -0,0 +1,340 @@
/**
* 一个采购成本详情的字段
*/
//COST_DETAIL_ARR=["type","category","name","unit","amount","price","taxRate","totalTaxInclude","totalTaxExclude"];
pay_DETAIL2={
"num":[false,"序号","string"],
"payPoint":[false,"付款节点","string"],
"payTime":[false,"付款时间","string"],
"payProject":[false,"采购成本项目","number"],
"payAmount":[false,"付款金额","number"],
"supplier":[false,"供应商","number"],
};
pay_DETAIL={
"num":[false,"序号","string"],
"payPoint":[false,"付款节点","string"],
"payTime":[false,"付款时间","string"],
"payProject":[false,"采购成本项目","number"],
"payAmount":[false,"付款金额","number"],
"supplier":[false,"供应商","number"],
};
/*
[
{"id":"1","name":"xxx1"},{"id":"2","name":"xxx2"}
]
*/
SELECT_TYPE_CATEGORY_DATA=[];
/*{
"1":[
{
"id":"1",
"name":"华智产品"
},
{
"id":"2",
"name":"紫光其他产品"
},
{
"id":"3",
"name":"外购产品"
}
],
"2":[
{
"id":"4",
"name":"外购工程"
}
],
"3":[
{
"id":"5",
"name":"华智服务"
},
{
"id":"6",
"name":"紫光其他服务"
},
{
"id":"7",
"name":"外购服务"
}
],
"4":[
{
"id":"8",
"name":"其他"
}
]
};*/
SELECT_TYPE_CATEGORY_MAP_DATA={};
/*{
"1":"1",
"2":"1",
"3":"1",
"4":"2",
"5":"3",
"6":"3",
"7":"3",
"8":"4"
};
*/
SELECT_CATEGORY_TYPE_MAP_DATA={};
/*$(function () {
$("#cost-detail").click(function () {
$('#my-prompt-cost-detail').modal({
relatedTarget: this,
closeOnConfirm:false,
onConfirm: function(e) {
//不能使用e.data因为无法获取动态添加的
var data = collectData("am-modal-prompt-input-cost");
//data = prepareAjaxData(data, COST_DETAIL_ARR, $("#id").val(),false);
data = prepareAjaxDataVerify(data, COST_DETAIL, $("#id").val());
if(data){
postAjax(base+"/project/budgetEditSaveCostDetail", data, updateCostData);
}
},
onCancel: function(e) {
}
});
});
$("#costAddBtn").click(function () {
appendTrCost();
});
//初始化大类和类别的数据
getAjax(base+"/procurement/type/map", null, initTypeCategory);
});*/
$(function () {
});
//保存采购成本明细表
$(function () {
$("#payTableSave").click(function () {
//不能使用e.data因为无法获取动态添加的
var data = collectData("am-modal-prompt-input-pay");
//data = prepareAjaxData(data, COST_DETAIL_ARR, $("#id").val(),false);
data = prepareAjaxDataVerify(data, pay_DETAIL2, $("#id").val());
if(data){
postAjax(base+"/project/budgetEditSaveBudgetPayPlan", data, updateCostData);
}
});
$("#payAddBtn").click(function () {
appendTrPay();
$("#payAddBtn").blur();
});
//绑定删除按钮
bindDeleteBtnPay();
//初始化大类和类别的数据
getAjax(base+"/procurement/type/map", null, initTypeCategory);
});
/**
* 采购成本增加一行
*/
function appendTrPay() {
//console.log(SELECT_TYPE_CATEGORY_DATA);
var options = '<option value="xxxx" disabled selected>--请选择--</option>\r\n';
SELECT_TYPE_CATEGORY_DATA.forEach(function (e) {
options+='<option value="'+e.id+'">'+e.name+'</option>\r\n';
});
var template = '<tr>' +
'<td width="60px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay input-budget-num" readonly></td>' +
'<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay am-modal-prompt-input-pay-point" ></td>'+
'<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay input-changeable-pay-time" autocomplete="off" data-am-datepicker></td>'+
'<td width="100px">'+
'<select style="float: left;" class="am-modal-prompt-input am-modal-prompt-input-pay am-modal-prompt-input-pay-project">\n' +
'<option value="xxxx" disabled selected>--请选择--</option>'+
'<option value="1">设备成本</option>'+
'<option value="2">工程成本</option>'+
'<option value="3">服务成本</option>'+
'<option value="4">其他成本</option>'+
'</select>'+
'</td>'+
'<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay am-modal-prompt-input-pay-amount" ></td>' +
'<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay am-modal-prompt-input-pay-supplier" ></td>' +
'<td width="60px"><button type="button" style="margin-top: 10px" class="am-btn am-btn-danger am-btn-xs am-round am-modal-line-delete"><span class="am-icon-minus"></span></button></td>'+
'</tr>';
$("#payTotal").before(template);
//重新绑定删除事件和input修改事件
bindDeleteBtnPay();
//绑定序号
bindNum();
//绑定时间
bindTime();
//绑定总计值
bindPayTotal();
//绑定数字输入框保留两位小数
bindNumberInput();
if ($('#costTable').find('tbody') && $('#costTable').find('tbody')[0]) {
$('#costTable').find('tbody')[0].scrollTop = $('#costTable').find('tbody')[0].scrollHeight
}
}
/**
* 绑定时间选择器
*/
function bindTime() {
$('[data-am-datepicker]').datepicker();
}
/**
* 绑定每一行的删除事件删除当前的一行tr修改总计值
*/
function bindDeleteBtnPay() {
$(".am-modal-line-delete").click(function () {
//删除自己对应的tr
$(this).parent().parent().remove();
bindNum();
updateTotal("input-changeable-pay-amount", "input-changeable-pay-amount-total");
});
}
/**
* 绑定每个可改变的输入框修改后改变对应输入框的值
*/
function bindPayTotal() {
//数量改变
$(".input-changeable-pay-amount").change(function () {
updateTotal("input-changeable-pay-amount", "input-changeable-pay-amount-total");
});
}
/**
* 更新页面收入的数据累加
*/
function updateCostData(data, returnData) {
var details = data.details;
var deviceTaxInclude = 0;
var deviceTaxExclude = 0;
var deviceTax = 0;
var buildTaxInclude = 0;
var buildTaxExclude = 0;
var buildTax = 0;
var serviceTaxInclude = 0;
var serviceTaxExclude = 0;
var serviceTax = 0;
var otherTaxInclude = 0;
var otherTaxExclude = 0;
var otherTax = 0;
var costTaxRates = "";
var set = new Set();
details.forEach(function (t, number, ts) {
if(t["type"] == "1"){
//设备类
deviceTaxInclude += f2(t["totalTaxInclude"]);
deviceTaxExclude += f2(t["totalTaxExclude"]);
deviceTax += f2(t["totalTax"]);
}else if(t["type"] == "2"){
//施工类
buildTaxInclude += f2(t["totalTaxInclude"]);
buildTaxExclude += f2(t["totalTaxExclude"]);
buildTax += f2(t["totalTax"]);
}else if(t["type"] == "3"){
//服务类
serviceTaxInclude += f2(t["totalTaxInclude"]);
serviceTaxExclude += f2(t["totalTaxExclude"]);
serviceTax += f2(t["totalTax"]);
}else if(t["type"] == "4"){
//其他类
otherTaxInclude += f2(t["totalTaxInclude"]);
otherTaxExclude += f2(t["totalTaxExclude"]);
otherTax += f2(t["totalTax"]);
}
if (!set.has(t["taxRate"])) {
costTaxRates += f2Fixed(t["taxRate"]) + "%,";
set.add(t["taxRate"]);
}
});
$("input[name='costPurchaseDeviceTaxInclude']").val(f2Fixed(deviceTaxInclude));
$("input[name='costPurchaseDeviceTaxExclude']").val(f2Fixed(deviceTaxExclude));
$("input[name='costPurchaseDeviceTax']").val(f2Fixed(deviceTax));
$("input[name='costPurchaseBuildTaxInclude']").val(f2Fixed(buildTaxInclude));
$("input[name='costPurchaseBuildTaxExclude']").val(f2Fixed(buildTaxExclude));
$("input[name='costPurchaseBuildTax']").val(f2Fixed(buildTax));
$("input[name='costPurchaseServiceTaxInclude']").val(f2Fixed(serviceTaxInclude));
$("input[name='costPurchaseServiceTaxExclude']").val(f2Fixed(serviceTaxExclude));
$("input[name='costPurchaseServiceTax']").val(f2Fixed(serviceTax));
$("input[name='costPurchaseOtherTaxInclude']").val(f2Fixed(otherTaxInclude));
$("input[name='costPurchaseOtherTaxExclude']").val(f2Fixed(otherTaxExclude));
$("input[name='costPurchaseOtherTax']").val(f2Fixed(otherTax));
//资金计划表中的
$(".input-total-title-device-cost-budget-plan").val(f2Fixed(deviceTaxInclude));
$(".input-total-title-engineer-cost-budget-plan").val(f2Fixed(f2(serviceTaxInclude)+f2(buildTaxInclude)+f2(otherTaxInclude)));
$(".input-total-title-total-cost-budget-plan").val(f2Fixed(f2(deviceTaxInclude)+f2(buildTaxInclude)+f2(serviceTaxInclude)+f2(otherTaxInclude)
+f2($(".input-total-title-project-manage-cost-budget-plan").val())
+f2($(".input-total-title-earnest-money-cost-budget-plan").val())));
/* var costOtherOtherTaxInclude = f2($("input[name='costOtherOtherTaxInclude']").val());
var costOtherOtherTaxExclude = f2($("input[name='costOtherOtherTaxExclude']").val());
var costProjectManageTaxInclude = f2($("input[name='costProjectManageTaxInclude']").val());
var costProjectManageTaxExclude = f2($("input[name='costProjectManageTaxExclude']").val());
$("input[name='costTotalTaxInclude']").val(f2(deviceTaxInclude+buildTaxInclude+serviceTaxInclude+otherTaxInclude+costOtherOtherTaxInclude+costProjectManageTaxInclude));
$("input[name='costTotalTaxExclude']").val(f2(deviceTaxExclude+buildTaxExclude+serviceTaxExclude+otherTaxExclude+costOtherOtherTaxExclude+costProjectManageTaxExclude));*/
calCostExclude();
calCostInclude();
calCostTotalTax();
updateProjectContributionProfitRate();
if (costTaxRates.length > 0) {
$(".costTaxRates").text(costTaxRates.substr(0, costTaxRates.length - 1));
}
layuiAlert("保存成功");
$('#my-prompt-cost-detail').modal('close');
}
/**
* 大类类别联动效果
*/
/**
* 初始化数据
* SELECT_TYPE_CATEGORY_MAP_DATA
* SELECT_CATEGORY_TYPE_MAP_DATA
* SELECT_TYPE_CATEGORY_DATA
*/
function initTypeCategory(params, data) {
var d = data.data;
var map = d.map;
Object.keys(map).forEach(function (t, number) {
var temp = [];
map[t].forEach(function (g) {
temp.push({
name:g.name,
id:g.id+""
});
});
SELECT_TYPE_CATEGORY_MAP_DATA[t]= temp;
});
var procurementTypes = d.procurementTypes;
procurementTypes.forEach(function (e) {
SELECT_TYPE_CATEGORY_DATA.push({
id:e.id+"",
name:e.name
});
SELECT_CATEGORY_TYPE_MAP_DATA[e.id]=e.type;
});
//--请选择--的映射
//SELECT_CATEGORY_TYPE_MAP_DATA["xxxx"]="xxxx";
// console.log(SELECT_TYPE_CATEGORY_MAP_DATA);
// console.log(SELECT_TYPE_CATEGORY_DATA);
// console.log(SELECT_CATEGORY_TYPE_MAP_DATA);
}

View File

@ -421,9 +421,9 @@ function appendTrBudgetPlan2() {
' <td style="display: block;"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-month-budget-plan" readonly></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-device-cost-budget-plan"></td>\n' +
// ' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-engineer-cost-budget-plan"></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-projectCost-cost-budget-plan"></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-serviceCost-cost-budget-plan"></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-otherCost-cost-budget-plan"></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-projectCost-cost-budget-plan" readonly></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-serviceCost-cost-budget-plan" readonly></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-otherCost-cost-budget-plan" readonly></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-project-manage-cost-budget-plan"></td>\n' +
' <td style="display: block;"><input type="text" maxlength="16" value="0.00" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-earnest-money-cost-budget-plan"></td>\n' +

View File

@ -3113,6 +3113,7 @@
<script src="${base}/assets/js/project_common.js"></script>
<script src="${base}/assets/js/project_budget.js"></script>
<script src="${base}/assets/js/project_budget_income.js"></script>
<script src="${base}/assets/js/project_budget_pay.js"></script>
<script src="${base}/assets/js/project_budget_cost.js"></script>
<script src="${base}/assets/js/project_budget_cost_project_manage.js"></script>
<script src="${base}/assets/js/project_budget_plan.js"></script>

View File

@ -107,7 +107,8 @@
<li><a href="#tab2">项目基本信息</a></li>
<li><a href="#tab3">收入明细表</a></li>
<li><a href="#tab8">收款计划表</a></li>
<li><a href="#tab4">采购成本项目</a></li>
<li><a href="#tab4">采购成本明细表</a></li>
<li><a href="#tab9">付款计划表</a></li>
<li><a href="#tab5">项目管理费用表</a></li>
<li><a href="#tab6">资金计划表</a></li>
<li><a href="#tab7">项目预算信息</a></li>
@ -833,7 +834,7 @@
<div class="fixed-section">
<div class="am-modal-bd">
<div class="fixed-table">
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;" id="incomePlanTable">
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;" id="payTable">
<thead>
<tr>
<th>序号</th>
@ -901,20 +902,11 @@
<th width="60px">序号</th>
<th width="70px">采购成本项目</th>
<th width="150px">产品大类</th>
<#-- <th width="100px">名称</th>-->
<#-- <th width="80px">单位</th>-->
<#-- <th width="100px">数量</th>-->
<#-- <th width="100px">单价</th>-->
<th width="100px">税率(%</th>
<th width="100px">含税总金额(元)</th>
<th width="100px">不含税金额(元)</th>
<th width="100px">税金(元)</th>
<th width="100px">供应商</th>
<#-- <th width="60px">是否垫资</th>-->
<#-- <th width="100px">预估垫资金额(元)</th>-->
<#-- <th width="130px">支出时间</th>-->
<#-- <th width="100px">支出金额(元)</th>-->
<#-- <th width="100px">付款方式</th>-->
<th width="100px">备注</th>
<th width="60px">操作</th>
</tr>
@ -947,26 +939,11 @@
</#list>
</select>
</td>
<#-- <td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost" value="${costDetail.name!}"></td>-->
<#-- <td width="80px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost" value="${costDetail.unit!}"></td>-->
<#-- <td width="100px"><input type="text" maxlength="8" class="number am-modal-prompt-input am-modal-prompt-input-cost input-changeable-amount input-changeable-amount-cost" value="${Utils.format(costDetail.amount,'0')}" oninput="if(value.length>8)value=value.slice(0,8)" &lt;#&ndash;onkeyup="integerNumber(this)"&ndash;&gt;></td>-->
<#-- <td width="100px"><input type="text" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-cost input-changeable-price input-changeable-price-cost" value="${Utils.format2(costDetail.price,'0')}" oninput="if(value.length>19)value=value.slice(0,19)"></td>-->
<td width="100px"><input type="text" maxlength="5" class="number am-modal-prompt-input am-modal-prompt-input-cost input-changeable-tax-rate input-changeable-tax-rate-cost" value="${Utils.format(costDetail.taxRate,'0')}" oninput="if(value.length>5)value=value.slice(0,5)"></td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost input-changeable-total-tax-include input-changeable-total-tax-include-cost" value="${Utils.format(costDetail.totalTaxInclude,'0')}"></td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost input-changeable-total-tax-exclude input-changeable-total-tax-exclude-cost" value="${Utils.format(costDetail.totalTaxExclude,'0')}" readonly></td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost input-changeable-total-tax input-changeable-total-tax-cost" value="${Utils.format(costDetail.totalTax,'0')}" readonly></td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost" value="${costDetail.contractParty!}"></td>
<#-- <td width="60px">-->
<#-- <select style="float: left;" class="am-modal-prompt-input am-modal-prompt-input-cost am-modal-prompt-input-cost-underwritten">-->
<#-- <option value="0" <#if costDetail.isUnderwritten == 0>selected</#if>></option>-->
<#-- <option value="1" <#if costDetail.isUnderwritten == 1>selected</#if>>是</option>-->
<#-- <option value="2" <#if costDetail.isUnderwritten == 2>selected</#if>>否</option>-->
<#-- </select>-->
<#-- </td>-->
<#-- <td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost input-changeable-total-underwritten-amount-cost" value="${Utils.format(costDetail.underwrittenAmount,'0')}"></td>-->
<#-- <td width="130px"><input style="float: left;" type="text" class="am-modal-prompt-input am-modal-prompt-input-cost" value="${(costDetail.payTime?string("yyyy-MM-dd"))!}" data-am-datepicker></td>-->
<#-- <td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost input-changeable-total-pay-amount-cost" value="${Utils.format(costDetail.payAmount,'0')}"></td>-->
<#-- <td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost" value="${costDetail.payWay!}"></td>-->
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-cost" value="${costDetail.remark!}"></td>
<td width="60px"><button type="button" style="margin-top: 10px" class="am-btn am-btn-danger am-btn-xs am-round am-modal-line-delete"><span class="am-icon-minus"></span></button></td>
</tr>
@ -1201,9 +1178,9 @@
<tr style="display: inline-block;">
<td style="display: block;"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-month-budget-plan" value="${projectBudgetPlanDetail.month!}" readonly></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-device-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.deviceCost)}"></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-projectCost-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.projectCost)}"></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-serviceCost-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.serviceCost )}"></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-otherCost-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.otherCost)}"></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-projectCost-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.projectCost)}" readonly></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-serviceCost-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.serviceCost )}" readonly></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-otherCost-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.otherCost)}" readonly></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-project-manage-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.projectManageCost)}"></td>
<td style="display: block;"><input type="text" oninput="if(value.length>16)value=value.slice(0,16)" maxlength="16" class="number am-modal-prompt-input am-modal-prompt-input-budget-plan-detail input-changeable-earnest-money-cost-budget-plan" value="${Utils.format(projectBudgetPlanDetail.earnestMoneyCost)}"></td>
@ -1501,6 +1478,82 @@
</tbody>
</table>
</div>
<div class="am-tab-panel am-fade am-in" id="tab9">
<div class="fixed-section">
<div class="am-modal-bd">
<div class="fixed-actions">
<#-- <div class="am-btn-toolbar">-->
<#-- <div class="am-btn-group am-btn-group-xs">-->
<#-- <div class="am-btn-group am-btn-group-xs am-form-file">-->
<#-- <button type="button" id="bt_import" class="am-btn am-btn-default">-->
<#-- <span class="am-icon-archive"></span>-->
<#-- 批量导入-->
<#-- </button>-->
<#-- <input id="doc-form-file2" type="file" name="file" onChange="ajaxUploadFile2('doc-form-file2','${base}/project/batchCostImport?id=' + ${project.id})">-->
<#-- </div>-->
<#-- <button type="button" class="am-btn am-btn-default" onclick="location.href='${base}/project/costTemplate'">-->
<#-- <span class="am-icon-archive"></span> 导入模板下载-->
<#-- </button>-->
<#-- </div>-->
<#-- </div>-->
</div>
<div class="fixed-table has-actions is-vertical-scroll">
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;" id="payTable">
<thead style="display:block;">
<tr>
<th width="60px">序号</th>
<th width="100px">付款节点</th>
<th width="100px">付款时间</th>
<th width="100px">采购成本项目</th>
<th width="100px">付款金额</th>
<th width="100px">供应商</th>
<th width="60px">操作</th>
</tr>
</thead>
<tbody>
<#if budgetPayPlan??>
<#list budgetPayPlan as payDetail>
<tr>
<td width="60px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay input-budget-num" value="${(payDetail_index+1)!}" readonly></td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay input-changeable-pay-point" value="${payDetail.payPoint}" ></td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay input-changeable-pay-time" value="${payDetail.payTime}" ></td>
<td width="100px">
<select style="float: left;" class="am-modal-prompt-input am-modal-prompt-input-pay input-changeable-pay-project">
<option value="1" <#if payDetail.type == 1>selected</#if>>设备成本</option>
<option value="2" <#if payDetail.type == 2>selected</#if>>工程成本</option>
<option value="3" <#if payDetail.type == 3>selected</#if>>服务成本</option>
<option value="4" <#if payDetail.type == 4>selected</#if>>其他成本</option>
</select>
</td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay input-changeable-pay-amount" value="${Utils.format(payDetail.payAmount,'0')}"></td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay input-changeable-pay-supplier" value="${payDetail.supplier}"></td>
<td width="60px"><button type="button" style="margin-top: 10px" class="am-btn am-btn-danger am-btn-xs am-round am-modal-line-delete"><span class="am-icon-minus"></span></button></td>
</tr>
</#list>
</#if>
<tr class="total-new" id="payTotal">
<td width="60px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay" value="总计" readonly></td>
<td width="100px"></td>
<td width="100px"></td>
<td width="100px"></td>
<td width="100px"><input type="text" class="am-modal-prompt-input am-modal-prompt-input-pay input-changeable-pay-amount-total" value="${Utils.format(costDetail.payPurchaseTotalTax,'0')}" readonly></td>
<td width="100px"></td>
<td width="60px"></td>
</tr>
</tbody>
</table>
</div>
<button type="button" style="margin-top: 10px" id="payAddBtn" class="am-btn am-btn-primary am-btn-xs am-round fixed-btns-row"><span class="am-icon-plus"></span></button>
</div>
<div class="am-modal-footer">
<#--<span class="am-modal-btn" data-am-modal-cancel>取消</span>-->
<span class="am-modal-btn" data-am-modal-confirm id="payTableSave">保存</span>
</div>
</div>
</div>
</div>
@ -1522,7 +1575,8 @@
<script src="${base}/assets/js/project_budget.js"></script>
<script src="${base}/assets/js/project_budget_income.js"></script>
<script src="${base}/assets/js/project_budget_income_plan.js"></script>
<script src="${base}/assets/js/project_budget_cost.js"></script>
<script src="${base}/assets/js/project_budget_cost.js">
</script><script src="${base}/assets/js/project_budget_pay.js"></script>
<script src="${base}/assets/js/project_budget_cost_project_manage.js"></script>
<script src="${base}/assets/js/project_budget_plan.js"></script>
<script type="text/javascript" src="${base}/common/js/jquery.ajaxfileupload.js"></script>