|
@@ -1084,6 +1084,13 @@ $(document).ready(function() {
|
|
|
changeEngineering();
|
|
|
});
|
|
|
|
|
|
+ //选择计税方式
|
|
|
+ $("#taxType").change(function () {
|
|
|
+ $('#valuation-info').hide();
|
|
|
+ changeEngineering();
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
// 新增单项项目点击
|
|
|
/* $("#add-engineering-btn").click(function() {
|
|
|
let selectedItem = projTreeObj.tree.selected;
|
|
@@ -1394,46 +1401,52 @@ $(document).ready(function() {
|
|
|
function changeEngineering(){
|
|
|
$('#engineering-info').hide();
|
|
|
let engineeringList = getEngineeringList();
|
|
|
- if(engineeringList.length === 0){
|
|
|
- return false;
|
|
|
- }
|
|
|
- let selectedEngineering = $("#tender-engineering").val();
|
|
|
- selectedEngineering = parseInt(selectedEngineering);
|
|
|
- let currentLib = {};
|
|
|
- for(let engineering of engineeringList) {
|
|
|
- if (engineering.engineering === selectedEngineering) {
|
|
|
- currentLib = engineering.lib;
|
|
|
+ if(engineeringList.length > 0){
|
|
|
+ let selectedEngineering = $("#tender-engineering").val();
|
|
|
+ let currentLib = {};
|
|
|
+ for(let engineering of engineeringList) {
|
|
|
+ if (engineering.engineering_id === selectedEngineering) {
|
|
|
+ currentLib = engineering.lib;
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- if (Object.keys(currentLib).length <= 0) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- // 输出数据到页面
|
|
|
- if (currentLib.fee_lib !== undefined && currentLib.fee_lib.length > 0) {
|
|
|
- $("#tender-fee-rate").children("option").first().val("newFeeRate-"+currentLib.fee_lib[0].id);
|
|
|
+ if (Object.keys(currentLib).length <= 0) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ // 输出数据到页面
|
|
|
+ if (currentLib.fee_lib !== undefined && currentLib.fee_lib.length > 0) {
|
|
|
+ $("#tender-fee-rate").children("option").first().val("newFeeRate-"+currentLib.fee_lib[0].id);
|
|
|
+ }
|
|
|
+ $("#tender-engineering").parent().siblings('.hidden-area').slideDown('fast');
|
|
|
}
|
|
|
- $("#tender-engineering").parent().siblings('.hidden-area').slideDown('fast');
|
|
|
+ getStdCalcProgramFiles();
|
|
|
+ }
|
|
|
|
|
|
- function getStdCalcProgramFiles(){
|
|
|
- function getStdCPFilesHtml(stdCPLibs) {
|
|
|
- let result = '<option value="">请选择计算程序</option>';
|
|
|
- if (stdCPLibs.length <= 0) {
|
|
|
- return result;
|
|
|
- };
|
|
|
|
|
|
- for (let lib of stdCPLibs){
|
|
|
- result += '<option value='+ lib.id +'>'+ lib.name +'</option>';
|
|
|
- };
|
|
|
+
|
|
|
+ function getStdCalcProgramFiles(){
|
|
|
+ function getStdCPFilesHtml(taxGroups) {
|
|
|
+ let result = '<option value="">请选择计算程序</option>';
|
|
|
+ if (taxGroups.length <= 0) {
|
|
|
return result;
|
|
|
};
|
|
|
- let stdCPHtml = getStdCPFilesHtml(getcalcProgramList());
|
|
|
- $("#tender-calcProgram").html(stdCPHtml);
|
|
|
- if ($("#tender-calcProgram")[0].options.length > 1)
|
|
|
- $("#tender-calcProgram")[0].selectedIndex = 1;
|
|
|
+
|
|
|
+ for (let group of taxGroups){
|
|
|
+ let groupString = ""; //把计算程序、清单模板、列设置的ID生成一个组合的值
|
|
|
+ let p_id = group.program_lib?group.program_lib.id:"";
|
|
|
+ let t_id = group.template_lib?group.template_lib.id:"";
|
|
|
+ let c_id = group.col_lib?group.col_lib.id:"";
|
|
|
+ groupString = p_id + "|-|" +t_id+"|-|"+c_id;
|
|
|
+ result += '<option value='+ groupString +'>'+ group.program_lib.name +'</option>';
|
|
|
+ };
|
|
|
+ return result;
|
|
|
};
|
|
|
- getStdCalcProgramFiles();
|
|
|
+ let stdCPHtml = getStdCPFilesHtml(getTaxGroupList());
|
|
|
+ $("#tender-calcProgram").html(stdCPHtml);
|
|
|
+ if ($("#tender-calcProgram")[0].options.length > 1)
|
|
|
+ $("#tender-calcProgram")[0].selectedIndex = 1;
|
|
|
}
|
|
|
+
|
|
|
// 选择工程专业后动态更改费率文件等数据
|
|
|
$("#tender-engineering").change(function() {
|
|
|
changeEngineering()
|
|
@@ -1810,17 +1823,22 @@ function getEngineeringList(){
|
|
|
return engineeringList;
|
|
|
}
|
|
|
|
|
|
-function getcalcProgramList(){
|
|
|
+function getTaxGroupList(){//getcalcProgramList
|
|
|
let egrs = getEngineeringList();
|
|
|
- let calcProgramList = [];
|
|
|
+ let groupList = [];
|
|
|
let egrID = $("#tender-engineering").val();
|
|
|
+ let taxType = $("#taxType").val();
|
|
|
for(let egr of egrs) {
|
|
|
- if (egr.engineering == egrID) {
|
|
|
- calcProgramList = egr.lib.program_lib;
|
|
|
+ if (egr.engineering_id == egrID && egr.lib) {
|
|
|
+ for(let group of egr.lib.tax_group){
|
|
|
+ if(group.taxType == taxType && group.program_lib){
|
|
|
+ groupList.push(group);
|
|
|
+ }
|
|
|
+ }
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
- return calcProgramList;
|
|
|
+ return groupList;
|
|
|
}
|
|
|
|
|
|
function getNodeByName(name, nodes){
|
|
@@ -2100,22 +2118,36 @@ function AddTender() {
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- let engineering = $("#tender-engineering").val();
|
|
|
- if (engineering === '') {
|
|
|
+ let engineering_id = $("#tender-engineering").val();
|
|
|
+ if (engineering_id === '') {
|
|
|
setDangerInfo($('#engineering-info'), '请选择工程专业');
|
|
|
return false;
|
|
|
}
|
|
|
|
|
|
- let calcProgram = $("#tender-calcProgram").val();
|
|
|
- if (calcProgram === '') {
|
|
|
+ let taxType = $("#taxType").val();
|
|
|
+ if(taxType ===""){
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ let IDGroup = $("#tender-calcProgram").val();
|
|
|
+ if (IDGroup === '') {
|
|
|
setDangerInfo($('#calcProgram-info'), '请选择计算程序');
|
|
|
return false;
|
|
|
}
|
|
|
+ IDGroup = IDGroup.split("|-|");
|
|
|
+
|
|
|
+ let calcProgram = isNaN(parseInt(IDGroup[0]))?IDGroup[0]:parseInt(IDGroup[0]);//转换成整数
|
|
|
+ let templateLibID = IDGroup[1];
|
|
|
+ let colLibID = IDGroup[2];
|
|
|
+ if(templateLibID == ''|| colLibID ==''){
|
|
|
+ alert("工程专业配置有误!");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
|
|
|
let valuationName = $("#valuation").children("option:selected").text();
|
|
|
let valuationType = $("input[name='valuation_type']:checked").val();
|
|
|
|
|
|
- let engineering_id = undefined;
|
|
|
+ let engineering = undefined;
|
|
|
let valuationData = valuationType === 'bill' ? JSON.parse(billValuation) : JSON.parse(rationValuation);
|
|
|
let engineeringList = [];
|
|
|
for(let tmp of valuationData) {
|
|
@@ -2126,8 +2158,8 @@ function AddTender() {
|
|
|
}
|
|
|
let libs = null;
|
|
|
for(let tmp of engineeringList) {
|
|
|
- if (tmp.engineering == engineering) {
|
|
|
- engineering_id = tmp.engineering_id;
|
|
|
+ if (tmp.engineering_id == engineering_id) {
|
|
|
+ engineering = tmp.engineering;
|
|
|
libs = tmp.lib;
|
|
|
break;
|
|
|
}
|
|
@@ -2162,7 +2194,10 @@ function AddTender() {
|
|
|
engineeringName: engineeringName,
|
|
|
unitPriceFile: {name: unitPriceFileObj.name, id: unitPriceFileObj.id},
|
|
|
feeFile: {name: feeFileObj.name, id: feeFileObj.id},
|
|
|
- calcProgram: {name: calcProgramName, id: calcProgram}
|
|
|
+ calcProgram: {name: calcProgramName, id: calcProgram},
|
|
|
+ taxType:taxType,
|
|
|
+ templateLibID:templateLibID,
|
|
|
+ colLibID:colLibID
|
|
|
};
|
|
|
AddTenderItems(selectedItem, projName, engName, tenderName, tenderInfo, callback);
|
|
|
|
|
@@ -2495,9 +2530,10 @@ function getEngineeringHtml(engineeringList) {
|
|
|
|
|
|
for(let i = 0; i < engineeringList.length; i++){
|
|
|
let tmp = engineeringList[i];
|
|
|
- if (engineeringObject[tmp.engineering] !== undefined) {
|
|
|
+ result += `<option ${i === 0 ? 'selected' : ''} value="${tmp.engineering_id}">${tmp.lib.name}</option>`;
|
|
|
+ /*if (engineeringObject[tmp.engineering] !== undefined) {
|
|
|
result += `<option ${i === 0 ? 'selected' : ''} value="${tmp.engineering}">${engineeringObject[tmp.engineering]}</option>`;
|
|
|
- }
|
|
|
+ }*/
|
|
|
}
|
|
|
|
|
|
/*for(let tmp of engineeringList) {
|