efview
Version:
A high quality Service UI components Library with Vue.js
432 lines (427 loc) • 17 kB
JavaScript
export default {
name:'mall',
methods:{
// 获取字典
getDict (str) {
let fields = 'dcode,dname,ddvalue,pro1,dgroup';
let dictkey = str.split(',');
let _dicData = {};
let str2 = [];
for (let pro of dictkey) {
let data = this.$Method.getLocalStorage('dictkey_' + pro);
if (data) {
_dicData[pro] = data;
} else {
str2.push(pro);
}
}
if (str2.length > 0) {
let searchParam = {
fields: fields,
dictype: str2.join(',')
};
let self = this;
this.synchroPost(this.OmdUrl.mall, 'mall.common.dict.getDictByGroupCode', searchParam,function(data) {
for (let pro of str2) {
self.$Method.setLocalStorage('dictkey_' + pro , data[pro], self.OmdUrl.dictExpire);
_dicData[pro] = data[pro];
}
}, null);
}
return _dicData;
},
// 获取编码参数
getGrobrule (ruleid) {
let para = {};
para.ruleid = ruleid;
let result = {};
let _self = this;
_self.synchroPost(_self.OmdUrl.mall, 'mall.common.globrule.getRuleDef', para, function (data) {
if (data && data.globrule) {
Object.assign(result, data.globrule);
}
}, null);
return result;
},
// 获取多个参数
getGrobruleList (ruleidStr) {
let para = {};
para.ruleid = ruleidStr;
let result = {};
let _self = this;
_self.synchroPost(_self.OmdUrl.mall, 'mall.common.globrule.getRuleList', para, function (data) {
if (data && data.globrule) {
Object.assign(result, data.globrule);
}
}, null);
return result;
},
// 获取billtype
getBilltype(modulecode) {
let para = {};
para.modeid = modulecode;
let billtype = '';
let _self = this;
_self.synchroPost(_self.OmdUrl.mall, 'mall.work.billmain.search', para, function(data) {
if (data && data.billmain) {
billtype = data.billmain[0].billtype;
}
}, null);
return billtype;
},
// 系统参数
getManaPara (muid, mpcode) {
let para = {};
para.muid = muid;
para.mpcode = mpcode;
let result = '';
let _self = this;
_self.synchroPost(_self.OmdUrl.mall, 'mall.common.manapara.searchManaPara', para, function (data) {
if (data) {
result = data.mpvalue;
}
}, null);
return result;
},
// 获取多个系统参数
getManaParaList (muid, mpcodeStr) {
let para = {};
para.muid = muid;
para.mpcodes = mpcodeStr;
let result = {};
let _self = this;
_self.synchroPost(_self.OmdUrl.mall, 'mall.common.manapara.searchMultiManaParas', para, function (data) {
if (data && data.manapara) {
Object.assign(result, data.manapara);
}
}, null);
return result;
},
// 获取报表文件
getReportConfig (billmoduleid) {
let para = {};
para.moduleid = billmoduleid;
let result = '';
let _self = this;
_self.synchroPost(_self.OmdUrl.mall, 'mall.common.reportconfig.search', para, function (data) {
if (data && data.reportconfig && data.reportconfig.length > 0) {
result = data.reportconfig[0].reportfile;
}
}, null);
return result;
},
//获取经营主体,union 0门店
getCompany () {
let compTemp = [];
let searchParam = {
'fields': 'coid, coname',
order_field: 'coid',
};
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.comp.search', searchParam,function(data) {
if (data && data.company.length > 0) {
compTemp.push({'code':'0','name':'门店'});
data.company.forEach(el => {
el.code = el.coid;
el.name = el.coname;
compTemp.push(el);
});
}
}, null);
return compTemp;
},
//获取账单日
getSettleDay () {
let compTemp = [];
let searchParam = {
'fields': 'code, name',
'code': {'<>': '0'},
order_field: 'orderno, code'
};
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.setbillday.search', searchParam,function(data) {
if (data && data.setbillday.length > 0) {
compTemp = data.setbillday;
}
}, null);
return compTemp;
},
// 获取费用提取方式
getCodeChargeDefType () {
let compTemp = [];
let searchParam = {
'fields': 'cdtcode, cdtcname',
'cdtstatus' : 'Y',
order_field: 'cdtcode'
};
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.codechargedeftype.search', searchParam,function(data) {
if (data && data.codechargedeftype.length > 0) {
compTemp = data.codechargedeftype;
compTemp.forEach(el => {
el.code = el.cdtcode;
el.name = el.cdtcname;
});
}
}, null);
return compTemp;
},
// 获取除预存款的费用提取方式
getCodeDefTypeQy () {
let compTemp = [];
let searchParam = {
'fields': 'cdtcode, cdtcname',
'cdtstatus' : 'Y',
'cdtcode' : { '<>': '7' },
order_field: 'cdtcode'
};
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.codechargedeftype.search', searchParam,function(data) {
if (data && data.codechargedeftype.length > 0) {
compTemp = data.codechargedeftype;
compTemp.forEach(el => {
el.code = el.cdtcode;
el.name = el.cdtcname;
});
}
}, null);
return compTemp;
},
// 获取余款类型
getYkCodeCharge () {
let cccodeTemp = [];
let searchParam = {
'fields': 'cccode, cccname',
'ccdeftype' : 7,
order_field: 'cccode'
};
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.codecharge.search', searchParam,function(data) {
if (data && data.codecharge.length > 0) {
cccodeTemp = data.codecharge;
cccodeTemp.forEach(el => {
el.code = el.cccode;
el.name = el.cccname;
});
}
}, null);
return cccodeTemp;
},
// 获取税务分类
getTaxClass () {
let taxTemp = [];
let searchParam = {
'fields': 'taxcode, taxname',
'taxflag' : 'Y',
'taxstatus' : 'Y',
order_field: 'taxcode'
};
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.taxclass.search', searchParam,function(data) {
if (data && data.taxclass.length > 0) {
taxTemp = data.taxclass;
taxTemp.forEach(el => {
el.code = el.taxcode;
el.name = el.taxname;
});
}
}, null);
return taxTemp;
},
// 获取付款方式
getPaymode () {
let payTemp = [];
let searchParam = {
'fields': 'pmcode, pmcname',
'pmflag' : 'Y',
order_field: 'pmcode'
};
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.paymode.search', searchParam,function(data) {
if (data && data.paymode.length > 0) {
payTemp = data.paymode;
payTemp.forEach(el => {
el.code = el.pmcode;
el.name = el.pmcname;
});
}
}, null);
return payTemp;
},
// 单据配置
getBillMain(modeid) {
let searchParam = {
'modeid': modeid
};
let billmain = {};
this.synchroPost(this.OmdUrl.mall, 'mall.work.billmain.search', searchParam,function(data) {
if (data && data.billmain.length > 0) {
billmain = data.billmain[0];
}
},null);
return billmain;
},
changeMoneyToChinese(money){
let cnNums = new Array('零','壹','贰','叁','肆','伍','陆','柒','捌','玖'); //汉字的数字
let cnIntRadice = new Array('','拾','佰','仟'); //基本单位
let cnIntUnits = new Array('','万','亿','兆'); //对应整数部分扩展单位
let cnDecUnits = new Array('角','分','毫','厘'); //对应小数部分单位
//let cnInteger = "整"; //整数金额时后面跟的字符
let cnIntLast = '元'; //整型完以后的单位
let cnIntLast_F = '负';
let maxNum = 999999999999999.9999; //最大处理的数字
let IntegerNum; //金额整数部分
let DecimalNum; //金额小数部分
let ChineseStr=''; //输出的中文金额字符串
let parts; //分离金额后用的数组,预定义
if(money == ''){
return '';
}
money = parseFloat(money);
if(money >= maxNum){
this.alert('超出最大处理数字');
return '';
}
if(money == 0){
//ChineseStr = cnNums[0]+cnIntLast+cnInteger;
ChineseStr = cnNums[0]+cnIntLast;
//document.getElementById("show").value=ChineseStr;
return ChineseStr;
}
//提供对负数的支持
if(money < 0){
ChineseStr = cnIntLast_F;
money = money*-1;
}
money = money.toString(); //转换为字符串
if(money.indexOf('.') === -1){
IntegerNum = money;
DecimalNum = '';
}else{
parts = money.split('.');
IntegerNum = parts[0];
DecimalNum = parts[1].substr(0,4);
}
if(parseInt(IntegerNum,10) > 0){//获取整型部分转换
let zeroCount = 0;
let IntLen = IntegerNum.length;
for(let i=0;i<IntLen;i++ ){
let n = IntegerNum.substr(i,1);
let p = IntLen - i - 1;
let q = p / 4;
let m = p % 4;
if( n == '0' ){
zeroCount++;
}else{
if( zeroCount > 0 ){
ChineseStr += cnNums[0];
}
zeroCount = 0; //归零
ChineseStr += cnNums[parseInt(n)]+cnIntRadice[m];
}
if( m==0 && zeroCount<4 ){
ChineseStr += cnIntUnits[q];
}
}
ChineseStr += cnIntLast;
//整型部分处理完毕
}
if(DecimalNum !== ''){//小数部分
let decLen = DecimalNum.length;
for(let i=0; i<decLen; i++){
let n = DecimalNum.substr(i,1);
if( n != '0' ){
ChineseStr += cnNums[Number(n)]+cnDecUnits[i];
}
}
}
if(ChineseStr === ''){
//ChineseStr += cnNums[0]+cnIntLast+cnInteger;
ChineseStr += cnNums[0]+cnIntLast;
}/* else if( DecimalNum == '' ){
ChineseStr += cnInteger;
ChineseStr += cnInteger;
} */
return ChineseStr;
},
//获取结算方式
getSetmode () {
let searchParam = {
status: 'Y',
'order_field': 'smid'
};
let setmodedef = [];
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.setmodedef.search', searchParam,function(data) {
if (data && data.setmodedef.length > 0) {
data.setmodedef.forEach(el => {
el.code = el.smid;
el.name = el.smname;
});
setmodedef = data.setmodedef;
}
},null);
return setmodedef;
},
//获取账单类型
getSettleBillDef() {
let searchParam = {
'fields': 'setbtypecode, sbdname',
'sbdstatus': 'Y',
order_field: 'setbtypecode'
};
let settlebilldef = [];
this.synchroPost(this.OmdUrl.mallmdm, 'mall.mdm.settlebilldef.search', searchParam,function(data) {
if (data && data.settlebilldef.length > 0) {
data.settlebilldef.forEach(el => {
el.code = el.setbtypecode;
el.name = el.sbdname;
});
settlebilldef = data.settlebilldef;
}
},null);
return settlebilldef;
},
//获取modulerelation表模块信息
getModelmoduleid (billmoduleid, opertype, wmid) {
let searchParam = {
modeid: billmoduleid,
opertype : opertype,
wmid : wmid,
};
let modulerelation = {};
this.synchroPost(this.OmdUrl.mall, 'mall.common.modulerelation.getModelRelation', searchParam,function(data) {
if (data && data.modulerelation) {
modulerelation = data.modulerelation;
}
},null);
return modulerelation;
},
// 获取账套
getCwzzZt () {
let cztTemp = [];
let searchParam = {
'fields': 'ztdm, ztmc, ztstatus',
order_field: 'ztdm'
};
this.synchroPost(this.OmdUrl.settle, 'mall.settle.cwzzzt.search', searchParam,function(data) {
if (data && data.cwzzzt.length > 0) {
cztTemp = data.cwzzzt;
cztTemp.forEach(el => {
el.code = el.ztdm;
el.name = el.ztmc;
el.status = el.ztstatus;
});
}
}, null);
return cztTemp;
},
// 凭证参数
getCwzzGLobPara (cgptype, cgppara, cgpmkt) {
let para = {};
para.cgptype = cgptype;
para.cgppara = cgppara;
para.cgpmkt = cgpmkt;
let result = '';
let _self = this;
_self.synchroPost(_self.OmdUrl.settle, 'mall.settle.cwzzglobpara.searchCwzzGlobPara', para, function (data) {
if (data) {
result = data.cgpvalue;
}
}, null);
return result;
},
}
};