/** * Created by zhang on 2018/11/26. */ let mbzm_obj={ spread:null, datas:[], setting:{ header: [ {headerName: "编码", headerWidth: 130, dataCode: "code", dataType: "String", formatter: "@"}, {headerName: "模板类别", headerWidth: 260, dataCode: "name", dataType: "String", hAlign: "left"}, {headerName: "系数", headerWidth: 65, dataCode: "coe", dataType: "Number"}, {headerName: "单位", headerWidth: 45, dataCode: "unit", dataType: "String", hAlign: "center"}, {headerName: "工程量", headerWidth: 65, dataCode: "quantity", dataType: "Number",decimalField: "ration.quantity"}, {headerName: "关联类别", headerWidth: 100, dataCode: "type", dataType: "String"}, {headerName: "清单位置", headerWidth: 200, dataCode: "position", hAlign: "left", dataType: "String",cellType:'selectButton',getText:'forPosition'}, ], view: { lockColumns:["code","name","unit","type","fxID"], rowHeaderWidth:25 }, getText:{ forPosition:function (item) { return "" } } }, //当点击应用的时候才保存数据 initSpread:function () { this.spread = SheetDataHelper.createNewSpread($("#mbzmSpread")[0]); sheetCommonObj.spreadDefaultStyle(this.spread); this.sheet = this.spread.getSheet(0); sheetCommonObj.initSheet(this.sheet, this.setting); }, refresh:function () { let total = $('#mbzmSpread').parent().height(); let b_height = $('#mbzmSpread').prev('.col-12').height(); $('#mbzmSpread').css('height',total- b_height); this.spread?this.spread.refresh():this.initSpread(); }, showMBZMData:function(node){ let selected = node?node:projectObj.project.mainTree.selected; let datas = []; $("#createLocation").val(1);//初始化 if(selected&&selected.sourceType == "ration"){ let ration = selected.data; let template = projectObj.project.ration_template.getTemplateByRationID(ration.ID); if(template) { $("#createLocation").val(template.createLocation); let pcol = _.findIndex(this.setting.header,{dataCode:"position"}); this.setting.header[pcol].visible = template.createLocation == 3?false:true; datas = _.cloneDeep(template.templateList); } } this.datas = datas; sheetCommonObj.showData(this.sheet, this.setting,this.datas); this.sheet.setRowCount(this.datas.length); } }; $('#createLocation').change(function(){ let me = mbzm_obj; let pcol = _.findIndex(me.setting.header,{dataCode:"position"}); me.setting.header[pcol].visible = template.createLocation == 3?false:true; $(this).val(); mbzm_obj.showMBZMData(); });