Commit 8bf1cda7 authored by 罗超's avatar 罗超
parents bdf51e2a daf67bdb
......@@ -457,6 +457,16 @@ export function CheckExistsStu(data) {
});
}
//获取客户下拉
export function GetCustomerList(data) {
return request({
url: '/B2BCustomer/GetCustomerList',
method: 'post',
data
});
}
......@@ -56,7 +56,7 @@
/>
</template>
</q-table>
<withdraw v-if="tabs==2" :Type="2"></withdraw>
<withdraw v-if="tabs==2" :Type="2" :Id="Id"></withdraw>
</div>
</template>
<script>
......@@ -164,6 +164,7 @@ export default {
},
//获取数据
getList() {
this.msg.CustomerId=this.Id
this.loading = true;
GetCustomerBalanceDetailPage(this.msg)
.then(res => {
......
......@@ -56,7 +56,7 @@
/>
</template>
</q-table>
<withdraw v-if="tabs==2" :Type="1"></withdraw>
<withdraw v-if="tabs==2" :Type="1" :Id="Id"></withdraw>
</div>
</template>
<script>
......@@ -84,7 +84,7 @@ export default {
pageIndex: 1,
pageSize: 10,
rowsPerPage: 10,
RebateType: 2,
RebateType: 1,
Description: ""
},
pageCount: 0,
......@@ -165,6 +165,7 @@ export default {
},
//获取数据
getList() {
this.msg.CustomerId=this.Id
this.loading = true;
GetCustomerBalanceDetailPage(this.msg)
.then(res => {
......
......@@ -137,6 +137,10 @@ export default {
Type:{
type:Number,
default:1
},
Id:{
type:Number,
default:0
}
},
data() {
......@@ -149,6 +153,7 @@ export default {
rowsPerPage: 12,
Type: '0', // 类型 1返佣 2幸福存折
AuditStatus: '0', //状态 1申请中 2待打款 3已打款 4拒绝
CustomerId:0
},
loading: false,
......@@ -271,6 +276,7 @@ export default {
//获取分页数据
getList() {
this.msg.Type=this.Type
this.msg.CustomerId=this.Id
getCustomerRemitPageList(this.msg).then(res => {
this.dataList = res.Data.PageData;
this.loading = false;
......
......@@ -84,7 +84,7 @@
<div class="info_item">
<div class="item_label">客户来源</div>
<div class="item_value">
<q-select filled v-model="customObj.CreateType" dense :options="customFromList" option-label="Name" option-value="Id"
<q-select filled v-model="customObj.CreateType" @input="resetStuSource()" dense :options="customFromList" option-label="Name" option-value="Id"
emit-value map-options label="客户来源" />
</div>
</div>
......@@ -94,8 +94,8 @@
<span v-if="customObj.CreateType==4">转介人</span>
</div>
<div class="item_value">
<q-select filled v-model="customObj.StuSourceId" dense @filter="filterEmployee" use-input
:options="myEmployeeList" option-label="EmployeeName" option-value="Id" emit-value map-options />
<q-select filled v-model="customObj.StuSourceId" dense :options="customList" option-label="CustomerName"
option-value="CustomerId" emit-value map-options />
</div>
</div>
......@@ -200,7 +200,8 @@
getGuestLearningGoalsEnumList,
GetStuChannelList,
CreateTypeList,
CheckExistsStu
CheckExistsStu,
GetCustomerList
} from '../../../api/sale/sale'
import {
queryEmployee
......@@ -259,6 +260,7 @@
StuChannelList: [], //收客渠道
AssistDropList: [], //协助人员
customFromList: [], //客户来源
customList: [],
checkMsg:{
StuId:0,
StuTel:''
......@@ -273,6 +275,7 @@
this.getEmployeeList();
this.GetStuChannelList();
this.getCustomFrom();
this.GetCustomerList();
if (this.saveObj && this.saveObj.StuId > 0) {
this.customMsg.StuId = this.saveObj.StuId;
this.checkMsg.StuId = this.saveObj.StuId;
......@@ -417,6 +420,15 @@
this.customState = res.Data;
})
},
//获取客户下拉数据
GetCustomerList(){
GetCustomerList().then(res => {
if(res.Code==1){
this.customList = res.Data;
}
console.log(res,'数据');
})
},
queryStuInfo() {
getStudentInfo({
StuId: this.customMsg.StuId
......@@ -461,6 +473,10 @@
CheckExistsStu(this.checkMsg).then(res => {
})
},
//切换客户来源重置
resetStuSource(){
this.customObj.StuSourceId = 0;
}
}
}
......
<style lang="scss">
.stuList .q-table__bottom {
.stuList .q-table__bottom {
min-height: 0;
}
}
</style>
<template>
<div class="stuList">
<q-table
:pagination="pageMsg"
:loading="loading"
no-data-label="暂无相关数据"
flat
selection="multiple"
:selected.sync="selection"
class="sticky-right-column-table sticky-tow-column-table"
separator="none"
:data="dataList"
:columns="columns"
row-key="StuId"
hide-bottom
>
<q-table :pagination="pageMsg" :loading="loading" no-data-label="暂无相关数据" flat selection="multiple"
:selected.sync="selection" class="sticky-right-column-table sticky-tow-column-table" separator="none"
:data="dataList" :columns="columns" row-key="StuId" hide-bottom>
<template v-slot:top="props">
<div class="col-2 q-table__title">我的客户</div>
<q-space />
<div class="page-option">
<q-btn
color="accent"
class="q-mr-md"
size="sm"
icon="swap_horiz"
label="转订单"
:disable="selection.length===0"
@click="transferOrder"
/>
<q-btn
color="accent"
class="q-mr-md"
size="sm"
icon="add"
label="新增客户"
@click="EditStudent(null)"
/>
<q-btn color="accent" class="q-mr-md" size="sm" icon="swap_horiz" label="转订单" :disable="selection.length===0"
@click="transferOrder" />
<q-btn color="accent" class="q-mr-md" size="sm" icon="add" label="新增客户" @click="EditStudent(null)" />
</div>
</template>
<template v-slot:body-cell-StuIcon="props">
......@@ -47,14 +22,8 @@
<q-avatar size="md" v-if="props.value">
<img :src="props.value" />
</q-avatar>
<q-avatar
size="md"
color="teal-10"
text-color="white"
v-if="!props.value"
>
{{ props.row.StuName.substring(0, 1) }}</q-avatar
>
<q-avatar size="md" color="teal-10" text-color="white" v-if="!props.value">
{{ props.row.StuName.substring(0, 1) }}</q-avatar>
</q-td>
</template>
<template v-slot:body-cell-StuName="props">
......@@ -66,62 +35,32 @@
</template>
<template v-slot:body-cell-StuSex="props">
<q-td :props="props">
<q-badge
:color="props.value == 1 ? 'negative' : 'primary'"
:label="props.value == 1 ? '女' : '男'"
/>
<q-badge :color="props.value == 1 ? 'negative' : 'primary'" :label="props.value == 1 ? '女' : '男'" />
</q-td>
</template>
<template v-slot:body-cell-Status="props">
<q-td :props="props">
<q-toggle
size="md"
color="primary"
:false-value="1"
:true-value="0"
v-model="props.row.Status"
title="注意:关闭后,学员将无法正常使用."
@input="deleteStudentInfo(props.row)"
/>
<q-toggle size="md" color="primary" :false-value="1" :true-value="0" v-model="props.row.Status"
title="注意:关闭后,学员将无法正常使用." @input="deleteStudentInfo(props.row)" />
</q-td>
</template>
</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>
<studentRight-form
v-if="isShowStuRight"
:save-obj="stuOption"
@close="closeStuForm"
@success="refreshStuList"
>
<studentRight-form v-if="isShowStuRight" :save-obj="stuOption" @close="closeStuForm" @success="refreshStuList">
</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>
<transfer-order
v-if="isShowTransfer"
:select="selection"
@close="closeStuForm"
@success="refreshStuList"
>
<transfer-order v-if="isShowTransfer" :select="selection" @close="closeStuForm" @success="refreshStuList">
</transfer-order>
</div>
</template>
<script>
import studentForm from "./student-form";
import studentRightForm from "./studentRight-form";
import studentAddForm from "./studentAdd-form";
import transferOrder from "./transfer-order"
export default {
import studentForm from "./student-form";
import studentRightForm from "./studentRight-form";
import studentAddForm from "./studentAdd-form";
import transferOrder from "./transfer-order"
export default {
props: {
dataList: {
type: Array,
......@@ -136,8 +75,7 @@ export default {
},
data() {
return {
columns: [
{
columns: [{
name: "StuIcon",
label: "",
field: "StuIcon",
......@@ -157,33 +95,33 @@ export default {
align: "left"
},
{
name: "StuBirth",
label: "出生日期",
field: "StuBirth",
name: "StuTel",
label: "电话",
field: "StuTel",
align: "left"
},
{
name: "StuTel",
label: "手机号码",
field: "StuTel",
name: "StuStageName",
label: "客户阶段",
field: "StuStageName",
align: "left"
},
{
name: "CreateTypeStr",
label: "客户来源",
field: "CreateTypeStr",
name: "StuProfession",
label: "职业",
field: "StuProfession",
align: "left"
},
{
name: "StuStageName",
label: "客户阶段",
field: "StuStageName",
name: "StuEducationName",
label: "学历",
field: "StuEducationName",
align: "left"
},
{
name: "CreateTimeStr",
label: "创建时间",
field: "CreateTimeStr",
name: "StuPurposeName",
label: "目的",
field: "StuPurposeName",
align: "left"
},
{
......@@ -191,6 +129,42 @@ export default {
label: "负责人",
align: "left",
field: "CreateByName"
},
{
name: "AssistList",
label: "协同人",
align: "left",
field: "AssistList"
},
{
name: "CreateTypeStr",
label: "获取渠道",
field: "CreateTypeStr",
align: "left"
},
{
name: "StuSourceIdName",
label: "关联人",
field: "StuSourceIdName",
align: "left"
},
{
name: "VisitCount",
label: "到访次数",
field: "VisitCount",
align: "left"
},
{
name: "TrialLessonCount",
label: "试听次数",
field: "TrialLessonCount",
align: "left"
},
{
name: "CreateTimeStr",
label: "创建时间",
field: "CreateTimeStr",
align: "left"
}
],
pageMsg: {
......@@ -203,7 +177,7 @@ export default {
stuOption: null,
isShowAdd: false,
selection: [],
isShowTransfer:false,
isShowTransfer: false,
};
},
......@@ -287,8 +261,7 @@ export default {
this.$q
.dialog({
title: str + "学员",
message:
"你正在进行" + str + "学员行为,一旦执行无法找回,是否确认执行?",
message: "你正在进行" + str + "学员行为,一旦执行无法找回,是否确认执行?",
persistent: true,
cancel: {
label: "取消",
......@@ -335,7 +308,7 @@ export default {
this.isShowStuForm = false;
this.isShowStuRight = false;
this.isShowAdd = false;
this.isShowTransfer=false;
this.isShowTransfer = false;
},
//点击学生姓名弹出
getStuRight(obj) {
......@@ -346,12 +319,12 @@ export default {
}
this.isShowStuRight = true;
},
transferOrder(){
const firstId=this.selection[0].CustomerId
const flag= this.selection.every(e=>{
return e.CustomerId==firstId
transferOrder() {
const firstId = this.selection[0].CustomerId
const flag = this.selection.every(e => {
return e.CustomerId == firstId
})
if(!flag){
if (!flag) {
this.$q.notify({
type: 'negative',
position: "top",
......@@ -359,8 +332,8 @@ export default {
})
return
}
this.isShowTransfer=true
this.isShowTransfer = true
}
}
};
};
</script>
\ No newline at end of file
......@@ -118,7 +118,7 @@
ref="orderForm"
:save-obj="saveObj"
:stuData="stuData"
:isChaBan="isChaBan"
:modityOrderType="1"
@success="$emit('close')"
></orderForm>
</q-step>
......@@ -226,7 +226,6 @@ export default {
courseData: [], //课程列表
coursePageCount: 0, //课程页数
saveObj: {}, //所选课程
isChaBan: 0, //是否插班
//关联校区列表
schoolList: [],
ClassList: [], //关联课程下拉数据
......@@ -250,11 +249,6 @@ export default {
const ids = this.select.map(e => e.StuId).toString();
getOrderGuestRenewState({ StuIds: ids }).then(res => {
this.stuData = res.Data;
if (res.Data.RenewNum == 0) {
this.isChaBan = 0;
} else {
this.isChaBan = 1;
}
});
},
//获取课程分页列表
......
<style>
.editOrderDrawerTop {
width: 100%;
height: 50px;
display: flex;
justify-content: space-between;
background-color: #f0f5fb;
padding: 5px 10px;
align-items: center;
.field {
height: 60px;
}
</style>
<!--订单操作-->
<template>
<div>
<!-- <div class="editOrderDrawerTop">
<div style="display:flex;align-items:center;margin-left:10px;">
<span class="drawer_Span">{{
OrderMsg.OrderId > 0 ? "修改订单" : "立即下单"
}}</span>
</div>
</div> -->
<div class="row q-mb-md">
<div class="col-10">
<div v-for="(item, index) in stuData.StuList">
......@@ -29,11 +16,17 @@
</div>
</div>
<div class="col-2">
<q-toggle v-model="isChaBan" :true-value="1" :false-value='0' label="插班报入" />
<q-toggle
v-model="OrderMsg.isChaBan"
:true-value="1"
:false-value="0"
label="插班报入"
/>
</div>
</div>
<div style="row items-center">
<div class="col row wrap q-mr-lg q-col-gutter-md">
<div class="col-6 field">
<q-input
filled
stack-label
......@@ -42,12 +35,12 @@
@keyup.native="checkInteger(OrderMsg, 'GuestNum')"
v-model="OrderMsg.GuestNum"
@input="calcPrice()"
class="col-6"
label="人数"
:rules="[val => !!val || '请填写人数']"
disable
/>
<template v-if="isChaBan == 1">
</div>
<template v-if="OrderMsg.isChaBan == 1">
<q-select
filled
option-value="CourseId"
......@@ -268,7 +261,7 @@
</q-item>
</template>
</q-select>
<q-select
<!-- <q-select
:disable="modityOrderType == 2 || OrderMsg.JoinType == 3"
v-model="OrderMsg.CustomerId"
:options="myCustomerList"
......@@ -290,7 +283,7 @@
</q-item-section>
</q-item>
</template>
</q-select>
</q-select> -->
<q-input
:disable="modityOrderType == 2"
v-if="OrderMsg.OrderSource == 3"
......@@ -407,7 +400,6 @@ export default {
GuestNum: 0, //人数
B2CRatio: 0,
B2CReNewRatio: 0,
CustomerId: 0, //市场专员
Unit_Price: 0,
PreferPrice: 0, //应收
OrderSource: 0,
......@@ -435,9 +427,10 @@ export default {
CourseConsultantId: 0, //课程顾问
CustomerId: 0, //同行
OrderIdentify: 2, //标识参数, 1产品下单 2客户转订单
StuIds: ""
StuIds: "",
// NormalCommission:'',//正常返佣金额
// RenewCommission:"",// 预计返佣金额
isChaBan: 0
},
Unit_PriceRemark: "", //单价规则
IsShowUpPrice: false, //是否显示高于定价
......@@ -610,8 +603,8 @@ export default {
if (this.OrderMsg.OrderType == 2) {
this.OrderMsg.OldPreferPrice = Number(guestNum * unit_price).toFixed(2);
}
this.OrderMsg.GuestNum = this.stuData.StuList.length;
console.log("tag551", this.OrderMsg.GuestNum);
this.OrderMsg.DiscountMoney = 0;
this.stuData.StuList.map(e => {
if (e.IsRenewGuest == 0) {
......@@ -624,7 +617,7 @@ export default {
});
},
initData() {
console.log("tag", "init", this.saveObj);
console.log("init", this.saveObj);
if (this.saveObj && this.saveObj.OrderId > 0) {
getClassOrderInfo({
OrderId: this.saveObj.OrderId
......@@ -730,8 +723,6 @@ export default {
}
this.IsShowEditOrder = true;
this.calcPrice();
// console.log("this.saveObj", this.saveObj);
}
},
//筛选员工
......@@ -797,7 +788,7 @@ export default {
//修改订单
saveOrderInfo() {
//插班验证课程和生效时间
if (this.isChaBan == 1) {
if (this.OrderMsg.isChaBan == 1) {
this.$refs.CourseId.validate();
this.$refs.EffectTime.validate();
if (this.$refs.CourseId.hasError) {
......@@ -852,6 +843,7 @@ export default {
}
}
this.OrderMsg.StuIds = this.stuData.StuList.map(e => e.StuId).toString();
this.OrderMsg.CustomerId = this.stuData.CustomerId;
setClassOrder(this.OrderMsg).then(res => {
if (res.Code == 1) {
this.$q.notify({
......@@ -910,10 +902,3 @@ export default {
}
};
</script>
<style>
.savebtn {
position: absolute;
bottom: 0;
right: 0;
}
</style>
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