Commit adbc00fe authored by Mac's avatar Mac

1

parent 7716ebbd
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
"dependencies": { "dependencies": {
"@quasar/extras": "^1.0.0", "@quasar/extras": "^1.0.0",
"axios": "^0.18.1", "axios": "^0.18.1",
"co": "^4.6.0",
"core-js": "^3.6.5", "core-js": "^3.6.5",
"element-ui": "^2.14.1", "element-ui": "^2.14.1",
"js-md5": "^0.7.3", "js-md5": "^0.7.3",
......
...@@ -12,7 +12,7 @@ export default { ...@@ -12,7 +12,7 @@ export default {
<style> <style>
@import url('~assets/css/font.css'); @import url('~assets/css/font.css');
@import url('//at.alicdn.com/t/font_2077629_87bihpwi52w.css'); @import url('//at.alicdn.com/t/font_2077629_d4bsno3ee9u.css');
html, html,
body, body,
......
<style scoped>
@import "./css/cssReset.css";
.page_CompanyAccount .query-box li label{display: inline-block;min-width: 80px;text-align: right;font-style: normal;margin: 0 20px 0 0;}
._scrollbar::-webkit-scrollbar{width: 4px;height: 8px;}
._scrollbar::-webkit-scrollbar-thumb{border-radius: 4px;box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);background: #c9c9c9;}
._scrollbar::-webkit-scrollbar-track{box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);border-radius: 4px;background: #EDEDED;}
.page_CompanyAccount ._vMG_edit{overflow: auto;display: none;position:absolute;bottom:0;left: 0;font-family: 'PingFangSc-Fine';border-top:3px solid #38425d;background-color:#FFFFFF;padding: 10px;width: 100%;}
.page_CompanyAccount ._vMG_edit ._tit{padding-left: 10px;border-left: 3px solid #E95252; font-size: 16px;color: #000000}
.page_CompanyAccount ._vMG_edit ._tit span{color: #666666}
.cm_content{margin:0;padding: 0;overflow-x: auto;}
._edHeight{height:400px;}
.edHeight{display: block !important;height: 230px;}
.page_CompanyAccount ._info_box ul{margin-top: 15px}
.page_CompanyAccount ._info_box ul li{float: left; margin-right: 12px;}
.instMg_list_item{width: 296px;height: auto;border-radius: 4px;border: 1px solid #ebebeb;float: left;background:rgba(255,255,255,1);overflow: hidden;margin-right: 15px;margin-bottom: 15px;}
.instMg_list_item:hover{box-shadow:0px 0px 20px rgba(191,191,191,1);transition: all linear 0.5s;}
._tips{font-size: 12px;color: #666666;padding: 15px 0}
._bt{padding: 20px;font-size: 14px;}
._bt_t{border-radius:4px;background-color: #E95252;color: #FFFFFF}
._bt_t>p{padding: 20px 0;text-align: center}
._bt_t>p>span{display: inline-block;padding: 3px 10px;background-color: #DE3535;border-radius: 4px}
.icon-qiehuan,.icon-ico-renwuyaoqiu{background-color: #E7E7E7;border-radius: 50%;color: #999999;font-size: 12px;width: 18px;height: 18px;display: inline-block;text-align: center;line-height: 19px;cursor: pointer;}
.icon-ico-renwuyaoqiu{font-size: 10px}
.icon-qiehuan:hover,.icon-ico-renwuyaoqiu:hover{background-color: #E95252;color: white;}
._bt_b{padding: 15px 0 0 0;border-bottom: 1px solid #EEEEEE}
._bt_b>p{display: flex;justify-content: space-between;padding-bottom: 10px}
._bt_b>P span._name{color: #333333;font-size: 12px;}
._btn{padding: 20px 30px 0 30px;text-align: center}
._btn span{display: inline-block;font-size: 12px;background-color: #E7E7E7;color: #333333;padding: 5px 20px;border-radius: 14px;cursor: pointer; margin-left: 10px}
._btn span:hover{background-color: #E95252;color: white}
.fc_green{color: #47BF8C !important}
.fc_red{color: #E95252 !important}
.page_CompanyAccount .PingFangSC,._bold{font-weight: bold}
._no_bold{font-weight: normal}
._max_wd{max-width: 80px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;vertical-align:top;display: inline-block}
._add_saveBtn{text-align: right;margin-bottom: 10px}
._cp_name{width: 185px;display: inline-block;text-overflow: ellipsis; white-space: nowrap;display: inline-block;overflow: hidden;text-align: right}
._underline{text-decoration: underline;cursor: pointer;}
.page_CompanyAccount .el-button-group .el-button{padding: 4px;}
._yingkui{
height: 40px;
line-height: 40px;
font-size: 12px;
color: #666666;
padding-left: 20px;
}
.page_CompanyAccount .query-box{
padding: 20px 0 0 ;
}
.page_PlatformAccount ._wAuto{
width: auto;
}
.edHeight_t{display: block !important;height: 152px;}
.el-date-editor.el-input{width: 100% !important;}
</style>
<template>
<div class='flexOne page_CompanyAccount'>
<div class='query-box'>
<el-form class="_info_box clearfix" label-width="110px">
<el-row>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.accBming')">
<el-input v-model="msg.Alias"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.accType')">
<el-select filterable v-model='msg.TypeId' >
<el-option :label='$t("pub.unlimitedSel")' value='-1'></el-option>
<el-option v-for='item in AccountTypeList'
:label='item.Name'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.suoshugs')">
<el-select filterable v-model='msg.RB_Branch_Id' >
<el-option :label='$t("pub.unlimitedSel")' value='-1'></el-option>
<!-- <el-option label='通用' value='-1'></el-option> -->
<el-option v-for='item in CompanyList'
:label='item.BName'
:value='item.Id'
:key='item.Id'>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<ul>
<li><input type="button" class="hollowFixedBtn" :value="$t('pub.searchBtn')" @click="resetPageIndex(),getList()"/>
<input type="button" class="normalBtn" :value="$t('pub.addBtn')" @click="addShow=true,text=$t('pub.addBtn'),ed=false"/></li>
</ul>
</div>
<div class="cm_content _scrollbar" :class="addShow==true||addCuren==false?'_edHeight':''">
<p class="_tips">{{$t('tips.sxhuilv')}}</p>
<div class="clearfix" v-loading='loading'>
<div class="instMg_list_item" v-for="(item,index) in DataList">
<div class="_bt">
<div class="_bt_t">
<p>
<el-tooltip class="item" effect="dark" :content="item.Alias" placement="top-start">
<span class="max_w200">{{item.Alias}}</span>
</el-tooltip>
</p>
</div>
<div class="_bt_b">
<p>
<span class="_name">{{$t('fnc.zhyue')}}</span>
<span>
<span v-if="item.IsStandardCurrency!=1">{{item.showB?item.StandardCurrencyCode:item.CurrencyCode}}</span>
<span v-else>{{item.StandardCurrencyCode}}</span>
<!-- <span class="fc_green PingFangSC _underline" @click="item.IsStandardCurrency!=1?goUrl('FineBalance',item.ID,item.Alias):''">{{item.showB?moneyFormat(item.benBalance):moneyFormat(item.Initialbalance)}}</span> -->
<span class="fc_green PingFangSC _underline" @click="goUrlNew(item)">{{item.showB?moneyFormat(item.benBalance):moneyFormat(item.Initialbalance)}}</span>
<span class="iconfont icon-qiehuan" @click="item.showB=!item.showB" v-if="item.IsStandardCurrency!=1"></span>
<span v-if="item.IsStandardCurrency!=1" class="iconfont icon-ico-renwuyaoqiu"></span>
</span>
</p>
<p><span class="_name">{{$t('fnc.zhubizhong')}}</span><span class="_bold">
<el-tooltip class="item" effect="dark" :content="item.CurrencyName" placement="top-start">
<span class="_max_wd">{{item.CurrencyName}}</span>
</el-tooltip>
(<span class="_bold" :class="item.IsStandardCurrency==1?'fc_green':'fc_red'">{{item.IsStandardCurrency==1? $t('fnc.bweibi') : $t('fnc.waibi')}}</span>) <span class="_no_bold" v-if="item.IsStandardCurrency!=1">{{item.CurrentRate}}</span> </span></p>
<p><span class="_name">{{$t('fnc.ssuogongsi')}}</span>
<el-tooltip class="item" effect="dark" :content="item.allName==''? $t('active.cl_zanwu'):item.allName" placement="top-end">
<span v-if="!item.BranchName.length" class="_cp_name"><span class="_bold" >{{$t('active.cl_zanwu')}} </span></span>
<span v-else class="_cp_name"><span class="_bold" v-for="(b,bi) in item.BranchName">{{b}} </span></span>
</el-tooltip>
</p>
<p v-if="item.IsStandardCurrency!=1">
<span class="_name">{{$t('fnc.ssuogongsi')}}</span>
<span class="fr" v-if="item.ProfitLossMoney&&item.ProfitLossMoney!=0" :class="item.ProfitLossMoney>0?'fc_green':'fc_red'">{{item.ProfitLossMoney}}</span>
<span class="fr" v-else>-</span>
</p>
<p v-else>&nbsp;</p>
</div>
<p class="_btn">
<el-button-group>
<el-button type="primary" @click="editCurency(item.ID),text=$t('pub.updateMsg'),addShow=true,addCuren=true">{{$t('pub.updateMsg')}}</el-button>
<el-button type="success" v-if="item.IsStandardCurrency===0" @click="moneyDate.ProfitLoss=0,cancelEdit(2),addShow=false,addCuren=false,SetProfitLossMsg.AccountID = item.ID,SetProfitLossMsg.CurrencyId=item.CurrencyId,SetProfitLossMsg.initRate=item.CurrentRate,SetProfitLossMsg.Money = item.Initialbalance">{{$t('fnc.tiaohui')}}</el-button>
<el-button type="info" v-if="item.IsStandardCurrency===0" @click="goUrl('RemittanceRecord',item.ID,item.Alias,3,item.CurrencyId)">{{$t('fnc.jilu')}}</el-button>
<el-button type="danger" @click="financeinfoRemove(item.ID,item.Alias)">{{$t('fnc.xiaohu')}}</el-button>
</el-button-group>
</p>
</div>
</div>
</div>
<div class="noData" v-show="noData">
{{$t('system.content_noData')}}
</div>
<div>
<el-pagination
background
@current-change="handleCurrentChange"
:current-page.sync="currentPage"
layout="total,prev, pager, next, jumper"
:page-size=msg.pageSize
:total=total>
</el-pagination>
</div>
</div>
<div class="_vMG_edit _scrollbar" v-if="addShow" :class="addShow==true?'edHeight':''">
<el-row>
<el-col :span="20">
<p class="_tit">{{text}}{{$t('fnc.acc')}}</p>
</el-col>
<el-col :span="4" class="_add_saveBtn">
<button type="button" class="normalBtn" @click="submitForm('addMsg',1)">{{$t('pub.saveBtn')}}</button>
<button class="hollowFixedBtn" type="button" @click="cancelEdit(),resetForm('addMsg'),addShow=false">{{$t('pub.cancelBtn')}}</button>
</el-col>
</el-row>
<el-form class="_info_box clearfix" :model="addMsg" ref="addMsg" :rules="rules" label-width="110px">
<el-row>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.accBming')" prop="Alias">
<el-input v-model="addMsg.Alias" class="" maxlength="10"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.accType')" prop="TypeId">
<el-select filterable v-model='addMsg.TypeId' class="">
<el-option v-for='item in AccountTypeList'
:label='item.Name'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.zhbizhong')" prop="CurrencyId">
<el-select filterable v-model='addMsg.CurrencyId' >
<el-option v-for='item in financeinfoList'
:label='item.Name'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item :label="$t('fnc.csyue')" prop="Initialbalance" >
<el-input v-model="addMsg.Initialbalance" class=""></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="4" :gutter="35">
<el-form-item label="收款负责人:" prop="InCharge" class="_fuzeren">
<el-select
v-model="addMsg.InCharge"
filterable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="remoteMethod"
@focus="Charge=1"
:loading="loading2">
<el-option
v-for="item in showEmployeeList"
:key="item.empId"
:label="`${item.name}`"
:value="item.empId">
<span style="float: left; font-size: 12px">{{ item.name }}</span>
<span style="float: right; font-size: 12px; margin-right:20px;">{{ item.departmentName }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item label="支款负责人:" prop="OutCharge" class="_fuzeren">
<el-select
v-model="addMsg.OutCharge"
filterable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="remoteMethod2"
@focus="Charge=2"
:loading="loading2">
<el-option
v-for="item in showEmployeeList2"
:key="item.empId"
:label="`${item.name}`"
:value="item.empId">
<span style="float: left; font-size: 12px">{{ item.name }}</span>
<span style="float: right; font-size: 12px; margin-right:20px;">{{ item.departmentName }}</span>
</el-option>
</el-select>
</el-form-item>
</el-col> -->
<el-col :span="4" :gutter="35" class="_BranchIdS">
<el-form-item :label="$t('fnc.ssgongsi')" prop="BranchIdS">
<el-select filterable v-model='addMsg.BranchIdS'>
<el-option v-for='item in CompanyList'
:label='item.BName'
:value='item.Id'
:key='item.Id'
:disabled="item.disabled">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35" >
<el-form-item :label="$t('fnc.fxshangxian')" >
<el-input v-model="addMsg.RiskLimitMoney" type="number" class=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35" >
<el-form-item :label="$t('fnc.fxxiaxian')">
<el-input v-model="addMsg.RiskLowerLimitMoney" type="number" class=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item label="初始本位币金额">
<el-input v-model="addMsg.AccountStartWBMoney" type="number" class></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item label="初始原币金额">
<el-input v-model="addMsg.AccountStartMoney" type="number" class></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35">
<el-form-item label="期初应用日期">
<el-date-picker type="date" v-model="addMsg.BeginTimeStr"
value-format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div class="_vMG_edit _scrollbar" v-if="addCuren == false" :class="addCuren==false?'edHeight_t':''">
<el-row>
<el-col :span="20">
<p class="_tit">{{$t('fnc.qmtiaohui')}}</p>
</el-col>
<el-col :span="4" class="_add_saveBtn">
<button type="button" class="normalBtn" @click="submitForm('SetProfitLossMsg',2)">{{$t('fnc.qrtijiao')}}</button>
<button class="hollowFixedBtn" type="button" @click="cancelEdit(),resetForm('SetProfitLossMsg')">{{$t('pub.cancelBtn')}}</button>
</el-col>
</el-row>
<el-form class="_info_box clearfix" :model="SetProfitLossMsg" ref="SetProfitLossMsg" :rules="rules" label-width="100px">
<el-row>
<el-col :span="4" :gutter="35" >
<el-form-item :label="$t('fnc.sqhuilv')">
<el-input v-model="SetProfitLossMsg.initRate" disabled=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35" >
<el-form-item :label="$t('fnc.qmhuilv')" prop="EndRate">
<el-input v-model="SetProfitLossMsg.EndRate" type="number" @change="Calculation()"></el-input>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35" >
<el-form-item :label="$t('fnc.xzqishu')" prop="TermNum">
<el-date-picker
v-model="SetProfitLossMsg.TermNum"
value-format="yyyy-MM-dd"
type="month"
class="_wAuto"
:placeholder="$t('admin.admin_choDate')">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35" v-if="costType.length">
<el-form-item :label="$t('fnc.fyleixing')" prop="CostTypeID">
<el-select filterable v-model='SetProfitLossMsg.CostTypeID'>
<el-option v-for='item in costType'
:label='item.Name'
:value='item.ID'
:key='item.ID'>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" :gutter="35" class="_yingkui">
<p v-if="moneyDate.ProfitLoss<0">{{$t('fnc.yingkui')}}<span class="fc_red">{{moneyDate.ProfitLoss}}</span></p>
<p v-if="moneyDate.ProfitLoss>0">{{$t('fnc.yingli')}}<span class="fc_green">{{moneyDate.ProfitLoss}}</span></p>
<p v-if="moneyDate.ProfitLoss==0">{{$t('fnc.yingkui')}}<span class="fc_green">0</span></p>
</el-col>
</el-row>
</el-form>
</div>
</div>
</template>
<script>
export default {
data(){
return{
msg:{
pageIndex:1,
pageSize:5,
TypeId:'-1',
RB_Branch_Id:'-1',
Alias:''
},
addMsg:{
ID:0,
Alias:'',
TypeId:'',
Initialbalance:'',
CurrencyId:'',
BranchId:'',
RiskLimitMoney:'',
BranchIdS:0,
BranchList:[],
OutCharge:0,
InCharge:0,
RiskLowerLimitMoney:'',
AccountStartWBMoney:'',
AccountStartMoney:'',
BeginTimeStr:'',
},
getCompanyMsg:{
RB_Group_Id:'0',
Status:'0',
},
DataList:[],
total:0,
currentPage:1,
loading:true,
noData:false,
text:'',
dialogTitle:'',
AccountTypeList:[],
CompanyList:[],
FinancialList:[],
financeinfoList:[],
addShow:false,
ed:false,
rules: {//表单必填验证
Alias: [
{ required: true, message: this.$t('rule.qsrzhbieming'), trigger: 'blur' }
],
TypeId: [
{ required: true, message: this.$t('rule.qxzzhleixing'), trigger: 'change' }
],Accountholder: [
{ required: true, message: this.$t('rule.qsrkhuren'), trigger: 'blur' }
],Openingbank: [
{ required: true, message: this.$t('rule.qsrkhuhang'), trigger: 'blur' }
],BackNo: [
{ required: true, message: this.$t('rule.qssrzhhaoma'), trigger: 'blur' },
{pattern:/^[0-9]*$/, message: this.$t('rule.qsrzqdzhhaoma')}
],BranchIdS: [
{ required: true, message: this.$t('rule.qszssgongsi'), trigger: 'change' }
],CurrencyId: [
{ required: true, message: this.$t('rule.qxzzhbizhong'), trigger: 'change' }
],Initialbalance: [
{ required: true, message: this.$t('rule.qsrcsyue'), trigger: 'blur' },
{pattern: this.$commonUtils.Regex.el_IsdecimalAll, message: this.$t('rule.qsrzqdyue')}
],OutCharge:[
{ required: true, message: this.$t('rule.szfzeren'), trigger: 'change' },
],InCharge:[
{ required: true, message: this.$t('rule.fkfzeren'), trigger: 'change' },
],CostTypeID:[
{ required: true, message: this.$t('rule.qxzfyleixing'), trigger: 'change' },
]
},
addCuren:true,
ed:false,
loading2:false,
moneyDate:{
Money : 0,
LastR : 0,
currentR : 0,
LastM : 0,
currentM : 0,
ProfitLoss : 0
},
EmployeeMsg: {
GroupId:'',
BranchId:0,
DepartmentId:0,
PostId:0,
IsLeave:0,
},
showEmployeeList:[],
showEmployeeList2:[],
Charge:1,
SetProfitLossMsg:{
ID:0,
AccountID:0,
EndRate:'',
TermNum:'',
CurrencyId:'',
initRate:'',
Money:'',
ProfitLoss:0,
Source:3,
CostTypeID:''
},
costType:[],
}
},methods:{
goUrlNew (item) {
let path="CashAccDetail";
this.$router.push({ name: path,query:{"TypeId":item.TypeId,'ID':item.ID, blank: "y",}})
},
regNum(n,t){ // 判断数字 n 值 t 类型
let reg = /^\d+(\.\d{0,6})?$/
if(!n)return 0
if(t==2){
if(reg.test(n)){
return Number(n)
}
return 0;
}else if(t==1){
if(reg.test(n)){
return Number(n)
}
return 0
}
},
Calculation(){ // 计算盈亏
this.SetProfitLossMsg.CostTypeID = '';
this.moneyDate.Money = this.regNum(this.SetProfitLossMsg.Money,1)
this.moneyDate.LastR = this.regNum(this.SetProfitLossMsg.initRate,1)
this.moneyDate.currentR = this.regNum(this.SetProfitLossMsg.EndRate,2)
this.moneyDate.LastM = 0
this.moneyDate.currentM = 0
this.moneyDate.ProfitLoss = ((this.moneyDate.currentR-this.moneyDate.LastR)*this.moneyDate.Money).toFixed(2);
if(this.moneyDate.ProfitLoss>0){
this.getTemplateCostTypeList(1)
}else if(this.moneyDate.ProfitLoss<0){
this.getTemplateCostTypeList(2)
}else{
this.costType=[];
}
},
getTemplateCostTypeList(t){
this.apipost('financeinfo_post_GetCostTypeList',{Type:t},res=>{
if(res.data.resultCode==1){
this.costType=res.data.data;
}else{
}
},err=>{})
},
remoteMethod(query) {
if (query !== '') {
this.loadingPeople = true
this.apipost('admin_Get_Chat_All_SelectEmpName',{EmName:query}, res => {
if(res.data.resultCode == 1) {
this.showEmployeeList = res.data.data
}
this.loadingPeople = false
}, err => {})
} else {
this.showEmployeeList = [];
}
},
remoteMethod2(query) {
if (query !== '') {
this.loadingPeople = true
this.apipost('admin_Get_Chat_All_SelectEmpName',{EmName:query}, res => {
if(res.data.resultCode == 1) {
this.showEmployeeList2 = res.data.data
}
this.loadingPeople = false
}, err => {})
} else {
this.showEmployeeList2 = [];
}
},
goUrl (path,id,name,source,CurrencyId) {
this.$router.push({ name: path,query:{"id":id,'name':name,'source':source,'CurrencyId':CurrencyId}})
},
disabledOption(){ // 选择公司 如果选择通用则禁用其它选项
if(this.addMsg.BranchIdS&&this.addMsg.BranchIdS.length==0){
this.CompanyList.forEach(y=>{
y.disabled=false
})
return
}
this.addMsg.BranchIdS.forEach(x=>{
if(x=='-1'){
this.addMsg.BranchIdS=[]
this.addMsg.BranchIdS.push('-1')
this.CompanyList.forEach(y=>{
y.disabled=true
})
}
})
},
getCurrentRate(id,index){// 更新汇率
this.apipost('financeinfo_post_GetCurrentRate',{ID:id}, res => {
if(res.data.resultCode == 1) {
this.tips(res.data.message,'success');
} else {
this.tips(res.data.message,'error');
}
}, err => {})
},
getfinanceinfoList(){ //获取币种列表
this.apipost('financeinfo_post_GetList',{Name:''},res=>{
if(res.data.resultCode==1){
this.financeinfoList=res.data.data;
}else{}
},err=>{})
},
getFinancialList(){ //获取机构列表
this.apipost('FinancialInstitutions_post_GetList',{},res=>{
if(res.data.resultCode==1){
this.FinancialList=res.data.data;
}else{}
},err=>{})
},
getCompanyList(){ //获取公司列表
this.apipost('admin_get_BranchGetList',this.getCompanyMsg,res=>{
if(res.data.resultCode==1){
let data = res.data.data;
data.forEach(x=>{
x.disabled = false;
})
this.CompanyList = data;
}else{}
},err=>{})
},
editCurency(id){ // 修改根据ID 获取信息
this.apipost('BankAccount_post_GetCashAccount',{ID:id}, res => {
if(res.data.resultCode == 1) {
let data = res.data.data
data.BranchIdS = data.BranchList[0].RB_Branch_Id;
this.remoteMethod(data.InemName)
this.remoteMethod2(data.OutemName)
this.addMsg = data;
// this.disabledOption();
} else {
this.tips(res.data.message,'error');
}
}, err => {})
},
cancelEdit(t){ // 取消修改、新增
this.addMsg ={
ID:0,
Alias:'',
TypeId:'',
Initialbalance:'',
CurrencyId:'',
BranchId:'',
RiskLimitMoney:'',
BranchIdS:0,
BranchList:[],
OutCharge:0,
InCharge:0,
RiskLowerLimitMoney:'',
AccountStartWBMoney:'',
AccountStartMoney:'',
BeginTimeStr:'',
}
this.SetProfitLossMsg={
ID:0,
EndRate:'',
TermNum:'',
CurrencyId:'',
initRate:'',
Money:'',
AccountID:0,
Source:3,
CostTypeID:''
}
if(!t){
this.addShow=false
this.ed = false
this.addCuren = true
}
this.Charge = 3;
},
getAccountTypeList() { //获取账户类型
this.apipost('AccountType_post_GetList',{}, res => {
if(res.data.resultCode == 1) {
this.AccountTypeList = res.data.data;
}
}, err => {})
},
getList(){ //获取列表
this.loading = true
this.apipost('BankAccount_post_GetCashAccountPageList',this.msg,res=>{
if(res.data.resultCode==1){
this.total = res.data.data.count;
let data = res.data.data.pageData;
if(this.total>0){
this.noData =false;
}else{
this.noData =true;
}
data.forEach(x => {
x.showB = false
x.benBalance = (Number(x.CurrentRate)*x.Initialbalance).toFixed(2)
let allName = '';
x.BranchName.forEach(y=>{
allName = allName+y;
})
x.allName = allName
});
this.DataList = data
this.loading = false;
}else{
this.$message.error(res.data.message)
this.loading = false;
}
},err=>{})
},
addInstitutions(){ // 保存 修改、新增
this.addMsg.BranchList = [];
if(!this.addMsg.RiskLimitMoney) {
this.addMsg.RiskLimitMoney = 0;
}
let msg = {
ID:0,
Type:2,
RB_Branch_Id:this.addMsg.BranchIdS
}
this.addMsg.BranchList.push(msg);
this.apipost('BankAccount_post_SetCashAccount',this.addMsg,res=>{
if(res.data.resultCode == 1) {
this.tips('保存成功!','success')
this.getList();
this.initAddMsg();
this.addShow = false
} else {
this.$message.error(res.data.message)
}
},err=>{})
},
financeinfoRemove(id,text){//删除
this.$confirm(this.$t('tips.shifoudui')+'“'+text+'”'+ this.$t('tips.zhshanchu'),
this.$t('tips.tips'), {
confirmButtonText: this.$t('pub.sureBtn'),
cancelButtonText: this.$t('pub.cancelBtn'),
type: 'warning'
}).then(() => {
this.deletInstitutions(id)
}).catch(() => {
this.$message({
type: 'info',
message: this.$t('tips.cancleDelete')
});
});
},
deletInstitutions(id){
this.apipost('BankAccount_post_RemoveCashAccount',{ID:id},res=>{
if(res.data.resultCode == 1) {
this.innerVisible=false;
this.$message.success(res.data.message)
}else{
this.$message.error(res.data.message)
}
this.getList();
},err=>{})
},
initAddMsg(){//初始化添加、修改数据
let newMsg = {
ID:0,
Alias:'',
TypeId:'',
Initialbalance:'',
CurrencyId:'',
BranchId:'',
RiskLimitMoney:'',
BranchIdS:0,
BranchList:[],
OutCharge:0,
InCharge:0,
RiskLowerLimitMoney:'',
AccountStartWBMoney:'',
AccountStartMoney:'',
BeginTimeStr:'',
}
this.addMsg = newMsg;
},
SetProfitLoss(){ //币种调汇
this.apipost('FinanceInfo_post_SetProfitLoss',this.SetProfitLossMsg, res => {
if(res.data.resultCode == 1) {
this.tips(res.data.message,'success');
this.addShow =false
this.addCuren = true
this.ed =0
} else {
this.tips(res.data.message,'error');
}
}, err => {})
},
submitForm(addMsg,type) {//提交创建、修改表单
this.$refs[addMsg].validate((valid) => {
if (valid) {
if(type==1){
this.addInstitutions()
}else{
this.SetProfitLoss()
}
} else {
return false;
}
});
},
resetPageIndex() {//查询初始化页码
this.msg.pageIndex = 1;
this.currentPage = 1
},
handleCurrentChange(val) {//翻页功能按钮
this.msg.pageIndex = val;
this.getList();
},
tips(msg,type) {
this.$message({
message: msg,
duration:2000,
type: type
});
},
closeChangeMachie(done){
done();
this.resetForm('addMsg');
},
resetForm(formName) {
this.initAddMsg();
this.$refs[formName].resetFields();
},
},mounted(){
this.getList()
this.getAccountTypeList()
let userInfo=this.getLocalStorage();
this.getCompanyMsg.RB_Group_Id=userInfo.RB_Group_id; //集团ID
this.getCompanyList()
this.getFinancialList()
this.getfinanceinfoList()
}
}
</script>
<template>
<div class="rule-box">
<div class="query-box">
<ul>
<li>
<input type="button" class="normalBtn" :value="$t('pub.addBtn')" @click="addNew">
</li>
</ul>
</div>
<v-table
v-if="isReady"
is-horizontal-resize
column-width-drag
column-height-drag
style="width:100%"
:is-loading="loading"
:columns="columns"
:table-data="tableData"
:filter-method="filterMethod"
:total="total"
:pageSize="pageSize"
:pageIndex="pageIndex"
:handleCurrentChange="handleCurrentChanges"
:multiple-sort="multipleSort"
sort-always
@sort-change="sortChange"
@on-custom-comp="customCompFunc"
></v-table>
<!-- @on-custom-comp="customCompFunc" -->
<div class="bottom-box" v-show="showForm" v-loading="formLoading">
<div class="btm-title">{{addMsg.ID==0?$t('fnc.addguize'):$t('fnc.editguize')}}</div>
<div>
<el-form
class="_info_box clearfix"
:model="addMsg"
ref="addMsg"
label-width="110px"
:rules="rules"
>
<el-row>
<el-col :span="4" :gutter="20">
<el-form-item :label="$t('fnc.accBming')" prop="RuleName">
<el-input v-model="addMsg.RuleName"></el-input>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item :label="$t('fnc.tcleibie')">
<el-select filterable v-model="addMsg.CommissionMethod" class>
<el-option :label="$t('fnc.jiaoyie')" :value="1"></el-option>
<!-- <el-option label="毛利" :value="2"></el-option> -->
<el-option :label="$t('fnc.retoushu')" :value="3"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item :label="$t('fnc.tcfangshi')">
<el-select filterable v-model="addMsg.CommissionType" class>
<el-option :label="$t('fnc.gdbfenbi')" :value="1" v-if='addMsg.CommissionMethod==1'></el-option>
<el-option :label="$t('fnc.jtbfenbi')" :value="2" v-if='addMsg.CommissionMethod==1'></el-option>
<el-option :label="$t('fnc.gdjine')" :value="3" v-if='addMsg.CommissionMethod==3'></el-option>
<el-option :label="$t('fnc.jtjine')" :value="4" v-if='addMsg.CommissionMethod==3'></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item :label="$t('fnc.tcbili')" prop="CommissionVariable">
<el-input
v-model="addMsg.CommissionVariable"
type="int"
:disabled="addMsg.CommissionType%2!=1"
>
<template slot="append">{{addMsg.CommissionType==1?'%':'/人'}}</template>
</el-input>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item :label="$t('fnc.tcyaoqiu')">
<el-select v-model="addMsg.Require" class>
<el-option :label="$t('fnc.ysdingjin')" :value="1"></el-option>
<el-option :label="$t('fnc.wkshouqi')" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" :gutter="20">
<el-form-item :label="$t('fnc.jszhouqi')">
<el-select v-model="addMsg.BalanceCyc" class>
<el-option :label="$t('fnc.andjiesuan')" :value="1"></el-option>
<el-option :label="$t('fnc.anyjiesuan')" :value="2"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item :label="$t('fnc.jsyaoqiu')">
<el-select v-model="addMsg.IsFinishAll" class>
<el-option :label="$t('fnc.qzwcsyyq')" :value="1"></el-option>
<el-option :label="$t('fnc.bqzwancheng')" :value="0"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item :label="$t('fnc.shiyongongsi')" prop="UsingBranchArray">
<el-select
multiple
collapse-tags
@change="changeData(1)"
v-model="addMsg.UsingBranchArray"
class
>
<el-option :label="$t('fnc.jttongyong')" value="-1"></el-option>
<el-option
v-for="(item, index) in CompanyList"
:label="item.BName"
:value="item.Id.toString()"
:key="index"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item :label="$t('fnc.jttongyong')" prop="UsingLineArray">
<el-select
multiple
collapse-tags
@change="changeData(2)"
v-model="addMsg.UsingLineArray"
class
>
<el-option :label="$t('fnc.sydxianlu')" value="-1"></el-option>
<el-option
v-for="(item, index) in lines"
:label="item.lineName"
:value="item.lineID.toString()"
:key="index"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="5" :gutter="20">
<el-form-item :label="$t('fnc.symdidi')">
<el-select
multiple
collapse-tags
@change="changeData(3)"
v-model="addMsg.UsingDestinationArray"
>
<el-option :label="$t('fnc.symudidi')" value="-1"></el-option>
<el-option
v-for="(item, index) in desctions"
:label="item.PlaceName"
:value="item.PlaceID.toString()"
:key="index"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" :gutter="20">
<el-form-item :label="$t('fnc.qyshijian')">
<el-date-picker v-model="addMsg.EffectDate" type="date" :placeholder="$t('tips.xzqyshijian')"></el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<table class="al-tab" v-show="addMsg.CommissionType%2==0">
<caption>{{$t('fnc.jttcblsd')}}</caption>
<thead>
<th>{{$t('active.ad_xuhao')}}</th>
<th>{{$t('fnc.qzrenshu')}}</th>
<th>{{$t('fnc.zzrenshu')}}</th>
<th>{{$t('fnc.jcbili')}}</th>
<th>{{$t('fnc.ewjiangli')}}</th>
<th>{{$t('admin.admin_operate')}}</th>
</thead>
<tbody>
<tr v-for="(item, index) in addMsg.RuleClassList" :key="index">
<td>{{index+1}}</td>
<td>
<el-input-number
size="small"
style="margin:0 12px"
:min="1"
:max="item.EndPeople"
v-model="item.StartPeople"
class="w120"
></el-input-number>
</td>
<td>
<el-input-number
size="small"
style="margin:0 15px"
:min="item.StartPeople"
v-model="item.EndPeople"
class="w100"
></el-input-number>
</td>
<td>
<el-input
:placeholder="$t('rule.qsrjcbili')"
size="small"
v-model="item.BaseVariable"
class="w200"
>
<template slot="append">{{addMsg.CommissionType==2?'%':'/'+$t('hotel.hotel_people')}}</template>
</el-input>
</td>
<td>
<el-input
:placeholder="$t('rule.qsrwmjiangli')"
size="small"
v-model="item.AddedVariable"
class="w200 temp"
>
<template slot="append">
<el-select v-model="item.AddedMethod" class>
<el-option :label="'/'+$t('hotel.hotel_people')" :value="2"></el-option>
<el-option label="%" :value="1"></el-option>
</el-select>
</template>
</el-input>
</td>
<td>
<el-button
type="primary"
icon="el-icon-plus"
size="mini"
circle
v-if="index==addMsg.RuleClassList.length-1"
@click="addCommissionType"
></el-button>
<el-button
type="danger"
icon="el-icon-delete"
size="mini"
circle
@click="deleteCommissionType(index)"
v-if="addMsg.RuleClassList.length>1"
></el-button>
</td>
</tr>
</tbody>
</table>
</el-row>
</el-form>
</div>
<div class="btm-opera-btn">
<input type="button" class="normalBtn" :value="$t('pub.saveBtn')" @click="save">
<input type="button" class="cancelBtn" :value="$t('pub.cancelBtn')" @click="changeShow(0)">
</div>
</div>
</div>
</template>
<script>
import Vue from "vue";
export default {
data() {
var checkVariable = (rule, value, callback) => {
if (value == null || value.length == 0) {
return callback(new Error("提成比列不能为空"));
}
let a = parseFloat(value);
if (isNaN(a)) {
callback(new Error("提成比例必须是整数"));
} else {
callback();
}
};
return {
columns: [],
remoteLoading: false,
total: 0,
tableData: [],
isReady: false,
multipleSort: false,
loading: false,
pageSize: 1000,
pageIndex: 1,
msg: {},
CompanyList: [],
addMsg: {},
lines: [],
rules: {
RuleName: [
{ required: true, message: this.$t('rule.qsrgzmingcheng'), trigger: "blur" }
],
UsingLineArray: [
{
type: "array",
required: true,
message: this.$t('rule.qzsxzytxianlu'),
trigger: "blur"
}
],
UsingBranchArray: [
{
type: "array",
required: true,
message: this.$t('rule.qzsxzyggongsi'),
trigger: "blur"
}
],
CommissionVariable: [{ validator: checkVariable, trigger: "blur" }]
},
showForm: false,
formLoading: false,
searchMsg: {
RB_Group_Id: 0
},
desctionsResources:[],
desctions:[]
};
},
methods: {
customCompFunc(params) {
if (params.type === "delete") {
this.delete(params.data.ID);
//this.financeinfoRemove(params.id,params.alias)
} else if (params.type === "edit") {
this.addNew(params.data);
}
},
delete(id) {
this.$confirm(this.$t('tips.cicaozuoyongjiushanchu'), this.$t('tips.shanchutishi'), {
confirmButtonText: this.$t('pub.sureBtn'),
cancelButtonText: this.$t('pub.cancelBtn'),
type: "warning"
})
.then(() => {
let msg = {
id
};
this.apipost("sellcommission_rule_delete", msg, x => {
if (x.data.resultCode == 1) {
this.Success(this.$t('tips.shanchuchenggong'));
this.getData()
} else {
this.Error(this.data.message);
}
});
})
.catch(() => {});
},
addNew(data) {
if (!data.ID) {
this.addMsg = {
ID: 0,
RuleName: "",
CommissionMethod: 1,
CommissionType: 1,
Require: 1,
CommissionVariable: 0,
UsingLineArray: ["-1"],
UsingBranchArray: ["-1"],
UsingDestinationArray:["-1"],
UsingLine: "",
UsingBranch: "",
UsingDestination: "",
EffectDate: null,
RB_Group_Id: this.searchMsg.RB_Group_Id,
BalanceCyc: 1,
IsFinishAll: 0,
IsDelete: 1,
RuleClassList: [
{
StartPeople: 1,
EndPeople: 1,
BaseVariable: 0,
AddedVariable: 0,
AddedMethod: 1
}
]
};
} else {
data.UsingLineArray = data.UsingLine.split(",");
data.UsingBranchArray = data.UsingBranch.split(",");
this.desctions=[]
if(data.UsingLine!='-1'){
this.desctionsResources.forEach(x=>{
if(data.UsingLineArray.indexOf(x.LineID.toString())!=-1){
this.desctions.push(x);
}
})
}
this.addMsg = data;
this.addMsg.UsingDestinationArray = data.UsingDestination.split(",");
}
this.changeShow(1);
},
save() {
//sellcommission_rule_set
this.$refs["addMsg"].validate(valid => {
if (valid) {
this.formLoading = true;
this.addMsg.UsingLine = this.addMsg.UsingLineArray.join(",");
this.addMsg.UsingBranch = this.addMsg.UsingBranchArray.join(",");
this.addMsg.UsingDestination = this.addMsg.UsingDestinationArray.join(",");
this.apipost("sellcommission_rule_set", this.addMsg, x => {
if (x.data.resultCode == 1) {
this.changeShow(0);
this.Success(this.$t('tips.baocunchenggong'));
this.getData();
} else {
this.Error(x.data.message);
}
this.formLoading = false;
});
} else {
return false;
}
});
},
changeShow(t) {
this.showForm = t == 1;
},
deleteCommissionType(index) {
this.addMsg.RuleClassList.splice(index, 1);
},
addCommissionType() {
let obj = {
StartPeople:
this.addMsg.RuleClassList[this.addMsg.RuleClassList.length - 1]
.EndPeople + 1,
EndPeople:
this.addMsg.RuleClassList[this.addMsg.RuleClassList.length - 1]
.EndPeople + 1,
Variable: 0,
AddedVariable: 0,
AddedMethod: "1"
};
this.addMsg.RuleClassList.push(obj);
},
initColums() {
this.isReady = false;
let that = this;
let RuleName = {
title: that.$t('fnc.gzmingcheng'),
field: "RuleName",
titleAlign: "left",
columnAlign: "left",
result: "",
filterMultiple: false,
width: 40,
filters: [{}],
isResize: true,
type: "text",
isFrozen: true
};
let companyList = [];
this.CompanyList.forEach(x => {
let item = {};
item.label = x.BName;
item.value = x.Id;
companyList.push(item);
});
let BranchName = {
field: "BranchName",
title: that.$t('fnc.sygongsi'),
width: 40,
titleAlign: "left",
columnAlign: "left",
isResize: true,
filterMultiple: true,
filters: companyList,
result: [],
type: "select",
isFrozen: true
};
let lines = [];
this.lines.forEach(x => {
let item = {};
item.label = x.lineName;
item.value = x.lineID;
lines.push(item);
});
let LineName = {
field: "LineName",
title: that.$t('fnc.shiyongxianlu'),
width: 80,
titleAlign: "left",
columnAlign: "left",
isResize: true,
result: [],
filterMultiple: true,
filters: lines,
isFrozen: true,
formatter: function(rowData, rowIndex, pagingIndex, field) {
if (rowData.UsingLine == "-1") {
return that.$t('fnc.sydxianlu');
} else {
let lineNames = "";
rowData.UsingLine.split(",").forEach(x => {
that.lines.forEach(y => {
if (y.lineID == x) {
lineNames += y.lineName + ",";
}
});
});
return lineNames;
}
}
};
let Rules = {
title: that.$t('fnc.tcguize'),
field: "RuleDescription",
titleAlign: "left",
columnAlign: "left",
width: 300
// orderBy: "desc"
};
let EffectDate = {
field: "EffectDate",
title: that.$t('active.cl_sxriqi'),
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
formatter: function(rowData, rowIndex, pagingIndex, field) {
return rowData.EffectDate.split("T")[0];
}
};
let CommissionLog = {
title: that.$t('fnc.tcjilu'),
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80
// orderBy: "",
// formatter: function(rowData, rowIndex, pagingIndex, field) {
// return rowData.Royalty.toFixed(2);
// }
};
let Cyc = {
title: that.$t('fnc.tczhouqi'),
titleAlign: "left",
columnAlign: "left",
isResize: true,
width: 80,
formatter: function(rowData, rowIndex, pagingIndex, field) {
let cyc = "";
let dyjiesuan = that.$t('fnc.dyjiesuan')
let ayjiesuan = that.$t('fnc.ayjiesuan')
let dwala = that.$t('dwala')
let awala = that.$t('awala')
if (rowData.BalanceCyc == "1") {
cyc = dyjiesuan+"(";
} else {
cyc = ayjiesuan+"(";
}
if (rowData.IsFinishAll == "1") {
cyc += dwala +")";
} else {
cyc += awala +")";
}
return cyc;
}
};
let opera = {
title: that.$t('system.table_operation'),
titleAlign: "left",
columnAlign: "left",
width: 80,
isResize: false,
componentName: "table-operation"
};
this.columns = [];
this.columns.push(RuleName);
this.columns.push(BranchName);
this.columns.push(LineName);
this.columns.push(Rules);
this.columns.push(EffectDate);
this.columns.push(CommissionLog);
this.columns.push(Cyc);
this.columns.push(opera);
this.isReady = true;
},
changeData(type) {
let temp = [];
if (type == 1) {
temp = this.addMsg.UsingBranchArray;
} else if (type == 2) {
temp = this.addMsg.UsingLineArray;
} else if (type == 3) {
temp = this.addMsg.UsingDestinationArray;
}
let len = temp.length;
if (len > 1) {
if (temp[len - 1] == -1) {
temp.splice(0, len - 1);
} else if (temp.indexOf("-1") != -1) {
temp.splice(temp.indexOf("-1"), 1);
}
}
if(type==2 || type==3){
this.desctions=[]
if(type==2)
this.addMsg.UsingDestinationArray=['-1']
this.desctionsResources.forEach(x=>{
if(this.addMsg.UsingLineArray.indexOf(x.LineID.toString())!=-1){
this.desctions.push(x);
}
})
}
},
handleCurrentChanges(val) {
this.pageIndex = val;
this.getList();
},
sortChange(param) {
if (param.Royalty != "") {
this.msg.OrderBy = `Royalty ${param.Royalty}`;
} else if (param.Initialbalance != "") {
this.msg.OrderBy = `Initialbalance ${param.Initialbalance}`;
}
this.getList();
},
filterMethod(filters) {
this.searchMsg.RuleName = filters.RuleName;
this.searchMsg.UsingBranchArray = filters.BranchName;
this.searchMsg.UsingLineArray = filters.LineName;
this.getData();
},
getCompanyList() {
//获取公司列表
this.apipost(
"admin_get_BranchGetList",
this.getCompanyMsg,
res => {
if (res.data.resultCode == 1) {
let data = res.data.data;
data.forEach(x => {
x.disabled = false;
});
this.CompanyList = data;
this.getline();
} else {
}
},
err => {}
);
},
getline() {
let msg = { pageIndex: 0, pageSize: 100 };
this.apipost(
"line_post_GetPageList",
msg,
x => {
this.lines = x.data.data.pageData;
this.initColums();
this.getData();
},
err => {}
);
},
getData() {
this.loading = true;
this.apipost("sellcommission_rule_get", this.searchMsg, x => {
this.tableData = x.data.data;
this.loading = false;
});
},
getDesction(){
this.apipost(
"place_post_GetPageList",
{
LineID:0,
PlaceName:'',
pageIndex:1,
pageSize:5000
},
res => {
if (res.data.resultCode == 1) {
res.data.data.pageData.forEach(x=>{
if(x.IsShow==1)
this.desctionsResources.push(x)
})
}
},
err => {}
);
}
},
mounted() {
this.searchMsg.RB_Group_Id = this.addMsg.RB_Group_Id = this.getLocalStorage().RB_Group_id;
this.getCompanyList();
this.getDesction();
Vue.component("table-operation", {
template: `<div style='width:80px;height:40px;background:#fff;text-align:center;position: relative;left:-5px;padding-top: 6px;padding-top:6px;'><el-button type="primary" size='mini' icon="el-icon-edit" circle @click="update(rowData,index)"></el-button><el-button type="danger" size='mini' icon="el-icon-delete" circle @click="deleteRow(rowData,index)"></el-button></div>`,
props: {
rowData: {
type: Object
},
field: {
type: String
},
index: {
type: Number
}
},
methods: {
update() {
let params = { type: "edit", data: this.rowData };
this.$emit("on-custom-comp", params);
},
deleteRow() {
let params = { type: "delete", data: this.rowData };
this.$emit("on-custom-comp", params);
}
}
});
}
};
</script>
<style>
@import "./css/cssReset.css";
/* .rule-box .el-select__tags{
top: 100%;
} */
.rule-box .el-input .el-input__inner,
.rule-box .el-select .el-input {
height: auto;
}
.rule-box .el-select {
display: block;
}
.el-input-group__append,
.el-input-group__prepend {
border-radius: 0;
}
.rule-box .el-date-editor.el-input,
.rule-box .el-date-editor.el-input__inner {
width: 100%;
}
.rule-box .temp .el-input-group__append {
width: 70px;
}
.rule-box .temp .el-select {
background: #409eff;
color: #fff;
}
.rule-box .temp .el-select .el-input .el-select__caret {
color: #f1f1f1;
}
.rule-box .el-button.is-circle{padding: 5px !important;}
</style>
...@@ -142,6 +142,16 @@ const routes = [{ ...@@ -142,6 +142,16 @@ const routes = [{
component: () => component: () =>
import("pages/financial/HuiChaImport.vue") import("pages/financial/HuiChaImport.vue")
}, },
{
path: "/financial/CashAccount", //汇差批量制单
component: () =>
import("pages/financial/CashAccount.vue")
},
{
path: "/financial/sellCommissionRules", //提成规则
component: () =>
import("pages/financial/sellCommissionRules.vue")
},
{ {
path: "/test", //API测试 path: "/test", //API测试
component: () => component: () =>
......
import md5 from 'js-md5' import md5 from 'js-md5'
import co from 'co'
export default{ export default{
data:{ data:{
...@@ -248,6 +249,19 @@ export default{ ...@@ -248,6 +249,19 @@ export default{
that.$message.error('上传失败!'); that.$message.error('上传失败!');
}); });
} }
},
//价钱格式化,三位数逗号分隔,保留两位小数 duanjun
Vue.prototype.moneyFormat = function (value) {
let nStr = Number(value).toFixed(2)
nStr += '';
let x = nStr.split('.');
let x1 = x[0];
let x2 = x.length > 1 ? '.' + x[1] : '';
var rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1' + ',' + '$2');
}
return x1 + x2;
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment