|
@@ -383,9 +383,12 @@ let repositoryGljObj = {
|
|
|
let field = me.setting.header[col].dataCode;
|
|
|
if(field === 'gljType'){
|
|
|
me.workBook.getSheet(0).getCell(me.editingRowIdx, col).value(
|
|
|
- me.distTypeTree.distTypes[me.distTypeTree.prefix + me.currentEditingGlj[field]].data.fullName);
|
|
|
+ typeof me.currentEditingGlj[field] !== 'undefined'?
|
|
|
+ me.distTypeTree.distTypes[me.distTypeTree.prefix + me.currentEditingGlj[field]].data.fullName
|
|
|
+ : '');
|
|
|
}
|
|
|
else{
|
|
|
+ me.workBook.getSheet(0).getCell(me.editingRowIdx, 0).formatter("@");
|
|
|
me.workBook.getSheet(0).getCell(me.editingRowIdx, col).value(me.currentEditingGlj[me.setting.header[col].dataCode]);
|
|
|
}
|
|
|
}
|
|
@@ -421,30 +424,33 @@ let repositoryGljObj = {
|
|
|
if (me.currentEditingGlj["ID"]) {
|
|
|
rObj["ID"] = me.currentEditingGlj["ID"];
|
|
|
rObj.gljClass = me.currentEditingGlj.gljClass;
|
|
|
- for(let col =0; col< me.setting.header.length; col++){
|
|
|
- if(me.currentEditingGlj[me.setting.header[col].dataCode] !== rObj[me.setting.header[col].dataCode]){
|
|
|
- me.addGljObj = rObj;
|
|
|
- if(rObj[me.setting.header[0].dataCode] && rObj[me.setting.header[1].dataCode] && rObj[me.setting.header[5].dataCode]){
|
|
|
+ //for(let col =0; col< me.setting.header.length; col++){
|
|
|
+ if(me.currentEditingGlj[me.setting.header[args.col].dataCode] !== rObj[me.setting.header[args.col].dataCode]){
|
|
|
+ //me.addGljObj = rObj;
|
|
|
+ //编码、名称、单位、类型不可为空
|
|
|
+ if(rObj[me.setting.header[0].dataCode] && rObj[me.setting.header[1].dataCode] && rObj[me.setting.header[3].dataCode] && rObj[me.setting.header[5].dataCode]
|
|
|
+ &&rObj[me.setting.header[0].dataCode].toString().trim().length !== 0 && rObj[me.setting.header[1].dataCode].toString().trim().length !== 0 && rObj[me.setting.header[3].dataCode].toString().trim().length !== 0&&
|
|
|
+ rObj[me.setting.header[5].dataCode].toString().trim().length !== 0){
|
|
|
if(rObj.gljType !== me.currentEditingGlj.gljType){//修改了工料机类型
|
|
|
- if(me.currentGlj){
|
|
|
- me.currentGlj.component = [];
|
|
|
- }
|
|
|
- if(me.allowComponent.indexOf(rObj.gljType) !== -1){
|
|
|
- rObj.basePrice = 0;
|
|
|
- }
|
|
|
- if(me.componentGljType.indexOf(me.currentEditingGlj.gljType) !== -1 &&
|
|
|
- !(me.currentEditingGlj.gljType === 302 && rObj.gljType === 303) && !(me.currentEditingGlj.gljType === 303 && rObj.gljType === 302)){//修改了原本是组成物的工料机
|
|
|
- //寻找所有引用了此组成物的工料机,并从组成物中删去此工料机,并重算单价
|
|
|
- let updateGljs = me.getUpdateGljs(rObj);
|
|
|
- if(updateGljs.updateArr.length > 0 || updateGljs.updateBasePrcArr.length > 0){
|
|
|
- for(let i = 0; i < updateGljs.updateArr.length; i++){
|
|
|
- updateArr.push(updateGljs.updateArr[i]);
|
|
|
- }
|
|
|
- for(let i = 0; i < updateGljs.updateBasePrcArr.length; i++){
|
|
|
- updateArr.push(updateGljs.updateBasePrcArr[i]);
|
|
|
+ if(me.currentGlj){
|
|
|
+ me.currentGlj.component = [];
|
|
|
+ }
|
|
|
+ if(me.allowComponent.indexOf(rObj.gljType) !== -1){
|
|
|
+ rObj.basePrice = 0;
|
|
|
+ }
|
|
|
+ if(me.componentGljType.indexOf(me.currentEditingGlj.gljType) !== -1 &&
|
|
|
+ !(me.currentEditingGlj.gljType === 302 && rObj.gljType === 303) && !(me.currentEditingGlj.gljType === 303 && rObj.gljType === 302)){//修改了原本是组成物的工料机
|
|
|
+ //寻找所有引用了此组成物的工料机,并从组成物中删去此工料机,并重算单价
|
|
|
+ let updateGljs = me.getUpdateGljs(rObj);
|
|
|
+ if(updateGljs.updateArr.length > 0 || updateGljs.updateBasePrcArr.length > 0){
|
|
|
+ for(let i = 0; i < updateGljs.updateArr.length; i++){
|
|
|
+ updateArr.push(updateGljs.updateArr[i]);
|
|
|
+ }
|
|
|
+ for(let i = 0; i < updateGljs.updateBasePrcArr.length; i++){
|
|
|
+ updateArr.push(updateGljs.updateBasePrcArr[i]);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
}
|
|
|
else if(rObj.basePrice !== me.currentEditingGlj.basePrice){//修改了单价,可修改单价的必为可成为组成物的
|
|
|
//寻找所有引用了此组成物的工料机,并从组成物中删去此工料机,并重算单价
|
|
@@ -461,10 +467,19 @@ let repositoryGljObj = {
|
|
|
}
|
|
|
rObj.component = me.currentGlj.component;
|
|
|
updateArr.push(rObj);
|
|
|
- break;
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ if(me.setting.header[args.col].dataCode === 'gljType'){
|
|
|
+ console.log(me.distTypeTree);
|
|
|
+ let distTypeVal = me.distTypeTree.distTypes[me.distTypeTree.prefix + me.currentEditingGlj[me.setting.header[args.col].dataCode]].data.fullName;
|
|
|
+ args.sheet.setValue(args.row, args.col, distTypeVal);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ args.sheet.setValue(args.row, args.col, me.currentEditingGlj[me.setting.header[args.col].dataCode]);
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
- }
|
|
|
+ // }
|
|
|
//--------------------------------------
|
|
|
if(me.currentEditingGlj.basePrice !== rObj.basePrice){
|
|
|
//update basePrice of ration when editting basePrice of glj
|
|
@@ -496,20 +511,22 @@ let repositoryGljObj = {
|
|
|
}
|
|
|
//新增
|
|
|
else {
|
|
|
- me.addGljObj = rObj;
|
|
|
- let isCanSav = true;
|
|
|
- if(!rObj[me.setting.header[0].dataCode] || !rObj[me.setting.header[1].dataCode] || !rObj[me.setting.header[3].dataCode] || !rObj[me.setting.header[5].dataCode]){
|
|
|
- isCanSav = false;
|
|
|
- }
|
|
|
- if(isCanSav){
|
|
|
- me.addGljObj = null;
|
|
|
- rObj.component = [];
|
|
|
- //如果类型为混凝土、砂浆、配合比、机械台班时,添加时填写的单价清空
|
|
|
- if(me.allowComponent.indexOf(rObj.gljType) !== -1){
|
|
|
- rObj.basePrice = 0;
|
|
|
+ if(typeof rObj.code !== 'undefined'){
|
|
|
+ me.addGljObj = rObj;
|
|
|
+ let isCanSav = true;
|
|
|
+ if(!rObj[me.setting.header[0].dataCode] || !rObj[me.setting.header[1].dataCode] || !rObj[me.setting.header[3].dataCode] || !rObj[me.setting.header[5].dataCode]){
|
|
|
+ isCanSav = false;
|
|
|
+ }
|
|
|
+ if(isCanSav){
|
|
|
+ me.addGljObj = null;
|
|
|
+ rObj.component = [];
|
|
|
+ //如果类型为混凝土、砂浆、配合比、机械台班时,添加时填写的单价清空
|
|
|
+ if(me.allowComponent.indexOf(rObj.gljType) !== -1){
|
|
|
+ rObj.basePrice = 0;
|
|
|
+ }
|
|
|
+ rObj.basePrice = !isNaN(parseFloat(rObj.basePrice)) && (rObj.basePrice && typeof rObj.basePrice !== 'undefined') ? parseFloat(rObj.basePrice) : 0;
|
|
|
+ addArr.push(rObj);
|
|
|
}
|
|
|
- rObj.basePrice = !isNaN(parseFloat(rObj.basePrice)) && (rObj.basePrice && typeof rObj.basePrice !== 'undefined') ? parseFloat(rObj.basePrice) : 0;
|
|
|
- addArr.push(rObj);
|
|
|
}
|
|
|
}
|
|
|
if(me.gljCurTypeId !== 732){
|
|
@@ -518,7 +535,6 @@ let repositoryGljObj = {
|
|
|
if(updateArr.length >0 || addArr.length >0){
|
|
|
me.currentEditingGlj = null;
|
|
|
//me.workBook.getSheet(0).setValue(11, 5, "人工");
|
|
|
- console.log(updateArr);
|
|
|
me.mixUpdateRequest(updateArr, addArr, []);
|
|
|
}
|
|
|
},
|
|
@@ -548,7 +564,6 @@ let repositoryGljObj = {
|
|
|
updateBasePrcArr.push(updateGljs.updateBasePrcArr[i]);
|
|
|
}
|
|
|
}
|
|
|
- console.log(updateArr);
|
|
|
removeArr.push(cacheSection[sels[i].row + j].ID);
|
|
|
//tempRemoveArr.push({ID: cacheSection[sels[i].row + j].ID, code: cacheSection[sels[i].row + j].code});
|
|
|
//删除后重新计算引用了此工料机的定额单价
|
|
@@ -611,9 +626,9 @@ let repositoryGljObj = {
|
|
|
//确认
|
|
|
$('#aleConfBtn').click(function () {
|
|
|
me.mixUpdateRequest(updateArr, [], removeArr);
|
|
|
- if(updateBasePrcArr.length > 0 && me.rationLibs.length > 0){
|
|
|
+ /*if(updateBasePrcArr.length > 0 && me.rationLibs.length > 0){
|
|
|
me.updateRationBasePrcRq(updateBasePrcArr);
|
|
|
- }
|
|
|
+ }*/
|
|
|
});
|
|
|
}
|
|
|
}
|
|
@@ -1034,6 +1049,8 @@ let gljTypeTreeOprObj = {
|
|
|
gljTypeId = treeNode.ID;
|
|
|
me.gljCurTypeId = treeNode.ID;
|
|
|
that.isLocked = true;
|
|
|
+ //消除新增到一半的数据
|
|
|
+ me.addGljObj = null;
|
|
|
//me.currentCache = me.getCache();
|
|
|
sheetOpr.cleanSheet(that.workBook.getSheet(0), that.setting, 5);
|
|
|
that.workBook.getSheet(0).getRange(-1, 0 , -1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(true);
|