|
@@ -15,15 +15,6 @@ var FeeRate = {
|
|
|
this.datas = datas;
|
|
|
socketObject.connect();
|
|
|
};
|
|
|
- /* FeeRate.prototype.getViewDatas = function(){
|
|
|
- var rates=[];
|
|
|
- _.forEach(this.datas,function (item) {
|
|
|
- if(item.status == 'activate'){
|
|
|
- rates= item.rates;
|
|
|
- }
|
|
|
- })
|
|
|
- return rates;
|
|
|
- };*/
|
|
|
FeeRate.prototype.getActivateFeeRate = function () {
|
|
|
var feeRate={
|
|
|
rates:[]
|
|
@@ -126,7 +117,8 @@ var FeeRate = {
|
|
|
doc.rate.rate =doc.rate.rate.toDecimal(feeRate_consts.decimal);
|
|
|
this.updateFeeRate(query,doc);
|
|
|
if(this.ifRateChange(params)){
|
|
|
- this.synchronizeFeeRate();
|
|
|
+ //this.synchronizeFeeRate();
|
|
|
+ this.onFeeRateChange(params.dataItem.ID,params.dataItem.rate);
|
|
|
}
|
|
|
};
|
|
|
|
|
@@ -139,7 +131,6 @@ var FeeRate = {
|
|
|
FeeRate.prototype.updateFeeRate=function (query,doc) {
|
|
|
var updateData = this.getUpdateData('ut_update',query,doc,'update_rates');
|
|
|
project.pushNow('updateFeeRate',[this.sourceType],updateData);
|
|
|
- socket.emit('feeRateChangeNotify', this.getActivateFeeRateFileID());
|
|
|
};
|
|
|
FeeRate.prototype.updateStatusBySelected = function (updateTasks) {
|
|
|
var updateData = [];
|
|
@@ -155,20 +146,52 @@ var FeeRate = {
|
|
|
var node = project.mainTree.selected;
|
|
|
if(node){
|
|
|
if (node.sourceType==='ration' && calcProgramObj.sheet) {
|
|
|
- project.calcProgram.compileAllTemps();
|
|
|
calcProgramObj.showData(node);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
FeeRate.prototype.ifRateChange=function (params) {
|
|
|
- if(params.dataItem.rate!=params.oldDataItem.rate){
|
|
|
+ if(params.dataItem.memo==params.oldDataItem.memo){
|
|
|
return true;
|
|
|
}else {
|
|
|
return false;
|
|
|
}
|
|
|
};
|
|
|
- FeeRate.prototype.onFeeRateChange=function (feeRateID,) {
|
|
|
-
|
|
|
+ FeeRate.prototype.onFeeRateChange=function (rateID,value) {
|
|
|
+ var node = project.mainTree.selected;
|
|
|
+ this.refreshCalProgramByRateID(rateID,value);
|
|
|
+ this.refreshBillsByRateID(rateID,value);
|
|
|
+ if(node){
|
|
|
+ if (node.sourceType==='ration' && calcProgramObj.sheet) {
|
|
|
+ calcProgramObj.showData(node);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ socket.emit('feeRateChangeNotify', this.getActivateFeeRateFileID());
|
|
|
+ };
|
|
|
+ FeeRate.prototype.refreshCalProgramByRateID=function (rateID,value) {
|
|
|
+ var templates = project.calcProgram.datas.templates;
|
|
|
+ for(var i =0;i<templates.length;i++){
|
|
|
+ _.forEach(templates[i].calcItems,function (item) {
|
|
|
+ if(item.feeRateID==rateID){
|
|
|
+ item.feeRate = value;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ project.calcProgram.compileAllTemps();
|
|
|
+ rationPM.refreshDetailSheet();
|
|
|
+ };
|
|
|
+ FeeRate.prototype.refreshBillsByRateID=function(rateID,value){
|
|
|
+ var nodes = _.filter(projectObj.project.mainTree.items,function (n) {
|
|
|
+ if(n.sourceType==ModuleNames.bills&&n.data.feeRateID==rateID){
|
|
|
+ n.data.feeRate=number_util.roundToString(value,feeRate_consts.decimal);
|
|
|
+ return true;
|
|
|
+ }else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ if(nodes.length>0){
|
|
|
+ projectObj.mainController.refreshTreeNode(nodes)
|
|
|
+ }
|
|
|
};
|
|
|
FeeRate.prototype.changeFeeRateStandard=function(newVal,callback){
|
|
|
var me =this;
|
|
@@ -238,8 +261,8 @@ var FeeRate = {
|
|
|
var data=me.getfbUpdateData(rate,bill,value);
|
|
|
this.setFeeRateToBill(data,function (result) {
|
|
|
if(data.hasOwnProperty('feeRate')){
|
|
|
- me.refreshBillsByRateID(rate,value);
|
|
|
- socket.emit('feeRateChangeNotify', me.getActivateFeeRateFileID());
|
|
|
+ rate.rate=value;
|
|
|
+ me.onFeeRateChange(rate.ID,value);
|
|
|
}else {
|
|
|
bill.feeRate=value;
|
|
|
projectObj.mainController.refreshTreeNode([node])
|
|
@@ -284,33 +307,10 @@ var FeeRate = {
|
|
|
}
|
|
|
}
|
|
|
CommonAjax.post('/feeRates/updateFeeRate', data, function (data) {
|
|
|
- for(var i =0;i<rationPM.datas.length;i++){
|
|
|
- _.forEach(rationPM.datas[i].calcItems,function (item) {
|
|
|
- if(item.feeRateID==rate.ID){
|
|
|
- item.feeRate = value;
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
rate.rate=value;
|
|
|
- project.calcProgram.compileAllTemps();
|
|
|
- rationPM.refreshDetailSheet();
|
|
|
- socket.emit('feeRateChangeNotify', me.getActivateFeeRateFileID());
|
|
|
+ me.onFeeRateChange(rate.ID,value);
|
|
|
});
|
|
|
}
|
|
|
- FeeRate.prototype.refreshBillsByRateID=function(rate,value){
|
|
|
- rate.rate=value;
|
|
|
- var nodes = _.filter(projectObj.project.mainTree.items,function (n) {
|
|
|
- if(n.sourceType==ModuleNames.bills&&n.data.feeRateID==rate.ID){
|
|
|
- n.data.feeRate=number_util.roundToString(value,feeRate_consts.decimal);
|
|
|
- return true;
|
|
|
- }else {
|
|
|
- return false;
|
|
|
- }
|
|
|
- })
|
|
|
- if(nodes.length>0){
|
|
|
- projectObj.mainController.refreshTreeNode(nodes)
|
|
|
- }
|
|
|
- };
|
|
|
|
|
|
FeeRate.prototype.getfbUpdateData=function (rate,bill,value) {
|
|
|
var data={};
|