Commit a3de8c39 authored by 黄奎's avatar 黄奎

页面修改

parents f109db85 3922da37
......@@ -47,9 +47,9 @@ module.exports = function (ctx) {
vueRouterMode: 'hash', // available values: 'hash', 'history'
env: ctx.dev ? {
// API: 'https://localhost:5001/api',
API: 'http://localhost:5001/api',
// API: 'http://192.168.20.24:8300/api',
API: 'http://192.168.10.46:8300/api',
//API: 'http://192.168.10.46:8300/api',
// API: 'http://192.168.20.17:8017/api',
......
......@@ -798,7 +798,47 @@ export function GetPersonnelPeriodDetails(data) {
data
});
}
/**
* 返佣和幸福存折 获取期数分页列表
*/
export function getCommissionPeriodsPageList(data) {
return request({
url: '/CustomerCommission/GetCommissionPeriodsPageList',
method: 'post',
data
});
}
/**
* 返佣和幸福存折 生成期数
*/
export function setUserReturnCommission(data) {
return request({
url: '/finance/SetUserReturnCommission',
method: 'post',
data
});
}
/**
* 返佣和幸福存折 获取周期下 用户分组统计列表
*/
export function getCommissionUserList(data) {
return request({
url: '/CustomerCommission/GetCommissionUserList',
method: 'post',
data
});
}
/**
* 返佣和幸福存折 获取周期下 用户分组统计列表
*/
export function getCommissionPeriodsList(data) {
return request({
url: '/CustomerCommission/GetCommissionPeriodsList',
method: 'post',
data
});
}
/**
* 获取收支明细数据
......@@ -811,3 +851,14 @@ export function GetReserveClassBalanceSheet(data) {
data
});
}
/**
* 返佣和幸福存折 获取用户返佣/存折明细
*/
export function getCommissionStatistics(data) {
return request({
url: '/CustomerCommission/GetCommissionStatistics',
method: 'post',
data
});
}
\ No newline at end of file
......@@ -234,6 +234,17 @@ export function getCustomerCommissionPassbook(data) {
})
}
/**
* 同行详情里 返佣/幸福存折统计
*
*/
export function getCustomerCommissionStat(data) {
return request({
url: '/CustomerCommission/GetCustomerCommissionStat',
method: 'post',
data
})
}
/**
* 同业转交
*
*/
......
......@@ -3,19 +3,19 @@
<div class="row wrap q-gutter-xs q-my-xs">
<div class="stics">
<span class="stics-name">累计</span>
<span>{{ data.TotalMoney }}</span>
<span>{{ data.SttlementMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">已提现</span>
<span style="color: #F72E52">{{ data.RemitMoney }}</span>
<span style="color: #F72E52">{{ data.CashOutMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">可提现</span>
<span style="color:#2961FE;">{{ data.SurplusMoney }}</span>
<span style="color:#2961FE;">{{ data.CanCashOutMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">未结算</span>
<span>{{ data.NotSettlementMoney }}</span>
<span>{{ data.UnSettlementMoney }}</span>
</div>
</div>
<q-tabs
......@@ -62,8 +62,12 @@
<script>
import {
getCustomerCommissionPassbook,
getCustomerCommissionStat,
GetCustomerBalanceDetailPage
} from "../../../api/sale/peemanagement";
import {
getCommissionStatistics,
} from '../../../api/finance/index'
import withdraw from './withdraw'
export default {
components:{
......@@ -79,12 +83,20 @@ export default {
return {
loading: false,
msg: {
CustomerId: 0,
pageIndex: 1,
pageSize: 10,
rowsPerPage: 10,
RebateType: 2,
Description: ""
BatchId:0,
SchoolId:'-1',
Status:'-2',
OrderSourceType:0,
OrderSourceId:0,
Q_SelectNormal:0,
CommissionType:2,
ClassId:0,
OrderId:'',
},
pageCount: 0,
data:{},
......@@ -155,22 +167,23 @@ export default {
methods: {
getData() {
const msg = {
CustomerId: this.Id,
Type: 2,// 1返佣 2幸福存折
OrderSourceType:2,
OrderSourceId: this.Id,
CommissionType: 2,// 1返佣 2幸福存折
};
getCustomerCommissionPassbook(msg).then(res => {
getCustomerCommissionStat(msg).then(res => {
this.data=res.Data
});
},
//获取数据
getList() {
this.msg.CustomerId=this.Id
this.msg.OrderSourceId=this.Id
this.loading = true;
GetCustomerBalanceDetailPage(this.msg)
getCommissionStatistics(this.msg)
.then(res => {
this.loading = false;
if (res.Code == 1) {
this.dataList = res.Data.PageData;
this.dataList = res.Data.PageData.List;
this.pageCount = res.Data.PageCount;
}
})
......
......@@ -3,19 +3,19 @@
<div class="row wrap q-gutter-xs q-my-xs ">
<div class="stics">
<span class="stics-name">累计</span>
<span>{{ data.TotalMoney }}</span>
<span>{{ data.SttlementMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">已提现</span>
<span style="color: #F72E52">{{ data.RemitMoney }}</span>
<span style="color: #F72E52">{{ data.CashOutMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">可提现</span>
<span style="color:#2961FE;">{{ data.SurplusMoney }}</span>
<span style="color:#2961FE;">{{ data.CanCashOutMoney }}</span>
</div>
<div class=" stics">
<span class="stics-name">未结算</span>
<span>{{ data.NotSettlementMoney }}</span>
<span>{{ data.UnSettlementMoney }}</span>
</div>
</div>
<q-tabs
......@@ -62,8 +62,12 @@
<script>
import {
getCustomerCommissionPassbook,
getCustomerCommissionStat,
GetCustomerBalanceDetailPage
} from "../../../api/sale/peemanagement";
import {
getCommissionStatistics,
} from '../../../api/finance/index'
import withdraw from './withdraw'
export default {
components:{
......@@ -80,12 +84,19 @@ export default {
return {
loading: false,
msg: {
CustomerId: 0,
pageIndex: 1,
pageSize: 10,
rowsPerPage: 10,
RebateType: 1,
Description: ""
BatchId:0,
SchoolId:'-1',
Status:'-2',
OrderSourceType:0,
OrderSourceId:0,
Q_SelectNormal:0,
CommissionType:1,
ClassId:0,
OrderId:'',
},
pageCount: 0,
data: {},
......@@ -156,22 +167,23 @@ export default {
methods: {
getData() {
const msg = {
CustomerId: this.Id,
Type: 1,
OrderSourceType:2,
OrderSourceId: this.Id,
CommissionType: 1,
};
getCustomerCommissionPassbook(msg).then(res => {
getCustomerCommissionStat(msg).then(res => {
this.data = res.Data;
});
},
//获取数据
getList() {
this.msg.CustomerId=this.Id
this.msg.OrderSourceId=this.Id
this.loading = true;
GetCustomerBalanceDetailPage(this.msg)
getCommissionStatistics(this.msg)
.then(res => {
this.loading = false;
if (res.Code == 1) {
this.dataList = res.Data.PageData;
this.dataList = res.Data.PageData.List;
this.pageCount = res.Data.PageCount;
}
})
......
......@@ -81,8 +81,9 @@
<div class="stage_value">
<div class="stuHeadImg">
<el-upload :before-upload="uploadFile" :multiple="false" action='' :show-file-list="false">
<q-avatar size="80px" font-size="36px" style="background:#C9F7F5" text-color="white">
<q-avatar size="80px" font-size="36px" text-color="white">
<img :src="customObj.StuIcon" v-if="customObj.StuIcon">
<img v-else src="../../../assets/images/administration/litheader.png" alt="" />
</q-avatar>
</el-upload>
</div>
......
......@@ -14,11 +14,11 @@
<q-btn label="选择试听课" style="margin-left:50px;" color="accent q-mb-lg" size="sm" @click="isShowTeacher=true" />
</div>
<template v-if="isShowAdd">
<div class="row wrap studentDate">
<div class="row studentDate">
<q-field filled class="q-pb-lg q-pr-lg" dense>
 <template v-slot:control>
<el-date-picker v-model="addMsg.ClassDate" ref="ClassDate" :rules="[val => !!val || '请选择预约日期']"
style="width:230px" size="mini" type="date" placeholder="预约日期">
style="width:228px" size="mini" type="date" placeholder="预约日期">
</el-date-picker>
</template>
</q-field>
......
......@@ -590,11 +590,11 @@ export default {
this.stuData.StuList.map(e => {
if (e.IsRenewGuest == 0) {
this.OrderMsg.DiscountMoney +=
this.OrderMsg.Class_Price * this.OrderMsg.B2CRatio;
this.OrderMsg.DiscountMoney =this.accAdd( this.OrderMsg.DiscountMoney,this.accMul(this.OrderMsg.Class_Price , this.OrderMsg.B2CRatio))
} else {
this.OrderMsg.DiscountMoney +=
this.OrderMsg.Class_Price * this.OrderMsg.B2CReNewRatio;
this.OrderMsg.DiscountMoney =this.accAdd( this.OrderMsg.DiscountMoney,this.accMul(this.OrderMsg.Class_Price , this.OrderMsg.B2CReNewRatio))
}
});
},
......
<style>
.baseSet_Title {
width: 120px !important;
padding: 18px 0 0 16px;
text-align: right;
}
.ReturnperiodsList .border-bottom {
/* border-bottom: 1px dashed #EEE; */
padding-bottom: 5px;
margin-bottom: 5px;
}
.ReturnperiodsList .text-bottom{
height: 32px;line-height: 32px; margin-bottom: 10px;
}
.ReturnperiodsList ._icon_btn i.icon-sousuo {
background-color: #47BF8C;
}
.ReturnperiodsList ._icon_btn .icon-add{
background-color: #47BF8C;
}
.ReturnperiodsList ._icon_btn i {
width: 26px;
height: 26px;
display: inline-block;
color: white !important;
border-radius: 50%;
text-align: center;
line-height: 26px;
margin-right: 10px;
cursor: pointer;
outline: none;
}
.ReturnperiodsList .el-table td,.el-table th{
padding: 5px 0;
}
</style>
<template>
<div class="page-body ReturnperiodsList">
<div class="page-search row items-center">
<div class="col row wrap q-mr-lg q-col-gutter-md">
<!-- <div style="margin-right: 20px;" v-if='iscMaker==true'>
<div class="block">
<span style="margin-right: 5px;">校区</span>
<el-select v-model="msg.SchoolId" filterable @change="handleCurrentChanges(1)">
<el-option value="-1" label="不限"></el-option>
<el-option v-for='item in CompanyList' :label='item.SName' :value='item.SId' :key='item.SId'></el-option>
</el-select>
</div>
</div> -->
<div v-if='isgenerate==true'>
<div class="block" style="display:flex">
<span style="margin-right: 5px;">选择月份</span>
<el-date-picker
v-model="msg.Month"
value-format="yyyy-MM"
type="month"
placeholder="选择月"
@change="handleCurrentChanges(1)"
>
</el-date-picker>
<q-btn :loading="loading1" color="primary" size="11px" label="生成提成" @click="scCommission" style="margin-left:10px"/>
</div>
</div>
</div>
</div>
<template >
<el-table
ref="filterTable"
:data="tableData"
v-loading = 'loading'
:header-cell-style="{backgroundColor:'#f5f6f7', color: '#a8a8b3'}"
border
style="width: 100%">
<!-- <el-table-column prop="Id" label="ID" ></el-table-column> -->
<el-table-column prop="BatchName" label="周期" ></el-table-column>
<el-table-column prop="TotalMoney" label="累计金额" > </el-table-column>
<el-table-column prop="CreateByName" label="创建人" > </el-table-column>
<el-table-column prop="CreateDate" label="创建时间" > </el-table-column>
<el-table-column label="操作" >
<template slot-scope="scope">
<div class="_icon_btn">
<el-tooltip class="item" effect="dark" content="查看" placement="top">
<i class="iconfont icon-sousuo"
@click="goUrl(scope.row.Id)"></i>
</el-tooltip>
</div>
</template>
</el-table-column>
</el-table>
<div style="margin-top: 10px;text-align: center;">
<el-pagination background @current-change="handleCurrentChanges" layout="total,prev, pager, next, jumper" :current-page.sync="msg.PageIndex"
:page-size="msg.PageSize" :total='total'>
</el-pagination>
</div>
</template>
</div>
</template>
<script>
import {
getSchoolDropdown
} from '../../../api/school/index'
import{
getCommissionPeriodsPageList,
setSellCommissionRule,
setUserReturnCommission,
getSellAchievementsSendEmployeeList,
setSellAchievementsSendEmployee
} from '../../../api/finance/index'
export default {
meta: {
title: "幸福存折期数列表"
},
props: {},
components: {},
data() {
return {
loading: false,
loading1: false,
value2:'',
//列表数据参数
msg: {
PageIndex: 1,
PageSize: 15,
SchoolId:'-1',
Month:'',
CommissionType:2,
},
pageCount: 0,
persistent: false,
listData:{},
tableData:[],
total:0,
CompanyList:[],
isgenerate:false,//是否有生成的权限
iscMaker:false,//是否有制单的权限
SendEmployeeList:[],//可发放提成的用户列表
costmode:false,
multipleSelection:[],
totalAmount:0,//选中的金额总额
CheckID:0,
}
},
created() {
let userinfo = this.getLocalStorage();
userinfo.ActionMenuList.map(x=>{//判断权限
if(x.FunctionCode == "SAGenerate_Commission"){//判断是否有生成的权限
this.isgenerate = true;
}
if(x.FunctionCode == "SACommission_maker"){//判断是否有制单的权限
this.iscMaker = true;
}
})
var myDate=new Date();
myDate.setMonth(myDate.getMonth()-1);
this.msg.Month = myDate.getFullYear() + "-" + (myDate.getMonth()+1)
},
mounted() {
this.getList();//获取提成周期列表
// this.getBranchList()
},
methods: {
getList(){
this.loading = true;
getCommissionPeriodsPageList(this.msg).then(res => {
if (res.Code == 1) {
this.loading = false;
this.tableData = res.Data.PageData
this.total = res.Data.Count
}
})
},
scCommission(){//生成提成
if(this.loading1 == false){
this.loading1= true;
setUserReturnCommission({type:2}).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '生成提成成功',
position: 'top'
})
this.getList()
}
this.loading1= false;
}).catch(err=>{
this.loading1= false;
})
}
},
getBranchList(){//获取校区
getSchoolDropdown({}).then(res => {
this.CompanyList = res.Data;
}).catch(() => {
})
},
goUrl(id ) {
this.$router.push({
path: '/financial/returnPassbook/ReturnUserList',
query: {
"id": id,
"CommissionType": 2,
blank: 'y',
}
})
},
handleCurrentChanges(val){
this.msg.PageIndex= val;
this.getList()
},
},
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
\ No newline at end of file
This diff is collapsed.
<style>
.baseSet_Title {
width: 120px !important;
padding: 18px 0 0 16px;
text-align: right;
}
.ReturnperiodsList .border-bottom {
/* border-bottom: 1px dashed #EEE; */
padding-bottom: 5px;
margin-bottom: 5px;
}
.ReturnperiodsList .text-bottom{
height: 32px;line-height: 32px; margin-bottom: 10px;
}
.ReturnperiodsList ._icon_btn i.icon-sousuo {
background-color: #47BF8C;
}
.ReturnperiodsList ._icon_btn .icon-add{
background-color: #47BF8C;
}
.ReturnperiodsList ._icon_btn i {
width: 26px;
height: 26px;
display: inline-block;
color: white !important;
border-radius: 50%;
text-align: center;
line-height: 26px;
margin-right: 10px;
cursor: pointer;
outline: none;
}
.ReturnperiodsList .el-table td,.el-table th{
padding: 5px 0;
}
</style>
<template>
<div class="page-body ReturnperiodsList">
<div class="page-search row items-center">
<div class="col row wrap q-mr-lg q-col-gutter-md">
<!-- <div style="margin-right: 20px;" v-if='iscMaker==true'>
<div class="block">
<span style="margin-right: 5px;">校区</span>
<el-select v-model="msg.SchoolId" filterable @change="handleCurrentChanges(1)">
<el-option value="-1" label="不限"></el-option>
<el-option v-for='item in CompanyList' :label='item.SName' :value='item.SId' :key='item.SId'></el-option>
</el-select>
</div>
</div> -->
<div v-if='isgenerate==true'>
<div class="block" style="display:flex">
<span style="margin-right: 5px;">选择月份</span>
<el-date-picker
v-model="msg.Month"
value-format="yyyy-MM"
type="month"
placeholder="选择月"
@change="handleCurrentChanges(1)"
>
</el-date-picker>
<q-btn :loading="loading1" color="primary" size="11px" label="生成提成" @click="scCommission" style="margin-left:10px"/>
</div>
</div>
</div>
</div>
<template >
<el-table
ref="filterTable"
:data="tableData"
v-loading = 'loading'
:header-cell-style="{backgroundColor:'#f5f6f7', color: '#a8a8b3'}"
border
style="width: 100%">
<!-- <el-table-column prop="Id" label="ID" ></el-table-column> -->
<el-table-column prop="BatchName" label="周期" ></el-table-column>
<el-table-column prop="TotalMoney" label="累计金额" > </el-table-column>
<el-table-column prop="CreateByName" label="创建人" > </el-table-column>
<el-table-column prop="CreateDate" label="创建时间" > </el-table-column>
<el-table-column label="操作" >
<template slot-scope="scope">
<div class="_icon_btn">
<el-tooltip class="item" effect="dark" content="查看" placement="top">
<i class="iconfont icon-sousuo"
@click="goUrl(scope.row.Id)"></i>
</el-tooltip>
<!-- <el-tooltip class="item" effect="dark" content="制单" placement="top" v-if='iscMaker==true'>
<i class="iconfont icon-add" v-if='iscMaker==true'
@click="generalFinancacls(scope.row)"></i>
</el-tooltip> -->
</div>
</template>
</el-table-column>
</el-table>
<div style="margin-top: 10px;text-align: center;">
<el-pagination background @current-change="handleCurrentChanges" layout="total,prev, pager, next, jumper" :current-page.sync="msg.PageIndex"
:page-size="msg.PageSize" :total='total'>
</el-pagination>
</div>
</template>
</div>
</template>
<script>
import {
getSchoolDropdown
} from '../../../api/school/index'
import{
getCommissionPeriodsPageList,
setSellCommissionRule,
setUserReturnCommission,
getSellAchievementsSendEmployeeList,
setSellAchievementsSendEmployee
} from '../../../api/finance/index'
export default {
meta: {
title: "返佣期数列表"
},
props: {},
components: {},
data() {
return {
loading: false,
loading1: false,
value2:'',
//列表数据参数
msg: {
PageIndex: 1,
PageSize: 15,
SchoolId:'-1',
Month:'',
CommissionType:1,
},
pageCount: 0,
persistent: false,
listData:{},
tableData:[],
total:0,
CompanyList:[],
isgenerate:false,//是否有生成的权限
iscMaker:false,//是否有制单的权限
SendEmployeeList:[],//可发放提成的用户列表
costmode:false,
multipleSelection:[],
totalAmount:0,//选中的金额总额
CheckID:0,
}
},
created() {
let userinfo = this.getLocalStorage();
userinfo.ActionMenuList.map(x=>{//判断权限
if(x.FunctionCode == "SAGenerate_Commission"){//判断是否有生成的权限
this.isgenerate = true;
}
if(x.FunctionCode == "SACommission_maker"){//判断是否有制单的权限
this.iscMaker = true;
}
})
var myDate=new Date();
myDate.setMonth(myDate.getMonth()-1);
this.msg.Month = myDate.getFullYear() + "-" + (myDate.getMonth()+1)
},
mounted() {
this.getList();//获取提成周期列表
// this.getBranchList()
},
methods: {
getList(){
this.loading = true;
getCommissionPeriodsPageList(this.msg).then(res => {
if (res.Code == 1) {
this.loading = false;
this.tableData = res.Data.PageData
this.total = res.Data.Count
}
})
},
scCommission(){//生成提成
if(this.loading1 == false){
this.loading1= true;
setUserReturnCommission({type:1}).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: '生成提成成功',
position: 'top'
})
this.getList()
}
this.loading1= false;
}).catch(err=>{
this.loading1= false;
})
}
},
getBranchList(){//获取校区
getSchoolDropdown({}).then(res => {
this.CompanyList = res.Data;
}).catch(() => {
})
},
goUrl(id ) {
this.$router.push({
path: '/financial/returnPassbook/ReturnUserList',
query: {
"id": id,
"CommissionType": 1,
blank: 'y',
}
})
},
handleCurrentChanges(val){
this.msg.PageIndex= val;
this.getList()
},
},
}
</script>
<style lang="sass">
@import url('~assets/css/table.sass')
</style>
\ No newline at end of file
......@@ -759,6 +759,27 @@ const routes = [{
component: () =>
import("pages/financial/market/empBonusDetail.vue")
},
{
path: "/financial/returnPassbook/ReturnperiodsList", // 返佣期数列表
component: () =>
import("pages/financial/returnPassbook/ReturnperiodsList.vue")
},
{
path: "/financial/returnPassbook/ReturnUserList", // 返佣 用户分组列表
component: () =>
import("pages/financial/returnPassbook/ReturnUserList.vue")
},
{
path: "/financial/returnPassbook/returnpassbookStatistics", // 返佣 幸福存折明细
component: () =>
import("pages/financial/returnPassbook/returnpassbookStatistics.vue")
},
{
path: "/financial/returnPassbook/PassbookperiodsList", // 幸福存折期数列表
component: () =>
import("pages/financial/returnPassbook/PassbookperiodsList.vue")
},
{
path: "/administration/document", //行政公告
component: () =>
......
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