|
|
@@ -4,32 +4,38 @@
|
|
|
<el-form
|
|
|
class="demo-ruleForm"
|
|
|
:model="userform"
|
|
|
- ref="userform"
|
|
|
label-width="100px"
|
|
|
size="small"
|
|
|
style="margin-top: 15px"
|
|
|
>
|
|
|
<el-row type="flex" justify="space-between">
|
|
|
<el-col :span="5">
|
|
|
- <el-form-item label="业务员">
|
|
|
- <el-select v-model="userform.name" filterable placeholder="请选择" @change="pickUser">
|
|
|
- <el-option
|
|
|
- v-for="item in userOptions"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value" >
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
+ <el-form-item label="业务员" prop="name">
|
|
|
+ <el-input
|
|
|
+ placeholder="请输入业务员"
|
|
|
+ v-model="userform.name"
|
|
|
+ maxlength="17"
|
|
|
+ type="text"
|
|
|
+ show-word-limit
|
|
|
+ >
|
|
|
+ <el-button
|
|
|
+ slot="append"
|
|
|
+ type="primary"
|
|
|
+ icon="el-icon-search"
|
|
|
+ @click="toChooseName()"
|
|
|
+ style="color: #fff;background-color:#D42426;border-color:#D42426;"
|
|
|
+ ></el-button>
|
|
|
+ </el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="5">
|
|
|
<el-form-item label="工号">
|
|
|
- <el-input v-model="userform.id" type="text" disabled></el-input>
|
|
|
+ <el-input v-model="userform.userId" type="text" disabled></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="5">
|
|
|
<el-form-item label="工号类型">
|
|
|
- <el-select v-model="userform.usertype" disabled>
|
|
|
+ <el-select v-model="userform.noType" disabled>
|
|
|
<el-option label="业务员" value="A"></el-option>
|
|
|
<el-option label="代理人" value="B"></el-option>
|
|
|
</el-select>
|
|
|
@@ -37,53 +43,77 @@
|
|
|
</el-col>
|
|
|
<el-col :span="5">
|
|
|
<el-form-item label="归属" >
|
|
|
- <el-input v-model="deptName" disabled></el-input>
|
|
|
+ <el-input v-model="userform.deptName" disabled></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
</div>
|
|
|
<div class="quotation-page">
|
|
|
- <el-tabs v-model="activeName" tab-position="left" >
|
|
|
- <el-tab-pane label="报价" name="1">
|
|
|
- <div class="quotation-content">
|
|
|
- <Ktletter :isLetter="false"></Ktletter>
|
|
|
- </div>
|
|
|
- </el-tab-pane>
|
|
|
- <el-tab-pane label="全部订单" name="2">
|
|
|
- <div class="quotation-content">
|
|
|
- <KtOrder></KtOrder>
|
|
|
- </div>
|
|
|
- </el-tab-pane>
|
|
|
- <el-tab-pane label="报价中" name="3">
|
|
|
- <div class="quotation-content">
|
|
|
- <KtOrder orderStatusProp="0"></KtOrder>
|
|
|
- </div>
|
|
|
- </el-tab-pane>
|
|
|
- <el-tab-pane label="待核保" name="4">
|
|
|
+ <el-tabs v-model="activeName" tab-position="left" @tab-click="handleClick">
|
|
|
+ <el-tab-pane label="报价" name="999" >
|
|
|
<div class="quotation-content">
|
|
|
- <KtOrder orderStatusProp="1"></KtOrder>
|
|
|
+ <Ktletter ref="Ktletter" :isdisabled="isdisabled" :isLetter="false"></Ktletter>
|
|
|
</div>
|
|
|
</el-tab-pane>
|
|
|
- <el-tab-pane label="已核保待缴费" name="5">
|
|
|
+ <el-tab-pane label="全部订单" name="888" :disabled="isdisabled">
|
|
|
<div class="quotation-content">
|
|
|
- <KtOrder orderStatusProp="2"></KtOrder>
|
|
|
+ <KtOrder ref="KtOrder" @orderEdit="orderEdit"></KtOrder>
|
|
|
</div>
|
|
|
</el-tab-pane>
|
|
|
- <el-tab-pane label="已承保" name="6">
|
|
|
+ <el-tab-pane v-for="(val) in orderOption" :key='val.value' :label="val.lable" :name="val.value" :disabled="isdisabled">
|
|
|
<div class="quotation-content">
|
|
|
- <KtOrder orderStatusProp="3"></KtOrder>
|
|
|
- </div>
|
|
|
- </el-tab-pane>
|
|
|
- <el-tab-pane label="核保退回" name="7">
|
|
|
- <div class="quotation-content">
|
|
|
- <KtOrder orderStatusProp="4"></KtOrder>
|
|
|
+ <KtOrder :ref="'refName' + val.value" @orderEdit="orderEdit"></KtOrder>
|
|
|
</div>
|
|
|
</el-tab-pane>
|
|
|
</el-tabs>
|
|
|
-
|
|
|
</div>
|
|
|
-
|
|
|
+ <el-dialog title="业务员信息" :visible.sync="dialogVisible" >
|
|
|
+ <el-form :inline="true" class="demo-form-inline" size="small" label-width="80px" :model="salespersonForm" >
|
|
|
+ <el-row :gutter="20">
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="业务员">
|
|
|
+ <el-input v-model="salespersonForm.name" placeholder="业务员" ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="工号">
|
|
|
+ <el-input v-model="salespersonForm.userId" placeholder="工号" ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="12">
|
|
|
+ <el-form-item label="手机号">
|
|
|
+ <el-input v-model="salespersonForm.mobile" placeholder="手机号" ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="9">
|
|
|
+ <el-form-item label="身份证号">
|
|
|
+ <el-input v-model="salespersonForm.identity" placeholder="身份证号" ></el-input>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="2">
|
|
|
+ <el-form-item>
|
|
|
+ <el-button type="primary" size="small" @click="toChooseName()">查询</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+ </el-form>
|
|
|
+ <el-table
|
|
|
+ size="small"
|
|
|
+ :data="salespersonData"
|
|
|
+ height="690"
|
|
|
+ border
|
|
|
+ style="width: 100%"
|
|
|
+ :header-cell-style="{ background: '#F7F7F9 ', fontWeight: '700', color: '#333333' }"
|
|
|
+ highlight-current-row
|
|
|
+ @row-dblclick="reslistCurrentChange"
|
|
|
+ >
|
|
|
+ <el-table-column prop="userId" label="工号" align="center" ></el-table-column>
|
|
|
+ <el-table-column prop="name" label=" 业务员名称" align="center" ></el-table-column>
|
|
|
+ <el-table-column prop="mobile" label="手机号" align="center"></el-table-column>
|
|
|
+ <el-table-column prop="identity" label="身份证号" align="center"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
|
@@ -94,52 +124,96 @@ export default {
|
|
|
components: { Ktletter,KtOrder },
|
|
|
data(){
|
|
|
return{
|
|
|
+ // 业务员信息
|
|
|
userform: {},
|
|
|
userOptions:[],//可选人员列表
|
|
|
deptName:'',
|
|
|
- activeName:'1'
|
|
|
+ activeName:'999',
|
|
|
+ dialogVisible:false,
|
|
|
+ salespersonData:[],
|
|
|
+ salespersonForm:{},
|
|
|
+ userIdProp:'',
|
|
|
+ isdisabled:true,
|
|
|
+ orderOption:[
|
|
|
+ {
|
|
|
+ lable:'报价中',
|
|
|
+ value:'0',
|
|
|
+ },{
|
|
|
+ lable:'待核保',
|
|
|
+ value:'1',
|
|
|
+ },{
|
|
|
+ lable:'已核保待缴费',
|
|
|
+ value:'2',
|
|
|
+ },{
|
|
|
+ lable:'已承保',
|
|
|
+ value:'3',
|
|
|
+ },{
|
|
|
+ lable:'核保退回',
|
|
|
+ value:'4',
|
|
|
+ },
|
|
|
+ ],
|
|
|
+ message:''
|
|
|
}
|
|
|
},
|
|
|
created(){
|
|
|
- //代客录单获取可选业务员,原来保险公司获取在选择业务员的时候再获取
|
|
|
- this.$api.user.getAllUserInfo('').then(res => {
|
|
|
- if (res.code == 200) {
|
|
|
- this.userOptions = res.data.map(item => {
|
|
|
- return { value: `${item.id}`, label: `${item.id} - ${item.name}` };
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- this.$api.user.getLoginUser().then(res => {
|
|
|
- if (res.code == 200) {
|
|
|
- this.userform = res.data;
|
|
|
- // this.$api.dept.getDeptById(res.data.deptId).then(res => {
|
|
|
- // this.deptName = res.data.name;
|
|
|
- // });
|
|
|
- }
|
|
|
- });
|
|
|
},
|
|
|
methods:{
|
|
|
- //代客录单专用
|
|
|
- pickUser(val){
|
|
|
- // this.userId = val;
|
|
|
- // this.$api.user.getAllUserInfo(val).then(res => {
|
|
|
- // if (res.code == 200) {
|
|
|
- // this.userform=res.data[0];
|
|
|
- // this.$api.dept.getDeptById(res.data[0].deptId).then(res => {
|
|
|
- // this.deptName = res.data.name;
|
|
|
- // });
|
|
|
- // this.commpanyList(); //获取保险公司
|
|
|
- // }
|
|
|
- // });
|
|
|
+ //业务列表双击选中事件
|
|
|
+ reslistCurrentChange(row, column, event) {
|
|
|
+ this.userform = row; //名称
|
|
|
+ this.activeName='999'
|
|
|
+ this.userIdProp=row.userId
|
|
|
+ this.dialogVisible = false;
|
|
|
+ this.isdisabled=false
|
|
|
+ },
|
|
|
+ toChooseName(){
|
|
|
+ this.salespersonForm.name= this.userform.name
|
|
|
+ const loading = this.$loading({
|
|
|
+ lock: true,
|
|
|
+ text: "Loading",
|
|
|
+ spinner: "el-icon-loading",
|
|
|
+ background: "rgba(0, 0, 0, 0.7)"
|
|
|
+ });
|
|
|
+ this.$api.task.getAllUsersByHospitality({... this.salespersonForm}).then(res => {
|
|
|
+ if (res.code == "200") {
|
|
|
+ this.salespersonData = res.data;
|
|
|
+ loading.close();
|
|
|
+ this.dialogVisible = true;
|
|
|
+ } else {
|
|
|
+ loading.close();
|
|
|
+ this.$message.error(res.msg);
|
|
|
+ }
|
|
|
+ });
|
|
|
},
|
|
|
+ handleClick(tab){
|
|
|
+ if(tab.index==0){
|
|
|
+ this.$refs.Ktletter.add()
|
|
|
+ }
|
|
|
+ if(tab.index==1){
|
|
|
+ this.$refs.KtOrder.userIdPor=this.userform.userId
|
|
|
+ this.$refs.KtOrder.statusPor=tab.name
|
|
|
+ this.$refs.KtOrder.findPage()
|
|
|
+ }
|
|
|
+ if(tab.index>1){
|
|
|
+ let ref = eval('this.$refs.refName' + Number(tab.name))[0]
|
|
|
+ ref.userIdPor=this.userform.userId
|
|
|
+ ref.statusPor=tab.name
|
|
|
+ ref.findPage()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ orderEdit(data){
|
|
|
+ this.activeName=data.activeName
|
|
|
+ this.$refs.Ktletter.editingWay(data)
|
|
|
+ this.$refs.Ktletter.obtainProtocol(data)
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
</script>
|
|
|
<style lang="scss" scoped>
|
|
|
.quotation-page{
|
|
|
- border-radius: 6px;
|
|
|
- border: 1px solid #ebeef5;
|
|
|
- background-color: #fff;
|
|
|
+ // border-radius: 6px;
|
|
|
+ // border: 1px solid #ebeef5;
|
|
|
+ // background-color: #fff;
|
|
|
}
|
|
|
.quotation-content{
|
|
|
overflow-y: auto;
|