|
@@ -4,8 +4,9 @@
|
|
|
<div class="squrt"></div>收费分润管理
|
|
|
</h2>
|
|
|
<div class="m-core">
|
|
|
-
|
|
|
- <el-form :inline="true"
|
|
|
+ <div @click="chargeOperation('create')"
|
|
|
+ class='newBand'>添加</div>
|
|
|
+ <!-- <el-form :inline="true"
|
|
|
class="searchForm"
|
|
|
@submit.native.prevent
|
|
|
v-model="searchForm">
|
|
@@ -21,32 +22,44 @@
|
|
|
<el-button @click="search"
|
|
|
type="danger">搜索</el-button>
|
|
|
</el-form-item>
|
|
|
- </el-form>
|
|
|
+ </el-form> -->
|
|
|
|
|
|
<!-- 列表 -->
|
|
|
<div class="tableWrap">
|
|
|
<el-table :data='tableList'
|
|
|
:header-cell-style="{background:'#EDEEF0',color:'#444'}">
|
|
|
<el-table-column align='center'
|
|
|
- prop="realName"
|
|
|
+ prop="organName"
|
|
|
label="分部">
|
|
|
</el-table-column>
|
|
|
<el-table-column align='center'
|
|
|
- prop="phone"
|
|
|
label="方式">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ {{ scope.row.type == 1 ? '比例分润' : '收费类型' }}
|
|
|
+ </template>
|
|
|
</el-table-column>
|
|
|
<el-table-column align='center'
|
|
|
label="详情">
|
|
|
<template slot-scope="scope">
|
|
|
- {{ scope.row.roleNames | joinArray(',') }}
|
|
|
+ <span v-if="scope.row.type == 1">
|
|
|
+ 比例:公{{ scope.row.comScale }} 私{{ scope.row.perScale }}
|
|
|
+ </span>
|
|
|
+ <span v-if="scope.row.type == 2">
|
|
|
+ 课程:{{ scope.row.courseFee == 'COM' ? '公' : '私' }};
|
|
|
+ 乐器:{{ scope.row.instrumentFee == 'COM' ? '公' : '私' }};
|
|
|
+ 辅件:{{ scope.row.accessoriesFee == 'COM' ? '公' : '私' }};
|
|
|
+ 其它:{{ scope.row.otherFee == 'COM' ? '公' : '私' }};
|
|
|
+ </span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column align='center'
|
|
|
width="250px"
|
|
|
label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-button @click="roleOperation('update', scope.row)"
|
|
|
+ <el-button @click="chargeOperation('update', scope.row)"
|
|
|
type="text">修改</el-button>
|
|
|
+ <el-button @click="chargeDel(scope.row)"
|
|
|
+ type="text">删除</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
@@ -58,68 +71,69 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
|
|
|
- <el-dialog title="修改收费分润"
|
|
|
+ <el-dialog :title="formTitle[formActionTitle]"
|
|
|
:visible.sync="chargeStatus"
|
|
|
@close="onFormClose('ruleForm')"
|
|
|
width="500px">
|
|
|
<el-form :model="form"
|
|
|
:rules="rules"
|
|
|
ref="ruleForm">
|
|
|
- <el-form-item label="收费方式"
|
|
|
- prop="name"
|
|
|
+ <el-form-item label="收费方式" required
|
|
|
:label-width="formLabelWidth">
|
|
|
- <el-radio v-model="form.radio"
|
|
|
- label="1">比例分润</el-radio>
|
|
|
- <el-radio v-model="form.radio"
|
|
|
- label="2">收费种类</el-radio>
|
|
|
+ <el-radio v-model.number="form.type"
|
|
|
+ :label="1">比例分润</el-radio>
|
|
|
+ <el-radio v-model.number="form.type"
|
|
|
+ :label="2">收费种类</el-radio>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <div v-if="form.radio == 1">
|
|
|
+ <div v-if="form.type == 1">
|
|
|
<el-form-item label="公"
|
|
|
+ prop="comScale"
|
|
|
:label-width="formLabelWidth">
|
|
|
- <el-input></el-input>
|
|
|
+ <el-input type="number" min="0" max="10" v-model="form.comScale"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="私"
|
|
|
+ prop="perScale"
|
|
|
:label-width="formLabelWidth">
|
|
|
- <el-input></el-input>
|
|
|
+ <el-input type="number" min="0" max="10" v-model="form.perScale"></el-input>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
|
|
|
- <div v-if="form.radio == 2">
|
|
|
- <el-form-item label="课程"
|
|
|
+ <div v-if="form.type == 2">
|
|
|
+ <el-form-item label="课程" required
|
|
|
:label-width="formLabelWidth">
|
|
|
<el-select placeholder="请选择方式"
|
|
|
- v-model="form.course">
|
|
|
+ v-model="form.courseFee">
|
|
|
<el-option label="公"
|
|
|
value="COM"></el-option>
|
|
|
<el-option label="私"
|
|
|
value="PER"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="乐器"
|
|
|
+ <el-form-item label="乐器" required
|
|
|
:label-width="formLabelWidth">
|
|
|
<el-select placeholder="请选择方式"
|
|
|
- v-model="form.instrment">
|
|
|
+ v-model="form.instrumentFee">
|
|
|
<el-option label="公"
|
|
|
value="COM"></el-option>
|
|
|
<el-option label="私"
|
|
|
value="PER"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="辅件"
|
|
|
+ <el-form-item label="辅件" required
|
|
|
:label-width="formLabelWidth">
|
|
|
<el-select placeholder="请选择方式"
|
|
|
- v-model="form.accessories">
|
|
|
+ v-model="form.accessoriesFee">
|
|
|
<el-option label="公"
|
|
|
value="COM"></el-option>
|
|
|
<el-option label="私"
|
|
|
value="PER"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="其它"
|
|
|
+ <el-form-item label="其它" required
|
|
|
:label-width="formLabelWidth">
|
|
|
<el-select placeholder="请选择方式"
|
|
|
- v-model="form.other">
|
|
|
+ v-model="form.otherFee">
|
|
|
<el-option label="公"
|
|
|
value="COM"></el-option>
|
|
|
<el-option label="私"
|
|
@@ -127,12 +141,20 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
+ <el-form-item label="所属分部" prop="organId" :label-width="formLabelWidth">
|
|
|
+ <el-select v-model="form.organId">
|
|
|
+ <el-option v-for="item in branchList"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value"></el-option>
|
|
|
+ </el-select>
|
|
|
+ </el-form-item>
|
|
|
|
|
|
</el-form>
|
|
|
<span slot="footer"
|
|
|
class="dialog-footer">
|
|
|
<el-button @click="chargeStatus = false">取 消</el-button>
|
|
|
- <el-button @click="onRoleSubmit('ruleForm')"
|
|
|
+ <el-button @click="onChargeSubmit('ruleForm')"
|
|
|
type="primary">确 定</el-button>
|
|
|
</span>
|
|
|
</el-dialog>
|
|
@@ -140,7 +162,7 @@
|
|
|
</template>
|
|
|
<script>
|
|
|
import pagination from '@/components/Pagination/index'
|
|
|
-import { queryEmployByOrganId, employeeOperate, getUserRole, employeeAdd, employeeUpdate } from '@/api/systemManage'
|
|
|
+import { paymentConfigQueryPage, paymentConfigGet, paymentConfigAdd, paymentConfigUpdate, paymentConfigDel } from '@/api/systemManage'
|
|
|
import { branchQueryPage } from '@/api/specialSetting'
|
|
|
import store from '@/store'
|
|
|
|
|
@@ -156,25 +178,29 @@ export default {
|
|
|
total: 0, // 总条数
|
|
|
page_size: [10, 20, 40, 50] // 选择限制显示条数
|
|
|
},
|
|
|
- chargeStatus: true,
|
|
|
+ chargeStatus: false,
|
|
|
roleList: [], // 角色列表
|
|
|
branchList: [], // 分部列表
|
|
|
+ formActionTitle: 'create',
|
|
|
formLabelWidth: '100px',
|
|
|
+ formTitle: {
|
|
|
+ create: '添加收费分润',
|
|
|
+ update: '修改收费分润'
|
|
|
+ },
|
|
|
form: {
|
|
|
- radio: '1',
|
|
|
- course: 'COM',
|
|
|
- instrment: 'COM',
|
|
|
- accessories: 'COM',
|
|
|
- other: 'COM'
|
|
|
+ type: 1,
|
|
|
+ comScale: null,
|
|
|
+ perScale: null,
|
|
|
+ courseFee: 'COM',
|
|
|
+ instrumentFee: 'COM',
|
|
|
+ accessoriesFee: 'COM',
|
|
|
+ otherFee: 'COM',
|
|
|
+ organId: null
|
|
|
},
|
|
|
rules: {
|
|
|
- realName: [{ required: true, message: '请输入姓名', trigger: 'blur' }],
|
|
|
- gender: [{ required: true, message: '请选择性别', trigger: 'change' }],
|
|
|
- phone: [{ type: 'number', required: true, trigger: 'blur' }],
|
|
|
- roleIds: [{ type: 'array', required: true, message: '请选择分类', trigger: 'change' }],
|
|
|
- organIdLists: [{ type: 'array', required: true, message: '请选择所属部门', trigger: 'change' }],
|
|
|
- jobNature: [{ required: true, message: '请选择工作类型', trigger: 'change' }],
|
|
|
- entryDate: [{ required: true, message: '请选择入职时间', trigger: 'blur' }],
|
|
|
+ comScale: [{ required: true, message: '请输入数值', trigger: 'blur' }],
|
|
|
+ perScale: [{ required: true, message: '请输入数值', trigger: 'blur' }],
|
|
|
+ organId: [{ required: true, message: '请选择所属分部', trigger: 'change' }]
|
|
|
},
|
|
|
searchForm: {
|
|
|
search: null
|
|
@@ -184,29 +210,36 @@ export default {
|
|
|
mounted () {
|
|
|
this.getList()
|
|
|
this.getRoleList()
|
|
|
-
|
|
|
-
|
|
|
},
|
|
|
- methods: {
|
|
|
- onBranchCheckAll () {
|
|
|
- this.form.organIdLists = []
|
|
|
- this.branchList.forEach(item => {
|
|
|
- this.form.organIdLists.push(item.value)
|
|
|
- })
|
|
|
+ watch: {
|
|
|
+ 'form.comScale': {
|
|
|
+ handler(newvalue, oldvalue) {
|
|
|
+ if(newvalue) {
|
|
|
+ this.form.perScale = 10 - newvalue
|
|
|
+ }
|
|
|
+ }
|
|
|
},
|
|
|
- onRoleSubmit (formName) {
|
|
|
+ 'form.perScale': {
|
|
|
+ handler(newvalue, oldvalue) {
|
|
|
+ if(newvalue) {
|
|
|
+ this.form.comScale = 10 - newvalue
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ onChargeSubmit (formName) {
|
|
|
this.$refs[formName].validate((valid) => {
|
|
|
if (valid) {
|
|
|
- this.form.organIdList = this.form.organIdLists.join(',')
|
|
|
if (this.formActionTitle == 'create') {
|
|
|
if (this.form.id) { // 判断有没有Id,如果有则删除
|
|
|
delete this.form.id
|
|
|
}
|
|
|
- employeeAdd(this.form).then(res => {
|
|
|
+ paymentConfigAdd(this.form).then(res => {
|
|
|
this.messageTips('添加', res)
|
|
|
})
|
|
|
} else if (this.formActionTitle == 'update') {
|
|
|
- employeeUpdate(this.form).then(res => {
|
|
|
+ paymentConfigUpdate(this.form).then(res => {
|
|
|
this.messageTips('修改', res)
|
|
|
})
|
|
|
}
|
|
@@ -232,7 +265,7 @@ export default {
|
|
|
let params = this.searchForm
|
|
|
params.rows = this.pageInfo.limit
|
|
|
params.page = this.pageInfo.page
|
|
|
- queryEmployByOrganId(params).then(res => {
|
|
|
+ paymentConfigQueryPage(params).then(res => {
|
|
|
if (res.code == 200 && res.data) {
|
|
|
this.tableList = res.data.rows
|
|
|
this.pageInfo.total = res.data.total
|
|
@@ -254,25 +287,46 @@ export default {
|
|
|
}
|
|
|
})
|
|
|
},
|
|
|
- roleOperation (type, data) {
|
|
|
+ chargeOperation (type, data) {
|
|
|
this.formActionTitle = type
|
|
|
this.chargeStatus = true
|
|
|
// 修改的时候
|
|
|
- // if (type == 'update') {
|
|
|
- // this.form = {
|
|
|
- // id: data.id,
|
|
|
- // realName: data.realName,
|
|
|
- // gender: data.gender,
|
|
|
- // phone: Number(data.phone),
|
|
|
- // roleIds: data.roleIds,
|
|
|
- // organIdLists: data.organIdList ? data.organIdList : [],
|
|
|
- // jobNature: data.jobNature,
|
|
|
- // entryDate: data.entryDate
|
|
|
- // }
|
|
|
- // }
|
|
|
+ if (type == 'update') {
|
|
|
+ this.form = {
|
|
|
+ id: data.id,
|
|
|
+ type: Number(data.type),
|
|
|
+ comScale: data.comScale,
|
|
|
+ perScale: data.perScale,
|
|
|
+ courseFee: data.courseFee,
|
|
|
+ instrumentFee: data.instrumentFee,
|
|
|
+ accessoriesFee: data.accessoriesFee,
|
|
|
+ otherFee: data.otherFee,
|
|
|
+ organId: data.organId
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ chargeDel(row) { // 删除数据
|
|
|
+ // paymentConfigDel
|
|
|
+ this.$confirm('你确定删除?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ }).then(() => {
|
|
|
+ paymentConfigDel({ id: row.id }).then(res => {
|
|
|
+ this.messageTips('删除', res)
|
|
|
+ })
|
|
|
+ }).catch()
|
|
|
},
|
|
|
onFormClose (formName) { // 关闭弹窗重置验证
|
|
|
this.form = {
|
|
|
+ type: 1,
|
|
|
+ comScale: null,
|
|
|
+ perScale: null,
|
|
|
+ courseFee: 'COM',
|
|
|
+ instrumentFee: 'COM',
|
|
|
+ accessoriesFee: 'COM',
|
|
|
+ otherFee: 'COM',
|
|
|
+ organId: ''
|
|
|
}
|
|
|
this.$refs[formName].resetFields()
|
|
|
}
|