123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138 |
- /**
- * Created by CSL on 2017-06-20.
- */
- //var ModuleNames = require('./main_consts.js');
- var FeeRate = {
- createNew: function (project) {
- function FeeRate(proj){
- this.datas = null;
- this.sourceType = ModuleNames.feeRate;
- proj.registerModule(ModuleNames.feeRate, this);
- };
- FeeRate.prototype.loadData = function (datas) {
- this.datas = datas;
- };
- /* 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=null;
- _.forEach(this.datas,function (item) {
- if(item.status == 'activate'){
- feeRate= item;
- }
- })
- return feeRate;
- };
- FeeRate.prototype.getSubViewData= function(item) {
- var datas = [];
- if(item.hasOwnProperty('subFeeRate')&&item.subFeeRate!=undefined){
- datas = item.subFeeRate.recodes;
- }
- return datas;
- };
- FeeRate.prototype.getValueMap= function(item) {
- var valueMap = {};
- if(item.hasOwnProperty('subFeeRate')&&item.subFeeRate!=undefined){
- var recodes = item.subFeeRate.valueMaps;
- _.forEach(recodes,function (r) {
- valueMap[r.ID] = r.value;
- })
- return valueMap;
- }else {
- return null;
- }
- };
- FeeRate.prototype.getOptions=function (options,subRates,parentID,itemID) {
- var data = {};
- var list = _.filter(subRates, {'ParentID':parentID});
- if(list&&list.length>0){
- if(parentID==-1){
- data.ID = itemID+'_'+0;
- }else {
- data.ID = itemID+'_'+parentID;
- }
- data.name = list[0].type;
- data.optionList=[];
- }
- var nexParent = null;
- _.forEach(list,function (c) {
- var option={};
- option.name = c.name;
- option.value = c.ID;
- option.selected = c.selected;
- data.optionList.push(option);
- if(c.selected&&!c.isLeaf){
- nexParent = c.ID;
- }
- })
- options.push(data);
- if(nexParent!=null){
- this.getOptions(options,subRates,nexParent,itemID);
- }
- };
- FeeRate.prototype.getUpdateData=function(type,query,doc,callfunction){
- var updateData = [];
- var newobj = {
- 'updateType': type,
- 'query': query,
- }
- if(doc){
- newobj['doc']=doc;
- }
- if(callfunction){
- newobj['updateFunction']=callfunction;
- }
- updateData.push(newobj);
- return updateData;
- };
- FeeRate.prototype.updateFeeRateByEdit = function(params,feerate){
- var query={
- ID:feerate.ID,
- projectID:feerate.projectID
- };
- var doc ={
- rateIndex:params.sourceIndex,
- rate:params.dataItem
- }
- this.updateFeeRate(query,doc);
- };
- FeeRate.prototype.batchUpdateFeeRate = function (items,feerate) {
- var query={
- ID:feerate.ID,
- projectID:project.ID()
- };
- this.updateFeeRate(query,items);
- };
- FeeRate.prototype.updateFeeRate=function (query,doc) {
- var updateData = this.getUpdateData('ut_update',query,doc,'update_rates');
- project.pushNow('updateFeeRate',[this.sourceType],updateData);
- };
- FeeRate.prototype.updateStatusBySelected = function (updateTasks) {
- var updateData = [];
- var newobj = {
- 'updateType': 'ut_update',
- 'tasks': updateTasks,
- 'updateFunction':'updateStatusBySelected'
- }
- updateData.push(newobj);
- project.pushNow('updateFeeRate',[this.sourceType],updateData);
- }
- FeeRate.prototype.getRate = function (fileID, rateID){
- return 1.25;
- }
- var feeRate = new FeeRate(project);
- return feeRate;
- }
- };
|