/** * Created by CSL on 2017-05-18. */ $("#drirect-dinge").click(function(){ $(this).attr('href', "/rationRepository/ration" + "?repository=" + getQueryString("repository")) }); $("#gongliao").click(function(){ $(this).attr('href', "/rationRepository/lmm" + "?repository=" + getQueryString("repository")) }); var coeList = { libID: -1, datas: [], colDefMain: [ {name: "ID", displayName: "编号",formatter: "B00000", size: 100}, {name: "name", displayName: "名称", size: 280}, {name: "content", displayName: "内容", size: 250} ], colDefContent: [ {name: "coeType", displayName: "类型", size: 100, hAlign: "center"}, {name: "gljID", displayName: "工料机ID", size: 100, hAlign: "center",formatter: "000000"}, {name: "operator", displayName: "操作符", size: 60, hAlign: "center"}, {name: "amount", displayName: "数量", size: 80, hAlign: "right"} ], mainSpread: null, detailSpread: null, getLibID: function(libName){ var me = this; $.ajax({ type:"POST", url:"/rationRepository/api/getLibIDByName", data:{"libName": libName}, dataType:"json", cache:false, async: false, timeout:20000, success: function (result) { if (result.data) { me.libID = result.data; } }, error: function (result) { alert('内部程序错误!'); } }) }, getDatas: function (libName) { var me = this; me.getLibID(libName); if (me.libID == -1){ return false; }; $.ajax({ type:"POST", url:"/rationRepository/api/getCoeList", data:{"libID": me.libID}, dataType:"json", cache:false, async: false, timeout:20000, success: function (result) { if (result.data) { me.datas = result.data; }; }, error: function (result) { alert('内部程序错误!'); } }) }, show: function (){ var me = this; var libName = getQueryString("repository"); // datas from server. me.getDatas(libName); me.mainSpread = sheetObj.create($('#mainSpread')[0], me.colDefMain, me.datas); me.detailSpread = sheetObj.create($('#contentSpread')[0], me.colDefContent, me.datas[0].coes); me.mainSpread.getSheet(0).bind(GC.Spread.Sheets.Events.EnterCell, me.onMainEnterCell); me.detailSpread.getSheet(0).bind(GC.Spread.Sheets.Events.CellChanged, me.onDetailCellChanged); var coeType = new GC.Spread.Sheets.CellTypes.ComboBox(); coeType.items(["单个","全部","人工类","材料类","机械类"]); me.detailSpread.getSheet(0).getRange(-1, 0, -1, 1).cellType(coeType); // datas for test. //sheetObj.create($('#mainSpread')[0], me.colDefMain, createDatas(50)); //sheetObj.create($('#contentSpread')[0], me.colDefContent, createContents(10)); }, onMainEnterCell: function(sender, args) { var me = coeList; var row = args.sheet.getActiveRowIndex(); me.detailSpread.suspendPaint(); me.detailSpread.getSheet(0).setDataSource(me.datas[row].coes); me.detailSpread.resumePaint(); }, onDetailCellChanged: function(sender, args) { var me = coeList; var row = args.sheet.getActiveRowIndex(); var curType = args.sheet.getValue(row,0); if (!(curType == '单个')){ args.sheet.setValue(row, 1, null); //args.sheet.getCell(row, 1).backColor("red"); } else{ //args.sheet.getCell(row, 1).backColor("Blue"); }; } }; coeList.show(); function createDatas(counts){ var datas = []; var names = ['洞内排水量15m3/h以内', '二级以上松土', '三四级石方', '灌注桩,水平泵送混凝土距离100m', '用于拆除工程']; for (var i = 0; i < counts; i++) { var data = new Object(); data.ID = i; data.name = names[i % names.length] + i; data.content = '附注条件' + data.name + '之内容部分'; datas.push(data); }; return datas; } function createContents(counts){ var datas = []; var types = ['人工类', '材料类', '机械类','单GLJ','全部']; var operators = ['+', '-', '*', '/', '=']; for (var i = 0; i < counts; i++) { var data = new Object(); data.coeType = types[i % types.length]; data.gljID = (data.coeType == '单GLJ') ? Math.floor(Math.random() * 1000) : ''; data.operator = operators[i % operators.length]; data.amount = Math.floor(Math.random() * 1000) / 100; data.amount2 = Math.floor(Math.random() * 1000) / 100; data.amount3 = Math.floor(Math.random() * 1000) / 100; data.amount4 = Math.floor(Math.random() * 1000) / 100; datas.push(data); }; return datas; }