|
@@ -14,6 +14,7 @@ var feeRateObject={
|
|
|
changeInfo:null,
|
|
|
feeRateSpreads:null,
|
|
|
editingCell:null,
|
|
|
+ feeRateSelection:null,
|
|
|
sheetSetting: {
|
|
|
header: [
|
|
|
{headerName: "专业名称", headerWidth: 200, dataCode: "name", dataType: "String"},
|
|
@@ -117,11 +118,11 @@ var feeRateObject={
|
|
|
createSheet:function(){
|
|
|
var feeRateFile = projectObj.project.FeeRate.getActivateFeeRate();
|
|
|
feeRateObject.feeRateSpreads=sheetCommonObj.buildSheet($('#fee_rate_sheet')[0], feeRateObject.sheetSetting,feeRateFile.rates.length);
|
|
|
- //gljOprObj.gljLibSpresd.bind(GC.Spread.Sheets.Events.ButtonClicked,gljOprObj.onButtonClick);
|
|
|
feeRateObject.feeRateSheet = feeRateObject.feeRateSpreads.getSheet(0);
|
|
|
feeRateObject.feeRateSheet.selectionUnit(1)//0 cell,1 row,2 col;
|
|
|
feeRateObject.feeRateSheet.options.isProtected = true;
|
|
|
feeRateObject.feeRateSheet.name('fee_rate');
|
|
|
+ feeRateObject.feeRateSheet.bind(GC.Spread.Sheets.Events.CellClick,feeRateObject.onCellClick);
|
|
|
},
|
|
|
showSelectTree:function () {
|
|
|
var sheet= feeRateObject.feeRateSheet;
|
|
@@ -256,7 +257,7 @@ var feeRateObject={
|
|
|
if(feeRateObject.editingCell.row==options.row&&feeRateObject.editingCell.col==options.col){
|
|
|
var image = document.getElementById('f_btn'),imageMagin = 3;
|
|
|
var imageHeight = h-2*imageMagin;
|
|
|
- var imageWidth = imageHeight* 4/3;
|
|
|
+ var imageWidth = w*2/7;
|
|
|
var imageX = x + w - imageWidth- imageMagin, imageY = y + h / 2 - imageHeight / 2;
|
|
|
ctx.save();
|
|
|
ctx.drawImage(image, imageX, imageY,imageWidth,imageHeight);
|
|
@@ -283,20 +284,27 @@ var feeRateObject={
|
|
|
};
|
|
|
};
|
|
|
FeeRateEditCellType.prototype.processMouseDown = function (hitinfo) {
|
|
|
- if(feeRateObject.editingCell==null){
|
|
|
- feeRateObject.editingCell={
|
|
|
- row:hitinfo.row,
|
|
|
- col:hitinfo.col
|
|
|
+ var me=feeRateObject;
|
|
|
+ if(me.editingCell==null){
|
|
|
+ var showSelectBtn = true;
|
|
|
+ if(hitinfo.sheet.name()!='calc_detail'){
|
|
|
+ showSelectBtn=me.ifFeeRateEdit();
|
|
|
}
|
|
|
- hitinfo.sheet.invalidateLayout();
|
|
|
- hitinfo.sheet.repaint();
|
|
|
- }else if(hitinfo.row==feeRateObject.editingCell.row){
|
|
|
+ if(showSelectBtn){
|
|
|
+ me.editingCell={
|
|
|
+ row:hitinfo.row,
|
|
|
+ col:hitinfo.col
|
|
|
+ }
|
|
|
+ hitinfo.sheet.invalidateLayout();
|
|
|
+ hitinfo.sheet.repaint();
|
|
|
+ }
|
|
|
+ }else if(hitinfo.row==me.editingCell.row){
|
|
|
var offset=hitinfo.cellRect.x+hitinfo.cellRect.width-6;
|
|
|
var imageMagin=3;
|
|
|
var imageHeight = hitinfo.cellRect.height-2*imageMagin;
|
|
|
var imageWidth = imageHeight* 4/3;
|
|
|
if(hitinfo.x<offset&&hitinfo.x>offset-imageWidth){
|
|
|
- feeRateObject.showSelectModal(hitinfo);
|
|
|
+ me.showSelectModal(hitinfo);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
@@ -310,7 +318,6 @@ var feeRateObject={
|
|
|
showSelectModal:function (hitinfo) {
|
|
|
$("#fee_rate_tree").modal({show:true});
|
|
|
$('#edit_from').val(hitinfo.sheet.name());
|
|
|
- $('#edit_row').val(hitinfo.row);
|
|
|
},
|
|
|
setSheetGroup:function (rate,data,groups,row) {
|
|
|
var me=this;
|
|
@@ -334,6 +341,10 @@ var feeRateObject={
|
|
|
}
|
|
|
return children.length+sum;
|
|
|
},
|
|
|
+ ifFeeRateEdit:function () {
|
|
|
+ var selected = projectObj.project.mainTree.selected;
|
|
|
+ return MainTreeCol.readOnly.forCalcBase(selected)?false:true;
|
|
|
+ },
|
|
|
createSpreadView:function () {
|
|
|
if (this.mainViews) {
|
|
|
this.mainViews.destroy();
|
|
@@ -602,6 +613,22 @@ var feeRateObject={
|
|
|
projectObj.project.FeeRate.synchronizeFeeRate();
|
|
|
}
|
|
|
projectObj.project.FeeRate.changeFeeRateFileFromOthers(feeRateFileID,name,callback);
|
|
|
+ },
|
|
|
+ setFeeRateCellCol:function (sheet,col) {
|
|
|
+ sheet.getRange(-1, col, -1, 1).cellType(this.getFeeRateEditCellType());
|
|
|
+ },
|
|
|
+ onCellClick:function (sender,args) {
|
|
|
+ var data =projectObj.project.FeeRate.getActivateFeeRate().rates;
|
|
|
+ feeRateObject.feeRateSelection=data[args.row];
|
|
|
+ },
|
|
|
+ checkSelectedFeeRate:function () {
|
|
|
+ var validate = false;
|
|
|
+ var data =projectObj.project.FeeRate.getActivateFeeRate().rates;
|
|
|
+ if(feeRateObject.feeRateSelection!=null){
|
|
|
+ var children=_.filter(data,{'ParentID':feeRateObject.feeRateSelection.ID});
|
|
|
+ validate=children&&children.length==0;
|
|
|
+ }
|
|
|
+ return validate;
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -764,6 +791,7 @@ $('#fee_rate_tree').on('shown.bs.modal', function (e) {
|
|
|
if(feeRateObject.feeRateSpreads==null){
|
|
|
feeRateObject.createSheet();
|
|
|
}
|
|
|
+ feeRateObject.feeRateSelection=null;
|
|
|
feeRateObject.showSelectTree();
|
|
|
});
|
|
|
|
|
@@ -774,4 +802,17 @@ $('#fee_rate_tree').on('hidden.bs.modal', function (e) {
|
|
|
$('#edit_from').val('');
|
|
|
$('#edit_row').val('');
|
|
|
}
|
|
|
-});
|
|
|
+});
|
|
|
+
|
|
|
+$('#fee_selected_conf').bind('click',function (){
|
|
|
+ var validate = feeRateObject.checkSelectedFeeRate();
|
|
|
+ if(validate){
|
|
|
+ if($('#edit_from').val()=='calc_detail'){
|
|
|
+ //do calc_detail
|
|
|
+ }else {
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ console.log(validate);
|
|
|
+
|
|
|
+})
|