|
@@ -22,7 +22,7 @@ var gljOprObj = {
|
|
|
header: [
|
|
|
{headerName: "编码", headerWidth: 100, dataCode: "code", dataType: "String", formatter: "@"},
|
|
|
{headerName: "名称", headerWidth: 160, dataCode: "name", dataType: "String"},
|
|
|
- {headerName: "规格型号", headerWidth: 120, dataCode: "specs", dataType: "String", hAlign: "left"},
|
|
|
+ {headerName: "规格型号", headerWidth: 90, dataCode: "specs", dataType: "String", hAlign: "left"},
|
|
|
{headerName: "单位", headerWidth: 45, dataCode: "unit", dataType: "String", hAlign: "center"},
|
|
|
{headerName: "类型", headerWidth: 45, dataCode: "shortName", dataType: "String", hAlign: "center"},
|
|
|
{headerName: "定额消耗", headerWidth: 80, dataCode: "rationItemQuantity", dataType: "Number", hAlign: "right",decimalField:"glj.quantity"}, // dataType: "Number", formatter: "0.00"
|
|
@@ -792,6 +792,7 @@ var gljOprObj = {
|
|
|
isValidate = me.checkingActualValue(recode,newval)
|
|
|
}
|
|
|
if(isValidate){
|
|
|
+ newval = scMathUtil.roundTo(newval,-2);
|
|
|
projectObj.project.ration_ass.updateActualValue(me.assSheetData,args.row,newval)
|
|
|
}else {
|
|
|
newval = recode.actualValue;
|
|
@@ -856,7 +857,7 @@ var gljOprObj = {
|
|
|
}else {
|
|
|
me.gljLibSheetData=me[val];
|
|
|
}
|
|
|
- if($('#actionType').val()!='add'){
|
|
|
+ if($('#actionType').val()=='replace'||$('#actionType').val()=='m_replace'){
|
|
|
me.filterLibGLJByType();
|
|
|
}
|
|
|
if(me.gljCurTypeId==undefined){
|
|
@@ -878,29 +879,37 @@ var gljOprObj = {
|
|
|
}
|
|
|
},
|
|
|
addGLJsSelection:function (args,newVal) {
|
|
|
+ var con_key = this.getIndex(this.gljLibSheetData[args.row],['code','name','specs','unit','gljType'])
|
|
|
if(newVal==1){
|
|
|
- this.GLJSelection.push(this.gljLibSheetData[args.row].code);
|
|
|
+ this.GLJSelection.push(con_key);
|
|
|
this.gljLibSheetData[args.row].select=1;
|
|
|
}else if(newVal==0){
|
|
|
- _.pull(this.GLJSelection,this.gljLibSheetData[args.row].code);
|
|
|
+ _.pull(this.GLJSelection,con_key);
|
|
|
this.gljLibSheetData[args.row].select=0;
|
|
|
}
|
|
|
},
|
|
|
replaceGLJSelection:function (args,newVal) {
|
|
|
+ var me =this;
|
|
|
var oldSelection=this.GLJSelection[0];
|
|
|
if(newVal==0){
|
|
|
args.sheet.getCell(args.row, args.col).value(1);
|
|
|
return;
|
|
|
}
|
|
|
- this.GLJSelection=[this.gljLibSheetData[args.row].code];
|
|
|
+ this.GLJSelection=[me.getIndex(this.gljLibSheetData[args.row],['code','name','specs','unit','gljType'])];
|
|
|
this.gljLibSheetData[args.row].select=1;
|
|
|
- var oindex = _.findIndex(this.gljLibSheetData,{'code':oldSelection});
|
|
|
+ var oindex = _.findIndex(this.gljLibSheetData,function (item) {
|
|
|
+ var i_key = me.getIndex(item,['code','name','specs','unit','gljType']);
|
|
|
+ return oldSelection==i_key;
|
|
|
+ });
|
|
|
if(oindex!=-1){
|
|
|
args.sheet.getCell(oindex, args.col).value(0);
|
|
|
this.gljLibSheetData[oindex].select=0;
|
|
|
}else {
|
|
|
- var oldData = _.find(gljOprObj.AllRecode,{'code':oldSelection})
|
|
|
- oldData.select=0;
|
|
|
+ var oldData = _.find(gljOprObj.AllRecode,function (item) {
|
|
|
+ var i_key = me.getIndex(item,['code','name','specs','unit','gljType']);
|
|
|
+ return oldSelection==i_key;
|
|
|
+ });
|
|
|
+ oldData?oldData.select=0:"";
|
|
|
}
|
|
|
},
|
|
|
filterLibGLJByType:function () {
|
|
@@ -941,11 +950,20 @@ var gljOprObj = {
|
|
|
});
|
|
|
return distTypeTree;
|
|
|
},
|
|
|
+ doInsertGLJ:function () {
|
|
|
+ var selected = projectObj.project.mainTree.selected;
|
|
|
+ var project= projectObj.project;
|
|
|
+ console.log(gljOprObj.GLJSelection);
|
|
|
+ },
|
|
|
doAddGLJ:function () {
|
|
|
var selected = projectObj.project.mainTree.selected;
|
|
|
var project= projectObj.project;
|
|
|
gljOprObj.GLJSelection= _.filter(gljOprObj.GLJSelection,function (n) {
|
|
|
- return _.find(gljOprObj.sheetData,{'code':n})?false:true;
|
|
|
+ var rg = _.find(gljOprObj.sheetData,function (item) {
|
|
|
+ var i_key = gljOprObj.getIndex(item,['code','name','specs','unit','type']);
|
|
|
+ return n==i_key
|
|
|
+ })
|
|
|
+ return rg?false:true;
|
|
|
})
|
|
|
if(gljOprObj.GLJSelection.length>0&&selected&&selected.sourceType==ModuleNames.ration){
|
|
|
$("#glj_tree_div").modal('hide');
|
|
@@ -979,11 +997,22 @@ var gljOprObj = {
|
|
|
//result.adjustState;
|
|
|
var data =result.data;
|
|
|
var index = _.findIndex(gljOprObj.sheetData,{'ID':data.ID});
|
|
|
+ var nodes = [selected];
|
|
|
gljOprObj.sheetData[index]=data;
|
|
|
gljOprObj.showRationGLJSheetData();
|
|
|
+ if(project.ration_glj.needShowToTree(data)){//当替换的是主材或设备时,刷新对应的树节点
|
|
|
+ var node = project.ration_glj.findTreeNodeByID(data.ID);
|
|
|
+ if(node){
|
|
|
+ project.ration_glj.transferToNodeData(data);
|
|
|
+ node.source = data;
|
|
|
+ node.data = data;
|
|
|
+ }
|
|
|
+ node?nodes.push(node):"";
|
|
|
+ }
|
|
|
+ //project.ration_glj.addToMainTree(data);
|
|
|
project.projectGLJ.loadData();
|
|
|
selected.data.adjustState=result.adjustState;
|
|
|
- projectObj.mainController.refreshTreeNode([selected]);
|
|
|
+ projectObj.mainController.refreshTreeNode(nodes);
|
|
|
}
|
|
|
$.bootstrapLoading.end();
|
|
|
})
|
|
@@ -998,15 +1027,21 @@ var gljOprObj = {
|
|
|
var data=result.data;
|
|
|
var stateList= result.stateList;
|
|
|
var n_index = me.getIndex(data.query,['code','name','specs','unit','type']);
|
|
|
+ var nodes=[];
|
|
|
_.forEach(project.ration_glj.datas,function (t) {
|
|
|
var t_index =me.getIndex(t,['code','name','specs','unit','type']);
|
|
|
if(n_index==t_index){
|
|
|
me.updateProperty(t,data.doc);
|
|
|
+ if(project.ration_glj.needShowToTree(t)){//如果是造价书中的树节点,则也须刷新
|
|
|
+ project.ration_glj.transferToNodeData(t);
|
|
|
+ var node = project.ration_glj.findTreeNodeByID(t.ID);
|
|
|
+ nodes.push(node);
|
|
|
+ }
|
|
|
}
|
|
|
})
|
|
|
me.showRationGLJSheetData();
|
|
|
project.projectGLJ.loadData();
|
|
|
- me.refreshStateAfterMreplace(stateList);
|
|
|
+ me.refreshStateAfterMreplace(stateList,nodes);
|
|
|
$.bootstrapLoading.end();
|
|
|
})
|
|
|
},
|
|
@@ -1015,7 +1050,7 @@ var gljOprObj = {
|
|
|
obj[key] = n;
|
|
|
});
|
|
|
},
|
|
|
- refreshStateAfterMreplace:function (stateList) {
|
|
|
+ refreshStateAfterMreplace:function (stateList,gljNodes) {
|
|
|
var nodes=[];
|
|
|
_.forEach(stateList,function (s) {
|
|
|
var node = _.find(projectObj.project.mainTree.items,function (n) {
|
|
@@ -1026,6 +1061,7 @@ var gljOprObj = {
|
|
|
nodes.push(node);
|
|
|
}
|
|
|
});
|
|
|
+ gljNodes.length>0?nodes = nodes.concat(gljNodes):"";
|
|
|
projectObj.mainController.refreshTreeNode(nodes);
|
|
|
},
|
|
|
refreshView:function () {
|
|
@@ -1180,16 +1216,21 @@ $(function(){
|
|
|
}
|
|
|
gljOprObj.gljLibSheetData =gljOprObj.AllRecode;
|
|
|
var selected=null;
|
|
|
- if($('#actionType').val()=='add',$('#actionType').val()=='insert'){
|
|
|
+ if($('#actionType').val()=='add'||$('#actionType').val()=='insert'){
|
|
|
gljOprObj.GLJSelection=[];
|
|
|
}else {
|
|
|
selected=gljOprObj.sheetData[gljContextMenu.selectedRow];
|
|
|
- gljOprObj.GLJSelection=[selected.code];
|
|
|
+ var connect_key = gljOprObj.getIndex(selected,['code','name','specs','unit','type'])
|
|
|
+ gljOprObj.GLJSelection=[connect_key];
|
|
|
gljOprObj.filterLibGLJByType();
|
|
|
}
|
|
|
|
|
|
if(selected!=null){
|
|
|
- var r = _.find(gljOprObj.gljLibSheetData,{'code':selected.code});
|
|
|
+ var s_key = gljOprObj.getIndex(selected,['code','name','specs','unit','gljType']);
|
|
|
+ var r = _.find(gljOprObj.gljLibSheetData,function (item) {
|
|
|
+ var item_key = gljOprObj.getIndex(item,['code','name','specs','unit','type']);
|
|
|
+ return s_key == item_key;
|
|
|
+ });
|
|
|
r?r.select=1:"";
|
|
|
}
|
|
|
gljOprObj.showLibGLJSheetData();
|
|
@@ -1211,11 +1252,13 @@ $(function(){
|
|
|
if(gljOprObj.GLJSelection.length<1){
|
|
|
return;
|
|
|
}
|
|
|
- if($('#actionType').val()=='add'){
|
|
|
+ if($('#actionType').val()=='insert'){ //造价书页面中插入定额类型的工料机
|
|
|
+ gljOprObj.doInsertGLJ();
|
|
|
+ }else if($('#actionType').val()=='add'){ //添加工料机
|
|
|
gljOprObj.doAddGLJ();
|
|
|
- }else if($('#actionType').val()=='replace'){
|
|
|
+ }else if($('#actionType').val()=='replace'){//替换工料机
|
|
|
gljOprObj.doReplaceGLJ();
|
|
|
- }else if($('#actionType').val()=='m_replace'){
|
|
|
+ }else if($('#actionType').val()=='m_replace'){//批量替换工料机
|
|
|
gljOprObj.doMReplaceGLJ();
|
|
|
}
|
|
|
})
|