|
@@ -118,10 +118,13 @@ let contentOprObj = {
|
|
|
|
|
|
},
|
|
|
save: function () {
|
|
|
- let me = contentOprObj;
|
|
|
- let contentTxt = me.getColData(me.currentCache);
|
|
|
- let txtObj = {field: 'jobContentText', text: contentTxt ? contentTxt : ''};
|
|
|
- pageCCOprObj.updateCharacterContent(pageCCOprObj.currentFindSet, {field: 'jobContent', updateArr: me.currentCache}, txtObj, contentOprObj);
|
|
|
+ let selectedNode = projectObj.mainController.tree.selected;
|
|
|
+ const setting = projectObj.project.property.addRule !== undefined ? projectObj.project.property.addRule : null;
|
|
|
+ pageCCOprObj.setCharacterBySetting(selectedNode, setting);
|
|
|
+ // let me = contentOprObj;
|
|
|
+ // let contentTxt = me.getColData(me.currentCache);
|
|
|
+ // let txtObj = {field: 'jobContentText', text: contentTxt ? contentTxt : ''};
|
|
|
+ // pageCCOprObj.updateCharacterContent(pageCCOprObj.currentFindSet, {field: 'jobContent', updateArr: me.currentCache}, txtObj, contentOprObj);
|
|
|
},
|
|
|
onEditEnded: function (sender, args) {
|
|
|
let me = contentOprObj;
|
|
@@ -348,6 +351,7 @@ let characterOprObj = {
|
|
|
},
|
|
|
//显示到清单项目特征列的数据
|
|
|
getColData: function (itemsArr) {
|
|
|
+ console.log(111);
|
|
|
let me = characterOprObj;
|
|
|
let rstStr = "", count = 0;
|
|
|
for(let i = 0, len = itemsArr.length; i < len; i++){
|
|
@@ -489,10 +493,13 @@ let characterOprObj = {
|
|
|
}
|
|
|
},
|
|
|
save: function () {
|
|
|
- let me = characterOprObj;
|
|
|
- let characterTxt = me.getColData(me.currentCache);
|
|
|
- let txtObj = {field: 'itemCharacterText', text: characterTxt ? characterTxt : ''};
|
|
|
- pageCCOprObj.updateCharacterContent(pageCCOprObj.currentFindSet, {field: 'itemCharacter', updateArr: me.currentCache}, txtObj, characterOprObj);
|
|
|
+ let selectedNode = projectObj.mainController.tree.selected;
|
|
|
+ const setting = projectObj.project.property.addRule !== undefined ? projectObj.project.property.addRule : null;
|
|
|
+ pageCCOprObj.setCharacterBySetting(selectedNode, setting);
|
|
|
+ // let me = characterOprObj;
|
|
|
+ // let characterTxt = me.getColData(me.currentCache);
|
|
|
+ // let txtObj = {field: 'itemCharacterText', text: characterTxt ? characterTxt : ''};
|
|
|
+ // pageCCOprObj.updateCharacterContent(pageCCOprObj.currentFindSet, {field: 'itemCharacter', updateArr: me.currentCache}, txtObj, characterOprObj);
|
|
|
},
|
|
|
onEditStart: function (sender, args) {
|
|
|
let me = characterOprObj;
|
|
@@ -640,6 +647,7 @@ let characterOprObj = {
|
|
|
let pageCCOprObj = {
|
|
|
currentFindSet: null,
|
|
|
mainActiveCell: null,//mainSpread焦点单元格
|
|
|
+ nameCache: '',
|
|
|
//获得造价书当前焦点行的类型:清单、定额
|
|
|
isBillsType: function () {
|
|
|
let rst = false;
|
|
@@ -777,14 +785,13 @@ let pageCCOprObj = {
|
|
|
*
|
|
|
* @param {Object} node - 节点数据
|
|
|
* @param {Object} refreshData - 刷新的数据
|
|
|
- * @param {Object} defaultData - 默认数据
|
|
|
* @return {void}
|
|
|
*/
|
|
|
- refreshView: function(node, refreshData, defaultData) {
|
|
|
+ refreshView: function(node, refreshData) {
|
|
|
// 更新清单行特征列或内容列
|
|
|
let updateCol = [
|
|
|
- { name: 'character', col: 4 },
|
|
|
- { name: 'content', col: 5 },
|
|
|
+ { name: 'itemCharacterText', col: 4 },
|
|
|
+ { name: 'jobContentText', col: 5 },
|
|
|
{ name: 'name', col: 2 }
|
|
|
];
|
|
|
if (updateCol === '') {
|
|
@@ -794,15 +801,10 @@ let pageCCOprObj = {
|
|
|
// 刷新输出显示
|
|
|
for (const tmp of updateCol) {
|
|
|
// 没有默认的数据则跳过刷新
|
|
|
- if (defaultData[tmp.name] === undefined) {
|
|
|
- continue;
|
|
|
- }
|
|
|
- // 不存在更新的数据则全部用默认数据替代
|
|
|
if (refreshData[tmp.name] === undefined) {
|
|
|
- projectObj.mainSpread.getActiveSheet().setValue(row, tmp.col, defaultData[tmp.name] + '');
|
|
|
- } else {
|
|
|
- projectObj.mainSpread.getActiveSheet().setValue(row, tmp.col, refreshData[tmp.name] + '');
|
|
|
+ continue;
|
|
|
}
|
|
|
+ projectObj.mainSpread.getActiveSheet().setValue(row, tmp.col, refreshData[tmp.name] + '');
|
|
|
}
|
|
|
projectObj.mainSpread.getActiveSheet().autoFitRow(row);
|
|
|
},
|
|
@@ -819,17 +821,22 @@ let pageCCOprObj = {
|
|
|
|
|
|
// 保存的条件数据
|
|
|
const findSet = { ID: node.data.ID, projectID: node.data.projectID };
|
|
|
+
|
|
|
// 获取默认数据
|
|
|
const defaultData = this.getDataBySetting(node, {
|
|
|
serialType: "1",
|
|
|
characterFormat: "2",
|
|
|
});
|
|
|
- // console.log(defaultData);return false;
|
|
|
defaultData.character = defaultData.character.join("\r\n");
|
|
|
defaultData.content = defaultData.content.join("\r\n");
|
|
|
|
|
|
// 获取当前设置数据
|
|
|
const currentData = this.getDataBySetting(node, setting);
|
|
|
+ let updateData = {
|
|
|
+ itemCharacterText: '',
|
|
|
+ jobContentText: '',
|
|
|
+ name: '',
|
|
|
+ };
|
|
|
|
|
|
// 组合数据
|
|
|
let content = '';
|
|
@@ -881,55 +888,42 @@ let pageCCOprObj = {
|
|
|
break;
|
|
|
}
|
|
|
// 添加到对应位置
|
|
|
- let saveObj = [];
|
|
|
- let refreshData = {};
|
|
|
- saveObj.push({ field: 'addRule', value: setting });
|
|
|
switch (setting.position) {
|
|
|
case "1":
|
|
|
// 添加到项目特征列
|
|
|
- saveObj.push({field: 'itemCharacterText', value: content});
|
|
|
- // 还原名称及内容
|
|
|
- saveObj.push({field: 'name', value: defaultData.name});
|
|
|
- saveObj.push({field: 'jobContentText', value: defaultData.content});
|
|
|
- // 刷新数据
|
|
|
- refreshData = {'character': content};
|
|
|
+ updateData.itemCharacterText = content;
|
|
|
break;
|
|
|
case "2":
|
|
|
// 添加到清单名称列
|
|
|
content = defaultData.name + "\r\n" + content;
|
|
|
- saveObj.push({field: 'name', value: content});
|
|
|
- // 还原特征及内容
|
|
|
- saveObj.push({field: 'itemCharacterText', value: defaultData.character});
|
|
|
- saveObj.push({field: 'jobContentText', value: defaultData.content});
|
|
|
- // 刷新数据
|
|
|
- refreshData = {'name': content};
|
|
|
+ updateData.name = content;
|
|
|
break;
|
|
|
case "3":
|
|
|
// 添加到工作内容列
|
|
|
- saveObj.push({field: 'jobContentText', value: content});
|
|
|
- // 还原名称以及特征
|
|
|
- saveObj.push({field: 'itemCharacterText', value: defaultData.character});
|
|
|
- saveObj.push({field: 'name', value: defaultData.name});
|
|
|
- // 刷新数据
|
|
|
- refreshData = {'content': content};
|
|
|
+ updateData.jobContentText = content;
|
|
|
break;
|
|
|
case "4":
|
|
|
- // 分别添加到对应列
|
|
|
- if (Object.keys(defaultData).length <= 0) {
|
|
|
- return;
|
|
|
- }
|
|
|
- // 特征
|
|
|
- saveObj.push({field: 'itemCharacterText', value: defaultData.character});
|
|
|
- // 内容
|
|
|
- saveObj.push({field: 'jobContentText', value: defaultData.content});
|
|
|
- // 名称
|
|
|
- saveObj.push({field: 'name', value: defaultData.name});
|
|
|
- refreshData = {};
|
|
|
+ updateData = {
|
|
|
+ itemCharacterText: defaultData.character,
|
|
|
+ jobContentText: defaultData.content,
|
|
|
+ name: defaultData.name,
|
|
|
+ };
|
|
|
break;
|
|
|
}
|
|
|
+ let saveObj = [];
|
|
|
+ for (const index in updateData) {
|
|
|
+ saveObj.push({field: index, value: updateData[index]});
|
|
|
+ }
|
|
|
+ saveObj.push({field: 'addRule', value: setting});
|
|
|
// 更新到数据库
|
|
|
pageCCOprObj.updateBill(findSet, saveObj, function(response) {
|
|
|
- self.refreshView(node, refreshData, defaultData);
|
|
|
+ self.refreshView(node, updateData);
|
|
|
+ // 更新项目属性的配置
|
|
|
+ projectObj.project.property.addRule = setting;
|
|
|
+ // 更新节点数据
|
|
|
+ node.data.name = updateData.name;
|
|
|
+ node.data.itemCharacterText = updateData.itemCharacterText;
|
|
|
+ node.data.jobContentText = updateData.jobContentText;
|
|
|
});
|
|
|
|
|
|
},
|
|
@@ -1006,9 +1000,7 @@ let pageCCOprObj = {
|
|
|
throw '内部数据错误';
|
|
|
}
|
|
|
// 默认名称
|
|
|
- let nodeNameList = node.data.name.split("\r\n");
|
|
|
- const nameContent = nodeNameList[0] !== undefined ? nodeNameList[0] : '';
|
|
|
- result['name'] = nameContent;
|
|
|
+ result['name'] = this.nameCache;
|
|
|
|
|
|
// 特征
|
|
|
let characterArray = [];
|
|
@@ -1057,54 +1049,9 @@ let pageCCOprObj = {
|
|
|
}
|
|
|
result['content'] = jobArray;
|
|
|
} catch (error) {
|
|
|
+ console.log(error);
|
|
|
result = {};
|
|
|
}
|
|
|
return result;
|
|
|
},
|
|
|
- /**
|
|
|
- * 还原数据
|
|
|
- *
|
|
|
- * @param {Object} node - 节点数据
|
|
|
- * @param {String} setType - 当前设置的项
|
|
|
- * @param {Object} baseData - 需要用到的基础数据
|
|
|
- * @param {Object} defaultContentInfo - 默认数据
|
|
|
- * @return {void}
|
|
|
- */
|
|
|
- restoreData: function(node, setType, baseData, defaultContentInfo) {
|
|
|
- if (baseData.findSet === undefined ||
|
|
|
- baseData.itemJob === undefined || baseData.itemCharacter === undefined) {
|
|
|
- return;
|
|
|
- }
|
|
|
-
|
|
|
- switch (setType) {
|
|
|
- case "1":
|
|
|
- // 添加到项目特征列
|
|
|
- // 把其他字段还原回原来数据
|
|
|
- // 还原名称
|
|
|
- projectObj.project.Bills.updateField(node.source, 'name', defaultContentInfo.nameContent, true);
|
|
|
- projectObj.mainController.refreshTreeNode([node], false);
|
|
|
- // 还原工作内容
|
|
|
- pageCCOprObj.updateCharacterContent(baseData.findSet, {field: 'jobContent', updateArr: baseData.itemJob},
|
|
|
- {field: 'jobContentText', text: contentOprObj.lastTextCache}, node);
|
|
|
- break;
|
|
|
- case "2":
|
|
|
- // 添加到清单名称
|
|
|
- // 还原特征
|
|
|
- pageCCOprObj.updateCharacterContent(baseData.findSet, {field: 'itemCharacter', updateArr: baseData.itemCharacter},
|
|
|
- {field: 'itemCharacterText', text: characterOprObj.lastTextCache}, node);
|
|
|
- // 还原工作内容
|
|
|
- pageCCOprObj.updateCharacterContent(baseData.findSet, {field: 'jobContent', updateArr: baseData.itemJob},
|
|
|
- {field: 'jobContentText', text: contentOprObj.lastTextCache}, node);
|
|
|
- break;
|
|
|
- case "3":
|
|
|
- // 添加到工作内容列
|
|
|
- // 还原名称
|
|
|
- projectObj.project.Bills.updateField(node.source, 'name', defaultContentInfo.nameContent, true);
|
|
|
- projectObj.mainController.refreshTreeNode([node], false);
|
|
|
- // 还原特征
|
|
|
- pageCCOprObj.updateCharacterContent(baseData.findSet, {field: 'itemCharacter', updateArr: baseData.itemCharacter},
|
|
|
- {field: 'itemCharacterText', text: characterOprObj.lastTextCache}, node);
|
|
|
- break;
|
|
|
- }
|
|
|
- },
|
|
|
}
|