Commit db7f0602 authored by zhengke's avatar zhengke

修改

parent 2b12e79f
...@@ -676,4 +676,15 @@ export function GetNeedsList(data) { ...@@ -676,4 +676,15 @@ export function GetNeedsList(data) {
method: 'post', method: 'post',
data data
}); });
}
/**
* 获取我的下属下拉
*/
export function GetPersonalDimension(data) {
return request({
url: '/OKRPeriod/GetPersonalDimension',
method: 'post',
data
});
} }
\ No newline at end of file
...@@ -76,7 +76,8 @@ ...@@ -76,7 +76,8 @@
<span class="student_require">*</span>客户名称 <span class="student_require">*</span>客户名称
</div> </div>
<div class="stage_value"> <div class="stage_value">
<q-input filled v-model="customObj.StuName" style="width:185px;" ref="StuName" dense :disable="noEdit"></q-input> <q-input filled v-model="customObj.StuName" style="width:185px;" ref="StuName" dense :disable="noEdit">
</q-input>
</div> </div>
</div> </div>
</div> </div>
...@@ -86,8 +87,8 @@ ...@@ -86,8 +87,8 @@
客户电话 客户电话
</div> </div>
<div class="stage_value"> <div class="stage_value">
<q-input filled v-model="customObj.StuTel" style="width:185px;" @blur="CheckExistsStu(1)" ref="StuTel" :disable="noEdit" <q-input filled v-model="customObj.StuTel" style="width:185px;" @blur="CheckExistsStu(1)" ref="StuTel"
dense> :disable="noEdit" dense>
</q-input> </q-input>
</div> </div>
</div> </div>
...@@ -109,8 +110,8 @@ ...@@ -109,8 +110,8 @@
微信号 微信号
</div> </div>
<div class="stage_value"> <div class="stage_value">
<q-input filled v-model="customObj.WeChatNo" @blur="CheckExistsStu(3)" style="width:185px;" ref="WeChatNo" :disable="noEdit" <q-input filled v-model="customObj.WeChatNo" @blur="CheckExistsStu(3)" style="width:185px;" ref="WeChatNo"
dense></q-input> :disable="noEdit" dense></q-input>
</div> </div>
</div> </div>
</div> </div>
...@@ -120,101 +121,102 @@ ...@@ -120,101 +121,102 @@
<span class="student_require">*</span>客户状态 <span class="student_require">*</span>客户状态
</div> </div>
<div class="stage_value"> <div class="stage_value">
<q-select filled v-model="customObj.StuStage" dense :options="customState" option-label="Name" :disable="noEdit" <q-select filled v-model="customObj.StuStage" dense :options="customState" option-label="Name"
style="width:185px;" option-value="Id" emit-value map-options label="客户状态" /> :disable="noEdit" style="width:185px;" option-value="Id" emit-value map-options label="客户状态" />
</div>
</div>
</div>
<div class="customer_info_component">
<div class="customer_info_Stage">
<div class="stage_label">
<span class="student_require">*</span>客户来源
</div>
<div class="stage_value">
<q-select filled v-model="customObj.CreateType" @change="clearStuMsg()" style="width:185px;"
:disable="(customObj.StuId>0 || noEdit)" @input="resetStuSource()" dense :options="customFromList" option-label="Name"
option-value="Id" emit-value map-options label="客户来源" />
</div>
</div>
</div>
<div class="customer_info_component" v-if="customObj.CreateType==3">
<div class="customer_info_Stage">
<div class="stage_label">
<span class="student_require">*</span>介绍人
</div>
<div class="stage_value">
<q-select filled v-model="customObj.StuSourceId" style="width:185px;" dense @filter="filterEmployee"
:disable="(customObj.StuId>0 || noEdit)" use-input :options="myEmployeeList" option-label="EmployeeName"
option-value="Id" emit-value map-options />
</div> </div>
</div> </div>
</div> </div>
<div class="customer_info_component" v-if="customObj.CreateType==4"> <template v-if="BelongType!=3">
<div class="customer_info_Stage"> <div class="customer_info_component">
<div class="stage_label"> <div class="customer_info_Stage">
<span class="student_require">*</span>转介人 <div class="stage_label">
</div> <span class="student_require">*</span>客户来源
<div class="stage_value"> </div>
<q-select filled v-model="customObj.StuSourceId" style="width:185px;" use-input @filter="filterStudent" <div class="stage_value">
:disable="(customObj.StuId>0 || noEdit)" dense :options="MyTransListData" option-label="StuName" option-value="StuId" <q-select filled v-model="customObj.CreateType" @change="clearStuMsg()" style="width:185px;"
emit-value map-options /> :disable="(noEdit || isHaveOrder)" @input="resetStuSource()" dense :options="customFromList"
option-label="Name" option-value="Id" emit-value map-options label="客户来源" />
</div>
</div> </div>
</div> </div>
</div> <div class="customer_info_component" v-if="customObj.CreateType==3">
<div class="customer_info_component" v-if="customObj.CreateType==1"> <div class="customer_info_Stage">
<div class="customer_info_Stage"> <div class="stage_label">
<div class="stage_label"> <span class="student_require">*</span>介绍人
<span class="student_require">*</span>收客渠道 </div>
</div> <div class="stage_value">
<div class="stage_value"> <q-select filled v-model="customObj.StuSourceId" style="width:185px;" dense @filter="filterEmployee"
<q-select filled v-model="customObj.StuChannel" style="width:185px;" dense :options="StuChannelList" :disable="(noEdit || isHaveOrder)" use-input :options="myEmployeeList" option-label="EmployeeName"
:disable="(customObj.StuId>0 || noEdit)" option-label="Name" option-value="Id" emit-value map-options use-input option-value="Id" emit-value map-options />
@filter="filterStuChannel"> </div>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
未找到相关数据
</q-item-section>
</q-item>
</template>
</q-select>
</div> </div>
</div> </div>
</div> <div class="customer_info_component" v-if="customObj.CreateType==4">
<div class="customer_info_component" v-if="customObj.CreateType==2"> <div class="customer_info_Stage">
<div class="customer_info_Stage"> <div class="stage_label">
<div class="stage_label"> <span class="student_require">*</span>转介人
<span class="student_require">*</span>关联同行 </div>
</div> <div class="stage_value">
<div class="stage_value"> <q-select filled v-model="customObj.StuSourceId" style="width:185px;" use-input @filter="filterStudent"
<q-select filled v-model="customObj.CustomerId" style="width:185px" dense :options="customList" use-input :disable="(noEdit || isHaveOrder)" dense :options="MyTransListData" option-label="StuName"
:disable="(customObj.StuId>0 || noEdit)" @filter="filterFn" option-label="CustomerName" option-value="CustomerId" option-value="StuId" emit-value map-options />
emit-value map-options> </div>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
未找到相关数据
</q-item-section>
</q-item>
</template>
</q-select>
</div> </div>
</div> </div>
</div> <div class="customer_info_component" v-if="customObj.CreateType==1">
<template v-if="customObj.CreateType==1"> <div class="customer_info_Stage">
<div class="info_item" v-if="customObj.StuChannel==6"> <div class="stage_label">
<div class="item_label">第三方平台名称</div> <span class="student_require">*</span>收客渠道
<div class="item_value"> </div>
<q-input filled v-model="customObj.PlatformName" dense :disable="noEdit"></q-input> <div class="stage_value">
<q-select filled v-model="customObj.StuChannel" style="width:185px;" dense :options="StuChannelList"
:disable="(noEdit || isHaveOrder)" option-label="Name" option-value="Id" emit-value map-options
use-input @filter="filterStuChannel">
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
未找到相关数据
</q-item-section>
</q-item>
</template>
</q-select>
</div>
</div> </div>
</div> </div>
<div class="info_item" v-if="customObj.StuChannel==7"> <div class="customer_info_component" v-if="customObj.CreateType==2">
<div class="item_label">其他平台名称</div> <div class="customer_info_Stage">
<div class="item_value"> <div class="stage_label">
<q-input filled v-model="customObj.PlatformName" dense :disable="noEdit"></q-input> <span class="student_require">*</span>关联同行
</div>
<div class="stage_value">
<q-select filled v-model="customObj.CustomerId" style="width:185px" dense :options="customList" use-input
:disable="(noEdit || isHaveOrder)" @filter="filterFn" option-label="CustomerName"
option-value="CustomerId" emit-value map-options>
<template v-slot:no-option>
<q-item>
<q-item-section class="text-grey">
未找到相关数据
</q-item-section>
</q-item>
</template>
</q-select>
</div>
</div> </div>
</div> </div>
<template v-if="customObj.CreateType==1">
<div class="info_item" v-if="customObj.StuChannel==6">
<div class="item_label">第三方平台名称</div>
<div class="item_value">
<q-input filled v-model="customObj.PlatformName" dense :disable="noEdit"></q-input>
</div>
</div>
<div class="info_item" v-if="customObj.StuChannel==7">
<div class="item_label">其他平台名称</div>
<div class="item_value">
<q-input filled v-model="customObj.PlatformName" dense :disable="noEdit"></q-input>
</div>
</div>
</template>
</template> </template>
<div class="customer_info_component"> <div class="customer_info_component">
<div class="customer_info_Stage"> <div class="customer_info_Stage">
...@@ -222,8 +224,8 @@ ...@@ -222,8 +224,8 @@
<span class="student_require">*</span>客户类型 <span class="student_require">*</span>客户类型
</div> </div>
<div class="stage_value"> <div class="stage_value">
<q-select filled v-model="customObj.StuType" style="width:185px" dense :options="customTypeList" :disable="noEdit" <q-select filled v-model="customObj.StuType" style="width:185px" dense :options="customTypeList"
option-label="Name" option-value="Id" emit-value map-options label="客户类型" /> :disable="noEdit" option-label="Name" option-value="Id" emit-value map-options label="客户类型" />
</div> </div>
</div> </div>
</div> </div>
...@@ -233,8 +235,8 @@ ...@@ -233,8 +235,8 @@
客户需求 客户需求
</div> </div>
<div class="stage_value"> <div class="stage_value">
<q-select filled v-model="customObj.StuNeeds" style="width:185px" dense :options="NeedData" :disable="noEdit" <q-select filled v-model="customObj.StuNeeds" style="width:185px" dense :options="NeedData"
option-label="Name" option-value="Id" emit-value map-options label="客户需求" /> :disable="noEdit" option-label="Name" option-value="Id" emit-value map-options label="客户需求" />
</div> </div>
</div> </div>
</div> </div>
...@@ -244,8 +246,8 @@ ...@@ -244,8 +246,8 @@
<div class="info_item"> <div class="info_item">
<div class="item_label">性别</div> <div class="item_label">性别</div>
<div class="item_value"> <div class="item_value">
<q-radio v-model="customObj.StuSex" :val="0" label="男" :disable="noEdit"/> <q-radio v-model="customObj.StuSex" :val="0" label="男" :disable="noEdit" />
<q-radio v-model="customObj.StuSex" :val="1" label="女" :disable="noEdit"/> <q-radio v-model="customObj.StuSex" :val="1" label="女" :disable="noEdit" />
</div> </div>
</div> </div>
<div class="info_item studentDate"> <div class="info_item studentDate">
...@@ -253,8 +255,8 @@ ...@@ -253,8 +255,8 @@
<div class="item_value"> <div class="item_value">
<q-field filled dense> <q-field filled dense>
 <template v-slot:control>  <template v-slot:control>
<el-date-picker v-model="customObj.StuBirth" size="mini" style="width:150px" type="date" :disabled="noEdit" <el-date-picker v-model="customObj.StuBirth" size="mini" style="width:150px" type="date"
placeholder="选择日期"> :disabled="noEdit" placeholder="选择日期">
</el-date-picker> </el-date-picker>
</template> </template>
</q-field> </q-field>
...@@ -264,8 +266,8 @@ ...@@ -264,8 +266,8 @@
<div class="info_item"> <div class="info_item">
<div class="item_label">日语基础</div> <div class="item_label">日语基础</div>
<div class="item_value"> <div class="item_value">
<q-select filled v-model="customObj.JapanBaseInfo" dense :options="basicList" option-label="Name" :disable="noEdit" <q-select filled v-model="customObj.JapanBaseInfo" dense :options="basicList" option-label="Name"
option-value="Id" emit-value map-options /> :disable="noEdit" option-value="Id" emit-value map-options />
</div> </div>
</div> </div>
<div class="info_item"> <div class="info_item">
...@@ -277,15 +279,15 @@ ...@@ -277,15 +279,15 @@
<div class="info_item"> <div class="info_item">
<div class="item_label">学历</div> <div class="item_label">学历</div>
<div class="item_value"> <div class="item_value">
<q-select filled v-model="customObj.StuEducation" dense :options="educationList" option-label="Name" :disable="noEdit" <q-select filled v-model="customObj.StuEducation" dense :options="educationList" option-label="Name"
option-value="Id" emit-value map-options /> :disable="noEdit" option-value="Id" emit-value map-options />
</div> </div>
</div> </div>
<div class="info_item"> <div class="info_item">
<div class="item_label">学习目的</div> <div class="item_label">学习目的</div>
<div class="item_value"> <div class="item_value">
<q-select filled v-model="customObj.StuPurpose" dense :options="goalsList" option-label="Name" :disable="noEdit" <q-select filled v-model="customObj.StuPurpose" dense :options="goalsList" option-label="Name"
option-value="Id" emit-value map-options /> :disable="noEdit" option-value="Id" emit-value map-options />
</div> </div>
</div> </div>
<!-- <div class="info_item"> <!-- <div class="info_item">
...@@ -323,6 +325,10 @@ ...@@ -323,6 +325,10 @@
import { import {
queryEmployee queryEmployee
} from '../../../api/users/user' } from '../../../api/users/user'
import {
queryStuOrderPage, //学员订单分页列表
} from '../../../api/customerstudent/customerstudent';
export default { export default {
meta: { meta: {
title: "学员管理" title: "学员管理"
...@@ -342,6 +348,10 @@ ...@@ -342,6 +348,10 @@
AddType: { AddType: {
type: Number, type: Number,
default: null default: null
},
BelongType: {
type: Number,
default: null
} }
}, },
data() { data() {
...@@ -399,7 +409,8 @@ ...@@ -399,7 +409,8 @@
WeChatNo: '' WeChatNo: ''
}, },
NeedData: [], NeedData: [],
noEdit:false, noEdit: false,
isHaveOrder: false
} }
}, },
created() { created() {
...@@ -414,15 +425,19 @@ ...@@ -414,15 +425,19 @@
this.GetCustomerList(); this.GetCustomerList();
this.getCustomTypeList(); this.getCustomTypeList();
this.getStudentDorpDown(); this.getStudentDorpDown();
this.getGetNeedsList(); this.getGetNeedsList();
this.getStuOrderPage();
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;
if(this.saveObj.noEdit && this.saveObj.noEdit== true){ if (this.saveObj.noEdit && this.saveObj.noEdit == true) {
this.noEdit= true this.noEdit = true
} }
} }
if (this.BelongType == 3) {
this.noEdit = true
}
}, },
watch: { watch: {
stuData() { stuData() {
...@@ -713,6 +728,9 @@ ...@@ -713,6 +728,9 @@
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;
if(this.customObj.StuId>0){
this.isHaveOrder=true
}
}, },
//新增协助人员 //新增协助人员
addAssist() { addAssist() {
...@@ -762,6 +780,26 @@ ...@@ -762,6 +780,26 @@
this.customObj.StuSourceId = ''; this.customObj.StuSourceId = '';
this.customObj.PlatformName = ''; this.customObj.PlatformName = '';
}, },
getStuOrderPage() {
let customMsg = {
pageIndex: 1,
pageSize: 10,
StuId: 0
}
if(this.saveObj){
customMsg.StuId = this.saveObj.StuId;
}
queryStuOrderPage(customMsg).then(res => {
if (res.Code == 1) {
if(res.Data.PageData.length>0){
this.isHaveOrder = true;
}else{
this.isHaveOrder = false;
}
}
});
},
} }
} }
......
...@@ -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 :stuData="stuData" :save-obj="saveObj" @success="refreshStudentPage" @getrecord="getrecord" @update="queryStuInfo"></student-left> <student-left :stuData="stuData" :save-obj="saveObj" :BelongType="BelongType" @success="refreshStudentPage" @getrecord="getrecord" @update="queryStuInfo"></student-left>
</div> </div>
<div class="detail-travel"> <div class="detail-travel">
<div class="detail_first"> <div class="detail_first">
...@@ -131,6 +131,10 @@ ...@@ -131,6 +131,10 @@
isJudgeTrans: { isJudgeTrans: {
type: Number, type: Number,
default: null default: null
},
BelongType: {
type: Number,
default: null
} }
}, },
data() { data() {
......
...@@ -100,7 +100,7 @@ ...@@ -100,7 +100,7 @@
</q-table> </q-table>
<student-form v-if="isShowStuForm" :save-obj="stuOption" @close="closeStuForm" @success="refreshStuList"> <student-form v-if="isShowStuForm" :save-obj="stuOption" @close="closeStuForm" @success="refreshStuList">
</student-form> </student-form>
<studentRight-form v-if="isShowStuRight" :isJudgeTrans="isJudgeTrans" :save-obj="stuOption" @close="closeStuForm" @success="refreshStuList"> <studentRight-form v-if="isShowStuRight" :isJudgeTrans="isJudgeTrans" :BelongType="BelongType" :save-obj="stuOption" @close="closeStuForm" @success="refreshStuList">
</studentRight-form> </studentRight-form>
<studentAdd-form v-if="isShowAdd" :save-obj="stuOption" @close="closeStuForm" @success="refreshStuList"> <studentAdd-form v-if="isShowAdd" :save-obj="stuOption" @close="closeStuForm" @success="refreshStuList">
</studentAdd-form> </studentAdd-form>
...@@ -122,6 +122,10 @@ ...@@ -122,6 +122,10 @@
isJudgeTrans:{ isJudgeTrans:{
type: Number, type: Number,
default: null default: null
},
BelongType:{
type: Number,
default: null
} }
}, },
components: { components: {
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
<q-input @input="resetSearch" dense clearable filled v-model="msg.WechatNo" label="微信号" maxlength="20" /> <q-input @input="resetSearch" dense clearable filled v-model="msg.WechatNo" label="微信号" maxlength="20" />
</div> </div>
<div class="col-3"> <div class="col-3">
<q-select @input="resetSearch" filled v-model="msg.StuType" dense :options="customTypeList" option-label="Name" <q-select @input="resetSearch" filled v-model="msg.StuType" dense clearable :options="customTypeList" option-label="Name"
option-value="Id" emit-value map-options label="客户类型" /> option-value="Id" emit-value map-options label="客户类型" />
</div> </div>
<div class="col-3"> <div class="col-3">
...@@ -47,10 +47,14 @@ ...@@ -47,10 +47,14 @@
</template> </template>
</q-field> </q-field>
</div> </div>
<div class="col-3" v-if="msg.BelongType==4">
<q-select @input="resetSearch" dense clearable @filter="filterSubord" use-input filled option-value="Id" option-label="EmployeeName"
v-model="msg.CreateIds" :options="SubordList" emit-value map-options label="我下属的" />
</div>
</div> </div>
</div> </div>
<div class="page-content"> <div class="page-content">
<stulist :dataList="data" @success="refreshPage" ref="stuList" :isJudgeTrans="isJudgeTrans"> </stulist> <stulist :dataList="data" @success="refreshPage" ref="stuList" :BelongType="msg.BelongType" :isJudgeTrans="isJudgeTrans"> </stulist>
<div class="row" style="justify-content: flex-end;padding: 5px 20px"> <div class="row" style="justify-content: flex-end;padding: 5px 20px">
<q-pagination v-model="msg.pageIndex" :max="pageCount" @input="changePage" class="full-width justify-end" <q-pagination v-model="msg.pageIndex" :max="pageCount" @input="changePage" class="full-width justify-end"
color="primary" :input="true"> color="primary" :input="true">
...@@ -66,7 +70,8 @@ ...@@ -66,7 +70,8 @@
deleteStudent, deleteStudent,
createStudentAccount, createStudentAccount,
queryStuStageList, queryStuStageList,
GetStudentTypeList GetStudentTypeList,
GetPersonalDimension
} from "../../api/school/index"; } from "../../api/school/index";
import { import {
queryEmployee queryEmployee
...@@ -107,7 +112,8 @@ ...@@ -107,7 +112,8 @@
BelongType: 1, //归属类型 BelongType: 1, //归属类型
QQ:'', QQ:'',
WechatNo:'', WechatNo:'',
StuType:'' StuType:'',
CreateIds:''
}, },
dateArray: [], //日期数组 dateArray: [], //日期数组
pageCount: 0, pageCount: 0,
...@@ -129,14 +135,21 @@ ...@@ -129,14 +135,21 @@
Id: 3, Id: 3,
Name: "我协同的" Name: "我协同的"
}, },
{
Id: 4,
Name: "我下属的"
}
], ],
isJudgeTrans:1 //用于判断转交是否有条件 isJudgeTrans:1, //用于判断转交是否有条件
SubordList:[], //我的下属数据
AllSubordList:[]
}; };
}, },
created() { created() {
this.getSchool(); this.getSchool();
this.getStuStageList(); this.getStuStageList();
this.getCustomTypeList(); this.getCustomTypeList();
this.GetSubordList();
}, },
mounted() { mounted() {
this.currentUrl = this.$route.path; this.currentUrl = this.$route.path;
...@@ -144,6 +157,24 @@ ...@@ -144,6 +157,24 @@
this.getCustomerList(); this.getCustomerList();
}, },
methods: { methods: {
//获取我下属的下拉数据
GetSubordList(){
GetPersonalDimension().then(res => {
console.log(res,'数据');
if(res.Code==1){
this.SubordList = res.Data;
this.AllSubordList = res.Data;
}
});
},
//筛选转介人
filterSubord(val, update, abort) {
update(() => {
this.SubordList = this.AllSubordList.filter(
v => v.EmployeeName.indexOf(val) > -1
);
});
},
//获取客户阶段列表 //获取客户阶段列表
getStuStageList() { getStuStageList() {
queryStuStageList().then(res => { queryStuStageList().then(res => {
......
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