|
@@ -351,7 +351,6 @@ 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++){
|
|
@@ -658,17 +657,22 @@ let pageCCOprObj = {
|
|
|
return rst;
|
|
|
|
|
|
},
|
|
|
- setItemContentNode: function (node, jobs, items) {
|
|
|
+ setItemContentNode: function (node, jobs, items, name = '') {
|
|
|
let theCont = contentOprObj, theCha = characterOprObj,
|
|
|
jobContent, itemCharacter, contentTxt, characterTxt;
|
|
|
jobContent = theCont.buildJobContent(jobs);
|
|
|
itemCharacter = theCha.buildItemCharactet(items);
|
|
|
- contentTxt = theCont.getColData(jobContent);
|
|
|
- characterTxt = theCha.getColData(itemCharacter);
|
|
|
+ // contentTxt = theCont.getColData(jobContent);
|
|
|
+ // characterTxt = theCha.getColData(itemCharacter);
|
|
|
node.data.jobContent = jobContent;
|
|
|
node.data.itemCharacter = itemCharacter;
|
|
|
- node.data.jobContentText = contentTxt ? contentTxt : '';
|
|
|
- node.data.itemCharacterText = characterTxt ? characterTxt : '';
|
|
|
+ this.nameCache = name;
|
|
|
+ // 根据规则设置对应特征、内容、名称格式
|
|
|
+ const setting = projectObj.project.property.addRule !== undefined ? projectObj.project.property.addRule : null;
|
|
|
+ const updateData = pageCCOprObj.getCharacterUpdateData(setting, node);
|
|
|
+ node.data.jobContentText = updateData.jobContentText;
|
|
|
+ node.data.itemCharacterText = updateData.itemCharacterText;
|
|
|
+ node.data.name = updateData.name;
|
|
|
},
|
|
|
safeItemCharater: function (itemCharater) {
|
|
|
return characterOprObj.buildItemCharactet(itemCharater);
|
|
@@ -797,7 +801,7 @@ let pageCCOprObj = {
|
|
|
if (updateCol === '') {
|
|
|
return;
|
|
|
}
|
|
|
- const row = node.getID() - 1;
|
|
|
+ const row = node.serialNo();
|
|
|
// 刷新输出显示
|
|
|
for (const tmp of updateCol) {
|
|
|
// 没有默认的数据则跳过刷新
|
|
@@ -816,100 +820,12 @@ let pageCCOprObj = {
|
|
|
* @return {void}
|
|
|
*/
|
|
|
setCharacterBySetting: function(node, setting) {
|
|
|
- let contentArray = [];
|
|
|
let self = this;
|
|
|
|
|
|
// 保存的条件数据
|
|
|
const findSet = { ID: node.data.ID, projectID: node.data.projectID };
|
|
|
+ const updateData = this.getCharacterUpdateData(setting, node);
|
|
|
|
|
|
- // 获取默认数据
|
|
|
- const defaultData = this.getDataBySetting(node, {
|
|
|
- serialType: "1",
|
|
|
- characterFormat: "2",
|
|
|
- });
|
|
|
- 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 = '';
|
|
|
- switch (setting.addContent) {
|
|
|
- case "1":
|
|
|
- // 项目特征+工作内容
|
|
|
- contentArray.push('[项目特征]');
|
|
|
- contentArray.push.apply(contentArray, currentData.character);
|
|
|
- contentArray.push('[工作内容]');
|
|
|
- contentArray.push.apply(contentArray, currentData.content);
|
|
|
- break;
|
|
|
- case "2":
|
|
|
- // 工作内容+项目特征
|
|
|
- contentArray.push('[工作内容]');
|
|
|
- contentArray.push.apply(contentArray, currentData.content);
|
|
|
- contentArray.push('[项目特征]');
|
|
|
- contentArray.push.apply(contentArray, currentData.character);
|
|
|
- break;
|
|
|
- case "3":
|
|
|
- // 项目特征
|
|
|
- contentArray.push.apply(contentArray, currentData.character);
|
|
|
- break;
|
|
|
- case "4":
|
|
|
- // 工作内容
|
|
|
- contentArray.push.apply(contentArray, currentData.content);
|
|
|
- break;
|
|
|
- case "5":
|
|
|
- // 定额子目
|
|
|
- const rationChapter = this.getRationChapter(node, setting);
|
|
|
- contentArray.push.apply(contentArray, rationChapter);
|
|
|
- break;
|
|
|
- case "":
|
|
|
- // 无
|
|
|
- break;
|
|
|
- }
|
|
|
- // 显示格式
|
|
|
- switch (setting.displayFormat) {
|
|
|
- case "1":
|
|
|
- // 换行分隔
|
|
|
- content = contentArray.join("\r\n");
|
|
|
- break;
|
|
|
- case "2":
|
|
|
- // 逗号分隔
|
|
|
- content = contentArray.join(',');
|
|
|
- break;
|
|
|
- case "3":
|
|
|
- // 括号分隔
|
|
|
- content = '(' + contentArray.join(',') + ')';
|
|
|
- break;
|
|
|
- }
|
|
|
- // 添加到对应位置
|
|
|
- switch (setting.position) {
|
|
|
- case "1":
|
|
|
- // 添加到项目特征列
|
|
|
- updateData.itemCharacterText = content;
|
|
|
- break;
|
|
|
- case "2":
|
|
|
- // 添加到清单名称列
|
|
|
- content = defaultData.name + "\r\n" + content;
|
|
|
- updateData.name = content;
|
|
|
- break;
|
|
|
- case "3":
|
|
|
- // 添加到工作内容列
|
|
|
- updateData.jobContentText = content;
|
|
|
- break;
|
|
|
- case "4":
|
|
|
- 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]});
|
|
@@ -1054,4 +970,105 @@ let pageCCOprObj = {
|
|
|
}
|
|
|
return result;
|
|
|
},
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取特征内容名称更新的数据
|
|
|
+ *
|
|
|
+ * @param {Object} setting - 设置
|
|
|
+ * @param {Object} node - 节点数据
|
|
|
+ * @return {Object} - 返回更新的数据
|
|
|
+ */
|
|
|
+ getCharacterUpdateData: function(setting, node) {
|
|
|
+ let updateData = {
|
|
|
+ itemCharacterText: '',
|
|
|
+ jobContentText: '',
|
|
|
+ name: '',
|
|
|
+ };
|
|
|
+ let contentArray = [];
|
|
|
+ // 获取默认数据
|
|
|
+ const defaultData = this.getDataBySetting(node, {
|
|
|
+ serialType: "1",
|
|
|
+ characterFormat: "2",
|
|
|
+ });
|
|
|
+ defaultData.character = defaultData.character.join("\r\n");
|
|
|
+ defaultData.content = defaultData.content.join("\r\n");
|
|
|
+
|
|
|
+ // 获取当前设置数据
|
|
|
+ const currentData = this.getDataBySetting(node, setting);
|
|
|
+
|
|
|
+ // 组合数据
|
|
|
+ let content = '';
|
|
|
+ switch (setting.addContent) {
|
|
|
+ case "1":
|
|
|
+ // 项目特征+工作内容
|
|
|
+ contentArray.push('[项目特征]');
|
|
|
+ contentArray.push.apply(contentArray, currentData.character);
|
|
|
+ contentArray.push('[工作内容]');
|
|
|
+ contentArray.push.apply(contentArray, currentData.content);
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ // 工作内容+项目特征
|
|
|
+ contentArray.push('[工作内容]');
|
|
|
+ contentArray.push.apply(contentArray, currentData.content);
|
|
|
+ contentArray.push('[项目特征]');
|
|
|
+ contentArray.push.apply(contentArray, currentData.character);
|
|
|
+ break;
|
|
|
+ case "3":
|
|
|
+ // 项目特征
|
|
|
+ contentArray.push.apply(contentArray, currentData.character);
|
|
|
+ break;
|
|
|
+ case "4":
|
|
|
+ // 工作内容
|
|
|
+ contentArray.push.apply(contentArray, currentData.content);
|
|
|
+ break;
|
|
|
+ case "5":
|
|
|
+ // 定额子目
|
|
|
+ const rationChapter = this.getRationChapter(node, setting);
|
|
|
+ contentArray.push.apply(contentArray, rationChapter);
|
|
|
+ break;
|
|
|
+ case "":
|
|
|
+ // 无
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ // 显示格式
|
|
|
+ switch (setting.displayFormat) {
|
|
|
+ case "1":
|
|
|
+ // 换行分隔
|
|
|
+ content = contentArray.join("\r\n");
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ // 逗号分隔
|
|
|
+ content = contentArray.join(',');
|
|
|
+ break;
|
|
|
+ case "3":
|
|
|
+ // 括号分隔
|
|
|
+ content = '(' + contentArray.join(',') + ')';
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ // 添加到对应位置
|
|
|
+ switch (setting.position) {
|
|
|
+ case "1":
|
|
|
+ // 添加到项目特征列
|
|
|
+ updateData.itemCharacterText = content;
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ // 添加到清单名称列
|
|
|
+ content = defaultData.name + "\r\n" + content;
|
|
|
+ updateData.name = content;
|
|
|
+ break;
|
|
|
+ case "3":
|
|
|
+ // 添加到工作内容列
|
|
|
+ updateData.jobContentText = content;
|
|
|
+ break;
|
|
|
+ case "4":
|
|
|
+ updateData = {
|
|
|
+ itemCharacterText: defaultData.character,
|
|
|
+ jobContentText: defaultData.content,
|
|
|
+ name: defaultData.name,
|
|
|
+ };
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ return updateData;
|
|
|
+ },
|
|
|
}
|