123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- /**
- * Created by zhang on 2018/2/24.
- */
- let ration_installation = {
- createNew: function (project) {
- // 用户定义private方法
- var tools = {};
- // 所有通过this访问的属性,都不应在此单元外部进行写入操作
- var ration_installation = function (proj) {
- // this.project = proj;
- this.datas = [];
- var sourceType = ModuleNames.ration_installation;
- this.getSourceType = function () {
- return sourceType;
- }
- proj.registerModule(ModuleNames.ration_installation, this);
- };
- // prototype用于定义public方法
- ration_installation.prototype.loadData = function (datas) {
- this.datas = datas;
- };
- ration_installation.prototype.addDatasToList = function (datas) {
- let me = this;
- if(datas&&datas.length>0){
- if (me.datas && Array.isArray(me.datas)) {
- me.datas = me.datas.concat(datas);
- } else {
- me.datas = datas;
- }
- }
- };
- ration_installation.prototype.getInstallationByRationID = function (rationID) {
- let insList = _.filter(this.datas, {'rationID': rationID});
- return insList;
- };
- ration_installation.prototype.getBySectionID = function(sectionID){
- var ri_list = this.datas;
- return _.filter(ri_list,{'sectionId':sectionID});
- };
- ration_installation.prototype.deleteByRation = function(ration){
- var ri_list = projectObj.project.ration_installation.datas;
- _.remove(ri_list,{'rationID':ration.ID});
- };
- ration_installation.prototype.getByID = function (ID) {
- let me = this;
- let ri = _.find(me.datas,{'ID':ID})
- return ri;
- };
- ration_installation.prototype.getCalcRIByItemID = function (libID,itemID) {//按费用项ID取费用规则不为空的定额安装增加费
- return _.filter(this.datas,function (item) {
- if(item.libID == libID && item.feeItemId == itemID && item.ruleId && item.ruleId !=""){
- return true;
- }
- return false;
- })
- };
- ration_installation.prototype.getDataByConditions = function (conditions) {
- return _.filter(this.datas,function (item) {
- let match = true;
- for(let ckey in conditions){
- if( Array.isArray(conditions[ckey])){
- let isContain = _.includes(conditions[ckey],item[ckey]);
- if(!isContain){//不包含
- match = false;
- break;
- }
- }else {
- if(conditions[ckey]!=item[ckey]){
- match = false;
- break;
- }
- }
- }
- return match;
- })
- };
- ration_installation.prototype.applyRuleByIDs = function(projectID,IDs,ruleId,callback){
- let me = this;
- $.bootstrapLoading.start();
- CommonAjax.post('/installation/applyRuleByIDs',{projectID:projectID,IDs:IDs,ruleId:ruleId},function (data) {
- //更新缓存
- for(let ID of IDs){
- let ri = _.find(me.datas,{'ID':ID});
- ri.ruleId = ruleId;
- ri.unifiedSetting = 0;
- }
- if(callback){
- callback();
- }
- $.bootstrapLoading.end();
- },function () {
- $.bootstrapLoading.end();
- })
- };
- ration_installation.prototype.update = function (updateData,callback) {
- let me = this;
- $.bootstrapLoading.start();
- CommonAjax.post('/installation/updateRationInstallation',updateData,function (data) {
- //更新缓存
- let ri = _.find(me.datas,{'ID':updateData.ID});
- if(ri){
- for(let key in updateData){
- ri[key] = updateData[key];
- }
- }
- if(callback){
- callback();
- }
- $.bootstrapLoading.end();
- },function () {
- $.bootstrapLoading.end();
- })
- };
- return new ration_installation(project);
- }
- };
|