Commit 64353acd authored by 黄奎's avatar 黄奎
parents bbd25345 aa622f7b
...@@ -221,4 +221,16 @@ export function ForwardStudent(data) { ...@@ -221,4 +221,16 @@ export function ForwardStudent(data) {
method: 'post', method: 'post',
data data
}) })
}
/**
* 设置客户状态
* @param {JSON参数} data
*/
export function SetStuStage(data) {
return request({
url: '/User/SetStudentStage',
method: 'post',
data
})
} }
\ No newline at end of file
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
@hide="closeCutomer" @hide="closeCutomer"
transition-show="slide-left" transition-show="slide-left"
> >
<div class="customMain"> <div class="customMain" v-if="addMsg">
<div class="cycle_Title">市场顾问教师提成规则</div> <div class="cycle_Title">市场顾问教师提成规则</div>
<div style="margin-top: 10px;"> <div style="margin-top: 10px;">
<q-input <q-input
...@@ -16,34 +16,188 @@ ...@@ -16,34 +16,188 @@
stack-label stack-label
:dense="false" :dense="false"
v-model="addMsg.Name" v-model="addMsg.Name"
style="width: 640px;"
ref="Name" ref="Name"
class="col-12 q-pb-lg" class="col-12 q-pb-lg"
label="方案名称" label="方案名称"
:rules="[val => !!val || '请填写平台名称']" :rules="[val => !!val || '请填写方案名称']"
/> />
</div> </div>
<q-select
filled
stack-label
option-value="SId"
option-label="SName"
v-model="addMsg.SchoolIds"
use-chips
:options="SchoolList"
label="校区"
:dense="false"
class="col-6 q-pr-lg q-pb-lg"
emit-value
multiple
map-options
@input="$forceUpdate()"
/>
<q-select
filled
stack-label
option-value="CourseId"
option-label="CourseName"
v-model="addMsg.CourseList"
use-chips
use-input
:options="myCourseList"
label="课程"
:dense="false"
class="col-6 q-pr-lg q-pb-lg"
emit-value
multiple
map-options
@filter="filterFn"
/>
<div style="display: flex;align-items: center;"> <div style="display: flex;align-items: center;">
类型: <span style="width: 75px;">类型:</span>
<q-radio v-model="addMsg.Type" val="1" label="市场" /> <q-radio v-model="addMsg.Type" val="1" label="市场" />
<q-radio v-model="addMsg.Type" val="2" label="顾问" /> <q-radio v-model="addMsg.Type" val="2" label="顾问" />
<q-radio v-model="addMsg.Type" val="3" label="教师" /> <q-radio v-model="addMsg.Type" val="3" label="教师" />
</div> </div>
<div style="display: flex;align-items: center;"> <div style="display: flex;align-items: center;">
课程类型: <span style="width: 75px;">课程类型:</span>
<q-radio v-model="addMsg.CourseType" val="1" label="包含" /> <q-radio v-model="addMsg.CourseType" val="1" label="包含" />
<q-radio v-model="addMsg.CourseType" val="2" label="不包含" /> <q-radio v-model="addMsg.CourseType" val="2" label="不包含" />
</div> </div>
<q-select filled stack-label option-value="CourseId" option-label="CourseName" v-model="addMsg.CourseList"
ref="CouseId" :options="CourseList" label="课程" :dense="false" class="col-6 q-pr-lg q-pb-lg" emit-value multiple use-input
map-options />
<q-btn
label="确认" <div style="margin-top: 10px;" >
color="accent q-px-md" <q-input
size="sm" filled
style="font-weight:400 !important" style="width: 640px;"
@click="setCheckStatus()" stack-label
type="number"
:dense="false"
v-model="addMsg.FirstRate"
ref="FirstRate"
class="col-12 q-pb-lg"
label="首次发放比例(%)"
:rules="[val => !!val || '请填写首次发放比例']"
/>
</div>
<div style="margin-top: 10px;" >
<q-input
filled
style="width: 640px;"
stack-label
type="number"
:dense="false"
v-model="addMsg.CourseRate"
ref="CourseRate"
class="col-12 q-pb-lg"
label="课程比例(%)"
:rules="[val => !!val || '请填写课程比例']"
/>
</div>
<q-select
filled
stack-label
option-value="Id"
option-label="EmployeeName"
v-model="addMsg.EmpList"
use-chips
use-input
:options="myEmployeeList"
label="提成人员"
:dense="false"
class="col-6 q-pr-lg q-pb-lg"
emit-value
multiple
map-options
@filter="filterEmployee"
/>
<q-select
filled
stack-label
option-value="Id"
option-label="EmployeeName"
v-model="addMsg.ChildEmpList"
use-chips
use-input
:options="myEmployeeList"
label="部门人员"
:dense="false"
class="col-6 q-pr-lg q-pb-lg"
emit-value
multiple
map-options
@filter="filterEmployee"
/> />
<div style="margin-bottom: 80px;">
<div>业绩比例</div>
<div
v-for="(x,y) in addMsg.RateList"
:key="y"
style="display: flex;align-items: center;margin-bottom: 10px;"
>
<q-input
clearable
filled
v-model="x.StartValue"
style="width: 190px;margin-right: 5px;"
type="number"
@input="$forceUpdate()"
label="初始值"
/>
<q-input
clearable
filled
v-model="x.EndValue"
style="width: 190px;margin-right: 5px;"
type="number"
@input="$forceUpdate()"
label="结束值"
/>
<q-input
clearable
filled
v-model="x.Rate"
style="width: 190px;margin-right: 5px;"
type="number"
@input="$forceUpdate()"
label="提成比例(%)"
/>
<q-btn
round
size="xs"
color="deep-orange"
icon="delete"
v-if="addMsg.RateList.length > 1"
@click="addMsg.RateList.splice(y, 1)"
style="margin-left: 10px;"
/>
<q-btn
round
size="xs"
color="primary"
icon="add"
v-if="addMsg.RateList.length == y + 1"
@click="addMsg.RateList.push({ StartValue: '', EndValue: '', Rate: '' })"
style="margin-left: 10px;"
/>
</div>
</div>
<div style="width: 100%;height: 50px;position: absolute;left: 0;bottom: 0;background: #FFF;display: flex;align-items: center;padding: 0 20px;justify-content: flex-end;">
<q-btn
color="accent"
size="sm"
class="q-mr-md"
label="保存"
@click="setAdd()"
></q-btn>
</div>
<div class="dialog-out-close" @click="closeCutomer"> <div class="dialog-out-close" @click="closeCutomer">
<i class="iconfont icon-close" style="font-size:26px;" /> <i class="iconfont icon-close" style="font-size:26px;" />
...@@ -55,6 +209,7 @@ ...@@ -55,6 +209,7 @@
import { import {
queryEmployee queryEmployee
} from '../../api/users/user' } from '../../api/users/user'
import recruitFormVue from '../system/recruit-form.vue'
export default { export default {
...@@ -77,6 +232,14 @@ export default { ...@@ -77,6 +232,14 @@ export default {
CourseList: {//课程下拉列表 CourseList: {//课程下拉列表
type: Array, type: Array,
default: [] default: []
},
SchoolList:{//校区下拉列表
type: Array,
default: []
},
selectData:{//修改带过来的对象
type: Object,
default: {}
} }
}, },
data() { data() {
...@@ -86,41 +249,64 @@ export default { ...@@ -86,41 +249,64 @@ export default {
//员工列表 //员工列表
employeeList: [], employeeList: [],
myEmployeeList: [], myEmployeeList: [],
allCourseList: [],
myCourseList:[],
} }
}, },
created() { created() {
this.employeeList = JSON.parse(JSON.stringify(this.loyeeList)) this.employeeList = JSON.parse(JSON.stringify(this.loyeeList))
this.myEmployeeList = JSON.parse(JSON.stringify(this.loyeeList)) this.myEmployeeList = JSON.parse(JSON.stringify(this.loyeeList))
this.allCourseList = JSON.parse(JSON.stringify(this.CourseList))
this.myCourseList = JSON.parse(JSON.stringify(this.CourseList))
if (this.isAdd == true) {//新增 if (this.isAdd == true) {//新增
this.addMsg = { this.addMsg = {
Id: 0, Id: 0,
Name: '', Name: '',
Type: '1', Type: '1',
SchoolIds: '', CourseType: '1',
CourseType: 1,
CourseIds: '',
SchoolIds: '', SchoolIds: '',
CourseList: [],//课程列表 CourseList: [],//课程列表
CommissionType: 1, EmpList: [],//提现人员
EmpIds: '', ChildEmpList: [],//部门人员
EmpList: [], CourseRate: '',//课程比例
ChildEmpIds: '', FirstRate:'',//首次发放比例
ChildEmpList: [],
CourseRate: '',
RateList: [ RateList: [
{ StartValue: '', EndValue: '', Rate: '' } { StartValue: '', EndValue: '', Rate: '' }
] ]
} }
} else {//修改 } else {//修改
this.addMsg = JSON.parse(JSON.stringify(this.selectData))
this.addMsg.Type = this.addMsg.Type.toString()
this.addMsg.CourseType = this.addMsg.CourseType.toString()
this.addMsg.SchoolIds = this.selectData.SchoolIds?this.selectData.SchoolIds.split(',').map(Number):[] ;
console.log(this.addMsg.SchoolIds)
this.addMsg.CourseList = this.getId(this.selectData.CourseList,2)
this.addMsg.EmpList = this.getId(this.selectData.EmpList,3)
this.addMsg.ChildEmpList = this.getId(this.selectData.ChildEmpList,3)
console.log(this.addMsg)
} }
}, },
mounted() { mounted() {
}, },
methods: { methods: {
getId(arr,type){
let list = [];
let Id = 'Id';
if(type==1){
Id = 'SId';
}else if(type==2){
Id = 'CourseId';
}else if(type==3){
Id = 'Id';
}
if(arr && arr.length>0){
arr.forEach(x=>{
list.push(x[Id])
})
}
return list
},
closeCutomer() { closeCutomer() {
this.$emit('close') this.$emit('close')
}, },
...@@ -129,14 +315,137 @@ export default { ...@@ -129,14 +315,137 @@ export default {
//筛选员工 //筛选员工
filterEmployee(val, update, abort) { filterEmployee(val, update, abort) {
update(() => { update(() => {
this.myEmployeeList = this.employeeList.filter( if (val === '') {
v => v.EmployeeName.indexOf(val) > -1 this.myEmployeeList = this.employeeList
); }
}); else {
const needle = val.toLowerCase();
this.myEmployeeList = this.employeeList.filter(v => v.EmployeeName.toLowerCase().indexOf(needle) > -1);
}
})
}, },
changeCourse(){ filterFn(val, update) {//课程的栓选
update(() => {
if (val === '') {
this.myCourseList = this.allCourseList
}
else {
const needle = val.toLowerCase();
this.myCourseList = this.allCourseList.filter(v => v.CateName.toLowerCase().indexOf(needle) > -1);
}
})
},
setAdd() {
this.$refs.Name.validate();
this.$refs.CourseRate.validate();
this.$refs.FirstRate.validate();
if (!this.$refs.Name.hasError && !this.$refs.CourseRate.hasError && !this.$refs.FirstRate.hasError) {
console.log(this.addMsg)
let msg = JSON.parse(JSON.stringify(this.addMsg))
if (this.addMsg.SchoolIds && this.addMsg.SchoolIds.length == 0) {
this.$q.notify({
type: 'negative',
message: `请选择校区`,
position: 'top'
})
return
}else{
msg.SchoolIds = this.addMsg.SchoolIds.join(',')
}
if (this.addMsg.CourseList.length == 0) {
this.$q.notify({
type: 'negative',
message: `请选择课程`,
position: 'top'
})
return
}else{
msg.CourseList = this.getList(this.allCourseList,this.addMsg.CourseList,2,'CourseId','CourseName')
}
if (this.addMsg.EmpList.length == 0) {
this.$q.notify({
type: 'negative',
message: `请选择提成人员`,
position: 'top'
})
return
}else{
msg.EmpList = this.getList(this.employeeList,this.addMsg.EmpList,3,)
}
if (this.addMsg.ChildEmpList.length == 0) {
this.$q.notify({
type: 'negative',
message: `请选择部门人员`,
position: 'top'
})
return
}else{
msg.ChildEmpList = this.getList(this.employeeList,this.addMsg.ChildEmpList,3,)
}
for(let i=0;i<msg.RateList.length;i++){
let x = msg.RateList[i]
console.log(x.StartValue)
if(x.StartValue==='' ){
this.$q.notify({
type: 'negative',
message: `请输入初始值`,
position: 'top'
})
return
}
if(x.EndValue==''){
this.$q.notify({
type: 'negative',
message: `请输入结束值`,
position: 'top'
})
return
}
if(x.Rate==''){
this.$q.notify({
type: 'negative',
message: `请输入提成比例`,
position: 'top'
})
return
}
}
console.log(msg,'222222')
this.$emit('success',msg)
}
}, },
getList(arr,xzarr,type,){
let list = [];
let Id = 'Id';
let Name = 'Name';
if(type==1){
Id = 'SId';
Name = 'SName';
}else if(type==2){
Id = 'CourseId';
Name = 'CourseName';
}else if(type==3){
Id = 'Id';
Name = 'EmployeeName';
}
xzarr.forEach(x => {
for(let i= 0;i<arr.length;i++){
let j = arr[i]
if(j[Id] == x){
let obj = {}
obj[Id]=j[Id],
obj[Name]=j[Name],
list.push(obj)
break
}
}
});
return list
}
}, },
} }
......
...@@ -4,12 +4,21 @@ ...@@ -4,12 +4,21 @@
<template> <template>
<div> <div>
<div class="row wrap"> <div class="row wrap">
<q-btn label="新增" color="accent q-mb-lg" size="sm" @click="isShowAdd=true" /> <q-btn label="新增" color="accent q-mb-lg" size="sm" @click="isShowAdd=true" />
<q-btn label="取消" style="margin-left:20px;" v-if="isShowAdd" flat color="grey-10 q-mb-lg" size="sm" @click="isShowAdd=false" /> <q-btn label="取消" style="margin-left:20px;" v-if="isShowAdd" flat color="grey-10 q-mb-lg" size="sm"
@click="isShowAdd=false" />
</div> </div>
<template v-if="isShowAdd"> <template v-if="isShowAdd">
<UeEditor v-if="isShowAdd" v-model="flowMsg.Remark" class="q-pb-lg" :config="config"></UeEditor> <UeEditor v-if="isShowAdd" v-model="flowMsg.Remark" class="q-pb-sm" :config="config"></UeEditor>
<q-btn label="新增" color="accent q-mb-lg" size="md" @click="saveFlow()" /> <div class="row q-mb-lg flex justify-between items-center">
<q-select filled v-model="stuStageId" dense :options="cusStateList" option-label="Name" option-value="Id"
emit-value map-options label="客户状态" class="col-6" />
<div>
<q-btn label="保存" color="accent " size="md" @click="saveFlow()" />
</div>
</div>
</template> </template>
<div style="display:flex;flex:1;flex-direction: column;overflow:hidden;"> <div style="display:flex;flex:1;flex-direction: column;overflow:hidden;">
<div class="TimeLineDiv"> <div class="TimeLineDiv">
...@@ -42,7 +51,8 @@ ...@@ -42,7 +51,8 @@
import { import {
queryStudentFollowPage, //获取到访列表 queryStudentFollowPage, //获取到访列表
saveStudentFollow, saveStudentFollow,
deleteStudentFollow deleteStudentFollow,
SetStuStage
} from '../../../api/customerstudent/customerstudent'; } from '../../../api/customerstudent/customerstudent';
export default { export default {
...@@ -53,6 +63,14 @@ ...@@ -53,6 +63,14 @@
UeEditor UeEditor
}, },
props: { props: {
stateId:{
type:Number,
default:0
},
stateList: {
type: Array,
default: () => []
},
saveObj: { saveObj: {
type: Object, type: Object,
default: null default: null
...@@ -60,22 +78,25 @@ ...@@ -60,22 +78,25 @@
}, },
data() { data() {
return { return {
isShowAdd:false, isShowAdd: false,
config: { config: {
initialFrameWidth: null, initialFrameWidth: null,
initialFrameHeight: 90 initialFrameHeight: 90
}, },
flowMsg:{ flowMsg: {
StuId:0, StuId: 0,
Remark:'' Remark: '',
stuState: 0,
}, },
msg: { msg: {
pageIndex: 1, pageIndex: 1,
pageSize: 12, pageSize: 12,
StuId: 0 StuId: 0
}, },
dataList:[], dataList: [],
page_Count:0 page_Count: 0,
stuStageId:0,
cusStateList: [],
} }
}, },
created() { created() {
...@@ -86,12 +107,14 @@ ...@@ -86,12 +107,14 @@
}, },
mounted() { mounted() {
this.getList(); this.stuStageId=this.stateId
this.cusStateList = this.stateList;
this.getList();
}, },
methods: { methods: {
//保存跟进 //保存跟进
saveFlow() { saveFlow() {
if(this.flowMsg.Remark==''){ if (this.flowMsg.Remark == '') {
this.$q.notify({ this.$q.notify({
type: 'negative', type: 'negative',
position: "top", position: "top",
...@@ -115,8 +138,11 @@ ...@@ -115,8 +138,11 @@
}).catch(() => { }).catch(() => {
}) })
if(this.stuStageId??0>0){
this.setStuStage()
}
}, },
getList(){ getList() {
queryStudentFollowPage(this.msg).then(res => { queryStudentFollowPage(this.msg).then(res => {
if (res.Code == 1) { if (res.Code == 1) {
this.dataList = res.Data.PageData; this.dataList = res.Data.PageData;
...@@ -127,16 +153,16 @@ ...@@ -127,16 +153,16 @@
}) })
}, },
//清除 //清除
clearMsg(){ clearMsg() {
this.flowMsg.Remark=''; this.flowMsg.Remark = '';
this.isShowAdd = false; this.isShowAdd = false;
}, },
changePage(val){ changePage(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
this.getList(); this.getList();
}, },
//删除跟进 //删除跟进
delFollow(Id){ delFollow(Id) {
let that = this let that = this
this.$q.dialog({ this.$q.dialog({
title: '提示信息', title: '提示信息',
...@@ -157,8 +183,17 @@ ...@@ -157,8 +183,17 @@
}) })
that.getList() that.getList()
}) })
}).onCancel(() => {}); }).onCancel(() => {});
} },
setStuStage(){
const msg={
StuId:this.saveObj.StuId,
StuStage:this.stuStageId,
}
SetStuStage(msg).then(res=>{
this.$emit('update')
})
},
}, },
} }
......
...@@ -328,6 +328,10 @@ ...@@ -328,6 +328,10 @@
}, },
props: { props: {
stuData:{
type: Object,
default: null
},
saveObj: { saveObj: {
type: Object, type: Object,
default: null default: null
...@@ -406,13 +410,19 @@ ...@@ -406,13 +410,19 @@
this.getCustomTypeList(); this.getCustomTypeList();
this.getStudentDorpDown(); this.getStudentDorpDown();
this.getGetNeedsList(); this.getGetNeedsList();
if (this.saveObj && this.saveObj.StuId > 0) { if (this.saveObj && this.saveObj.StuId > 0) {
this.customMsg.StuId = this.saveObj.StuId; this.customMsg.StuId = this.saveObj.StuId;
this.checkMsg.StuId = this.saveObj.StuId; this.checkMsg.StuId = this.saveObj.StuId;
this.queryStuInfo();
}
},
watch:{
stuData(){
this.init();
} }
}, },
mounted() {},
methods: { methods: {
//获取客户需求 //获取客户需求
getGetNeedsList(){ getGetNeedsList(){
...@@ -646,12 +656,37 @@ ...@@ -646,12 +656,37 @@
); );
}); });
}, },
queryStuInfo() { // queryStuInfo() {
getStudentInfo({ // getStudentInfo({
StuId: this.customMsg.StuId // StuId: this.customMsg.StuId
}).then(res => { // }).then(res => {
if (res.Code == 1) { // if (res.Code == 1) {
var tempDate = res.Data; // var tempDate = res.Data;
// this.customObj.StuId = tempDate.StuId;
// this.customObj.StuName = tempDate.StuName;
// this.customObj.StuTel = tempDate.StuTel;
// this.customObj.CreateType = tempDate.CreateType;
// this.customObj.StuSourceId = tempDate.StuSourceId;
// this.customObj.StuChannel = tempDate.StuChannel;
// this.customObj.PlatformName = tempDate.PlatformName;
// this.customObj.StuSex = tempDate.StuSex;
// this.customObj.StuBirth = tempDate.StuBirth;
// this.customObj.StuStage = tempDate.StuStage;
// this.customObj.JapanBaseInfo = tempDate.JapanBaseInfo;
// this.customObj.StuProfession = tempDate.StuProfession;
// this.customObj.StuEducation = tempDate.StuEducation;
// this.customObj.StuPurpose = tempDate.StuPurpose;
// this.customObj.CreateBy = tempDate.CreateBy;
// this.customObj.CustomerId = tempDate.CustomerId;
// this.customObj.StuType = tempDate.StuType;
// this.customObj.QQ = tempDate.QQ;
// this.customObj.WeChatNo = tempDate.WeChatNo;
// this.customObj.StuNeeds = tempDate.StuNeeds;
// }
// });
// },
init(){
const tempDate = this.stuData;
this.customObj.StuId = tempDate.StuId; this.customObj.StuId = tempDate.StuId;
this.customObj.StuName = tempDate.StuName; this.customObj.StuName = tempDate.StuName;
this.customObj.StuTel = tempDate.StuTel; this.customObj.StuTel = tempDate.StuTel;
...@@ -672,8 +707,6 @@ ...@@ -672,8 +707,6 @@
this.customObj.QQ = tempDate.QQ; this.customObj.QQ = tempDate.QQ;
this.customObj.WeChatNo = tempDate.WeChatNo; this.customObj.WeChatNo = tempDate.WeChatNo;
this.customObj.StuNeeds = tempDate.StuNeeds; this.customObj.StuNeeds = tempDate.StuNeeds;
}
});
}, },
//新增协助人员 //新增协助人员
addAssist() { addAssist() {
......
...@@ -57,8 +57,8 @@ ...@@ -57,8 +57,8 @@
ref="ClassRoomId" :options="ClassRoomList" label="关联教室" class="col-6 q-pb-lg q-pr-lg" ref="ClassRoomId" :options="ClassRoomList" label="关联教室" class="col-6 q-pb-lg q-pr-lg"
emit-value map-options /> emit-value map-options />
</div> </div>
<div class="row wrap" style="margin-bottom:10px;"> <div class="row wrap justify-end q-pr-lg" style="margin-bottom:10px;">
<q-btn label="新增" color="accent q-mb-lg" size="md" @click="saveAppointForm()" /> <q-btn label="保存" color="accent q-mb-lg" size="md" @click="saveAppointForm()" />
</div> </div>
</template> </template>
<div style="display:flex;flex:1;flex-direction: column;overflow:hidden;"> <div style="display:flex;flex:1;flex-direction: column;overflow:hidden;">
......
...@@ -2,14 +2,17 @@ ...@@ -2,14 +2,17 @@
.studentDate .el-input__inner { .studentDate .el-input__inner {
background-color: transparent; background-color: transparent;
border: 0; border: 0;
height: 28px!important; height: 28px !important;
} }
.studentDate .el-input{
height:28px!important; .studentDate .el-input {
height: 28px !important;
} }
.el-select-dropdown{
z-index:8888!important; .el-select-dropdown {
z-index: 8888 !important;
} }
</style> </style>
<template> <template>
<div> <div>
...@@ -30,7 +33,8 @@ ...@@ -30,7 +33,8 @@
<div class="row warp studentDate"> <div class="row warp studentDate">
<q-field filled class="q-pb-lg q-pr-lg" dense> <q-field filled class="q-pb-lg q-pr-lg" dense>
 <template v-slot:control>  <template v-slot:control>
<el-time-select v-model="VisitMsg.VisitTime" size="mini" ref="ClassTime" style="width:230px" :picker-options="{ <el-time-select v-model="VisitMsg.VisitTime" size="mini" ref="ClassTime" style="width:230px"
:picker-options="{
start: '09:00', start: '09:00',
step: '00:15', step: '00:15',
end: '21:00', end: '21:00',
...@@ -40,23 +44,22 @@ ...@@ -40,23 +44,22 @@
</q-field> </q-field>
<q-field filled class="q-pb-lg" dense> <q-field filled class="q-pb-lg" dense>
 <template v-slot:control>  <template v-slot:control>
<el-select v-model="VisitMsg.ReceptionPersion" filterable style="width:230px;" size="mini" placeholder="接待人"> <el-select v-model="VisitMsg.ReceptionPersion" filterable style="width:230px;" size="mini"
<el-option placeholder="接待人">
v-for="item in myEmployeeList" <el-option v-for="item in myEmployeeList" :key="item.Id" :label="item.EmployeeName" :value="item.Id">
:key="item.Id"
:label="item.EmployeeName"
:value="item.Id">
</el-option> </el-option>
</el-select> </el-select>
 </template>  
</q-field> </template>
</q-field>
</div> </div>
<div class="row wrap"> <div class="row wrap">
<q-input filled v-model="VisitMsg.Remark" dense :rows="3" type="textarea" class="col-12 q-pb-lg q-pr-lg" label="备注"> <q-input filled v-model="VisitMsg.Remark" dense :rows="3" type="textarea" class="col-12 q-pb-lg q-pr-lg"
label="备注">
</q-input> </q-input>
</div> </div>
<div class="row wrap" style="margin-bottom:10px;"> <div class="row wrap justify-end q-pr-lg" style="margin-bottom:10px;">
<q-btn label="保存" color="accent q-mb-lg" size="md" @click="saveVisit()" /> <q-btn label="保存" color="accent q-mb-lg" size="md" @click="saveVisit()" />
</div> </div>
</template> </template>
...@@ -97,14 +100,17 @@ ...@@ -97,14 +100,17 @@
<q-banner v-if="isShowEdit"> <q-banner v-if="isShowEdit">
<div class="row wrap" style="margin-top:10px;width:300px;"> <div class="row wrap" style="margin-top:10px;width:300px;">
<q-input filled v-model="feedBackMsg.Feedback" :rows="3" type="textarea" <q-input filled v-model="feedBackMsg.Feedback" :rows="3" type="textarea"
class="col-12 q-pb-lg" label="请输入反馈内容"> class="col-12 q-pb-sm" label="请输入反馈内容">
</q-input> </q-input>
</div> </div>
<div class="row wrap" style="margin-top:10px;width:300px;"> <div class="row wrap q-col-gutter-sm" style="width:300px;">
<q-radio v-model="feedBackMsg.IsVisit" :val="0" label="未到访" /> <q-select filled v-model="stuStageId" dense :options="cusStateList" option-label="Name"
<q-radio v-model="feedBackMsg.IsVisit" :val="1" label="已到访" /> option-value="Id" emit-value map-options label="客户状态" class="col-6" />
<q-select filled v-model="feedBackMsg.IsVisit" dense :options="VisitList"
emit-value map-options label="是否到访" class="col-6" />
</div> </div>
<div class="row wrap" style="float:right;margin-bottom:10px;"> <div class="row wrap q-my-sm" style="float:right;">
<q-btn label="保存" color="accent" size="sm" @click="SetFeedBack()" /> <q-btn label="保存" color="accent" size="sm" @click="SetFeedBack()" />
</div> </div>
</q-banner> </q-banner>
...@@ -132,23 +138,32 @@ ...@@ -132,23 +138,32 @@
<script> <script>
import { import {
getSchoolDropdown, //获取校区列表 getSchoolDropdown, //获取校区列表
queryStuStageList, //获取客户阶段列表
} from '../../../api/school/index'; } from '../../../api/school/index';
import { import {
queryStudentVisitPage, //获取到访列表 queryStudentVisitPage, //获取到访列表
saveStudentVisit, saveStudentVisit,
deleteStudentVisit, deleteStudentVisit,
saveStudentVisitFeedback saveStudentVisitFeedback,
SetStuStage
} from '../../../api/customerstudent/customerstudent'; } from '../../../api/customerstudent/customerstudent';
import { import {
queryEmployee queryEmployee
} from '../../../api/users/user' } from '../../../api/users/user'
export default { export default {
meta: { meta: {
title: "" title: ""
}, },
props: { props: {
stateId:{
type:Number,
default:0
},
stateList: {
type: Array,
default: () => []
},
saveObj: { saveObj: {
type: Object, type: Object,
default: null default: null
...@@ -182,8 +197,19 @@ ...@@ -182,8 +197,19 @@
feedBackMsg: { feedBackMsg: {
Id: 0, //编号 Id: 0, //编号
IsVisit: 0, //到访状态(1-已到访,0-未到访) IsVisit: 0, //到访状态(1-已到访,0-未到访)
Feedback: '' //反馈 Feedback: '', //反馈
}, },
VisitList:[
{
label:'未到访',
value:0
},{
label:'已到访',
value:1
}
],
stuStageId:0,
cusStateList: [],
} }
}, },
created() { created() {
...@@ -192,11 +218,13 @@ ...@@ -192,11 +218,13 @@
} }
}, },
mounted() { mounted() {
this.stuStageId=this.stateId
this.cusStateList = this.stateList;
this.getSchool(); this.getSchool();
this.getEmployeeList(); this.getEmployeeList();
this.getList(); this.getList();
let userInfo = this.getLocalStorage(); let userInfo = this.getLocalStorage();
if(userInfo){ if (userInfo) {
this.VisitMsg.ReceptionPersion = parseInt(userInfo.Id); this.VisitMsg.ReceptionPersion = parseInt(userInfo.Id);
} }
}, },
...@@ -225,6 +253,9 @@ ...@@ -225,6 +253,9 @@
this.isShowEdit = false; this.isShowEdit = false;
} }
}); });
if(this.stuStageId??0>0){
this.setStuStage()
}
}, },
//获取校区列表 //获取校区列表
getSchool() { getSchool() {
...@@ -260,7 +291,7 @@ ...@@ -260,7 +291,7 @@
//保存数据 //保存数据
saveVisit() { saveVisit() {
this.VisitMsg.StuId = this.saveObj.StuId; this.VisitMsg.StuId = this.saveObj.StuId;
if(this.VisitMsg.Date==''){ if (this.VisitMsg.Date == '') {
this.$q.notify({ this.$q.notify({
type: 'negative', type: 'negative',
position: "top", position: "top",
...@@ -269,7 +300,7 @@ ...@@ -269,7 +300,7 @@
}) })
return; return;
} }
if(this.VisitMsg.VisitTime==''){ if (this.VisitMsg.VisitTime == '') {
this.$q.notify({ this.$q.notify({
type: 'negative', type: 'negative',
position: "top", position: "top",
...@@ -333,7 +364,16 @@ ...@@ -333,7 +364,16 @@
changePage(val) { changePage(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
this.getList(); this.getList();
} },
setStuStage(){
const msg={
StuId:this.saveObj.StuId,
StuStage:this.stuStageId,
}
SetStuStage(msg).then(res=>{
this.$emit('update')
})
},
}, },
} }
......
...@@ -13,21 +13,18 @@ ...@@ -13,21 +13,18 @@
<q-input filled class="col-6 q-pb-lg q-pr-lg" dense v-model="yueMsg.AppointmentPoint" label="约访地点"></q-input> <q-input filled class="col-6 q-pb-lg q-pr-lg" dense v-model="yueMsg.AppointmentPoint" label="约访地点"></q-input>
<q-field filled class="q-pb-lg" dense> <q-field filled class="q-pb-lg" dense>
 <template v-slot:control>  <template v-slot:control>
<el-date-picker <el-date-picker v-model="yueMsg.AppointmentTime" type="datetime" size="mini" style="width:228px"
v-model="yueMsg.AppointmentTime"
type="datetime"
size="mini"
style="width:228px"
placeholder="选择约访日期时间!"> placeholder="选择约访日期时间!">
</el-date-picker> </el-date-picker>
</template> </template>
</q-field> </q-field>
</div> </div>
<div class="row wrap"> <div class="row wrap">
<q-input filled v-model="yueMsg.Remark" dense :rows="3" type="textarea" class="col-12 q-pb-lg q-pr-lg" label="备注"> <q-input filled v-model="yueMsg.Remark" dense :rows="3" type="textarea" class="col-12 q-pb-lg q-pr-lg"
label="备注">
</q-input> </q-input>
</div> </div>
<div class="row wrap" style="margin-bottom:10px;"> <div class="row wrap justify-end q-pr-lg" style="margin-bottom:10px;">
<q-btn label="保存" color="accent q-mb-lg" size="md" @click="savePoint()" /> <q-btn label="保存" color="accent q-mb-lg" size="md" @click="savePoint()" />
</div> </div>
</template> </template>
...@@ -57,8 +54,10 @@ ...@@ -57,8 +54,10 @@
<q-banner v-if="isShowEdit"> <q-banner v-if="isShowEdit">
<div class="row wrap" style="margin-top:10px;width:300px;"> <div class="row wrap" style="margin-top:10px;width:300px;">
<q-input filled v-model="feedBackMsg.Feedback" :rows="3" type="textarea" <q-input filled v-model="feedBackMsg.Feedback" :rows="3" type="textarea"
class="col-12 q-pb-lg" label="请输入反馈内容"> class="col-12 q-pb-sm" label="请输入反馈内容">
</q-input> </q-input>
<q-select filled v-model="stuStageId" dense :options="cusStateList"
option-label="Name" option-value="Id" emit-value map-options label="客户状态" class="col-12 q-pb-sm" />
</div> </div>
<div class="row wrap" style="float:right;margin-bottom:10px;"> <div class="row wrap" style="float:right;margin-bottom:10px;">
<q-btn label="保存" color="accent" size="sm" @click="SetFeedBack()" /> <q-btn label="保存" color="accent" size="sm" @click="SetFeedBack()" />
...@@ -91,7 +90,8 @@ ...@@ -91,7 +90,8 @@
saveStudentAppointment, saveStudentAppointment,
queryStudentAppointmentPage, queryStudentAppointmentPage,
deleteStudentAppointment, deleteStudentAppointment,
saveStudentAppointmentFeedBack saveStudentAppointmentFeedBack,
SetStuStage
} from '../../../api/customerstudent/customerstudent'; } from '../../../api/customerstudent/customerstudent';
export default { export default {
...@@ -102,6 +102,14 @@ ...@@ -102,6 +102,14 @@
}, },
props: { props: {
stateId:{
type:Number,
default:0
},
stateList: {
type: Array,
default: () => []
},
saveObj: { saveObj: {
type: Object, type: Object,
default: null default: null
...@@ -125,11 +133,13 @@ ...@@ -125,11 +133,13 @@
//反馈信息 //反馈信息
feedBackMsg: { feedBackMsg: {
Id: 0, Id: 0,
Feedback: '' //反馈 Feedback: '', //反馈
}, },
isShowEdit: false, isShowEdit: false,
dataList: [], dataList: [],
page_Count: 0 page_Count: 0,
cusStateList: [],
stuStageId:0,
} }
}, },
created() { created() {
...@@ -138,6 +148,8 @@ ...@@ -138,6 +148,8 @@
} }
}, },
mounted() { mounted() {
this.stuStageId=this.stateId
this.cusStateList = this.stateList;
this.getList(); this.getList();
}, },
methods: { methods: {
...@@ -163,11 +175,14 @@ ...@@ -163,11 +175,14 @@
this.isShowEdit = false; this.isShowEdit = false;
} }
}); });
if(this.stuStageId??0>0){
this.setStuStage()
}
}, },
//保存约访 //保存约访
savePoint() { savePoint() {
this.yueMsg.StuId = this.saveObj.StuId; this.yueMsg.StuId = this.saveObj.StuId;
if(this.yueMsg.AppointmentPoint==''){ if (this.yueMsg.AppointmentPoint == '') {
this.$q.notify({ this.$q.notify({
type: 'negative', type: 'negative',
position: "top", position: "top",
...@@ -176,7 +191,7 @@ ...@@ -176,7 +191,7 @@
}) })
return; return;
} }
if(this.yueMsg.AppointmentTime==''){ if (this.yueMsg.AppointmentTime == '') {
this.$q.notify({ this.$q.notify({
type: 'negative', type: 'negative',
position: "top", position: "top",
...@@ -249,7 +264,16 @@ ...@@ -249,7 +264,16 @@
changePage(val) { changePage(val) {
this.msg.pageIndex = val; this.msg.pageIndex = val;
this.getList(); this.getList();
} },
setStuStage(){
const msg={
StuId:this.saveObj.StuId,
StuStage:this.stuStageId,
}
SetStuStage(msg).then(res=>{
this.$emit('update')
})
},
} }
} }
......
...@@ -30,7 +30,7 @@ ...@@ -30,7 +30,7 @@
</div> </div>
<div class="custom_Bottom"> <div class="custom_Bottom">
<div class="detail-info"> <div class="detail-info">
<student-left :save-obj="saveObj" @success="refreshStudentPage" @getrecord="getrecord"></student-left> <student-left :stuData="stuData" :save-obj="saveObj" @success="refreshStudentPage" @getrecord="getrecord"></student-left>
</div> </div>
<div class="detail-travel"> <div class="detail-travel">
<div class="detail_first"> <div class="detail_first">
...@@ -55,10 +55,14 @@ ...@@ -55,10 +55,14 @@
<!-- 操作 --> <!-- 操作 -->
<template v-if="ckedTab==2"> <template v-if="ckedTab==2">
<div class="operate_Content" style="margin-top:20px;"> <div class="operate_Content" style="margin-top:20px;">
<student-visit :save-obj="baseObj" :StuId="baseObj.StuId" v-if="secondType==1" @success="refreshStudentPage"></student-visit> <student-visit :stateId="stateId" :stateList="customStateList" @update="queryStuInfo" :save-obj="baseObj" :StuId="baseObj.StuId"
<student-yuefang :save-obj="baseObj" v-if="secondType==2" @success="refreshStudentPage"></student-yuefang> v-if="secondType==1" @success="refreshStudentPage"></student-visit>
<student-genjin :save-obj="baseObj" v-if="secondType==3" @success="refreshStudentPage"></student-genjin> <student-yuefang :stateId="stateId" :stateList="customStateList" @update="queryStuInfo" :save-obj="baseObj" v-if="secondType==2"
<student-shiting :save-obj="baseObj" v-if="secondType==4" @success="refreshStudentPage"></student-shiting> @success="refreshStudentPage"></student-yuefang>
<student-genjin :stateId="stateId" :stateList="customStateList" @update="queryStuInfo" :save-obj="baseObj" v-if="secondType==3"
@success="refreshStudentPage"></student-genjin>
<student-shiting :save-obj="baseObj" v-if="secondType==4" @success="refreshStudentPage">
</student-shiting>
</div> </div>
</template> </template>
<!-- 订单 --> <!-- 订单 -->
...@@ -91,7 +95,10 @@ ...@@ -91,7 +95,10 @@
import { import {
ForwardStudent ForwardStudent
} from '../../../api/customerstudent/customerstudent' } from '../../../api/customerstudent/customerstudent'
import {
getStudentInfo,//获取学员客户信息
queryStuStageList, //获取客户阶段列表
} from '../../../api/school/index';
import studentLeft from '../student/student-left'; import studentLeft from '../student/student-left';
import studentRecord from '../student/student-record'; import studentRecord from '../student/student-record';
import studentVisit from '../student/student-visit'; import studentVisit from '../student/student-visit';
...@@ -121,7 +128,7 @@ ...@@ -121,7 +128,7 @@
type: Object, type: Object,
default: null default: null
}, },
isJudgeTrans:{ isJudgeTrans: {
type: Number, type: Number,
default: null default: null
} }
...@@ -156,26 +163,32 @@ ...@@ -156,26 +163,32 @@
//员工列表 //员工列表
employeeList: [], employeeList: [],
myEmployeeList: [], myEmployeeList: [],
isShowTrans: false isShowTrans: false,
customStateList: [],
stateId:0,
stuData:{},
} }
}, },
created() {
this.getStuStageList()
this.queryStuInfo()
},
mounted() { mounted() {
this.baseObj = this.saveObj; this.baseObj = this.saveObj;
this.getEmployeeList(); this.getEmployeeList();
console.log(this.baseObj,'baseObj');
}, },
methods: { methods: {
//判断是否显示转交 //判断是否显示转交
getJudgeTrans(){ getJudgeTrans() {
let userInfo = this.getLocalStorage(); let userInfo = this.getLocalStorage();
let Id = userInfo.Id; let Id = userInfo.Id;
if(this.isJudgeTrans==1){ if (this.isJudgeTrans == 1) {
if(this.baseObj.CreateBy==Id){ if (this.baseObj.CreateBy == Id) {
return true return true
}else{ } else {
return false return false
} }
}else{ } else {
return true return true
} }
}, },
...@@ -224,11 +237,28 @@ ...@@ -224,11 +237,28 @@
}) })
}, },
//保存成功后调用记录 //保存成功后调用记录
getrecord(){ getrecord() {
this.$refs.mychild.getStuLogPage(); this.$refs.mychild.getStuLogPage();
} },
//获取客户阶段列表
getStuStageList() {
queryStuStageList().then(res => {
this.customStateList = res.Data;
})
},
queryStuInfo() {
getStudentInfo({
StuId: this.saveObj.StuId
}).then(res => {
if (res.Code == 1) {
this.stuData=res.Data
this.stateId = res.Data.StuStage;
}
});
},
}, },
} }
</script> </script>
<style> <style>
.custom_RModel { .custom_RModel {
...@@ -495,18 +525,22 @@ ...@@ -495,18 +525,22 @@
width: 57px; width: 57px;
text-align-last: justify; text-align-last: justify;
} }
.Stu_OrderId{
.Stu_OrderId {
color: #2961FE; color: #2961FE;
font-weight: bold; font-weight: bold;
text-decoration: underline; text-decoration: underline;
cursor: pointer; cursor: pointer;
} }
.Stu_HtLeft{
width:57px; .Stu_HtLeft {
width: 57px;
display: inline-block; display: inline-block;
text-align-last: justify; text-align-last: justify;
} }
.fullscreen{
z-index:3000; .fullscreen {
z-index: 3000;
} }
</style>
\ No newline at end of file </style>
...@@ -32,6 +32,11 @@ ...@@ -32,6 +32,11 @@
.marketRules .singeRowTable tr th { .marketRules .singeRowTable tr th {
border: 1px solid #d2d2d2; border: 1px solid #d2d2d2;
} }
.cycle_Title {
font-size: 20px;
font-weight: 500;
color: #1f2329;
}
</style> </style>
<template> <template>
<div class="page-body marketRules"> <div class="page-body marketRules">
...@@ -39,10 +44,10 @@ ...@@ -39,10 +44,10 @@
<div class="col row wrap q-mr-lg q-col-gutter-md"></div> <div class="col row wrap q-mr-lg q-col-gutter-md"></div>
</div> </div>
<template> <template>
<div>市场顾问提成规则</div> <div class="cycle_Title">市场顾问提成规则</div>
<div <div
class="cm_content" class="cm_content"
style="width: 100%;" style="width: 100%;margin-bottom: 25px;margin-top: 10px;"
v-for=" ( item , index ) in dataList " v-for=" ( item , index ) in dataList "
:key="index" :key="index"
> >
...@@ -54,11 +59,13 @@ ...@@ -54,11 +59,13 @@
v-loading="loading" v-loading="loading"
> >
<tr> <tr>
<th>方案名称</th> <th width="8%">方案名称</th>
<th>类型</th> <th>类型</th>
<th width="200">校区</th>
<th>课程类型</th> <th>课程类型</th>
<th>课程</th> <th width="300">课程</th>
<th>提成方式</th> <th>首次发放比例</th>
<th>课程比例</th>
<th>提成人员</th> <th>提成人员</th>
<th>部门人员</th> <th>部门人员</th>
<th width="100">操作</th> <th width="100">操作</th>
...@@ -73,27 +80,27 @@ ...@@ -73,27 +80,27 @@
<span v-if="item.Type == 3">教师</span> <span v-if="item.Type == 3">教师</span>
</td> </td>
<td> <td>
<span v-if="item.Type == 1">包含</span> <span>{{ item.SchoolName }}</span>
<span v-if="item.Type == 2">不包含</span>
</td> </td>
<td> <td>
<p v-for="( son , sIndex ) in item.CourseList">{{ son.CourseName }}</p> <span v-if="item.CourseType == 1">包含</span>
<span v-if="item.CourseType == 2">不包含</span>
</td> </td>
<td> <td style="padding: 0 10px;">
<span v-if="item.CommissionType == 1">课耗提成</span> <span v-for="( son , sIndex ) in item.CourseList">{{ son.CourseName }}{{item.CourseList.length==sIndex+1?'':'、'}}</span>
<span v-if="item.CommissionType == 2">次月全提</span>
<span v-if="item.CommissionType == 3">课程比例:{{ item.CourseRate + '%' }}</span>
</td> </td>
<td> <td>
<p v-for="( son , sIndex ) in item.EmpList">{{ son.EmployeeName }}</p> <span >{{ item.FirstRate + '%' }}</span>
</td> </td>
<td> <td>
<p v-for="( son , sIndex ) in item.ChildEmpList">{{ son.EmployeeName }}</p> <span >{{ item.CourseRate + '%' }}</span>
</td>
<td style="padding: 0 10px;">
<span v-for="( son , sIndex ) in item.EmpList">{{ son.EmployeeName }}{{item.EmpList.length==sIndex+1?'':'、'}}</span>
</td>
<td style="padding: 0 10px;">
<span v-for="( son , sIndex ) in item.ChildEmpList">{{ son.EmployeeName }}{{item.ChildEmpList.length==sIndex+1?'':'、'}}</span>
</td> </td>
<!-- <td v-for="( son , sIndex ) in item.RateList">{{ son.StartValue }}</td>
<td v-for="( son , sIndex ) in item.RateList">{{ son.EndValue }}</td>
<td v-for="( son , sIndex ) in item.RateList">{{ son.Rate }}</td>-->
<td> <td>
<q-btn <q-btn
flat flat
...@@ -102,7 +109,7 @@ ...@@ -102,7 +109,7 @@
color="accent" color="accent"
style="font-weight:400" style="font-weight:400"
label="编辑" label="编辑"
@click="EditTask(props.row)" @click="EditTask(item)"
/> />
<q-btn <q-btn
flat flat
...@@ -116,27 +123,39 @@ ...@@ -116,27 +123,39 @@
</td> </td>
</tr> </tr>
</table> </table>
<div></div>
<table <table
class="po_content singeRowTable" class="po_content singeRowTable"
style="border:1px solid #E6E6E6;" style="border:1px solid #E6E6E6;"
cellspacing="0" cellspacing="0"
cellpadding="0" cellpadding="0"
v-loading="loading" v-loading="loading"
> >
<tr> <tr>
<th :rowspan="item.RateList.length">业绩比例</th> <th >业绩比例</th>
</tr> </tr>
<tr> </table>
<th <div style="width:100%;overflow-x: auto;">
v-for="( son , sIndex ) in item.RateList" <table
:key="sIndex" class="po_content singeRowTable"
>{{ son.StartValue }}{{ '<业绩<=' }}{{ son.EndValue }}</th> style="border:1px solid #E6E6E6;"
</tr> cellspacing="0"
<tr> cellpadding="0"
<td v-for="( son , sIndex ) in item.RateList" :key="sIndex">{{ son.Rate }}%</td> v-loading="loading"
</tr> >
</table>
<tr>
<th style="min-width: 260px;"
v-for="( son , sIndex ) in item.RateList"
:key="sIndex"
>{{ son.StartValue }}{{ '<业绩<=' }}{{ son.EndValue }}</th>
</tr>
<tr style="width: 1040px;overflow-x: auto;">
<td style="min-width: 260px;" v-for="( son , sIndex ) in item.RateList" :key="sIndex">{{ son.Rate }}%</td>
</tr>
</table>
</div>
</div> </div>
<div <div
v-if="dataList.length == 0" v-if="dataList.length == 0"
...@@ -144,7 +163,7 @@ ...@@ -144,7 +163,7 @@
>暂无数据</div> >暂无数据</div>
<div style="width: 100%;display: flex;justify-content: flex-end;margin-top: 10px;"> <div style="width: 100%;display: flex;justify-content: flex-end;margin-top: 10px;">
<q-btn color="accent" size="sm" icon="add" label="新增规则" @click="AddMsg()" /> <q-btn color="accent" size="sm" icon="add" label="新增规则" @click="AddMsg()" />
<q-btn color="accent" size="sm" label="保存" @click="setMsg()" style="margin-left: 15px;" /> <!-- <q-btn color="accent" size="sm" label="保存" @click="setMsg()" style="margin-left: 15px;" /> -->
</div> </div>
</template> </template>
<marketCommissionfrom <marketCommissionfrom
...@@ -152,6 +171,8 @@ ...@@ -152,6 +171,8 @@
:isAdd="isAdd" :isAdd="isAdd"
:loyeeList='loyeeList' :loyeeList='loyeeList'
:CourseList='CourseList' :CourseList='CourseList'
:SchoolList='SchoolList'
:selectData= 'selectData'
@close="closeForm" @close="closeForm"
@success="refreshList" @success="refreshList"
></marketCommissionfrom> ></marketCommissionfrom>
...@@ -167,7 +188,11 @@ import { ...@@ -167,7 +188,11 @@ import {
} from '../../../api/course/index' } from '../../../api/course/index'
import { import {
getSellAchievementsRuleList, getSellAchievementsRuleList,
setSellAchievementsRule
} from '../../../api/finance/index' } from '../../../api/finance/index'
import {
getSchoolDropdown,
} from '../../../api/school/index'
import marketCommissionfrom from "../../../components/finance/marketCommissionfrom"; import marketCommissionfrom from "../../../components/finance/marketCommissionfrom";
export default { export default {
meta: { meta: {
...@@ -186,6 +211,8 @@ export default { ...@@ -186,6 +211,8 @@ export default {
isAdd: false, isAdd: false,
loyeeList: [],//人员列表 loyeeList: [],//人员列表
CourseList:[],//课程列表 CourseList:[],//课程列表
SchoolList:[],//校区下拉
selectData:{},
} }
}, },
created() { created() {
...@@ -202,6 +229,7 @@ export default { ...@@ -202,6 +229,7 @@ export default {
this.getSellAchievementsRuleList(); //获取规则 this.getSellAchievementsRuleList(); //获取规则
this.getEmployeeList(); this.getEmployeeList();
this.getCourseList();//获取课程下拉 this.getCourseList();//获取课程下拉
this.getSchool();//校区下拉
}, },
methods: { methods: {
...@@ -234,23 +262,51 @@ export default { ...@@ -234,23 +262,51 @@ export default {
} }
}) })
}, },
getSchool() {
getSchoolDropdown({}).then(res => {
if (res.Code == 1) {
this.SchoolList = res.Data;
}
})
},
refreshList(data) { //保存规则
console.log(this.dataList,'datalist')
setSellAchievementsRule(data).then(res => {
if (res.Code == 1) {
this.$q.notify({
icon: 'iconfont icon-chenggong',
color: 'accent',
timeout: 2000,
message: res.Message,
position: 'top'
})
this.persistent = false;
this.getSellAchievementsRuleList(); //获取规则
preservation() { //保存规则 }
})
}, },
AddMsg() { AddMsg() {//新增
this.selectData = {}
this.persistent = true; this.persistent = true;
this.isAdd = true; this.isAdd = true;
}, },
EditTask(item){//编辑
this.persistent = true;
this.selectData = item
this.isAdd = false;
},
closeForm() { closeForm() {
this.persistent = false; this.persistent = false;
}, },
refreshList() {//成功之后返回
}
}, },
} }
......
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