Browse Source

Merge remote-tracking branch 'origin/master'

master
hanlinghao 3 years ago
parent
commit
62e24750ad
  1. 21
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java
  2. 25
      anrui-buscenter/anrui-buscenter-ui/src/api/jichuxinxi/crmvehicle.js
  3. 182
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/cheliangxuqiu/cheliangxuqiu.vue
  4. 606
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/cheliangxuqiu/cheliangxuqiuAdd.vue
  5. 373
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/cheliangxuqiu/cheliangxuqiuinfo.vue
  6. 213
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/cheliangxuqiu/modelsToChoose.vue
  7. 193
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehudangan/kehudangan.vue
  8. 318
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehudangan/kehudanganAdd.vue
  9. 283
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehudangan/kehudanganinfo.vue
  10. 159
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehugenjinjilu/genjinjiliAdd.vue
  11. 179
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehugenjinjilu/genjinjiluguanli.vue
  12. 222
      anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehuziliao/kehudanganziliao.vue
  13. 176
      anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/jiansuocheliang.vue
  14. 2
      anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/qiankuanticheguanli.vue
  15. 8
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/relation/modellibrary.vue
  16. 10
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/relation/vehiclelibraryconfiguration.vue
  17. 1
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/relation/yixiangchexingxuanze.vue
  18. 108
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanAdd.vue
  19. 2
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshouzhengce/xiaoshouzhengce.vue
  20. 73
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xunidingdan/xunidingdanguanli.vue
  21. 193
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xunidingdan/xunidingjinAdd.vue
  22. 58
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xunidingdan/xunidingjininfo.vue

21
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseoutsourcingapplication/BaseOutsourcingApplicationService.java

@ -161,6 +161,27 @@ public class BaseOutsourcingApplicationService extends MybatisBaseService<BaseOu
entity.setSid(sid1);
entity.setApplicationDate(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
entity.setApplicationCode(generateBillNo(dto.getUserSid()).get("billNo_Num"));
String staffSid = dto.getStaffSid();
ResultBean<List<SysStaffOrgVo>> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid);
List<SysStaffOrgVo> data = sysStaffOrgListByStaffSid.getData();
String orgSidPath = "";
for (SysStaffOrgVo datum : data) {
orgSidPath = datum.getOrgSidPath();
String[] split = orgSidPath.split("/");
for (String s : split) {
ResultBean<SysOrganizationVo> sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s);
SysOrganizationVo data1 = sysOrganizationVoResultBean.getData();
Integer isDept = data1.getIsDept();
String psid = data1.getPsid();
if (isDept != null){
if (isDept == 0 && !psid.equals(0)) {
orgSidPath = s;
break;
}
}
}
}
entity.setUseOrgSid(orgSidPath);
save(entity);
for (BaseOutsourcingApplicationVehicleDto baseOutsourcingApplicationVehicleDto : baseOutsourcingApplicationVehicleDtos) {
BaseOutsourcingApplicationVehicle baseOutsourcingApplicationVehicle = new BaseOutsourcingApplicationVehicle();

25
anrui-buscenter/anrui-buscenter-ui/src/api/jichuxinxi/crmvehicle.js

@ -1,13 +1,23 @@
import request from '@/utils/request'
import qs from 'qs'
// Pc端客户基础信息条件分页查询数据的列表
export function pagerList(data) {
return request({
url: '/crm/v1/crmvehicledemand/listPage',data,
url: '/crm/v1/crmvehicledemand/listPage',
data,
method: 'post',
headers: {
'Content-Type': 'application/json'
}
})
}
// 客户管理--意向车型--车型选择
export function listPageByVehmodel(data) {
return request({
url: '/base/v1/basevehiclemodel/listPageByVehmodel',
data,
method: 'post',
// data: data,
headers: {
'Content-Type': 'application/json'
}
@ -17,7 +27,8 @@ export function pagerList(data) {
// 添加 -- 修改
export function saveOrUpdatePcCrmVehicleInfo(data) {
return request({
url: '/crm/v1/crmvehicledemand/save',data,
url: '/crm/v1/crmvehicledemand/save',
data,
method: 'post',
data1: data,
headers: {
@ -42,11 +53,10 @@ export function getPcVehicleInfoBySid(data,user) {
return request({
url: '/crm/v1/crmvehicledemand/fetchSid/' + data,
method: 'get',
data:data,
data: data
})
}
// 删除
export function delBySids(data) {
return request({
@ -55,4 +65,3 @@ export function delBySids(data) {
data: data
})
}

182
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/cheliangxuqiu/cheliangxuqiu.vue

@ -1,12 +1,14 @@
<template>
<div class="app-container">
<div v-show="visible">
<div v-show="viewState ==1">
<div class="tab-header webtop">
<div>{{ this.customerName }}客户-意向车型</div>
<div>
<el-button type="primary" size="small" icon="el-icon-plus" @click="handleCreate()">新增</el-button>
<el-button v-show="btnVisible" type="primary" size="small" icon="el-icon-plus" @click="handleCreate()">新增
</el-button>
<!-- <el-button type="primary" size="small" @click="handleUpdate()">编辑</el-button> -->
<el-button type="danger" size="small" icon="el-icon-delete" @click="handleDelete()">删除</el-button>
<el-button v-show="btnVisible" type="danger" size="small" icon="el-icon-delete" @click="handleDelete()">删除
</el-button>
<el-button type="info" size="small" icon="el-icon-close" @click="handleReturn()">关闭</el-button>
</div>
</div>
@ -22,8 +24,7 @@
</el-form-item>
<el-form-item label="车型">
<el-select v-model="listQuery.params.modelName" class="addinputw" placeholder="请选择" @change="getName" style="width:300px">
<el-option v-for="(item, index) in figuration" :key="index" :label="item.modelName"
:value="item.sid"/>
<el-option v-for="(item, index) in figuration" :key="index" :label="item.modelName" :value="item.sid"/>
</el-select>
</el-form-item>
<el-form-item label="购买方式">
@ -33,11 +34,9 @@
</el-select>
</el-form-item>
<el-form-item class="formItem" label="创建时间">
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.createTimeStart" clearable
style="width: 160px;" type="date" placeholder="开始日期"/>
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.createTimeStart" clearable style="width: 160px;" type="date" placeholder="开始日期"/>
<div class="line"></div>
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.createTimeEnd" clearable
style="width: 160px;" type="date" placeholder="结束日期"/>
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.createTimeEnd" clearable style="width: 160px;" type="date" placeholder="结束日期"/>
</el-form-item>
<div class="searchbtns">
<el-button type="primary" icon="el-icon-search" @click="handleFilter">查询</el-button>
@ -48,14 +47,12 @@
</div>
<div class="listtop">
<div class="tit">意向车型列表</div>
<pageye v-show="total > 0" :total="total" :page.sync="listQuery.current" :limit.sync="listQuery.size"
class="pagination" @pagination="getList"/>
<pageye v-show="total > 0" :total="total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%"
@selection-change="handleSelectionChange">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center"/>
<el-table-column width="80px" label="号" type="index" :index="indexMethod" align="center"/>
<el-table-column width="80px" label="号" type="index" :index="indexMethod" align="center"/>
<el-table-column label="品牌" align="center">
<template slot-scope="scope">
<span>{{ scope.row.brandName }}</span>
@ -71,7 +68,7 @@
<span>{{ scope.row.purchaseMethodValue }}</span>
</template>
</el-table-column>
<el-table-column label="销售指导价" align="center">
<el-table-column label="销售指导价(万元)" align="center">
<template slot-scope="scope">
<span>{{ scope.row.saleReferencePrice }}</span>
</template>
@ -106,18 +103,16 @@
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<pagination v-show="total > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size"
class="pagination" @pagination="getList"/>
<pagination v-show="total > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
<cheliangxuqiuAdd @handleReturn="handleReturn_copy" ref="divadd"/>
<cheliangxuqiuinfo ref="divinfo" @handleReturn="visible=true"/>
<cheliangxuqiuAdd v-show="viewState ==2" ref="divadd" @handleReturn="handleReturn_copy"/>
<cheliangxuqiuinfo v-show="viewState ==3" ref="divinfo" @handleReturn="handleReturn_copy"/>
</div>
</template>
<script>
import {mapGetters} from 'vuex'
import { pagerList, delBySids } from '@/api/jichuxinxi/crmvehicle'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
@ -125,11 +120,11 @@
import { typeValues } from '@/api/dictcommons/shujuzidian'
import { loginDetails } from '@/api/dictcommons/basemanufacturer'
import { getStorage } from '@/utils/auth'
import cheliangxuqiuAdd from "./cheliangxuqiuAdd";
import cheliangxuqiuinfo from "./cheliangxuqiuinfo";
import cheliangxuqiuAdd from './cheliangxuqiuAdd'
import cheliangxuqiuinfo from './cheliangxuqiuinfo'
export default {
name: "cheliangxuqiu",
name: 'cheliangxuqiu',
components: {
cheliangxuqiuAdd,
cheliangxuqiuinfo,
@ -138,12 +133,13 @@
},
data() {
return {
viewState: 1,
btnVisible: false,
customerSid: '',
customerName: '',
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
btndisabled: false,
visible: false,
tableKey: 0,
sids: [],
list: [],
@ -153,7 +149,7 @@
figuration: [],
listQuery: {
current: 1,
size: 20,
size: 10,
total: 0,
params: {
brandName: '',
@ -173,19 +169,9 @@
brand_list: [],
orgSid_list: [],
selectDate: undefined,
temp: {}, //
// ------------------------------------
temp: {} //
}
},
// computed: {
// ...mapGetters([
// 'id',
// 'roles',
// 'rolesIds',
// 'departmentId',
// 'departmentCode',
// ]),
// },
created() {
//
this.init()
@ -227,10 +213,10 @@
changePinPai(value) {
let bb = []
this.brand_list.forEach((e) => {
if (e.sid == value) {
if (e.sid === value) {
bb = {
name: e.brandName,
sid: e.sid,
sid: e.sid
}
}
})
@ -238,21 +224,20 @@
this.getCheXingName(bb.sid)
},
//
cheLiang(sid, upLevel,name, showed) {
cheLiang(sid, upLevel, name, status) {
if (status !== '02') {
this.btnVisible = true
}
this.customerName = name
this.stateId = sid
this.upLevel = upLevel //
this.visible = true;
this.getList();
if (showed && typeof showed === 'function') {
showed()
}
this.getList()
},
// ------------------
//
getPinPai(sid) {
var manufacturerSid = {
manufacturerSid: sid,
manufacturerSid: sid
}
getNamesDownBySid(manufacturerSid).then((response) => {
if (response.code === '200') {
@ -263,7 +248,7 @@
//
getCheXingName(brandSid) {
var sid = {
sid: brandSid,
sid: brandSid
}
getSelectDown(sid).then((response) => {
if (response.code === '200') {
@ -275,10 +260,10 @@
let bb = null
this.figuration.forEach((e) => {
console.log('999', e)
if (e.sid == value) {
if (e.sid === value) {
bb = {
name: e.modelName,
vaule: e.sid,
vaule: e.sid
}
}
})
@ -294,64 +279,59 @@
})
},
handleReturn_copy() {
this.visible=true
this.viewState = 1
this.getList()
},
//
handleSelectionChange(row) {
const aa = [];
const bb = [];
const cc = [];
const aa = []
const bb = []
const cc = []
console.log('112233', row)
row.forEach((element) => {
aa.push(element.sid)
});
})
row.forEach((element) => {
bb.push(element.name, element.mobile)
});
})
this.sids = aa
row.forEach((element) => {
cc.push(element.name)
});
})
this.names = cc
console.log('勾选记录', this.sids)
},
//
handleCreate() {
this.visible = false
this.$refs.divadd.openCreate(this.stateId, () => {
this.visible = false
})
this.viewState = 2
this.$refs.divadd.openCreate(this.stateId)
},
//
handleUpdate() {
if (this.sids.length === 1) {
this.visible = false
this.$refs.divadd.openUpdate(this.sids[0], this.stateId, () => {
this.visible = false
})
} else if (this.sids.length > 1) {
this.$notify({
title: '提示',
message: '不能选中多个修改!',
type: 'info',
duration: 2000,
duration: 2000
})
} else {
this.$notify({
title: '提示',
message: '没有选择信息!',
type: 'error',
duration: 2000,
duration: 2000
})
return
}
},
//
handleCheck(row) {
this.$refs.divinfo.openinfo(row.sid, this.stateId, () => {
this.visible = false
})
this.viewState = 3
this.$refs['divinfo'].openinfo(row.sid, this.stateId)
},
// ------------------
//
@ -362,11 +342,10 @@
},
//
handleReturn() {
this.btnVisible = false
if (this.upLevel == '0') {
this.visible = false
this.$emit('handleReturn')
} else if (this.upLevel == '1') {
this.visible = false
this.$emit('handleReturn')
}
},
@ -412,16 +391,16 @@
if (this.sids.length == 0) {
this.$message({
showClose: true,
type: "error",
message: "请选择至少一条记录进行删除操作",
});
return;
type: 'error',
message: '请选择至少一条记录进行删除操作'
})
return
}
const tip = "请确认是否删除所选 " + this.sids.length + " 条记录?";
this.$confirm(tip, "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
const tip = '请确认是否删除所选 ' + this.sids.length + ' 条记录?'
this.$confirm(tip, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
if (this.sids.length > 0) {
delBySids(this.sids).then((response) => {
@ -431,58 +410,21 @@
title: '提示',
message: '删除成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.getList()
} else {
this.$notify({
title: '删除失败',
message: response.msg,
type: 'error',
type: 'error'
})
}
})
}
})
},
//
handleDaoChu() {
// this.$confirm(', ?', '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// })
basefinbankExportExcel(this.sids).then((res) => {
const blob = new Blob([res], {
type: 'application/vnd.ms-excel',
})
const objectUrl = URL.createObjectURL(blob)
window.location.href = objectUrl
this.$notify({
title: '提示',
message: '导出成功',
type: 'success',
duration: 2000,
})
})
},
//
AddUpdateReturn() {
this.visible = true
},
//
dataCreated() {
window.location.reload()
this.visible = true
this.handleFilter()
},
//
dataUpdated() {
window.location.reload()
this.visible = true
this.getList()
},
},
}
}
}
</script>
@ -497,16 +439,20 @@
border: 1px solid #dfe4ed;
height: 40px;
}
.tit {
margin-bottom: -10px;
}
.pagination {
margin-bottom: -10px;
}
.line {
display: inline-block;
margin: 0px 15px;
}
.searchbtn {
border: #2cab69 1px solid;
color: #2cab69;

606
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/cheliangxuqiu/cheliangxuqiuAdd.vue

@ -1,6 +1,6 @@
<template>
<div class="app-container">
<div v-show="visible">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div v-if="stateId === '0'">新增车辆需求</div>
<div v-else>修改车辆需求</div>
@ -34,9 +34,39 @@
<el-col :span="4" class="el-form-item-right"> 车型</el-col>
<el-col :span="20">
<el-form-item prop="modelName">
<el-select v-model="temp.modelName" placeholder="请选择" @change="getName" style="width:19%">
<el-option v-for="(item, index) in figuration" :key="index" :label="item.modelName" :value="item.sid"/>
</el-select>
<!-- <el-select v-model="temp.modelName" placeholder="请选择" @change="getName" style="width:19%">-->
<!-- <el-option v-for="(item, index) in figuration" :key="index" :label="item.modelName" :value="item.sid"/>-->
<!-- </el-select>-->
<div class="vehicle">
<span>{{ temp.modelName }}</span>
<div>
<el-button type="primary" size="small" @click="handSelect">车型选择</el-button>
</div>
</div>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right"> 车型常用配置</el-col>
<el-col :span="20">
<el-form-item>
{{ temp.sketChconfiguration }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right"> 其他配置说明</el-col>
<el-col :span="20">
<el-form-item>
{{ temp.otherConfig }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right"> 选装内容</el-col>
<el-col :span="20">
<el-form-item>
<el-input v-model="temp.changeOptions" placeholder="" style="width:81%" clearable/>
</el-form-item>
</el-col>
</el-row>
@ -76,7 +106,6 @@
</el-form-item>
</el-col>
</el-row>
<div v-if="this.ifdictKey">
<div class="title" style="40px">金融需求</div>
<el-form ref="dataForm" :model="crmFindemandVo_copy" label-position="right" label-width="190px" :rules="rules">
@ -154,214 +183,208 @@
</el-form>
</div>
</div>
<models-to-choose v-show="viewState ==2" ref="divSelect" @handleReturn="resetState" @handleReturnSelect="handleReturnSelect"/>
</div>
</template>
<script>
import { mapGetters } from "vuex";
import { typeValues } from "@/api/dictcommons/shujuzidian";
import { typeValues } from '@/api/dictcommons/shujuzidian'
import {
getNamesDown,
getNamesDownBySid,
getNamesDownlist,
getPinpai,
} from "@/api/dictcommons/basemanufacturer";
getPinpai
} from '@/api/dictcommons/basemanufacturer'
import {
loginDetails,
getSelectDown,
} from "@/api/dictcommons/basemanufacturer";
import { getStorage } from "@/utils/auth";
// import jsCookie from 'js-cookie'
getSelectDown
} from '@/api/dictcommons/basemanufacturer'
import { getStorage } from '@/utils/auth'
import {
saveOrUpdatePcCrmVehicleInfo,
getPcVehicleInfoBySid,
UpdatePcCrmVehicleInfo,
} from "@/api/jichuxinxi/crmvehicle";
UpdatePcCrmVehicleInfo
} from '@/api/jichuxinxi/crmvehicle'
import modelsToChoose from './modelsToChoose.vue'
export default {
name: "CheliangxuqiuAdd",
name: 'CheliangxuqiuAdd',
components: {
modelsToChoose
},
data() {
return {
// ---------
viewState: 1,
FormLoading: false,
crmFindemandVo_copy: {
customerSid: this.kehusid,
demandSid: "",
loanSubjectType: "",
managementName: "",
isnoPackaging: "",
downpayment: "",
marginLevel: "",
loanStageNumber: "",
acceptMonthAmount: "",
recording: "",
remarks: "",
demandSid: '',
loanSubjectType: '',
managementName: '',
isnoPackaging: '',
downpayment: '',
marginLevel: '',
loanStageNumber: '',
acceptMonthAmount: '',
recording: '',
remarks: ''
},
temp: {
sid: "",
createTime: "",
customerSid: "",
purchaseMethod: "",
brandSid: "",
brandName: "",
modelSid: "",
modelName: "",
sketChconfiguration: "",
otherConfig: "",
vehicleModelOffer: "",
number: "",
estimatedPickupDate: "",
states: "",
comonConfigSid: "",
purchaseMethodValue: "",
remarks: "",
saleReferencePrice: "",
sid: '',
createTime: '',
customerSid: '',
purchaseMethod: '',
brandSid: '',
brandName: '',
modelSid: '',
modelName: '',
sketChconfiguration: '',
otherConfig: '',
changeOptions: '',
vehicleModelOffer: '',
number: '',
estimatedPickupDate: '',
states: '',
comonConfigSid: '',
purchaseMethodValue: '',
remarks: '',
saleReferencePrice: '',
crmFindemandDto: {
customerSid: "",
demandSid: "",
loanSubjectType: "",
managementName: "",
isnoPackaging: "",
downpayment: "",
marginLevel: "",
loanStageNumber: "",
acceptMonthAmount: "",
recording: "",
remarks: "",
},
customerSid: '',
demandSid: '',
loanSubjectType: '',
managementName: '',
isnoPackaging: '',
downpayment: '',
marginLevel: '',
loanStageNumber: '',
acceptMonthAmount: '',
recording: '',
remarks: ''
}
}, //
// tempKelsit: {},
templook: {}, //
textMap: {
update: "修改",
create: "新增",
update: '修改',
create: '新增'
},
enter: "",
visible: false,
enter: '',
stateId: 0,
kehusid: "",
dialogStatus: "", //
brandSid: "",
kehusid: '',
dialogStatus: '', //
brandSid: '',
ifdictKey: false,
purchaseType: "purchaseType",
purchaseType: 'purchaseType',
brand_list: [], //
aseType: [],
aseTypeBox: [],
vendor: [],
branddate: [],
figuration: [],
loanType: "loanType",
loanType: 'loanType',
principal: [],
loanSubjectType: [],
packagingProject: "packagingProject",
packagingProject: 'packagingProject',
typeOptions: [],
countId: 0,
supplier: [],
grouping: [],
CustomerSid: "",
CustomerSid: '',
YongHuid: [],
userSidL: "",
userSidL: '',
// packaging_project: [],
packaging_projectt: [],
packaging_projects: [],
rules: {},
};
rules: {}
}
},
// computed: {
// ...mapGetters([
// 'id',
// 'roles',
// 'rolesIds',
// 'departmentId',
// 'departmentCode',
// ]),
// },
//
created() {
this.init();
this.init()
},
methods: {
// ----------------------------------------------------------
init() {
this.getShuJUZiDian();
this.getChangShang();
this.getZifang();
this.getShuJUZiDian()
this.getChangShang()
this.getZifang()
// this.postHuoquyonghu()
this.chePinPai();
this.chePinPai()
},
openUpdate(sid, user, checkin, showed) {
// this.kehusid = sid
this.stateId = sid;
this.userSidL = user;
this.enter = checkin;
if (this.stateId !== "0") {
this.stateId = sid
this.userSidL = user
this.enter = checkin
if (this.stateId !== '0') {
getPcVehicleInfoBySid(this.stateId, this.userSidL).then((response) => {
if (response.code === "200") {
if (response.code === '200') {
// this.$refs['dataForm'].clearValidate()
this.temp = response.data;
this.crmFindemandVo_copy = this.temp.crmFindemandVo;
this.aseTypeBox = [this.temp.purchaseMethod];
if (this.temp.purchaseMethodValue == "贷款") {
this.ifdictKey = true;
this.temp = response.data
this.crmFindemandVo_copy = this.temp.crmFindemandVo
this.aseTypeBox = [this.temp.purchaseMethod]
if (this.temp.purchaseMethodValue == '贷款') {
this.ifdictKey = true
} else {
this.ifdictKey = false;
this.ifdictKey = false
}
if (this.temp.crmFindemandVo.loanSubjectType !== "") {
if (this.temp.crmFindemandVo.loanSubjectType !== '') {
this.principal.forEach((e) => {
if (e.dictValue == this.temp.crmFindemandVo.loanSubjectType) {
this.loanSubjectType = [e.dictKey];
this.loanSubjectType = [e.dictKey]
}
});
})
}
this.getCheXingName(response.data.brandSid);
this.visible = true;
if (showed && typeof showed === "function") {
showed();
this.getCheXingName(response.data.brandSid)
if (showed && typeof showed === 'function') {
showed()
}
}
});
})
}
},
openCreate(sid, checkin, showed) {
this.kehusid = sid;
this.enter = checkin;
console.log("852", this.enter);
openCreate(sid, checkin) {
this.kehusid = sid
this.enter = checkin
// this.$refs['dataForm'].clearValidate()
this.stateId = "0";
this.resetTemp();
this.visible = true;
if (showed && typeof showed === "function") {
showed();
}
this.stateId = '0'
this.resetTemp()
},
// ------------------------------------------------------------------
// --------------------------------------------------------------
// ------------------------------------------------------------------
//
handleReturn() {
this.visible = false;
this.ifdictKey = false;
this.ifdictKey = false
// this.$refs['dataForm'].resetFields() //
this.temp = {};
this.figuration = [];
this.crmFindemandVo_copy = {};
this.$emit("handleReturn");
this.temp = {}
this.figuration = []
this.crmFindemandVo_copy = {}
this.$emit('handleReturn')
},
//
postHuoquyonghu() {
var token = getStorage();
var token = getStorage()
loginDetails(token).then((response) => {
if (response.code === "200") {
this.YongHuid = response.data;
if (response.code === '200') {
this.YongHuid = response.data
}
})
},
handSelect() {
if (this.temp.brandSid !== '' && this.temp.brandSid !== undefined) {
this.viewState = 2
this.$refs['divSelect'].showInfo(this.temp.brandSid)
} else {
this.$message({
message: '请选择品牌!',
type: 'success'
})
}
});
},
//
resetTemp() {
this.temp = {};
this.loanSubjectType = [];
this.aseTypeBox = [];
this.packaging_projectt = [];
this.temp = {}
this.loanSubjectType = []
this.aseTypeBox = []
this.packaging_projectt = []
},
//
handleCreate() {
@ -369,173 +392,167 @@ export default {
// })
// if (valid) {
// }
this.FormLoading = true;
this.dialogStatus = "create";
if (this.stateId === "0") {
this.temp.customerSid = this.kehusid;
this.crmFindemandVo_copy.customerSid = this.kehusid;
this.temp.crmFindemandDto = this.crmFindemandVo_copy;
this.FormLoading = true
this.dialogStatus = 'create'
if (this.stateId === '0') {
this.temp.customerSid = this.kehusid
this.crmFindemandVo_copy.customerSid = this.kehusid
this.temp.crmFindemandDto = this.crmFindemandVo_copy
saveOrUpdatePcCrmVehicleInfo(this.temp).then((response) => {
this.FormLoading = false;
if (response.code === "200") {
if (this.enter === "dj") {
console.log("22222222");
this.FormLoading = false
if (response.code === '200') {
if (this.enter === 'dj') {
this.$notify({
title: "提示",
message: "添加成功",
type: "success",
duration: 2000,
});
this.$emit("doback");
title: '提示',
message: '添加成功',
type: 'success',
duration: 2000
})
this.$emit('doback')
} else {
console.log("33333333");
this.$notify({
title: "提示",
message: "添加成功",
type: "success",
duration: 2000,
});
title: '提示',
message: '添加成功',
type: 'success',
duration: 2000
})
// this.$emit('created')
// this.$refs['dataForm'].resetFields() //
this.handleReturn();
this.handleReturn()
// this.temp = {}
}
} else if (response.code === "500") {
} else if (response.code === '500') {
// this.$notify({
// title: "",
// message: response.msg,
// type: "success",
// duration: 2000,
// });
this.handleReturn();
}
else {
this.handleReturn()
} else {
this.$notify({
title: "提示",
message: "添加失败",
type: "error",
duration: 2000,
});
title: '提示',
message: '添加失败',
type: 'error',
duration: 2000
})
}
});
})
} else {
this.temp.customerSid = this.userSidL;
this.temp.crmFindemandDto = this.crmFindemandVo_copy;
this.temp.customerSid = this.userSidL
this.temp.crmFindemandDto = this.crmFindemandVo_copy
UpdatePcCrmVehicleInfo(this.temp).then((response) => {
this.dialogStatus = "update";
this.FormLoading = false;
if (response.code === "200") {
console.log("852", this.enter);
if (this.enter === "dj") {
this.dialogStatus = 'update'
this.FormLoading = false
if (response.code === '200') {
if (this.enter === 'dj') {
this.$notify({
title: "提示",
message: "修改成功",
type: "success",
duration: 2000,
});
this.$emit("modify");
title: '提示',
message: '修改成功',
type: 'success',
duration: 2000
})
this.$emit('modify')
} else {
this.$notify({
title: "提示",
message: "修改成功",
type: "success",
duration: 2000,
});
title: '提示',
message: '修改成功',
type: 'success',
duration: 2000
})
// this.$emit('created')
this.handleReturn();
this.handleReturn()
}
} else {
this.$notify({
title: "失败",
message: "修改失败",
type: "error",
});
title: '失败',
message: '修改失败',
type: 'error'
})
}
});
})
}
},
// ---------------------------------------------------------------------------------
//
getChangShang() {
getNamesDown({ name: this.temp.vendorSid }).then((response) => {
if (response.code === "200") {
this.vendor = response.data;
if (response.code === '200') {
this.vendor = response.data
}
});
})
},
//
querySearchAsync(queryString, cb) {
if (queryString != null) {
// this.searchData({ name: queryString })
getNamesDown({ name: queryString }).then((response) => {
if (response.code === "200") {
response.data;
cb(response.data);
if (response.code === '200') {
response.data
cb(response.data)
}
});
})
} else {
cb(this.vendor);
cb(this.vendor)
}
},
//
handleSelect(e) {
this.temp.vendorSid = e.sid;
this.temp.vendorName = e.manufacturerName;
this.getPinPai(this.temp.vendorSid);
this.temp.vendorSid = e.sid
this.temp.vendorName = e.manufacturerName
this.getPinPai(this.temp.vendorSid)
},
//
inputclear() {
this.temp.vendorName = "";
this.temp.vendorName = ''
},
//
chePinPai() {
getPinpai().then((response) => {
if (response.code === "200") {
this.brand_list = response.data;
if (response.code === '200') {
this.brand_list = response.data
}
});
},
changePinPai(value) {
let bb = [];
let bb = []
this.brand_list.forEach((e) => {
if (e.sid == value) {
if (e.sid === value) {
bb = {
name: e.brandName,
sid: e.sid,
};
sid: e.sid
}
});
this.temp.brandName = bb.name;
this.temp.brandSid = bb.sid;
this.getCheXingName(this.temp.brandSid);
console.log("8888888888888", bb.name);
}
})
this.temp.brandName = bb.name
this.temp.brandSid = bb.sid
this.getCheXingName(this.temp.brandSid)
},
//
getPinPai(sid) {
var manufacturerSid = {
manufacturerSid: sid,
};
manufacturerSid: sid
}
getNamesDownBySid(manufacturerSid).then((response) => {
if (response.code === "200") {
this.branddate = response.data;
console.log("品牌数组", this.branddate);
if (response.code === '200') {
this.branddate = response.data
}
});
})
},
//
BrandProcessing(value) {
let bb = null;
let bb = null
this.branddate.forEach((e) => {
if (e.sid == value) {
if (e.sid === value) {
bb = {
sid: e.sid,
name: e.brandName,
};
name: e.brandName
}
});
this.temp.brandSid = bb.sid;
this.temp.brandName = bb.name;
}
})
this.temp.brandSid = bb.sid
this.temp.brandName = bb.names
},
//
// getCheXing() {
@ -548,43 +565,41 @@ export default {
getCheXingName(brandSid) {
var sid = {
sid: brandSid,
};
sid: brandSid
}
getSelectDown(sid).then((response) => {
if (response.code === "200") {
this.figuration = response.data;
if (response.code === '200') {
this.figuration = response.data
}
});
})
},
//
getZifang() {
getNamesDownlist().then(
(response) => {
if (response.code === "200") {
this.supplier = response.data;
if (response.code === '200') {
this.supplier = response.data
}
}
);
)
},
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
//
getShuJUZiDian() {
typeValues({ type: this.purchaseType }).then((res) => {
if (res.code === "200") {
this.aseType = res.data;
if (res.code === '200') {
this.aseType = res.data
}
});
})
typeValues({ type: this.loanType }).then((res) => {
if (res.code === "200") {
this.principal = res.data;
if (res.code === '200') {
this.principal = res.data
}
});
})
typeValues({ type: this.packagingProject }).then((res) => {
if (res.code === "200") {
this.typeOptions = res.data;
if (res.code === '200') {
this.typeOptions = res.data
}
});
})
// typeValues({type: this.vehicleType}).then((res) => {
// if (res.code === '200') {
// this.figuration = res.data
@ -592,89 +607,95 @@ export default {
// })
},
getName(value) {
let bb = null;
let bb = null
this.figuration.forEach((e) => {
console.log("999", e);
if (e.sid == value) {
if (e.sid === value) {
bb = {
name: e.modelName,
vaule: e.sid,
};
vaule: e.sid
}
});
this.temp.modelName = bb.name;
this.temp.modelSid = bb.vaule;
}
})
this.temp.modelName = bb.name
this.temp.modelSid = bb.vaule
},
//
findselect(list, value) {
var item = null;
var item = null
for (var i = 0; i < list.length; i++) {
if (list[i].dictKey == value) {
item = list[i];
break;
if (list[i].dictKey === value) {
item = list[i]
break
}
}
return item;
return item
},
//
getGouche() {
this.aseTypeBox = [this.aseTypeBox[this.aseTypeBox.length - 1]];
console.log("点击事件:", JSON.stringify(this.aseTypeBox));
var item = this.findselect(this.aseType, this.aseTypeBox[0]);
console.log("点击事件找到选项:", JSON.stringify(item));
this.aseTypeBox = [this.aseTypeBox[this.aseTypeBox.length - 1]]
console.log('点击事件:', JSON.stringify(this.aseTypeBox))
var item = this.findselect(this.aseType, this.aseTypeBox[0])
console.log('点击事件找到选项:', JSON.stringify(item))
if (this.aseTypeBox == 2) {
this.ifdictKey = true;
} else if (this.aseTypeBox != 2) {
this.ifdictKey = false;
this.ifdictKey = true
} else if (this.aseTypeBox !== 2) {
this.ifdictKey = false
}
if (item != null) {
this.temp.purchaseMethodValue = item.dictValue;
this.temp.purchaseMethod = item.dictKey;
this.temp.purchaseMethodValue = item.dictValue
this.temp.purchaseMethod = item.dictKey
}
console.log(item, this.aseTypeBox);
console.log(item, this.aseTypeBox)
},
// /
findselectestry(list, value) {
var item = null;
var item = null
for (var i = 0; i < list.length; i++) {
if (list[i].dictKey == value) {
item = list[i];
break;
item = list[i]
break
}
}
return item;
return item
},
// /
getDaiKuang() {
this.loanSubjectType = [
this.loanSubjectType[this.loanSubjectType.length - 1],
];
console.log("点击事件:", JSON.stringify(this.loanSubjectType));
var item = this.findselectestry(this.principal, this.loanSubjectType[0]);
console.log("点击事件找到选项:", JSON.stringify(item));
this.loanSubjectType[this.loanSubjectType.length - 1]
]
console.log('点击事件:', JSON.stringify(this.loanSubjectType))
var item = this.findselectestry(this.principal, this.loanSubjectType[0])
console.log('点击事件找到选项:', JSON.stringify(item))
if (item != null) {
this.crmFindemandVo_copy.loanSubjectType = item.dictValue;
this.crmFindemandVo_copy.loanSubjectType = item.dictValue
}
},
// finArry(list, value) {},
//
getDaoBao() {
this.packaging_projects = [];
const bb = null;
this.packaging_projects = []
this.typeOptions.forEach((e) => {
this.packaging_projectt.forEach((a) => {
if (e.dictKey == a) {
this.packaging_projects.push(e.dictValue);
this.packaging_projects.push(e.dictValue)
}
});
});
console.log(this.packaging_projects.join(","), 11111111111);
console.log(this.packaging_projectt.join(","), 2222222222);
this.temp.packaging_project = this.packaging_projects.join(",");
this.temp.packaging_project_key = this.packaging_projectt.join(",");
})
})
this.temp.packaging_project = this.packaging_projects.join(',')
this.temp.packaging_project_key = this.packaging_projectt.join(',')
},
handleReturnSelect(value) {
this.viewState = 1
var arrayList = []
arrayList = value
this.temp.modelName = arrayList[0].modelName
this.temp.sketChconfiguration = arrayList[0].configName
this.temp.otherConfig = arrayList[0].otherConfig
},
};
resetState() {
this.viewState = 1
}
}
}
</script>
<style scoped>
.el-form-item-right {
@ -684,7 +705,14 @@ export default {
line-height: 3 !important;
text-align: right;
}
/deep/ .el-form-item__content {
margin-left: 0 !important;
}
.vehicle {
display: flex;
justify-content: space-between;
align-items: center;
}
</style>

373
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/cheliangxuqiu/cheliangxuqiuinfo.vue

@ -1,6 +1,6 @@
<template>
<div class="app-container">
<div v-show="visible">
<div>
<div class="tab-header webtop">
<div>车型需求详情</div>
<div>
@ -32,6 +32,30 @@
{{ temp.modelName }}
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
车型常用配置
</el-col>
<el-col :span="20" class="el-form-item-left">
{{ temp.sketChconfiguration }}
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
其他配置说明
</el-col>
<el-col :span="20" class="el-form-item-left">
{{ temp.otherConfig }}
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
选装内容
</el-col>
<el-col :span="20" class="el-form-item-left">
{{ temp.changeOptions }}
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="el-form-item-right">
销售参考价
@ -70,7 +94,8 @@
</el-row>
<div v-if="this.ifdictKey">
<div class="title">金融需求</div>
<el-form ref="dataForm" :model="crmFindemandVo_copy" label-position="right" label-width="190px" :rules="rules">
<el-form ref="dataForm" :model="crmFindemandVo_copy" label-position="right" label-width="190px"
:rules="rules">
<el-row>
<el-col :span="4" class="el-form-item-right">
贷款主体类型
@ -138,20 +163,8 @@
</template>
<script>
import { mapGetters } from 'vuex'
import { typeValues } from '@/api/dictcommons/shujuzidian'
import {
getNamesDown,
getNamesDownBySid,
getNamesDownlist,
} from '@/api/dictcommons/basemanufacturer'
import { loginDetails,getSelectDown } from '@/api/dictcommons/basemanufacturer'
import { getStorage } from '@/utils/auth'
// import jsCookie from 'js-cookie'
import {
saveOrUpdatePcCrmVehicleInfo,
getPcVehicleInfoBySid,
} from '@/api/jichuxinxi/crmvehicle'
import { getPcVehicleInfoBySid } from '@/api/jichuxinxi/crmvehicle'
export default {
name: 'Cheliangxuqiuinfo',
data() {
@ -165,9 +178,8 @@ export default {
templook: {}, //
textMap: {
update: '修改',
create: '新增',
create: '新增'
},
visible: false,
stateId: 0,
kehusid: '',
dialogStatus: '', //
@ -194,31 +206,11 @@ export default {
// packaging_project: [],
packaging_projectt: [],
packaging_projects: [],
rules: {},
rules: {}
}
},
// computed: {
// ...mapGetters([
// 'id',
// 'roles',
// 'rolesIds',
// 'departmentId',
// 'departmentCode',
// ]),
// },
//
created() {
this.init()
},
methods: {
// ----------------------------------------------------------
init() {
this.getShuJUZiDian()
this.getChangShang()
this.getZifang()
this.postHuoquyonghu()
},
openinfo(sid, user, showed) {
openinfo(sid, user) {
this.stateId = sid
this.userSidL = user
if (this.stateId !== '0') {
@ -232,315 +224,15 @@ export default {
} else {
this.ifdictKey = false
}
this.visible = true
if (showed && typeof showed === 'function') {
showed()
}
}
})
}
},
// ------------------------------------------------------------------
// --------------------------------------------------------------
// ------------------------------------------------------------------
//
handleReturn() {
this.visible = false
this.$emit('handleReturn')
},
//
postHuoquyonghu() {
var token = getStorage()
loginDetails(token).then((response) => {
if (response.code === '200') {
this.YongHuid = response.data
}
})
},
//
resetTemp() {
this.temp = {}
},
//
handleCreate() {
this.$refs['dataForm'].validate((valid) => {
if (valid) {
this.FormLoading = true
this.dialogStatus = 'create'
if (this.countId === 0) {
this.temp.customerSid = this.kehusid
this.temp.userSid = this.YongHuid.sid
this.temp.staffSid = this.YongHuid.staffSid
saveOrUpdatePcCrmVehicleInfo(this.temp).then((response) => {
this.FormLoading = false
if (response.code === '200') {
this.$notify({
title: '提示',
message: '添加成功',
type: 'success',
duration: 2000,
})
this.$emit('created')
} else {
this.$notify({
title: '提示',
message: '添加失败',
type: 'error',
duration: 2000,
})
}
})
} else {
this.temp.customerSid = this.kehusid
this.temp.userSid = this.YongHuid.sid
this.temp.staffSid = this.YongHuid.staffSid
this.temp.name = this.YongHuid.name
Update(this.temp).then((response) => {
this.dialogStatus = 'update'
console.log('response', response)
this.FormLoading = false
if (response.code === '200') {
this.$notify({
title: '提示',
message: '修改成功',
type: 'success',
duration: 2000,
})
this.$router.push({
path: '/KeHuguanli/kehudangan',
})
} else {
this.$notify({
title: '失败',
message: '修改失败',
type: 'error',
})
}
})
}
}
})
},
// ---------------------------------------------------------------------------------
//
getChangShang() {
getNamesDown({ name: this.temp.vendorSid }).then((response) => {
if (response.code === '200') {
this.vendor = response.data
}
})
},
//
querySearchAsync(queryString, cb) {
if (
queryString != null &&
queryString != undefined &&
queryString !== ''
) {
// this.searchData({ name: queryString })
getNamesDown({ name: queryString }).then((response) => {
if (response.code === '200') {
response.data
cb(response.data)
}
})
} else {
cb(this.vendor)
}
},
//
handleSelect(e) {
this.temp.vendorSid = e.sid
this.temp.vendorName = e.manufacturerName
this.getPinPai(this.temp.vendorSid)
},
//
inputclear() {
this.temp.vendorName = ''
},
//
getPinPai(sid) {
var manufacturerSid = {
manufacturerSid: sid,
}
getNamesDownBySid(manufacturerSid).then((response) => {
// console.log(':', response)
if (response.code === '200') {
this.branddate = response.data
}
})
},
//
BrandProcessing(value) {
let bb = null
this.branddate.forEach((e) => {
if (e.sid == value) {
bb = {
sid: e.sid,
name: e.brandName,
}
}
})
this.temp.brandSid = bb.sid
this.temp.brandName = bb.name
this.getCheXingName(this.temp.brandSid)
},
//
getCheXingName(brandSid) {
var sid = {
sid: brandSid,
}
getSelectDown(sid).then((response) => {
if (response.code === '200') {
this.figuration = response.data
}
})
},
//
getZifang() {
getNamesDownlist({ managgeName: this.temp.capitalSid }).then(
(response) => {
if (response.code === '200') {
this.supplier = response.data
}
}
)
},
//
querySearchAsync2(queryString, cb) {
if (
queryString != null &&
queryString != undefined &&
queryString !== ''
) {
getNamesDownlist({ name: queryString }).then((response) => {
if (response.code === '200') {
response.data
cb(response.data)
}
})
} else {
cb(this.supplier)
}
},
//
handleSelect2(e) {
this.temp.capitalSid = e.sid
this.temp.capitalName = e.manageName
},
//
inputclear2() {
this.temp.capitalSid = ''
this.temp.capitalName = ''
},
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
getShuJUZiDian() {
typeValues({ type: this.purchaseType }).then((res) => {
if (res.code === '200') {
this.aseType = res.data
// for (var i = 0; i < res.data.length; i++) {
// console.log('res.data' + JSON.stringify(res.data[i]))
// this.aseType.push(res.data[i].dictValue)
// }
}
})
typeValues({ type: this.loanType }).then((res) => {
if (res.code === '200') {
this.principal = res.data
}
})
typeValues({ type: this.packagingProject }).then((res) => {
if (res.code === '200') {
this.typeOptions = res.data
}
})
typeValues({ type: this.vehicleType }).then((res) => {
if (res.code === '200') {
this.figuration = res.data
}
})
},
getName(value) {
let bb = null
this.figuration.forEach((e) => {
if (e.dictKey == value) {
bb = {
type: 'vehicleType',
name: e.dictValue,
vaule: e.dictKey,
}
}
})
this.temp.vehicleType = bb.name
this.temp.vehicleTypeKey = bb.vaule
},
//
findselect(list, value) {
var item = null
for (var i = 0; i < list.length; i++) {
if (list[i].dictKey == value) {
item = list[i]
break
}
}
return item
},
//
getGouche() {
this.aseTypeBox = [this.aseTypeBox[this.aseTypeBox.length - 1]]
console.log('点击事件:', JSON.stringify(this.aseTypeBox))
var item = this.findselect(this.aseType, this.aseTypeBox[0])
console.log('点击事件找到选项:', JSON.stringify(item))
if (this.aseTypeBox == 2) {
this.ifdictKey = true
} else if (this.aseTypeBox != 2) {
this.ifdictKey = false
}
this.temp.purchaseType = item.dictValue
this.temp.purchaseTypeKey = item.dictKey
},
// /
findselectestry(list, value) {
var item = null
for (var i = 0; i < list.length; i++) {
if (list[i].dictKey == value) {
item = list[i]
break
}
}
return item
},
// /
getDaiKuang() {
this.loan_principal = [
this.loan_principal[this.loan_principal.length - 1],
]
console.log('点击事件:', JSON.stringify(this.loan_principal))
var item = this.findselectestry(this.principal, this.loan_principal[0])
console.log('点击事件找到选项:', JSON.stringify(item))
this.temp.loan_principal_type = item.dictValue
this.temp.loan_principal_type_key = item.dictKey
},
// finArry(list, value) {},
//
getDaoBao() {
this.packaging_projects = []
const bb = null
this.typeOptions.forEach((e) => {
this.packaging_projectt.forEach((a) => {
if (e.dictKey == a) {
this.packaging_projects.push(e.dictValue)
}
})
})
console.log(this.packaging_projects.join(','), 11111111111)
console.log(this.packaging_projectt.join(','), 2222222222)
this.temp.packaging_project = this.packaging_projects.join(',')
this.temp.packaging_project_key = this.packaging_projectt.join(',')
},
},
}
</script>
<style scoped>
@ -548,6 +240,7 @@ export default {
line-height: 3 !important;
text-align: right;
}
.el-form-item-left {
line-height: 3 !important;
text-align: left;

213
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/cheliangxuqiu/modelsToChoose.vue

@ -0,0 +1,213 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>车型选择</div>
<div>
<el-button type="primary" size="small" @click="handleSelect()">确认</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="webcon">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-row>
<el-form-item label="车型:" class="searchlist">
<el-input v-model="listQuery.params.modelName" placeholder="" clearable style="width: 150px"/>
</el-form-item>
<el-form-item label="车型配置:" class="searchlist">
<el-input v-model="listQuery.params.configName" placeholder="" clearable style="width: 150px"/>
</el-form-item>
</el-row>
<div class="searchbtns">
<el-button type="primary" @click="handleFilter">查询</el-button>
<el-button type="primary" @click="handReset">重置</el-button>
</div>
</el-form>
</div>
</div>
<div>
<div class="listtop">
<div class="tit">车型列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="50"/>
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column label="品牌" align="center">
<template slot-scope="scope">
<span>{{ scope.row.brandName }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center">
<template slot-scope="scope">
<span>{{ scope.row.modelName }}</span>
</template>
</el-table-column>
<el-table-column label="常用配置" align="center">
<template slot-scope="scope">
<span>{{ scope.row.configName }}</span>
</template>
</el-table-column>
<el-table-column label="预计订金日期" align="center">
<template slot-scope="scope">
<span>{{ scope.row.sealTypeValue }}</span>
</template>
</el-table-column>
</el-table>
</div>
<div class="pages">
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
</div>
</div>
</template>
<script>
import { listPageByVehmodel } from '@/api/jichuxinxi/crmvehicle'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
export default {
name: 'chexingxuanze',
components: {
Pagination,
pageye
},
data() {
return {
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
viewState: 1,
tableKey: 0,
list: [],
sids: [],
listLoading: false,
listQuery: {
current: 1,
size: 10,
params: {
modelName: '',
configName: '',
brandSid: '',
},
total: 0
}
}
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
handleSelectionChange(row) {
const aa = []
row.forEach((element) => {
aa.push({
modelName: element.modelName,
configName: element.configName,
otherConfig: element.otherConfig
})
})
this.sids = aa
console.log('勾选记录', this.sids)
},
showInfo(brandSid) {
console.log(brandSid, 99999)
if (brandSid !== '') {
this.listQuery.params.brandSid = brandSid
this.getList()
}
},
//
getList() {
this.listLoading = true
listPageByVehmodel(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.listQuery.total = response.data.total
this.list = response.data.records
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
handReset() {
this.listQuery = {
current: 1,
size: 10,
params: {
modelName: '',
configName: '',
brandSid: ''
},
total: 0
}
this.getList()
},
handleSelect() {
if (this.sids.length === 1) {
this.$emit('handleReturnSelect', this.sids)
} else if (this.sids.length > 1) {
this.$notify({
title: '提示',
message: '不能选中多个!',
type: 'error',
duration: 2000
})
} else {
this.$notify({
title: '提示',
message: '没有选择信息!',
type: 'error',
duration: 2000
})
return
}
},
handleReturn() {
this.$emit('handleReturn')
}
}
}
</script>
<style scoped>
.listtop {
display: flex;
justify-content: space-between;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
.tit {
margin-bottom: -10px;
}
.pagination {
margin-bottom: -10px;
}
.line {
display: inline-block;
margin: 0px 15px;
}
</style>

193
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehudangan/kehudangan.vue

@ -1,6 +1,6 @@
<template>
<div class="app-container">
<div v-show="visible">
<div v-show="viewState ==1">
<div class="tab-header webtop">
<div>客户管理</div>
<div>
@ -8,7 +8,7 @@
<el-button type="primary" size="small" icon="el-icon-edit" @click="handleUpdate()">编辑</el-button>
<el-button type="success" size="small" icon="el-icon-user" @click="handleGenjin()">客户跟进</el-button>
<el-button type="success" size="small" icon="el-icon-user" @click="handleZiliao()">客户档案</el-button>
<el-button type="danger" size="small" @click="handleDelete()">删除</el-button>
<!-- <el-button type="danger" size="small" @click="handleDelete()">删除</el-button>-->
<el-button type="success" size="small">导入</el-button>
<el-button type="success" size="small" @click="handleDaoChu()">导出</el-button>
<el-button type="info" size="small" icon="el-icon-close">关闭</el-button>
@ -22,8 +22,7 @@
<el-form :model="customerTypeList">
<el-form-item label="联络方式" :label-width="formLabelWidth" class="diaForm">
<el-select v-model="customerTypeList.visitWay" placeholder="请选择联络方式" @change="getVisitWay">
<el-option v-for="(item) in visitWay_list" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item) in visitWay_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
<el-form-item label="客户类型" :label-width="formLabelWidth" class="diaForm">
@ -33,7 +32,7 @@
</el-form>
<span slot="footer" class="dialog-footer">
<el-button class="el-button-sure" type="primary" @click="handleOpen()"> </el-button>
<el-button @click="dialogVisible = false"> </el-button>
<el-button @click="dialogVisible = false"> </el-button>
</span>
</el-dialog>
</div>
@ -47,8 +46,7 @@
</el-form-item>
<el-form-item label="客户类型" class="searchlist">
<el-select v-model="listQuery.params.customerType" class="addinputw" placeholder="请选择" @change="getKeHu">
<el-option v-for="(item, index) in merType" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item, index) in merType" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
<el-form-item label="联系电话" class="searchlist">
@ -67,12 +65,10 @@
<div class="listtop">
<div class="tit">客户信息列表</div>
<!-- 翻页分页 -->
<pageye v-show="listQuery.total>0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size"
class="pagination" @pagination="getList"/>
<pageye v-show="listQuery.total>0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border fit highlight-current-row
style="width: 100%;" @selection-change="handleSelectionChange">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border fit highlight-current-row style="width: 100%;" @selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="50"/>
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column label="客户编号" align="center">
@ -95,7 +91,7 @@
<span>{{ scope.row.mobile }}</span>
</template>
</el-table-column>
<el-table-column label="微信号" align="center">
<el-table-column label="微信号" align="center">
<template slot-scope="scope">
<span>{{ scope.row.weixin }}</span>
</template>
@ -123,34 +119,30 @@
</el-table>
</div>
<div class="pages">
<pagination v-show="listQuery.total > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size"
class="pagination" @pagination="getList"/>
<pagination v-show="listQuery.total > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
<div></div>
<kehudangan-add ref="addAndUpdate" @handleReturn="handleReturn"/>
<kehudangan-info ref="Info" @handleReturn="handleReturn"/>
<genjinjiluguanli ref="Newpage" @handleReturn="genjinfanhui"/>
<cheliangxuqiu ref="openCheXu" @handleReturn="cheliangxuqiu"/>
<kehudanganziliao ref="openZiliao" @handleReturn="kehudanganziliao"/>
<kehudangan-add v-show="viewState ==2 || viewState ==3" ref="addAndUpdate" @handleReturn="handleReturn"/>
<kehudangan-info v-show="viewState ==4" ref="Info" @handleReturn="handleReturn"/>
<genjinjiluguanli v-show="viewState ==5" ref="Newpage" @handleReturn="genjinfanhui"/>
<cheliangxuqiu v-show="viewState ==6" ref="openCheXu" @handleReturn="cheliangxuqiu"/>
<kehudanganziliao v-show="viewState ==7" ref="openZiliao" @handleReturn="kehudanganziliao"/>
</div>
</template>
<script>
// import {mapGetters} from 'vuex'
import { namesDown, getPcDistributorList } from '@/api/jichuxinxi/crmcustomer'
import { pagerList, deleteBySids } from '@/api/jichuxinxi/crmcustomer'
import { typeValues } from '@/api/dictcommons/shujuzidian'
import {loginDetails} from '@/api/dictcommons/basemanufacturer'
import {getStorage} from '@/utils/auth'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import kehudanganAdd from './kehudanganAdd.vue'
import kehudanganInfo from './kehudanganinfo.vue'
import genjinjiluguanli from '@/views/kehuguanli/kehugenjinjilu/genjinjiluguanli.vue'
import cheliangxuqiu from "../cheliangxuqiu/cheliangxuqiu";
import kehudanganziliao from "@/views/kehuguanli/kehuziliao/kehudanganziliao"
import cheliangxuqiu from '../cheliangxuqiu/cheliangxuqiu'
import kehudanganziliao from '@/views/kehuguanli/kehuziliao/kehudanganziliao'
export default {
name: 'Kehudangan',
@ -194,7 +186,7 @@
listLoading: false,
listQuery: {
current: 1,
size: 20,
size: 10,
params: {
affiliatedOrgName: '',
affiliatedOrgSid: '',
@ -211,24 +203,15 @@
name: '',
source: '',
sourceKey: '',
staffSid: window.sessionStorage.getItem('staffSid'),
staffSid: window.sessionStorage.getItem('staffSid')
},
total: 1,
total: 1
},
temp: {}, //
visible: true,
viewState: 1
// ------------------------------------
}
},
computed: {
// ...mapGetters([
// 'id',
// 'roles',
// 'rolesIds',
// 'departmentId',
// 'departmentCode',
// ]),
},
created() {
//
this.init()
@ -302,8 +285,8 @@
name: '',
source: '',
sourceKey: '',
staffSid: window.sessionStorage.getItem('staffSid'),
},
staffSid: window.sessionStorage.getItem('staffSid')
}
}
this.getList()
},
@ -315,49 +298,46 @@
if (this.customerTypeList.visitWay !== '' && this.customerTypeList.customerType !== '') {
this.dialogVisible = false
const customerTypeList = this.customerTypeList
this.$refs.addAndUpdate.openCreate(customerTypeList, () => {
this.visible = false
this.viewState = 2
this.$refs['addAndUpdate'].openCreate(customerTypeList)
this.customerTypeList = {
visitWay: '',
visitWayKey: '',
customerType: ''
}
})
} else {
this.$message({
message: '请填写联络方式和客户类型',
type: 'warning'
});
})
}
},
// ()
handleCheliang(row) {
this.$refs.openCheXu.cheLiang(row.sid,this.upLevel,row.name, () => {
this.visible = false
})
this.viewState = 6
this.$refs['openCheXu'].cheLiang(row.sid, this.upLevel, row.name, '01')
},
//
handleJiLu(row) {
this.$refs.Newpage.newpage(row.sid, row.name, () => {
this.visible = false
})
this.viewState = 5
this.$refs.Newpage.newpage(row.sid, row.name, '02')
},
//
handleSelectionChange(row) {
const aa = [];
const bb = [];
const cc = [];
const aa = []
const bb = []
const cc = []
console.log('112233', row)
row.forEach((element) => {
aa.push(element.sid)
});
})
row.forEach((element) => {
bb.push(element.name, element.mobile)
});
})
this.sids = aa
row.forEach((element) => {
cc.push(element.name)
});
})
this.names = cc
console.log('勾选记录', this.sids)
},
@ -365,22 +345,21 @@
handleUpdate() {
if (this.sids.length === 1) {
this.dialogStatus = 'update'
this.$refs.addAndUpdate.openUpdate(this.sids[0], () => {
this.visible = false
})
this.viewState = 3
this.$refs['addAndUpdate'].openUpdate(this.sids[0])
} else if (this.sids.length > 1) {
this.$notify({
title: '提示',
message: '不能选中多个修改!!',
message: '不能选中多个修改!',
type: 'info',
duration: 2000,
duration: 2000
})
} else {
this.$notify({
title: '提示',
message: '没有选择信息!!',
type: 'error',
duration: 2000,
duration: 2000
})
return
}
@ -389,22 +368,21 @@
handleGenjin() {
if (this.sids.length === 1) {
this.dialogStatus = 'update'
this.$refs.Newpage.newpage(this.sids[0], this.names[0], () => {
this.visible = false
})
this.viewState = 5
this.$refs['Newpage'].newpage(this.sids[0], this.names[0], '01')
} else if (this.sids.length > 1) {
this.$notify({
title: '提示',
message: '不能选中多个客户!!',
type: 'info',
duration: 2000,
duration: 2000
})
} else {
this.$notify({
title: '提示',
message: '请选择客户!!',
type: 'error',
duration: 2000,
duration: 2000
})
return
}
@ -413,31 +391,29 @@
handleZiliao() {
if (this.sids.length === 1) {
this.dialogStatus = 'update'
this.$refs.openZiliao.newpage(this.sids[0], this.names[0],() => {
this.visible = false
})
this.viewState = 7
this.$refs.openZiliao.newpage(this.sids[0], this.names[0])
} else if (this.sids.length > 1) {
this.$notify({
title: '提示',
message: '不能选中多个客户!!',
type: 'info',
duration: 2000,
duration: 2000
})
} else {
this.$notify({
title: '提示',
message: '请选择客户!!',
type: 'error',
duration: 2000,
duration: 2000
})
return
}
},
//
handleCheck(row) {
this.$refs.Info.openInfo(row.sid, () => {
this.visible = false
})
this.viewState = 4
this.$refs['Info'].openInfo(row.sid)
},
// ID
handleDelete() {
@ -449,23 +425,23 @@
title: '提示',
message: '删除成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.getList()
} else {
this.$notify({
title: '删除失败',
message: response.msg,
type: 'error',
type: 'error'
})
}
})
} else {
this.$notify({
title: '提示',
message: '没有选择信息!!',
message: '没有选择信息!',
type: 'error',
duration: 2000,
duration: 2000
})
return
}
@ -482,57 +458,52 @@
},
//
AddUpdateReturn() {
this.visible = true
this.viewState = 1
},
handleReturn() {
this.visible = true
this.viewState = 1
this.getList()
// window.location.reload()
},
//
genjinfanhui() {
// window.location.reload()
this.visible = true
this.viewState = 1
this.getList()
},
cheliangxuqiu() {
this.visible = true
this.viewState = 1
this.getList()
},
//
kehudanganziliao() {
this.visible = true
this.viewState = 1
this.getList()
},
// -------------------------------------------------------------
//
getShuJUZiDian() {
typeValues({
type: 'customerType',
type: 'customerType'
}).then((res) => {
if (res.code === '200') {
this.merType = res.data
}
})
//
typeValues({
type: 'customerSource',
type: 'customerSource'
}).then((res) => {
if (res.code === '200') {
this.sourceLisst = res.data
}
})
//
typeValues({
type: 'customerLevel',
type: 'customerLevel'
}).then((res) => {
if (res.code === '200') {
this.induslevel = res.data
}
})
//
typeValues({
type: 'visitWay',
type: 'visitWay'
}).then((res) => {
if (res.code === '200') {
this.visitWay_list = res.data
@ -543,12 +514,12 @@
getKeHu(value) {
let bb = null
this.merType.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'customerType',
name: e.dictValue,
vaule: e.dictKey,
sid: e.sid,
sid: e.sid
}
}
})
@ -561,12 +532,12 @@
getVisitWay(value) {
let bb = null
this.visitWay_list.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'visitWay',
name: e.dictValue,
vaule: e.dictKey,
sid: e.sid,
sid: e.sid
}
}
})
@ -576,8 +547,7 @@
//
getKeHufenlei(kehusid) {
typeValues({
psid: kehusid,
type: 'customerClass',
psid: kehusid, type: 'customerClass'
}).then((res) => {
if (res.code === '200') {
this.merClass = res.data
@ -587,7 +557,7 @@
//
getGuaKao() {
namesDown({
name: this.listQuery.params.affiliatedOrgSid,
name: this.listQuery.params.affiliatedOrgSid
}).then((response) => {
if (response.code === '200') {
this.edOrgSid = response.data
@ -600,8 +570,8 @@
current: this.listQuery.current,
size: this.listQuery.size,
params: {
distributorName: this.agencySid,
},
distributorName: this.agencySid
}
}).then((response) => {
if (response.code === '200') {
this.ncySid = response.data
@ -612,11 +582,11 @@
getFenLei(value) {
let bb = null
this.merClass.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'customerClass',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
@ -627,11 +597,11 @@
getKeHuLaiYUan(value) {
let bb = null
this.sourceLisst.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'customerSource',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
@ -642,18 +612,18 @@
getJiBie(value) {
let bb = null
this.induslevel.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'customerLevel',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
this.listQuery.params.level = bb.name
this.listQuery.params.levelKey = bb.vaule
},
},
}
}
}
</script>
<style scoped>
@ -665,10 +635,12 @@
.diaForm {
margin-bottom: 8px;
}
.searchbtn {
border: #2cab69 1px solid;
color: #2cab69;
}
.listtop {
display: flex;
justify-content: space-between;
@ -676,12 +648,15 @@
border: 1px solid #dfe4ed;
height: 40px;
}
.tit {
margin-bottom: -10px;
}
.pagination {
margin-bottom: -10px;
}
/* >>>操作符影响子组件 */
.diaForm >>> .el-form-item__label {
margin-right: 16px;

318
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehudangan/kehudanganAdd.vue

@ -1,6 +1,6 @@
<template>
<div class="app-container">
<div v-show="visible">
<div>
<div class="tab-header webtop">
<div v-if="stateId === '0'">新增客户信息</div>
<div v-else>修改客户信息</div>
@ -10,8 +10,7 @@
</div>
</div>
<div class="listconadd">
<el-form ref="dataForm" :model="temp" label-position="top" label-width="190px" class="formadd "
:rules="rules">
<el-form ref="dataForm" :model="temp" label-position="top" label-width="190px" class="formadd " :rules="rules">
<div class="titwu">客户信息</div>
<div class="title" style="display: flex;align-items: center;justify-content: space-between;height:40px">
<div>基础信息</div>
@ -205,7 +204,7 @@
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<span slot="label">电子邮</span>
<span slot="label">电子邮</span>
</el-form-item>
</el-col>
<el-col :span="8">
@ -302,10 +301,8 @@
</el-col>
<el-col :span="8">
<el-form-item>
<el-select v-model="templooke.consignment" style="width:50%" class="addinputw" placeholder="请选择承运货物"
@change="getHuoWu">
<el-option v-for="(item, index) in consign" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-select v-model="templooke.consignment" style="width:50%" class="addinputw" placeholder="请选择承运货物" @change="getHuoWu">
<el-option v-for="(item, index) in consign" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -350,9 +347,7 @@
</el-col>
<el-col :span="8">
<el-form-item>
<el-input style="width:50%" v-model="templooke.existing_vehicles" maxlength="20" placeholder="请输入现有车辆"
class="addinputw"
clearable/>
<el-input style="width:50%" v-model="templooke.existing_vehicles" maxlength="20" placeholder="请输入现有车辆" class="addinputw" clearable/>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
@ -362,8 +357,7 @@
</el-col>
<el-col :span="8">
<el-form-item>
<el-input style="width:50%" v-model="templooke.existing_vehiclesBrand" maxlength="20" placeholder="请输入现有车辆品牌"
class="addinputw" clearable/>
<el-input style="width:50%" v-model="templooke.existing_vehiclesBrand" maxlength="20" placeholder="请输入现有车辆品牌" class="addinputw" clearable/>
</el-form-item>
</el-col>
</el-row>
@ -375,8 +369,7 @@
</el-col>
<el-col :span="20">
<el-form-item>
<el-input style="width:81%" v-model="templooke.remarks" maxlength="20" placeholder="请输入备注" class="addinputw"
clearable/>
<el-input style="width:81%" v-model="templooke.remarks" maxlength="20" placeholder="请输入备注" class="addinputw" clearable/>
</el-form-item>
</el-col>
</el-row>
@ -397,12 +390,8 @@
</el-collapse-item>
</el-collapse>
</el-form>
</div>
</div>
<cheliangxuqiu-add ref="addAndUpdate" @handleReturn="visible=true" @created="dataCreated" @updated="dataUpdated"
@doback="dataDengJi" @modify="dataModify"/>
<cheliangxuqiuinfo ref="Info" @handleReturn="visible=true"/>
<!-- 弹框提示 -->
<el-dialog :visible.sync="dialogFormVisible" width="300px" :close-on-click-modal="false">
<div class="result-cont">
@ -417,14 +406,12 @@
</template>
<script>
import {mapGetters} from 'vuex'
import {
savePcCustomerInfo,
namesDown,
getPcCustomerInfoBySid,
getPcDistributorList,
updatePcCustomerInfo,
getPcCustomerMobileAndName,
} from '@/api/jichuxinxi/crmcustomer'
import {
getProvince,
@ -436,16 +423,12 @@
import { getStorage } from '@/utils/auth'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import cheliangxuqiuAdd from '@/views/kehuguanli/cheliangxuqiu/cheliangxuqiuAdd.vue'
import cheliangxuqiuinfo from '@/views/kehuguanli/cheliangxuqiu/cheliangxuqiuinfo.vue'
import {pagerList, delBySids} from '@/api/jichuxinxi/crmvehicle'
import { getPcBusinessInfoBySid } from '@/api/jichuxinxi/crmbusiness'
import Upload from '@/components/uploadFile/upload.vue' //
import rules from '@/utils/roles'
export default {
name: 'KehudanganAdd',
components: {Pagination, pageye, cheliangxuqiuAdd, cheliangxuqiuinfo, Upload},
components: { Pagination, pageye, Upload },
data() {
var checkSubmit = (rule, value, callback) => {
const Submit =
@ -503,11 +486,11 @@
aseType: [
{
dictValue: '首次购车',
divtkey: 0,
divtkey: 0
},
{
dictValue: '续购',
divtkey: 1,
divtkey: 1
},
],
Customeryou: '',
@ -515,7 +498,6 @@
kehusid: '',
customerType: '',
YongHuid: [],
visible: false,
stateId: 0,
FormLoading: false,
listLoading: false,
@ -544,8 +526,8 @@
current: 1,
size: 20,
params: {
distributorName: '',
},
distributorName: ''
}
},
clientSid: '',
rules: {
@ -553,16 +535,16 @@
{
required: true,
message: '请填写客户名称',
trigger: 'blur',
},
trigger: 'blur'
}
],
address: [
{
required: true,
message: '请填写客户地址',
trigger: 'blur',
},
],
trigger: 'blur'
}
]
// mobile: [
// {
// required: true,
@ -577,17 +559,8 @@
// trigger: 'blur',
// },
// ],
},
}
},
computed: {
...mapGetters([
'id',
'roles',
'rolesIds',
'departmentId',
'departmentCode',
]),
}
},
created() {
//
@ -602,20 +575,11 @@
this.postHuoquyonghu()
this.getZhongJie()
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
openUpdate(sid, showed) {
openUpdate(sid) {
this.clientSid = sid
this.stateId = sid
console.log('888888888888', this.stateId)
this.isOnRemind = '否'
// this.client = customer.name
// this.clientphone = customer.mobile
if (this.stateId !== '0') {
getPcCustomerInfoBySid(this.stateId).then((response) => {
console.log(response.data)
@ -623,16 +587,13 @@
this.$refs['dataForm'].clearValidate()
this.temp = response.data
this.temp.birthday = this.getDates(this.temp.birthday)
// this.temp.address=this.temp.province+this.temp.city+this.temp.county
this.visible = true
if (this.temp.customerType !== '') {
typeValues({type: 'customerType'}).then((res) => {
if (res.code === '200') {
if(this.temp.customerType=='个人'){
if (this.temp.customerType === '个人') {
this.temp.certificateType = '身份证'
this.temp.certificateTypeKey = '01'
}
else{
} else {
this.temp.certificateType = '营业执照'
this.temp.certificateTypeKey = '02'
}
@ -649,38 +610,31 @@
}
})
}
if (showed && typeof showed === 'function') {
showed()
}
}
})
getPcBusinessInfoBySid(this.stateId).then((response) => {
if (response.code === '200') {
this.templooke = response.data
//
const Arry = []
Arry.push(parseInt(response.data.purchase_time))
this.aseTypeBox = Arry
}
})
}
// this.getChelianglsit()
},
//
openCreate(customerTypeList, showed) {
openCreate(customerTypeList) {
this.resetTemp()
this.temp.customerType = customerTypeList.customerType
this.temp.visitWay = customerTypeList.visitWay
this.temp.visitWayKey = customerTypeList.visitWayKey
this.$refs['dataForm'].clearValidate()
this.stateId = '0'
this.visible = true
if (this.temp.customerType !== '') {
if(this.temp.customerType=='个人'){
if (this.temp.customerType === '个人') {
this.temp.certificateType = '身份证'
this.temp.certificateTypeKey = '01'
}
else{
} else {
this.temp.certificateType = '营业执照'
this.temp.certificateTypeKey = '02'
}
@ -699,13 +653,7 @@
}
})
}
if (showed && typeof showed === 'function') {
showed()
}
},
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
//
getShuJUZiDian() {
typeValues({ type: this.documenttype }).then((res) => {
@ -791,7 +739,7 @@
getShen(value) {
let bb = ''
this.inputProvinceList.forEach((e) => {
if (e.sid == value) {
if (e.sid === value) {
bb = {
name: e.name,
districtCode: e.districtCode,
@ -817,7 +765,7 @@
getShi(value) {
let bb = ''
this.inputCityList.forEach((e) => {
if (e.sid == value) {
if (e.sid === value) {
bb = {
name: e.name,
districtCode: e.districtCode,
@ -842,7 +790,7 @@
getQu(value) {
let bb = ''
this.inputCountyList.forEach((e) => {
if (e.sid == value) {
if (e.sid === value) {
bb = {
name: e.name,
districtCode: e.districtCode,
@ -904,7 +852,7 @@
findselect(list, value) {
var item = null
for (var i = 0; i < list.length; i++) {
if (list[i].divtkey == value) {
if (list[i].divtkey === value) {
item = list[i]
break
}
@ -931,8 +879,7 @@
}
if (this.temp.isOnRemind !== '' && this.temp.isOnRemind == '是') {
this.temp.isOnRemindkey = 1
}
else{
} else {
this.temp.isOnRemindkey = 0
}
if (this.temp.customerType !== '') {
@ -965,20 +912,18 @@
title: '提示',
message: '添加成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.templooke = {}
this.visible = false
this.activeNames = ['1']
this.list1 = []
this.$emit('handleReturn')
}else if('511'===response.code || '513'===response.code){
} else if (response.code === '511' || response.code === '513') {
this.FormLoading = false
this.dialogFormVisible = true
this.stateId = response.data
} else {
alert(200);
alert(200)
}
}).catch(function(reson, data) {
@ -999,7 +944,6 @@
duration: 2000,
})
this.templooke = {}
this.visible = false
this.activeNames = ['1']
this.$emit('handleReturn')
} else {
@ -1018,55 +962,6 @@
dialogStatus() {
this.dialogFormVisible = false
this.openUpdate(this.stateId)
// this.$refs['dataForm'].validate((valid) => {
// if (valid) {
// this.FormLoading = true
// console.log('77777777777777777777777777777777')
// this.temp.dto1 = this.templooke // this.templooke
// this.temp.userSid = this.YongHuid.sid
// this.temp.staffSid = this.YongHuid.staffSid
// this.temp.orgSid = this.YongHuid.organizationSid
// this.temp.userSid = this.YongHuid.sid
// this.temp.crmBusinessDto = this.templooke
// if(this.temp.sex!==''){
// this.sex_list.forEach((e)=>{
// if(e.dictValue==this.temp.sex){
// this.temp.sexKey=e.dictKey
// }
// })
// }
// if(this.temp.isOnRemind!=='' && this.temp.isOnRemind==''){
// this.temp.isOnRemindkey=1
// }
// else{
// this.temp.isOnRemindkey=0
// }
// this.getUrl()
// savePcCustomerInfo(this.temp).then((response) => {
// this.FormLoading = false
// if (response.code === '200') {
// this.clientSid = response.data
// this.$notify({
// title: '',
// message: '',
// type: 'success',
// duration: 2000,
// })
// this.templooke = []
// this.dialogFormVisible = false
// this.visible = false
// this.$emit('handleReturn')
// } else {
// this.$notify({
// title: '',
// message: '',
// type: 'error',
// duration: 2000,
// })
// }
// })
// }
// })
},
dialogFormVisibl() {
this.$notify({
@ -1078,9 +973,6 @@
this.dialogFormVisible = false
return
},
// ----------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
//
getZhongJie() {
getPcDistributorList().then((response) => {
@ -1148,7 +1040,7 @@
bb = {
type: 'customerClass',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
@ -1163,7 +1055,7 @@
bb = {
type: 'customerSource',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
@ -1178,7 +1070,7 @@
bb = {
type: 'customerLevel',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
@ -1193,7 +1085,7 @@
bb = {
type: 'visitWay',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
@ -1208,7 +1100,7 @@
bb = {
type: 'industrytype',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
@ -1223,7 +1115,7 @@
bb = {
type: 'consignmentType',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
@ -1238,81 +1130,13 @@
bb = {
type: 'consignment',
name: e.dictValue,
vaule: e.dictKey,
vaule: e.dictKey
}
}
})
this.templooke.consignment = bb.name
this.templooke.consignmentKey = bb.vaule
},
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
//
getChelianglsit() {
var query = {
customerSid: this.stateId,
staffSid: this.YongHuid.staffSid,
}
pagerList(query).then((response) => {
if (response.code === '200') {
this.list = response.data
}
})
},
//
dataCreated() {
this.visible = true
this.$refs['dataForm'].resetFields() //
this.temp = []
this.$refs['datufrom'].resetFields() //
this.templooke = []
this.$emit('created')
},
//
dataUpdated() {
this.visible = true
this.getList()
},
//
handlelooke(row) {
this.$refs.Info.openinfo(row.sid, this.stateId, () => {
debugger
this.visible = false
})
},
//
handleUpdate(row) {
this.$refs.addAndUpdate.openUpdate(
row.sid,
this.stateId,
this.checkin,
() => {
this.visible = false
}
)
},
// ID
handleDelete(row) {
delBySids(row.sid).then((response) => {
if (response.code === '200') {
this.$notify({
title: '提示',
message: '删除成功',
type: 'success',
duration: 2000,
})
this.getChelianglsit()
} else {
this.$notify({
title: '删除失败',
message: response.msg,
type: 'error',
})
}
})
},
//--------------------------------------------------------------
getUrl() {
for (var i = 0; i < this.list1.length; i++) {
var namese = this.list1[i].name
@ -1328,58 +1152,8 @@
})
console.log('11223344', this.crmVisitAppendixDtoList)
}
},
//--------------------------------------------------------------
//
showAdd(register, showed) {
this.checkin = register
console.log('852', this.checkin)
this.$refs['dataForm'].clearValidate()
this.stateId = '0'
// this.resetTemp()
this.visible = true
if (showed && typeof showed === 'function') {
showed()
}
},
showEdit(sid, register, showed) {
this.clientSid = sid
this.stateId = sid
this.checkin = register
if (this.stateId !== '0') {
getPcCustomerInfoBySid(this.stateId).then((response) => {
if (response.code === '200') {
this.$refs['dataForm'].clearValidate()
this.temp = response.data
this.temp.birthday = this.getDates(this.temp.birthday)
this.visible = true
if (showed && typeof showed === 'function') {
showed()
}
}
})
getPcBusinessInfoBySid(this.stateId).then((response) => {
if (response.code === '200') {
this.templooke = response.data
//
const Arry = []
Arry.push(parseInt(response.data.purchase_time))
this.aseTypeBox = Arry
}
})
}
this.getChelianglsit()
},
//
dataDengJi() {
this.visible = true
this.$emit('doback')
},
dataModify() {
this.visible = true
// this.$emit('doback')
},
},
}
</script>
<style scoped>
@ -1387,12 +1161,15 @@
text-align: right;
margin-top: 15px;
}
.tleftb {
text-align: left;
}
.trightb {
text-align: right;
}
.hang {
display: flex;
flex-direction: row;
@ -1406,14 +1183,6 @@
margin: 0 5px;
}
/*.formadd02 {*/
/* padding-top: 20px;*/
/*}*/
/*.formadd03 {*/
/* padding-top: 20px;*/
/*}*/
/deep/ .el-collapse-item__header {
height: 40px;
padding: 10px;
@ -1423,6 +1192,7 @@
color: #ffffff;
background-color: #0294d7;
}
/deep/ .el-collapse-item__content {
padding-bottom: 0;
}

283
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehudangan/kehudanganinfo.vue

@ -1,16 +1,10 @@
<template>
<div class="app-container">
<div v-show="visible">
<div>
<div class="tab-header webtop">
<div>查看客户信息</div>
<div>
<el-button
type="info"
size="small"
icon="el-icon-close"
@click="handleReturn()"
>关闭</el-button
>
<el-button type="info" size="small" icon="el-icon-close" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="listconadd">
@ -134,14 +128,7 @@
<!--更多信息-->
<el-collapse v-model="activeNames">
<el-collapse-item title="更多信息" name="2">
<el-form
ref="datufrom"
:model="temp"
label-position="top"
label-width="190px"
class="formadd02"
>
<!-- <div class="titleleft">更多信息</div> -->
<el-form ref="datufrom" :model="temp" label-position="top" label-width="190px" class="formadd02">
<el-row v-show="temp.customerType === '个人'">
<el-col :span="4" class="trightb">
<el-form-item>
@ -199,7 +186,7 @@
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<span slot="label">电子邮</span>
<span slot="label">电子邮</span>
</el-form-item>
</el-col>
<el-col :span="8">
@ -270,14 +257,7 @@
<!--运营情况-->
<el-collapse v-model="activeNames">
<el-collapse-item title="运营情况" name="3">
<el-form
ref="datufrom"
:model="templooke"
label-position="top"
label-width="190px"
class="formadd03"
>
<!-- <div class="titleleft">运营情况</div> -->
<el-form ref="datufrom" :model="templooke" label-position="top" label-width="190px" class="formadd03">
<el-row>
<el-col :span="4" class="trightb">
<el-form-item>
@ -319,17 +299,8 @@
<el-col :span="8">
<el-form-item>
<div class="yihang">
<el-checkbox-group
v-if="aseType.length > 0"
v-model="aseTypeBox"
>
<el-checkbox
v-for="item in aseType"
:key="item.divtkey"
:label="item.divtkey"
>
{{ item.dictValue }}
</el-checkbox>
<el-checkbox-group v-if="aseType.length > 0" v-model="aseTypeBox">
<el-checkbox v-for="item in aseType" :key="item.divtkey" :label="item.divtkey">{{ item.dictValue }}</el-checkbox>
</el-checkbox-group>
<div class="mw">
@ -380,249 +351,61 @@
</el-form>
</div>
</div>
<cheliangxuqiu-add
ref="addAndUpdate"
@handleReturn="visible = true"
@created="dataCreated"
@updated="dataUpdated"
/>
<cheliangxuqiuinfo ref="Info" @handleReturn="visible = true" />
</div>
</template>
<script>
import { mapGetters } from "vuex";
import {
savePcCustomerInfo,
namesDown,
getPcCustomerInfoBySid,
getPcDistributorList,
updatePcCustomerInfo,
} from "@/api/jichuxinxi/crmcustomer";
import { typeValues } from "@/api/dictcommons/shujuzidian";
import { loginDetails } from "@/api/dictcommons/basemanufacturer";
import { getStorage } from "@/utils/auth";
import Pagination from "@/components/pagination";
import pageye from "@/components/pagination/pageye";
import cheliangxuqiuAdd from "@/views/kehuguanli/cheliangxuqiu/cheliangxuqiuAdd.vue";
import cheliangxuqiuinfo from "@/views/kehuguanli/cheliangxuqiu/cheliangxuqiuinfo.vue";
import { pagerList, delBySids } from "@/api/jichuxinxi/crmvehicle";
import { getPcBusinessInfoBySid } from "@/api/jichuxinxi/crmbusiness";
import rules from "@/utils/roles";
import { getPcCustomerInfoBySid } from '@/api/jichuxinxi/crmcustomer'
import { getPcBusinessInfoBySid } from '@/api/jichuxinxi/crmbusiness'
export default {
name: "Kehudanganinfo",
components: { Pagination, pageye, cheliangxuqiuAdd, cheliangxuqiuinfo },
name: 'Kehudanganinfo',
data() {
return {
// ---------
edit: true,
list: [],
customerClass: "customerClass",
merClass: [],
sourceLisst: [],
induslevel: [],
industway: [],
cateType: [],
customerType: "customerType",
merType: [],
ncySid: [],
edOrgSid: [],
consignmentType: "consignmentType",
signmentT: [],
consignment: "consignment",
consign: [],
industry_type: [],
aseTypeBox: [],
activeNames: ["1"],
activeNames: ['1'],
aseType: [
{
dictValue: "首次购车",
divtkey: 0,
dictValue: '首次购车',
divtkey: 0
},
{
dictValue: "续购",
divtkey: 1,
},
dictValue: '续购',
divtkey: 1
}
],
kehusid: "",
YongHuid: [],
visible: false,
stateId: 0,
FormLoading: false,
listLoading: false,
temp: {
dto1: "",
}, //
templooke: {},
tempmore: {},
sids: [],
listQuery: {
current: 1,
size: 20,
params: {
distributorName: "",
},
},
dialogStatus: "", //
clientSid: "",
};
},
computed: {
...mapGetters([
"id",
"roles",
"rolesIds",
"departmentId",
"departmentCode",
]),
},
created() {
//
this.init();
temp: {}, //
templooke: {}
}
},
methods: {
//
init() {
this.postHuoquyonghu();
this.getGuaKao();
this.getZhongJie();
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size;
var pageindex = index + 1 + pagestart;
return pageindex;
},
//
openInfo(sid, showed) {
this.stateId = sid;
if (this.stateId !== "0") {
openInfo(sid) {
this.stateId = sid
if (this.stateId !== '0') {
getPcCustomerInfoBySid(this.stateId).then((response) => {
if (response.code === "200") {
this.$refs["dataForm"].clearValidate();
this.temp = response.data;
this.visible = true;
if (showed && typeof showed === "function") {
showed();
if (response.code === '200') {
this.$refs['dataForm'].clearValidate()
this.temp = response.data
}
}
});
})
getPcBusinessInfoBySid(this.stateId).then((response) => {
if (response.code === "200") {
this.templooke = response.data;
//
const Arry = [];
Arry.push(parseInt(response.data.purchase_time));
this.aseTypeBox = Arry;
if (response.code === '200') {
this.templooke = response.data
const Arry = []
Arry.push(parseInt(response.data.purchase_time))
this.aseTypeBox = Arry
}
});
})
}
// this.getChelianglsit()
},
// ------------------------------------------------------
//
handleReturn() {
this.visible = false;
this.$emit("handleReturn");
},
//
resetTemp() {
this.temp = {};
},
//
postHuoquyonghu() {
var token = getStorage();
loginDetails(token).then((response) => {
if (response.code === "200") {
this.YongHuid = response.data;
this.$emit('handleReturn')
}
});
},
//
getDates(v) {
var now = new Date(v);
var year = now.getFullYear(); //
var month = now.getMonth() + 1; //
var day = now.getDate(); //
var hh = now.getHours(); //
var mm = now.getMinutes(); //
var ss = now.getSeconds(); //
var clock = year + "-";
if (month < 10) clock += "0";
clock += month + "-";
if (day < 10) clock += "0";
clock += day + " ";
if (hh < 10) clock += "0";
clock += hh + ":";
if (mm < 10) clock += "0";
clock += mm + ":";
if (ss < 10) clock += "0";
clock += ss;
return clock;
},
//
getGuaKao() {
namesDown({ name: this.temp.affiliatedOrgSid }).then((response) => {
if (response.code === "200") {
this.edOrgSid = response.data;
}
});
},
//
getZhongJie() {
getPcDistributorList().then((response) => {
if (response.code === "200") {
this.ncySid = response.data;
}
});
},
//
getZongjieDanwei(value) {
let bb = null;
this.ncySid.forEach((e) => {
if (e.sid == value) {
bb = {
name: e.distributorName,
};
}
});
this.temp.agencyName = bb.name;
},
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
//
getChelianglsit() {
var query = {
customerSid: this.stateId,
staffSid: this.YongHuid.staffSid,
};
pagerList(query).then((response) => {
if (response.code === "200") {
this.list = response.data;
}
});
},
// //
dataCreated() {
this.visible = true;
this.$emit("created");
},
//
dataUpdated() {
this.visible = true;
this.getList();
},
//
handlelooke(row) {
this.$refs.Info.openinfo(row.sid, this.stateId, () => {
this.visible = false;
});
},
},
};
</script>
<style scoped>
.yulan {

159
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehugenjinjilu/genjinjiliAdd.vue

@ -1,8 +1,7 @@
<template>
<div v-show="visible" class="app-container">
<div class="app-container">
<div class="tab-header webtop">
<div>新增客户跟进记录</div>
<!-- <div v-else>修改客户信息</div> -->
<div>
<el-button type="primary" size="small" @click="handleCreate()">保存</el-button>
<!-- <el-button type="primary" size="small">下载</el-button> -->
@ -10,22 +9,21 @@
</div>
</div>
<div class="listconadd">
<el-form ref="dataForm" :model="temp" label-position="top" label-width="260px" class="formadd widthxiaox"
:rules="rules">
<el-form ref="dataForm" :model="temp" label-position="top" label-width="260px" class="formadd widthxiaox" :rules="rules">
<div class="titwu">{{ customerName }}客户跟进记录</div>
<!-- <el-row class="bordertopline">-->
<!-- <el-col :span="4" class="trightb">-->
<!-- <el-form-item>-->
<!-- <span slot="label">客户名称</span>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- <el-col :span="20">-->
<!-- <el-form-item>-->
<!-- {{ customerName }}-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- </el-row>-->
<el-row class="bordertopline">
<el-col :span="4" class="trightb">
<el-form-item>
<span slot="label">客户名称</span>
</el-form-item>
</el-col>
<el-col :span="20">
<el-form-item>
{{customerName}}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="trightb">
<el-form-item prop="follow_form">
<span slot="label">跟进形式</span>
@ -34,8 +32,7 @@
<el-col :span="8">
<el-form-item prop="follow_form">
<el-select v-model="temp.follow_form" class="addinputw" placeholder="" style="width:60%" @change="getXingshi">
<el-option v-for="(item, index) in followupform" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey" />
<el-option v-for="(item, index) in followupform" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -46,8 +43,7 @@
</el-col>
<el-col :span="8">
<el-form-item>
<el-date-picker v-model="temp.follow_time" type="date" format="yyyy-MM-dd" style="width:60%" class="addinputw"
value-format="yyyy-MM-dd" placeholder="请选择" />
<el-date-picker v-model="temp.follow_time" type="date" format="yyyy-MM-dd" style="width:60%" class="addinputw" value-format="yyyy-MM-dd" placeholder="请选择"/>
</el-form-item>
</el-col>
</el-row>
@ -72,8 +68,7 @@
<el-col :span="20">
<el-form-item>
<el-select v-model="temp.follow_state" class="addinputw" placeholder="" style="width:23%" @change="getZhuaangtai">
<el-option v-for="(item, index) in followupstatus" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey" />
<el-option v-for="(item, index) in followupstatus" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -100,8 +95,7 @@
<el-col :span="8">
<el-form-item prop="remind_day" v-show="temp.isOnRemind=='是'">
<el-select v-model="temp.remind_day" class="addinputw" placeholder="" style="width:60%" @change="gettime">
<el-option v-for="(item, index) in reminderdate" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey" />
<el-option v-for="(item, index) in reminderdate" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
@ -135,31 +129,19 @@
</div>
</template>
<script>
import {
mapGetters
} from 'vuex'
import {
save,
update,
fetchSid
} from '@/api/jichuxinxi/crmvisit'
import cheliangxuqiuAdd from '@/views/kehuguanli/cheliangxuqiu/cheliangxuqiuAdd.vue'
import {
typeValues
} from '@/api/dictcommons/shujuzidian'
import {
loginDetails
} from '@/api/dictcommons/basemanufacturer'
import {
getStorage
} from '@/utils/auth'
import {
deleteFilesOss
} from '@/api/jichuxinxi/contract'
import {
getPcAppendix
} from '@/api/jichuxinxi/commonappendix.js'
import { typeValues } from '@/api/dictcommons/shujuzidian'
import { loginDetails } from '@/api/dictcommons/basemanufacturer'
import { getStorage } from '@/utils/auth'
import { deleteFilesOss } from '@/api/jichuxinxi/contract'
import { getPcAppendix } from '@/api/jichuxinxi/commonappendix.js'
import ManyImageUpload from '@/components/uploadFile/ManyImageUpload'
export default {
name: 'KehugenzongAdd',
components: {
@ -168,8 +150,6 @@
},
data() {
return {
// ---------
visible: false,
stateId: 0,
FormLoading: false,
followupform: [],
@ -185,7 +165,7 @@
// customerSides: '',
file_list: {
attachType: '0004',
linkSid: '',
linkSid: ''
},
list1: [],
// list2: [],
@ -195,41 +175,31 @@
aseTypeBox: [],
aseType: [{
dictValue: '是',
divtkey: 0,
divtkey: 1
},
{
dictValue: '否',
divtkey: 1,
},
divtkey: 0
}
],
rules: {
remind_day: [{
required: true,
message: '请填写',
trigger: 'blur',
}, ],
trigger: 'blur'
}],
follow_form: [{
required: true,
message: '请填写',
trigger: 'blur',
}, ],
trigger: 'blur'
}],
follow_result: [{
required: true,
message: '请填写',
trigger: 'blur',
}, ],
},
// ------------------------------------
trigger: 'blur'
}]
}
}
},
computed: {
...mapGetters([
'id',
'roles',
'rolesIds',
'departmentId',
'departmentCode',
]),
},
created() {
//
@ -241,30 +211,21 @@
this.postHuoquyonghu()
},
//
openUpdate(sid, cusid, showed) {
openUpdate(sid, cusid) {
this.list1 = []
this.stateId = sid
this.customerSid = cusid
this.file_list.linkSid = sid
if (this.stateId !== '0') {
// this.list3 = []
// this.list2 = []
fetchSid(this.stateId).then((response) => {
if (response.code === '200') {
this.$refs['dataForm'].clearValidate()
this.customerName = response.data.data.customerName
const Arry = []
Arry.push(parseInt(response.data.data.isOnRemind))
Arry.push(parseInt(response.data.data.isOnRemindkey))
console.log(Arry, 78787878)
this.aseTypeBox = Arry
// this.list1 = []
// for (var i = 0; i < response.data.data.list.length; i++) {
// this.list1.push(response.data.data.list[i].fileUrl)
// }
this.temp = response.data.data
this.visible = true
if (showed && typeof showed === 'function') {
showed()
}
}
})
this.getImagelook()
@ -279,25 +240,21 @@
url: w.filePath,
fullUrl: '',
size: w.fileSize,
fileType: w.fileType,
fileType: w.fileType
})
})
}
})
},
//
openCreate(bname, sid, showed) {
openCreate(bname, sid) {
this.list1 = []
this.customerName = bname
this.customerSid = sid
this.$refs['dataForm'].clearValidate()
this.stateId = '0'
this.resetTemp()
this.visible = true
this.aseTypeBox = []
if (showed && typeof showed === 'function') {
showed()
}
},
//
deleteFile(url, index) {
@ -307,7 +264,7 @@
title: '提示',
message: '删除成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.list3.splice(index, 1)
var index2 = this.temp.pcCommonAppendixDtoList.findIndex((item) => {
@ -326,7 +283,7 @@
title: '提示',
message: '删除成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.list2.splice(index, 1)
var index2 = this.temp.pcCommonAppendixDtoList.findIndex((item) => {
@ -342,7 +299,6 @@
//
handleReturn() {
this.list1 = []
this.visible = false
this.$emit('handleReturn')
},
//
@ -382,7 +338,7 @@
filePath: this.list1[i].url,
fileSize: this.list1[i].size,
createBySid: this.YongHuid.sid,
fileType: nameArr[nameArr.length - 1],
fileType: nameArr[nameArr.length - 1]
})
}
save(this.temp).then((response) => {
@ -392,7 +348,7 @@
title: '提示',
message: '添加成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.handleReturn()
this.$emit('created')
@ -401,7 +357,7 @@
title: '提示',
message: '添加失败',
type: 'error',
duration: 2000,
duration: 2000
})
}
})
@ -410,8 +366,6 @@
this.temp.customerSid = this.customerSid
this.temp.list = []
for (var i = 0; i < this.list1.length; i++) {
// debugger
// console.log('',this.list1)
var namese = this.list1[i].name
var nameArr = namese.split('.')
this.temp.list.push({
@ -421,7 +375,7 @@
fileSize: this.list1[i].size,
// linkSid: this.temp.customerSid,
createBySid: this.YongHuid.sid,
fileType: nameArr[nameArr.length - 1],
fileType: nameArr[nameArr.length - 1]
})
}
update(this.temp).then((response) => {
@ -431,14 +385,14 @@
title: '提示',
message: '修改成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.$emit('updated')
} else {
this.$notify({
title: '失败',
message: '修改失败',
type: 'error',
type: 'error'
})
}
})
@ -450,7 +404,7 @@
findselect(list, value) {
var item = null
for (var i = 0; i < list.length; i++) {
if (list[i].divtkey == value) {
if (list[i].divtkey === value) {
item = list[i]
break
}
@ -460,15 +414,13 @@
//
changexuanze() {
this.aseTypeBox = [this.aseTypeBox[this.aseTypeBox.length - 1]]
console.log(this.aseTypeBox, 999)
var item = this.findselect(this.aseType, this.aseTypeBox[0])
if (item != null) {
this.temp.isOnRemind = item.dictValue
this.temp.isOnRemindkey = item.divtkey
}
},
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
// ---------------------------------------------------------------------------------
//
getShuJuZiDian() {
typeValues({
@ -504,11 +456,11 @@
getXingshi(value) {
let bb = null
this.followupform.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'followForm',
key: e.dictKey,
value: e.dictValue,
value: e.dictValue
}
}
})
@ -523,7 +475,7 @@
bb = {
type: 'followType',
key: e.dictKey,
value: e.dictValue,
value: e.dictValue
}
}
})
@ -538,7 +490,7 @@
bb = {
type: 'followState',
key: e.dictKey,
value: e.dictValue,
value: e.dictValue
}
}
})
@ -553,7 +505,7 @@
bb = {
type: 'remindDay',
key: e.dictKey,
value: e.dictValue,
value: e.dictValue
}
}
})
@ -579,6 +531,7 @@
.nameStyle {
cursor: pointer;
}
.trightb {
text-align: right;
}

179
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehugenjinjilu/genjinjiluguanli.vue

@ -1,11 +1,12 @@
<template>
<div class="app-container">
<div v-show="visible">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<div>客户跟进记录</div>
<div>
<el-button type="primary" size="small" icon="el-icon-plus" @click="handleCreate()">新增</el-button>
<!-- <el-button type="primary" size="small" icon="" @click="handleUpdate()">编辑</el-button> -->
<el-button v-show="btnVisible" type="primary" size="small" icon="el-icon-plus" @click="handleCreate()">新增
</el-button>
<el-button v-show="btnVisible" type="primary" size="small" icon="" @click="handleUpdate()">编辑</el-button>
<!-- <el-button type="danger" size="small" @click="handleDelete()">删除</el-button> -->
<el-button type="info" size="small" icon="el-icon-close" @click="handleReturn()">关闭</el-button>
</div>
@ -16,11 +17,9 @@
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item class="formItem" label="跟进时间">
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.start_follow_time" clearable
style="width: 160px;" type="date" placeholder="开始日期"/>
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.start_follow_time" clearable style="width: 160px;" type="date" placeholder="开始日期"/>
<div class="line"></div>
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.end_follow_time" clearable
style="width: 160px;" type="date" placeholder="结束日期"/>
<el-date-picker value-format="yyyy-MM-dd" v-model="listQuery.params.end_follow_time" clearable style="width: 160px;" type="date" placeholder="结束日期"/>
</el-form-item>
<el-form-item label="跟进形式">
<el-select v-model="listQuery.params.follow_form" class="addinputw" placeholder="请输入" @change="getXingshi">
@ -29,23 +28,13 @@
</el-form-item>
<el-form-item label="跟进状态"> <!--follow_state -->
<el-select v-model="listQuery.params.follow_state" class="addinputw" placeholder="" @change="getZhuaangtai">
<el-option v-for="(item, index) in followupstatus" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey" />
<el-option v-for="(item, index) in followupstatus" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
<div class="searchbtns">
<el-button type="primary" icon="el-icon-search" @click="handleReset()">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" @click="handleFilter()">重置</el-button>
</div>
<!-- <el-select v-model="listQuery.follow_type" class="addinputw" placeholder="请输入" @change="getLeiBie">-->
<!-- <el-option v-for="(item, index) in followupcategory" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey" />-->
<!-- </el-select>-->
<!-- <el-form-item label="客户状态">-->
<!-- <el-select v-model="listQuery.follow_state" class="addinputw" placeholder="请输入选择" @change="getZhuaangtai">-->
<!-- <el-option v-for="(item, index) in followupstatus" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey" />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
</el-form>
</div>
</div>
@ -63,17 +52,12 @@
<span>{{ scope.row.follow_form }}</span>
</template>
</el-table-column>
<!-- <el-table-column label="跟进类别" align="center">-->
<!-- <template slot-scope="scope">-->
<!-- <span>{{ scope.row.follow_type }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="跟进时间" align="center">
<template slot-scope="scope">
<span>{{ scope.row.follow_time }}</span>
</template>
</el-table-column>
<el-table-column label="跟进果" align="center">
<el-table-column label="跟进果" align="center">
<template slot-scope="scope">
<span>{{ scope.row.follow_result }}</span>
</template>
@ -115,41 +99,10 @@
<!-- 翻页 -->
<pagination v-show="total > 0" :total="total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<!-- 添加弹出窗口 -->
<!-- <el-dialog :visible.sync="dialogFormVisible" width="1000px" :close-on-click-modal="false">
<div class="result-cont">
<el-table v-loading="listLoading" :data="material" border fit highlight-current-row style="width: 100%;" @selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="50" />
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center" />
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button type="primary" size="small">下载</el-button>
<el-button type="danger" size="small">删除</el-button>
</template>
</el-table-column>
<el-table-column label="附件名称" align="center">
<template slot-scope="scope">
<span>{{ scope.row.fileName }}</span>
</template>
</el-table-column>
<el-table-column label="文件格式" align="center">
<template slot-scope="scope">
<span>{{ scope.row.fileType }}</span>
</template>
</el-table-column>
<el-table-column label="上传人" align="center">
<template slot-scope="scope">
<span>{{ scope.row.follow_result }}</span>
</template>
</el-table-column>
</el-table>
</div>
</el-dialog> -->
<el-dialog :visible.sync="dialogFormVisible" width="1000px" :close-on-click-modal="false">
<div class="result-cont">
<el-carousel indicator-position="outside" style="height: 500px;">
<el-carousel-item v-for="(item,index) in material" :key="index" style="height: 500px;">
<!-- <h3>{{ item }}</h3> -->
<img style="width: 100%; height: 500px;" :src="item.filePath">
</el-carousel-item>
</el-carousel>
@ -157,15 +110,14 @@
</el-dialog>
</div>
</div>
<genjinjilu-add ref="addAndUpdate" @handleReturn="visible=true" @created="dataCreated" @updated="dataUpdated" />
<genjinjilu-info ref="openInfo" @handleReturn="visible = true" />
<genjinjilu-add ref="addAndUpdate" v-show="viewState == 2 ||viewState == 3" @handleReturn="resetState" @created="dataCreated" @updated="dataUpdated"/>
<genjinjilu-info ref="openInfo" v-show="viewState == 4" @handleReturn="resetState"/>
<!--车辆需求-->
<cheliangxuqiu ref="openCheXu" @handleReturn="cheliangxuqiu"></cheliangxuqiu>
<cheliangxuqiu ref="openCheXu" v-show="viewState ==5" @handleReturn="cheliangxuqiu"/>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import { pagerList, del } from '@/api/jichuxinxi/crmvisit'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
@ -175,8 +127,7 @@ import genjinjiluInfo from './genjinjiluinfo.vue'
import { loginDetails } from '@/api/dictcommons/basemanufacturer'
import { getStorage } from '@/utils/auth'
import { getPcAppendix } from '@/api/jichuxinxi/commonappendix'
import cheliangxuqiu from "../cheliangxuqiu/cheliangxuqiu";
import cheliangxuqiu from '../cheliangxuqiu/cheliangxuqiu'
export default {
name: 'Genjinjiluguanli',
@ -187,9 +138,10 @@ export default {
genjinjiluInfo,
cheliangxuqiu
},
data() {
return {
viewState: 1,
btnVisible: false,
upLevel: '1',
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
@ -203,7 +155,7 @@ export default {
YongHuid: [],
listQuery: {
current: 1,
size: 20,
size: 10,
params: {
start_follow_time: '',
follow_type: '',
@ -213,12 +165,12 @@ export default {
follow_state: '',
follow_state_key: '',
customerSid: '',
staffSid: '',
},
staffSid: ''
}
},
makings: {
attachType: '0004',
linkSid: '',
linkSid: ''
},
material: [],
Kehu_Name: '',
@ -227,19 +179,9 @@ export default {
followupcategory: [],
followupstatus: [],
temp: {}, //
visible: false,
dialogFormVisible: false,
dialogFormVisible: false
}
},
computed: {
...mapGetters([
'id',
'roles',
'rolesIds',
'departmentId',
'departmentCode',
]),
},
created() {
//
this.init()
@ -260,14 +202,13 @@ export default {
this.postHuoquyonghu()
},
//
newpage(sid, name, showed) {
newpage(sid, name, status) {
if (status !== '02') {
this.btnVisible = true
}
this.Kehu_Name = name
this.kehu_uesrsid = sid
this.visible = true
this.getList()
if (showed && typeof showed === 'function') {
showed()
}
},
//
handleReset() {
@ -275,13 +216,12 @@ export default {
this.getList()
},
cheliangxuqiu() {
this.visible=true
this.viewState = 1
this.getList()
},
//
handleReturn() {
// window.location.reload()
this.visible = false
this.btnVisible = false
this.$emit('handleReturn')
},
//
@ -333,20 +273,15 @@ export default {
follow_state: '',
follow_state_key: '',
customerSid: '',
staffSid: '',
},
staffSid: ''
}
}
this.getList()
},
//
handleCreate() {
this.$refs.addAndUpdate.openCreate(
this.Kehu_Name,
this.kehu_uesrsid,
() => {
this.visible = false
}
)
this.viewState = 2
this.$refs['addAndUpdate'].openCreate(this.Kehu_Name, this.kehu_uesrsid)
},
//
handleSelectionChange(row) {
@ -360,30 +295,28 @@ export default {
handleUpdate() {
if (this.sids.length === 1) {
this.dialogStatus = 'update'
this.$refs.addAndUpdate.openUpdate(
this.sids[0],
this.kehu_uesrsid,
() => {
this.visible = false
}
)
this.viewState = 3
this.$refs['addAndUpdate'].openUpdate(this.sids[0], this.kehu_uesrsid)
} else if (this.sids.length > 1) {
this.$notify({
title: '提示',
message: '不能选中多个信息修改!!',
type: 'info',
duration: 2000,
duration: 2000
})
} else {
this.$notify({
title: '提示',
message: '没有选择信息!!',
type: 'error',
duration: 2000,
duration: 2000
})
return
}
},
resetState() {
this.viewState = 1
},
//
handleCheck(row) {
this.dialogFormVisible = true
@ -397,9 +330,8 @@ export default {
},
//
handleCheliang(row) {
this.$refs.openCheXu.cheLiang(this.kehu_uesrsid,this.upLevel,this.Kehu_Name,() => {
this.visible = false
})
this.viewState = 5
this.$refs.openCheXu.cheLiang(this.kehu_uesrsid, this.upLevel, this.Kehu_Name, '02')
},
// ID
handleDelete() {
@ -409,14 +341,14 @@ export default {
title: '提示',
message: '删除成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.getList()
} else {
this.$notify({
title: '删除失败',
message: response.msg,
type: 'error',
type: 'error'
})
}
})
@ -426,24 +358,18 @@ export default {
this.$confirm('确定要导出数据, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
type: 'warning'
})
},
//
dataCreated() {
// window.location.reload()
this.visible = true
this.getList()
},
//
dataUpdated() {
window.location.reload()
this.visible = true
this.getList()
},
//-----------------------------------------------
//-----------------------------------------------
//-----------------------------------------------
//
getShuJuZiDian() {
typeValues({ type: 'followForm' }).then((response) => {
if (response.code === '200') {
@ -465,11 +391,11 @@ export default {
getXingshi(value) {
let bb = null
this.followupform.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'followForm',
key: e.dictKey,
value: e.dictValue,
value: e.dictValue
}
}
})
@ -480,11 +406,11 @@ export default {
getLeiBie(value) {
let bb = null
this.followupcategory.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'followType',
key: e.dictKey,
value: e.dictValue,
value: e.dictValue
}
}
})
@ -495,24 +421,25 @@ export default {
getZhuaangtai(value) {
let bb = null
this.followupstatus.forEach((e) => {
if (e.dictKey == value) {
if (e.dictKey === value) {
bb = {
type: 'followState',
key: e.dictKey,
value: e.dictValue,
value: e.dictValue
}
}
})
this.listQuery.params.follow_state = bb.value
this.listQuery.params.follow_state_key = bb.key
},
},
}
}
}
</script>
<style scoped>
/deep/ .el-input__icon {
width: 40px;
}
.listtop {
display: flex;
justify-content: space-between;
@ -520,16 +447,20 @@ export default {
border: 1px solid #dfe4ed;
height: 40px;
}
.tit {
margin-bottom: -10px;
}
.pagination {
margin-bottom: -10px;
}
.line {
display: inline-block;
margin: 0px 15px;
}
.searchbtn {
border: #2cab69 1px solid;
color: #2cab69;

222
anrui-buscenter/anrui-buscenter-ui/src/views/kehuguanli/kehuziliao/kehudanganziliao.vue

@ -122,27 +122,14 @@
</template>
<script>
import {
pagerList,
save,
fetchFileListBySid,
deleteFilesOss,
} from "@/api/jichuxinxi/crmfile";
import Pagination from "@/components/pagination";
import pageye from "@/components/pagination/pageye";
import Upload from "@/components/uploadFile/FileUpload"; //
import { pagerList, save, fetchFileListBySid, deleteFilesOss } from '@/api/jichuxinxi/crmfile'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import Upload from '@/components/uploadFile/FileUpload' //
export default {
name: "KeHuDangAnZiLiao",
components: {
pagerList,
save,
fetchFileListBySid,
deleteFilesOss,
Pagination,
pageye,
Upload,
},
name: 'KeHuDangAnZiLiao',
components: { pagerList, save, fetchFileListBySid, deleteFilesOss, Pagination, pageye, Upload },
data() {
return {
btndisabled: false,
@ -151,81 +138,81 @@ export default {
isSearchShow: false,
dialogVisible: false,
dialogVisiblePhoto: false,
dialogImageUrl: "",
dialogImageUrl: '',
tableLoading: false,
activeName: "first",
activeName: 'first',
dataList: [],
PhotoList: [],
imglist: [],
listphoto: [],
customerName: "",
customerName: '',
temp: {
fileName: "",
attachType: "",
fileName: '',
attachType: '',
filePath: [],
linkSid: "",
name: window.sessionStorage.getItem("name"),
linkSid: '',
name: window.sessionStorage.getItem('name')
},
queryParams: {
current: 1,
size: 10,
total: 10,
params: {
fileName: "",
attachType: "",
linkSid: "",
},
fileName: '',
attachType: '',
linkSid: ''
}
},
multipleSelection: [],
};
multipleSelection: []
}
},
created() {
this.loadList();
this.loadList()
},
methods: {
Img(val) {
this.dialogVisiblePhoto = true;
this.dialogImageUrl = val;
this.dialogVisiblePhoto = true
this.dialogImageUrl = val
},
imgdata(item) {
this.PhotoList.push(item.data);
this.PhotoList.push(item.data)
},
removeIds(ids) {
if (ids.status == "ready") {
if (ids.status == 'ready') {
this.PhotoList.forEach((e, index) => {
if (e.indexOf(ids.name) == -1) {
this.PhotoList.splice(index, 1);
this.PhotoList.splice(index, 1)
}
});
})
} else {
deleteFilesOss({ fullPath: ids.url }).then((res) => {
if (res.code == "200") {
if (res.code === '200') {
this.listphoto.forEach((e, index) => {
if ((e.url = ids.url)) {
this.listphoto.splice(index, 1);
this.listphoto.splice(index, 1)
}
});
})
}
});
})
}
},
resetState() {
this.viewState = 1;
this.viewState = 1
this.queryParams = {
current: 1,
size: 10,
total: 0,
params: {
fileName: "",
attachType: "",
linkSid: "",
},
};
this.loadList();
fileName: '',
attachType: '',
linkSid: ''
}
}
this.loadList()
},
dosearch() {
this.queryParams.current = 1;
this.loadList();
this.queryParams.current = 1
this.loadList()
},
resetQuery() {
this.queryParams = {
@ -233,50 +220,47 @@ export default {
size: 10,
total: 0,
params: {
fileName: "",
attachType: "",
linkSid: "",
},
};
this.loadList();
fileName: '',
attachType: '',
linkSid: ''
}
}
this.loadList()
},
loadList() {
this.tableLoading = true;
pagerList(this.queryParams).then((resp) => {
if (resp.code == "200") {
this.tableLoading = false;
const data = resp.data;
this.queryParams.total = data.total;
this.dataList = data.records;
if (resp.code === '200') {
this.tableLoading = false
const data = resp.data
this.queryParams.total = data.total
this.dataList = data.records
}
}).catch(() => {
this.tableLoading = false;
this.tableLoading = false
});
},
newpage(sid, name, showed) {
this.viewState = 2;
this.loadList();
if (showed && typeof showed === "function") {
showed();
}
newpage(sid, name) {
this.viewState = 2
this.loadList()
},
handleSelectionChange(val) {
console.log(val);
this.multipleSelection = val;
console.log(val)
this.multipleSelection = val
},
//
indexMethod(index) {
var pagestart = (this.queryParams.current - 1) * this.queryParams.size;
var pageindex = index + 1 + pagestart;
return pageindex;
var pagestart = (this.queryParams.current - 1) * this.queryParams.size
var pageindex = index + 1 + pagestart
return pageindex
},
handleAdd(row) {
this.dialogVisible = true;
this.temp.linkSid = row.sid;
this.temp.fileName = row.fileName;
this.temp.attachType = row.attachType;
this.dialogVisible = true
this.temp.linkSid = row.sid
this.temp.fileName = row.fileName
this.temp.attachType = row.attachType
fetchFileListBySid(row.sid).then((res) => {
if (res.code == "200") {
if (res.code === '200') {
this.imglist = res.data.crmFileDetailsVoList;
if (this.imglist.length > 0) {
for (var i = 0; i < this.imglist.length; i++) {
@ -284,71 +268,71 @@ export default {
name: this.imglist[i].fileName,
url: this.imglist[i].filePath,
sid: this.imglist[i].sid,
isDel: this.imglist[i].isDel,
});
isDel: this.imglist[i].isDel
})
}
}
this.$nextTick(() => {
this.$refs["UploadImg"].show(this.listphoto);
});
this.$refs["UploadImg"].show(this.listphoto)
})
}
});
})
},
handleLook(row) {
this.dialogVisible = true;
this.viewPhoto = 2;
this.temp.linkSid = row.sid;
this.temp.fileName = row.fileName;
this.temp.attachType = row.attachType;
this.dialogVisible = true
this.viewPhoto = 2
this.temp.linkSid = row.sid
this.temp.fileName = row.fileName
this.temp.attachType = row.attachType
fetchFileListBySid(row.sid).then((res) => {
if (res.code == "200") {
this.imglist = res.data.crmFileDetailsVoList;
if (res.code === '200') {
this.imglist = res.data.crmFileDetailsVoList
}
});
},
handleSave() {
if (this.PhotoList.length > 0) {
for (var i = 0; i < this.PhotoList.length; i++) {
this.temp.filePath.push(this.PhotoList[i].toString());
this.temp.filePath.push(this.PhotoList[i].toString())
}
}
if (this.listphoto.length > 0) {
for (var i = 0; i < this.listphoto.length; i++) {
this.temp.filePath.push(this.listphoto[i].url);
this.temp.filePath.push(this.listphoto[i].url)
}
}
save(this.temp).then((resp) => {
if (resp.code == "200") {
if (resp.code === '200') {
this.$notify({
title: "提示",
message: "添加成功",
type: "success",
duration: 2000,
});
this.dialogVisible = false;
this.temp.filePath = [];
this.PhotoList = [];
this.imglist = [];
this.listphoto = [];
this.loadList();
title: '提示',
message: '添加成功',
type: 'success',
duration: 2000
})
this.dialogVisible = false
this.temp.filePath = []
this.PhotoList = []
this.imglist = []
this.listphoto = []
this.loadList()
}
});
})
},
dialogColse() {
this.viewPhoto = 1;
this.dialogVisible = false;
this.temp.filePath = [];
this.PhotoList = [];
this.imglist = [];
this.listphoto = [];
this.loadList();
this.viewPhoto = 1
this.dialogVisible = false
this.temp.filePath = []
this.PhotoList = []
this.imglist = []
this.listphoto = []
this.loadList()
},
Colse() {
this.viewState = 1;
this.$emit("handleReturn");
},
},
};
this.viewState = 1
this.$emit("handleReturn")
}
}
}
</script>
<style lang="scss" scoped>
.operate {

176
anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/jiansuocheliang.vue

@ -4,7 +4,7 @@
<div class="tab-header webtop">
<div>检索车辆信息</div>
<div>
<el-button type="primary" size="small" @click="AddUpdateReturn"></el-button>
<el-button type="primary" size="small" @click="AddUpdateReturn"></el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
@ -19,6 +19,9 @@
<el-form-item label="合同编号:">
<el-input v-model="listQuery.params.contractNo" placeholder="" clearable class="filter-item"/>
</el-form-item>
<el-form-item label="车架号:">
<el-input v-model="listQuery.params.VINNo" placeholder="" clearable class="filter-item"/>
</el-form-item>
<div class="searchbtns">
<el-button type="primary" @click="handleFilter">查询</el-button>
<el-button type="primary" @click="handresetting">重置</el-button>
@ -26,6 +29,11 @@
</el-form>
</div>
</div>
<div>
<div class="listtop">
<div class="tit">车辆列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center" />
@ -47,6 +55,7 @@
</el-table-column>
</el-table>
</div>
</div>
<div class="pages">
<div class="tit" />
<!-- 翻页 -->
@ -62,14 +71,14 @@
<script>
import {
getArrearsVehicleList,
arrearsVehicleApply,
} from "@/api/tesheshenpi/qiankuantiche";
import Pagination from "@/components/pagination";
import pageye from "@/components/pagination/pageye";
arrearsVehicleApply
} from '@/api/tesheshenpi/qiankuantiche'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
// import qiankuanticheshenqing from './qiankuanticheshenqing.vue'
export default {
name: "jiansuocheliang",
name: 'jiansuocheliang',
components: {
Pagination,
pageye,
@ -80,7 +89,7 @@ export default {
data() {
return {
isSearchShow: false,
searchxianshitit: "隐藏查询条件",
searchxianshitit: '隐藏查询条件',
btndisabled: false,
viewState: 2,
tableKey: 0,
@ -88,63 +97,64 @@ export default {
sids: [],
list: [],
datalist: [],
number: "",
number: '',
listLoading: false,
listQuery: {
current: 1,
size: 10,
params: {
contractNo: "",
customerName: "",
contractNo: '',
customerName: '',
VINNo: ''
},
total: 1,
total: 1
},
stateId: "",
stateId: '',
YongHuid: [],
temp: {}, //
};
temp: {} //
}
},
created() {
//
this.init();
this.init()
//
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow;
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = "隐藏查询条件";
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = "显示查询条件";
this.searchxianshitit = '显示查询条件'
}
},
init() {
this.getList();
this.getList()
},
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size;
var pageindex = index + 1 + pagestart;
return pageindex;
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
handleReturn() {
this.$emit("doback", this.showbackState);
this.$emit('doback', this.showbackState)
},
//
getList() {
this.listLoading = true;
this.listLoading = true
getArrearsVehicleList(this.listQuery).then((response) => {
this.listLoading = false;
if (response.code === "200") {
this.listQuery.total = response.data.total;
this.list = response.data.records;
this.listLoading = false
if (response.code === '200') {
this.listQuery.total = response.data.total
this.list = response.data.records
}
});
})
},
//
handleFilter() {
this.getList();
this.getList()
},
//
handresetting() {
@ -152,17 +162,18 @@ export default {
current: 1,
size: 10,
params: {
contractNo: "",
customerName: "",
contractNo: '',
customerName: '',
VINNo: ''
},
total: 0,
};
this.getList();
total: 0
}
this.getList()
},
//
handleSelectionChange(row) {
this.sids = [];
const aa = [];
this.sids = []
const aa = []
row.forEach((element) => {
aa.push({
vinNo: element.VINNo,
@ -174,76 +185,89 @@ export default {
modelSid: element.modelSid,
dealMoney: element.dealMoney,
applyDate: element.applyDate,
arrearsVehicleSid: "",
});
});
this.sids = aa;
arrearsVehicleSid: ''
})
})
this.sids = aa
},
//
showback(val) {
this.showbackState = val;
this.showbackState = val
},
// --
show(val, contractNo) {
this.number = contractNo;
if (contractNo !== "") {
this.getList();
this.number = contractNo
if (contractNo !== '') {
this.getList()
}
if (val.length > 0) {
val.forEach((element) => {
this.datalist.push({
vinNo: element.vinNo,
});
});
vinNo: element.vinNo
})
})
}
},
//
AddUpdateReturn() {
if (this.sids.length > 0) {
if (this.number !== "") {
if (this.number !== '') {
this.sids.forEach((e) => {
if (e.contractNo !== this.number) {
this.$notify({
title: "提示",
message: "所选车辆合同编号不一致,请重新选择!",
type: "success",
duration: 2000,
});
return;
}
});
title: '提示',
message: '所选车辆合同编号不一致,请重新选择!',
type: 'success',
duration: 2000
})
return
}
})
for (var i = 0; i < this.datalist.length; i++) {
for (var j = 0; j < this.sids.length; j++) {
if (this.datalist[i].vinNo == this.sids[j].vinNo) {
if (this.datalist[i].vinNo === this.sids[j].vinNo) {
this.$notify({
title: "提示",
message: "所选车架号已存在,请取消后重新选择!",
type: "success",
duration: 2000,
});
return;
title: '提示',
message: '所选车架号已存在,请取消后重新选择!',
type: 'success',
duration: 2000
})
return
}
}
}
this.$emit("return", this.sids, 1);
this.$emit('return', this.sids, 1)
} else {
arrearsVehicleApply(this.sids).then((res) => {
if (res.code == "200") {
this.$emit("return", this.sids, 2);
if (res.code === '200') {
this.$emit('return', this.sids, 2)
}
});
})
}
} else {
this.$notify({
title: "提示",
message: "请选择至少一条记录进行删除操作!",
type: "error",
duration: 2000,
});
title: '提示',
message: '请选择至少一条记录进行删除操作!',
type: 'error',
duration: 2000
})
}
}
}
}
},
},
};
</script>
<style scoped>
.listtop {
display: flex;
justify-content: space-between;
align-items: center;
border: 1px solid #dfe4ed;
height: 40px;
}
.tit {
margin-bottom: -10px;
}
.pagination {
margin-bottom: -10px;
}
</style>

2
anrui-buscenter/anrui-buscenter-ui/src/views/teshushenpi/qiankuanticheguanli/qiankuanticheguanli.vue

@ -70,7 +70,7 @@
<span>{{ scope.row.modelName }}</span>
</template>
</el-table-column>
<el-table-column label="累计欠款金额" align="center">
<el-table-column label="欠款金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.cumulativeArrearsMoney }}</span>
</template>

8
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/relation/modellibrary.vue

@ -178,7 +178,7 @@
</el-table>
</el-dialog>
<!-- 车型配置分页列表 -->
<configuration v-show="viewState == 2" ref="divConfiguration" @doback="resetState"/>
<configuration v-show="viewState == 2" ref="divConfiguration" @handleChexing="selectChexing" @doback="resetState"/>
</div>
</template>
@ -397,8 +397,12 @@
},
handleReturn() {
this.$emit('handleReturn') //
},
//
selectChexing(modelData){
this.$emit('handleChexing', modelData)
this.handleReturn()
}
}
}
</script>

10
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/relation/vehiclelibraryconfiguration.vue

@ -318,7 +318,7 @@ export default {
total: 0
},
row: {},//
peiZhiList: {} //
peiZhiList: [] //
}
},
methods: {
@ -421,6 +421,7 @@ export default {
},
showData(row) {
console.log('所选车型', row)
this.row = row
this.listQuery.params.modelSid = row.sid
this.modelSid = row.sid
this.modelName = row.vehicleAlias
@ -485,7 +486,6 @@ export default {
})
},
handleSelectionChange(row) {
console.log('选择', row)
if (row.length > 1) {
this.$message({
showClose: true,
@ -496,6 +496,7 @@ export default {
return
}
this.peiZhiList = row
console.log('选择车型配置peiZhiList', this.peiZhiList)
},
handleConfirm() {
if (this.peiZhiList.length > 0) {
@ -513,9 +514,8 @@ export default {
moreConfig: element.otherConfig, //
}
})
const type = 2
this.$emit('handleChexing', modelData,type)
this.handleReturn()
console.log('车型配置页面确认',modelData)
this.$emit('handleChexing', modelData)
} else {
this.$message({
showClose: true,

1
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/relation/yixiangchexingxuanze.vue

@ -141,7 +141,6 @@ export default {
showYixiang(sid) {
console.log('意向车型', sid)
this.listQuery.params.customerSid = sid
console.log('意向车型', this.listQuery.params.customerSid)
this.getList()
},
// ------------------

108
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshoudingdan/xiaoshoudingdanAdd.vue

@ -195,7 +195,7 @@
<div class="chosseBtn">
<el-row>
<el-col :span="4">
<el-radio v-model="isXuanzeShow" label="1">现车({{ xiancheCount }})</el-radio>
<el-radio @change="isXuanzeChange" v-model="isXuanzeShow" label="1">现车({{ xiancheCount }})</el-radio>
<span v-show="isXuanzeShow == '1'" class="bluezi" @click="openXianche()">选择</span>
</el-col>
<el-col :span="20">
@ -211,7 +211,7 @@
</el-row>
<el-row>
<el-col :span="4">
<el-radio v-model="isXuanzeShow" label="2">采购订单({{ caigouCount }})</el-radio>
<el-radio @change="isXuanzeChange" v-model="isXuanzeShow" label="2">采购订单({{ caigouCount }})</el-radio>
<span v-show="isXuanzeShow == '2'" class="bluezi" @click="openCaigou()">选择</span>
</el-col>
<el-col :span="20">
@ -226,7 +226,7 @@
</el-row>
<el-row>
<el-col :span="4">
<el-radio v-model="isXuanzeShow" label="3">排产()</el-radio>
<el-radio @change="isXuanzeChange" v-model="isXuanzeShow" label="3">排产()</el-radio>
</el-col>
<el-col :span="20">
<el-form-item>
@ -237,7 +237,7 @@
<!-- ==================== 上装 ======================================== -->
<div class="titleleft">
<el-checkbox v-model="checked">上装</el-checkbox>
<el-checkbox @change="shangzhuangChange" v-model="checked">上装</el-checkbox>
</div>
<div v-show="checked" class="shangzhuangstyle">
<el-row>
@ -396,7 +396,7 @@
</el-row>
<el-row>
<el-col :span="2">
<span>合计</span>
<span>合计</span>
</el-col>
<el-col :span="10">
<el-form-item>
@ -563,10 +563,10 @@
</el-form-item>
</el-col>
<el-col :span="2">
<span>需补交订金</span>
<span v-show="temp.busSalesOrderDeposit.depositTypeKey == '02'">需补交订金</span>
</el-col>
<el-col :span="4">
<el-form-item>
<el-form-item v-show="temp.busSalesOrderDeposit.depositTypeKey == '02'">
<span>{{ NumberMakeUpDeposit() }}</span>
</el-form-item>
</el-col>
@ -789,14 +789,13 @@
import {mapGetters} from 'vuex'
import {
dictType,
fetchDetailsBySid,
getGuaKaoCompanyType,
getOneBillNo,
getOneOrder,
getPdfByOrderSid,
getXianList,
saveOrderForm,
selectCount,
fetchDetailsBySid
selectCount
} from '@/api/salesManagement/orderManagement'
import {getNamesDown,} from '@/api/dictcommons/basemanufacturer'
import Pagination from '@/components/pagination'
@ -964,6 +963,7 @@ export default {
//
modelData: {},
isXuanzeShow: '',
radioTimes: 0,
//
xianchetotal: 1,
xiancheLoading: false,
@ -1321,16 +1321,14 @@ export default {
},
//
NumberMulFour() {
console.log('tai shu',111111)
//
if (this.temp.busSalesOrderPrice.singleFinalPrice == '') {
return 0
}
//
if (this.temp.busSalesOrderPrice.quantity == '' && this.quantity == '') {
if (this.temp.busSalesOrderPrice.quantity == '' || this.quantity == '') {
return 0
}
console.log('tai shu',222222)
var singleFinalPrice = 0
var quantity = 0
singleFinalPrice = parseFloat(this.temp.busSalesOrderPrice.singleFinalPrice)
@ -1339,15 +1337,10 @@ export default {
} else {
quantity = parseFloat(this.temp.busSalesOrderPrice.quantity)
}
console.log('tai shu', quantity)
console.log('11111', this.temp.busSalesOrderPrice.singleFinalPrice, singleFinalPrice, quantity)
console.log('11111.22', this.temp.busSalesOrderPrice.singleFinalPrice, singleFinalPrice, quantity)
const chejia1 = singleFinalPrice.toString()
const chejia2 = quantity.toString()
console.log('22222', chejia1, chejia2)
const value = Number(chejia1.replace(',', '')) * Number(chejia2.replace(',', ''))
this.temp.busSalesOrderPrice.priceSum = value.toString()
console.log('33333', value)
if (this.temp.busSalesOrderPrice.priceSum == '0') {
this.temp.busSalesOrderPrice.priceSum = '0'
return this.temp.busSalesOrderPrice.priceSum
@ -1398,7 +1391,6 @@ export default {
//
handleChangeNum(num, row) {
const value = Number(num) * Number(row.price)
console.log('数量改变' + num)
row.totalValue = value
return row.totalValue
},
@ -1436,13 +1428,11 @@ export default {
} else {
depositAll = 0
}
console.log('aaaaaaaa', depositAll)
if (this.temp.busDepositFictitiousList.length > 0) {
const jiezhuanAll = []
this.temp.busDepositFictitiousList.forEach((element) => {
jiezhuanAll.push(element.price)
})
console.log('bbbbbbbb020202', jiezhuanAll)
if (jiezhuanAll[0] == '') {
jiezhuan = 0
} else {
@ -1452,10 +1442,8 @@ export default {
} else {
jiezhuan = 0
}
console.log('bbbbbbbb', jiezhuan)
const s1 = depositAll.toString()
const s2 = jiezhuan.toString()
console.log('cccccccc', s1, s2)
const value = Number(s1.replace(',', '')) - Number(s2.replace(',', ''))
this.temp.busSalesOrderDeposit.makeUpDeposit = value.toString()
return this.temp.busSalesOrderDeposit.makeUpDeposit
@ -1485,14 +1473,12 @@ export default {
} else {
this.temp.busSalesOrderPrice.quantity = Number(this.temp.busSalesOrderPrice.quantity)
}
console.log('type', this.isXuanzeShow)
this.temp.type = this.isXuanzeShow
const priceList = []
this.temp.busSalesOrderDiscountList.forEach((element) => {
priceList.push(element.totalValue)
})
this.temp.priceList = priceList
console.log(this.temp)
this.$refs['dataForm'].validate((valid) => {
if (valid) {
this.FormLoading = true
@ -1703,19 +1689,16 @@ export default {
message: '请选择一个车型!',
type: 'error'
});
}
},
//
openZhuche() {
this.relState = '4.1'
this.$refs['zhucheyouhui'].showZhuche(this.temp.busSalesOrderDiscountList)
},
//
openXunidingdanList(index) {
console.log('虚拟订单', index)
this.relState = '5.1'
this.$refs['xuniList'].showXuni(this.temp.customerSid, index)
},
@ -1732,6 +1715,47 @@ export default {
});
}
},
//
isXuanzeChange(value) {
this.radioTimes++
if (this.radioTimes > 1) {
this.$confirm('已选择的车辆信息将会清空, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.temp.busSalesOrderVehicleList = []//
this.temp.busSalesVehicleOrderList = [] //
}).catch(() => {
// this.isXuanzeShow = '0'
if (this.temp.busSalesOrderVehicleList.length > 0){
this.isXuanzeShow = '1'
}else if (this.temp.busSalesVehicleOrderList.length > 0){
this.isXuanzeShow = '2'
}
});
}
console.log('车型确定选择变化值', value)
},
//
shangzhuangChange(value){
if (value == false){
this.temp.busSalesOrderMakeup = {
announcementModel: '', //
contractPath: '', //
moreConfig: '', //
overallDimension: '', //
plateMaterial: '', //
plateThickness: '', //
refitFactory: '', //
refitMethod: '', //
topName: '', //
topPrice: '', //
}
}
},
// ---------------- ----------------
//
xiancheindexMethod(index) {
@ -1747,7 +1771,6 @@ export default {
},
//
getXiancheList() {
console.log('现车查询', this.xiancheList)
this.xiancheLoading = true
this.xiancheList.params.customerSid = this.temp.customerSid
this.xiancheList.params.modelConfigSid = this.temp.busSalesOrderModel.modelConfigSid
@ -1826,9 +1849,10 @@ export default {
//
selectionXianche() {
if (this.xiancheChoice.length > 0) {
this.temp.busSalesOrderVehicleList = this.xiancheChoice
// this.temp.busSalesOrderVehicleList = this.xiancheChoice
const xincheSids = []
this.xiancheChoice.forEach((element) => {
this.temp.busSalesOrderVehicleList.push(element)
xincheSids.push(element.linkSid)
})
this.xiancheList.params.sidList = xincheSids
@ -1845,9 +1869,10 @@ export default {
//
selectionCaigou() {
if (this.caigouChoice.length > 0) {
this.temp.busSalesVehicleOrderList = this.caigouChoice
// this.temp.busSalesVehicleOrderList = this.caigouChoice
const caigouSids = []
this.caigouChoice.forEach((element) => {
this.temp.busSalesVehicleOrderList.push(element)
caigouSids.push(element.linkSid)
})
this.caigouList.params.sidList = caigouSids
@ -1875,7 +1900,6 @@ export default {
this.temp.customerClassKey = row.customerTypeKey
this.temp.customerPhoto = row.customerPhoto
this.customerList = row
console.log('选择客户',this.temp)
},
//
addCustomer() {
@ -1909,7 +1933,6 @@ export default {
selectCount(countList).then((response) => {
if (response.success) {
this.xiancheCount = response.data
console.log('数量', response.data)
}
})
},
@ -1941,14 +1964,13 @@ export default {
selectCount(countList).then((response) => {
if (response.success) {
this.xiancheCount = response.data
console.log('数量', response.data)
}
})
},
//
selectChexing(modelData, type) {
console.log('所得到的车型', modelData)
this.xiancheList.params.type = type
selectChexing(modelData) {
console.log('选择车型', modelData)
this.xiancheList.params.type = 3
this.modelData = modelData
this.temp.busSalesOrderModel = {
brandName: modelData.brandName,
@ -1973,10 +1995,8 @@ export default {
selectCount(countList).then((response) => {
if (response.success) {
this.xiancheCount = response.data
console.log('数量', response.data)
}
})
},
selectYouhui(row) {
@ -2019,21 +2039,13 @@ export default {
},
//
delXianche(index) {
console.log('对应索引', index)
this.temp.busSalesOrderVehicleList.splice(index, 1)
},
//
delCaigou(index) {
console.log('对应索引', index)
this.temp.busSalesOrderVehicleList.splice(index, 1)
},
// handleDelete(row) {
// getDelDis(row.orderSid).then((response) => {
// if (response.code === '200') {
// this.temp.busOrderDiscountDtoList = response.data
// }
// })
// },
addXunidingjin() {
this.temp.busDepositFictitiousList.push({
depositBillNo: '', //

2
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshouzhengce/xiaoshouzhengce.vue

@ -80,8 +80,8 @@
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%"
@selection-change="handleSelectionChange">
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column width="50px" type="selection" align="center"/>
<el-table-column width="80px" label="编号" type="index" :index="indexMethod" align="center"/>
<el-table-column width="150px" label="操作" align="center">
<template slot-scope="scope">
<div class="searchbtns"> <!--:disabled=""-->

73
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xunidingdan/xunidingdanguanli.vue

@ -4,11 +4,11 @@
<div class="tab-header webtop">
<div>销售虚拟订单管理</div>
<div>
<el-button type="primary" size="small" @click="handleGenerate()">生成销售订单</el-button>
<!-- <el-button type="primary" size="small" @click="handleGenerate()">生成销售订单</el-button>-->
<el-button type="primary" size="small" @click="handleCreate()">新增</el-button>
<el-button type="primary" size="small" @click="handleUpdate()">编辑</el-button>
<el-button type="danger" size="small" @click="handleDelete()">删除</el-button>
<el-button type="primary" size="small">打印</el-button>
<!-- <el-button type="primary" size="small">打印</el-button>-->
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
<el-dialog
@ -21,7 +21,7 @@
</div>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleConfirm()"> </el-button>
<el-button @click="dialogVisible = false"> </el-button>
<el-button @click="dialogVisible = false">退 </el-button>
</span>
</el-dialog>
</div>
@ -73,20 +73,16 @@
</div>
<div class="listtop">
<div class="tit">销售虚拟订车单列表</div>
<pageye v-show="total > 0" :total="total" :page.sync="listQuery.current" :limit.sync="listQuery.size"
class="pagination" @pagination="getList"/>
<pageye v-show="total > 0" :total="total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%"
@selection-change="handleSelectionChange">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center"/>
<el-table-column width="80px" label="号" type="index" :index="indexMethod" align="center"/>
<el-table-column width="80px" label="号" type="index" :index="indexMethod" align="center"/>
<el-table-column width="150px" label="操作" align="center">
<template slot-scope="scope">
<div class="searchbtns">
<el-button size="small" type="primary"
:disabled="scope.row.nodeState == '' ? false:scope.row.nodeState == '发起订单'?false : true"
@click="changeNodeState(scope.row)">办理
<el-button size="small" type="primary" :disabled="scope.row.nodeState == '' ? false:scope.row.nodeState == '发起订单'?false : true" @click="changeNodeState(scope.row)">办理
</el-button>
<el-button size="small" type="primary" @click="handleCheck(scope.row)">查看</el-button>
</div>
@ -97,7 +93,7 @@
<span>{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column label="虚拟订单类型" align="center">
<el-table-column label="单类型" align="center">
<template slot-scope="scope">
<span>{{ scope.row.depositBillType }}</span>
</template>
@ -147,8 +143,7 @@
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<pagination v-show="total > 0" :total="total" :page.sync="listQuery.current" :limit.sync="listQuery.size"
class="pagination" @pagination="getList"/>
<pagination v-show="total > 0" :total="total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
@ -173,8 +168,8 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './xunidingdanAdd.vue'
import divInfo from './xunidingdaninfo.vue'
import xunidingjinAdd from "./xunidingjinAdd";
import xunidingjininfo from "./xunidingjininfo";
import xunidingjinAdd from './xunidingjinAdd'
import xunidingjininfo from './xunidingjininfo'
import hetongdanganguanliInfo from '@/views/hetongguanli/hetongdanganguanli/hetongdanganguanliInfo.vue'
@ -218,22 +213,22 @@
customerName: '',
billType: '',
startTime: '',
endTime: '',
},
endTime: ''
}
},
submitDto: {
businessSid: '',
userSid: window.sessionStorage.getItem('userSid'),
userSid: window.sessionStorage.getItem('userSid')
},
updateDto: {
nodeState: '',
sid: '',
sid: ''
},
nodeState: '',
selectDate: undefined,
temp: {}, //
visible: true,
hetongdanganguanliInfoShow: false,
hetongdanganguanliInfoShow: false
// ------------------------------------
}
},
@ -243,8 +238,8 @@
'roles',
'rolesIds',
'departmentId',
'departmentCode',
]),
'departmentCode'
])
},
created() {
//
@ -273,7 +268,7 @@
handleReset() {
this.listQuery = {
current: 1,
size: 20,
size: 20
}
},
@ -330,31 +325,31 @@
const billType = bb.name
if (this.billTypeKey == '01') {
this.dialogVisible = false;
this.viewState = 5;
this.viewState = 5
this.$refs['divDing'].showAdd(billType, this.billTypeKey)
} else if (this.billTypeKey == '02') {
this.dialogVisible = false;
this.viewState = 2;
this.dialogVisible = false
this.viewState = 2
this.$refs['divadd'].showAdd(billType, this.billTypeKey)
}
} else {
this.$message({
message: '请选择虚拟订车单类型',
type: 'warning'
});
})
}
},
//
handleUpdate() {
if (this.sids.length == 1) {
if (this.billType[0] == '01') {
this.viewState = 5;
this.viewState = 5
this.dialogStatus = 'edit'
const sid = this.sids[0]
const nodeState = this.nodeState_list[0]
this.$refs['divDing'].showEdit(sid, nodeState)
} else {
this.viewState = 3;
this.viewState = 3
this.dialogStatus = 'edit'
const sid = this.sids[0]
const nodeState = this.nodeState_list[0]
@ -363,12 +358,12 @@
} else if (this.sids.length == 0) {
this.$notify({
title: '您还未选择,请选择数据!!!',
type: 'error',
type: 'error'
})
} else if (this.sids.length > 1) {
this.$notify({
title: '您未选择的数据过多,请选择一条数据编辑!!',
type: 'error',
type: 'error'
})
}
},
@ -468,14 +463,14 @@
title: '提示',
message: '删除成功',
type: 'success',
duration: 2000,
duration: 2000
})
this.getList()
} else {
this.$notify({
title: '删除失败',
message: response.msg,
type: 'error',
type: 'error'
})
}
})
@ -484,7 +479,7 @@
title: '提示',
message: '没有选择资方信息!!',
type: 'error',
duration: 2000,
duration: 2000
})
return
}
@ -495,11 +490,11 @@
console.log('111', row)
if (row.nodeState == '' || row.nodeState == '发起订单') {
if (row.depositBillTypeKey == '01') {
this.viewState = 5;
this.viewState = 5
this.dialogStatus = 'edit'
this.$refs['divDing'].showEdit(row.sid, row.nodeState)
} else if (row.depositBillTypeKey == '02') {
this.viewState = 3;
this.viewState = 3
this.dialogStatus = 'edit'
this.$refs['divadd'].showEdit(row.sid, row.nodeState)
}
@ -520,8 +515,8 @@
// duration: 2000,
// })
// })
},
},
}
}
}
</script>
<style scoped lang="scss">

193
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xunidingdan/xunidingjinAdd.vue

@ -7,7 +7,7 @@
<el-button type="primary" size="small" @click="handleCreate()">保存</el-button>
<el-button type="primary" size="small" :disabled="disabled" @click="handleSubmit()">提交
</el-button>
<el-button type="primary" size="small">打印</el-button>
<!-- <el-button type="primary" size="small">打印</el-button>-->
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
@ -24,35 +24,43 @@
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label">部门名称</span></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.orgName }}
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label">业务</span></el-form-item>
<el-form-item><span slot="label">销售专</span></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.staffName }} <!-- ?? -->
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label">虚拟订单类型</span></el-form-item>
</el-col>
<el-col :span="20" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
<span>{{temp.depositBillType}}</span>
</el-form-item>
</el-col>
</el-row>
<!-- <el-row>-->
<!-- <el-col :span="4" class="tleftb">-->
<!-- <el-form-item><span slot="label">虚拟订单类型</span></el-form-item>-->
<!-- </el-col>-->
<!-- <el-col :span="20" class="trightb">-->
<!-- <el-form-item>-->
<!-- <span>{{temp.depositBillType}}</span>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- </el-row>-->
<el-row>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>付款人</span></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="temp.draweeName" class="addinputw" placeholder=""
clearable/>
@ -61,7 +69,7 @@
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>联系电话</span></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-col :span="12" class="trightb">
<el-form-item>
<el-input v-model="temp.draweeMobile" class="addinputw" placeholder="" clearable/>
</el-form-item>
@ -71,7 +79,7 @@
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label">车辆台数</span></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="temp.vehicleNum" class="addinputw" placeholder=""
clearable/>
@ -80,7 +88,7 @@
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>订金金额</span></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-col :span="12" class="trightb">
<el-form-item>
<el-input v-model="temp.deposit" class="addinputw" placeholder="" clearable/>
</el-form-item>
@ -88,10 +96,10 @@
</el-row>
<el-row>
<el-col :span="3" class="tleftb">
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>付款日期</span></el-form-item>
</el-col>
<el-col :span="5" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
<el-date-picker
v-model="temp.paymentDate"
@ -101,26 +109,48 @@
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="3" class="tleftb">
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>付款方式</span></el-form-item>
</el-col>
<el-col :span="5" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
<el-select v-model="temp.payType" class="addinputw" placeholder="" @change="changePaymentType">
<el-option v-for="(item, index) in paymentType_list" :key="index.dictKey" :label="item.dictValue"
:value="item.dictKey"/>
<el-option v-for="(item, index) in paymentType_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="3" class="tleftb">
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>付款银行账号</span></el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="temp.payBankAcc" class="addinputw" placeholder="" clearable/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>收款银行</span></el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-select v-model="temp.proBankValue" class="addinputw" placeholder="" @change="changeproBank">
<el-option v-for="(item, index) in proBank_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-col>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>收款银行账号</span></el-form-item>
</el-col>
<el-col :span="5" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
<el-input v-model="temp.proBankAcc" class="addinputw" placeholder=""
clearable/>
<el-select v-model="temp.proBankAccValue" class="addinputw" placeholder="" @change="changeProBankAccValue">
<el-option v-for="(item, index) in ProBankAcc_list" :key="index.dictKey" :label="item.dictValue" :value="item.dictKey"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
</el-col>
<el-col :span="4" class="trightb">
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
@ -128,8 +158,7 @@
</el-col>
<el-col :span="20" class="trightb">
<el-form-item>
<el-input v-model="temp.remarks" class="addinputw" placeholder=""
clearable/>
<el-input v-model="temp.remarks" class="addinputw" placeholder="" clearable/>
</el-form-item>
</el-col>
</el-row>
@ -218,6 +247,8 @@
list: [],
paymentType_list: [],
customer_list: [],
proBank_list: [],
ProBankAcc_list: [],
temp: {
sid: '',
billNo: '',
@ -272,8 +303,9 @@
},
created() {
//
this.init();
this.getPaymentType();
this.init()
this.getPaymentType()
this.getProBank()
},
methods: {
// ----------------------------
@ -402,7 +434,57 @@
this.temp.payTypeKey = bb.key
console.log('name', this.temp.payType)
},
//----------------------------
getProBank() {
typeValues({
type: 'receiptBank'
}).then((res) => {
if (res.code === '200') {
this.proBank_list = res.data
console.log('下拉框请求111', res.data)
}
})
},
changeproBank(value) {
console.log('触发下拉框按钮')
let bb = null
this.proBank_list.forEach((e) => {
if (e.dictKey == value) {
bb = {
type: e.dictType,
name: e.dictValue,
key: e.dictKey,
sid: e.sid
}
}
})
this.temp.proBankValue = bb.name
this.temp.proBankKey = bb.key
this.getProBankAcc(bb.sid)
},
getProBankAcc(sid) {
typeValues({ psid: sid, type: 'receiptAccount' }).then((res) => {
if (res.code === '200') {
this.ProBankAcc_list = res.data
console.log('下拉框请求111', res.data)
}
})
},
changeProBankAccValue(value) {
console.log('触发下拉框按钮')
let bb = null
this.ProBankAcc_list.forEach((e) => {
if (e.dictKey == value) {
bb = {
type: e.dictType,
name: e.dictValue,
key: e.dictKey,
sid: e.sid
}
}
})
this.temp.proBankAccValue = bb.name
this.temp.proBankAccKey = bb.key
},
//
handleCreate() {
this.$refs['dataForm'].validate((valid) => {
@ -411,7 +493,7 @@
if (valid) {
this.FormLoading = true
this.dialogStatus = 'create'
if (this.stateId === '0') {
// if (this.stateId === '0') {
this.temp.staffSid = this.YongHuid.staffSid
this.temp.staffName = this.staffName
this.temp.orgName = this.orgName
@ -437,34 +519,35 @@
})
}
})
} else {
this.temp.staffSid = this.YongHuid.staffSid
this.temp.orgSid = this.YongHuid.organizationSid
this.temp.orgName = this.orgName
this.temp.staffName = this.staffName
this.temp.userSid = window.sessionStorage.getItem('userSid')
this.temp.customerList = this.list
this.getUrl()
update(this.temp).then((response) => {
this.dialogStatus = 'update'
this.FormLoading = false
if (response.code === '200') {
this.$notify({
title: '提示',
message: '修改成功',
type: 'success',
duration: 2000,
})
this.handleReturn('true')
} else {
this.$notify({
title: '失败',
message: '修改失败',
type: 'error',
})
}
})
}
// }
// else {
// this.temp.staffSid = this.YongHuid.staffSid
// this.temp.orgSid = this.YongHuid.organizationSid
// this.temp.orgName = this.orgName
// this.temp.staffName = this.staffName
// this.temp.userSid = window.sessionStorage.getItem('userSid')
// this.temp.customerList = this.list
// this.getUrl()
// update(this.temp).then((response) => {
// this.dialogStatus = 'update'
// this.FormLoading = false
// if (response.code === '200') {
// this.$notify({
// title: '',
// message: '',
// type: 'success',
// duration: 2000,
// })
// this.handleReturn('true')
// } else {
// this.$notify({
// title: '',
// message: '',
// type: 'error',
// })
// }
// })
// }
}
})
},

58
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xunidingdan/xunidingjininfo.vue

@ -8,7 +8,7 @@
:disabled="this.nodeState == '' ? false : this.nodeState == '发起订单' ? false : true"
@click="handleSubmit()">提交
</el-button>
<el-button type="primary" size="small">打印</el-button>
<!-- <el-button type="primary" size="small">打印</el-button>-->
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
@ -25,30 +25,38 @@
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label">部门名称</span></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.orgName }}
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label">业务</span></el-form-item>
<el-form-item><span slot="label">销售专</span></el-form-item>
</el-col>
<el-col :span="8" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.staffName }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label">虚拟订单类型</span></el-form-item>
</el-col>
<el-col :span="20" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
<span>{{temp.depositBillType}}</span>
</el-form-item>
</el-col>
</el-row>
<!-- <el-row>-->
<!-- <el-col :span="4" class="tleftb">-->
<!-- <el-form-item><span slot="label">虚拟订单类型</span></el-form-item>-->
<!-- </el-col>-->
<!-- <el-col :span="20" class="trightb">-->
<!-- <el-form-item>-->
<!-- <span>{{temp.depositBillType}}</span>-->
<!-- </el-form-item>-->
<!-- </el-col>-->
<!-- </el-row>-->
<el-row>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>付款人</span></el-form-item>
@ -87,30 +95,52 @@
</el-row>
<el-row>
<el-col :span="3" class="tleftb">
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>付款日期</span></el-form-item>
</el-col>
<el-col :span="5" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.paymentDate }}
</el-form-item>
</el-col>
<el-col :span="3" class="tleftb">
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>付款方式</span></el-form-item>
</el-col>
<el-col :span="5" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.payType }}
</el-form-item>
</el-col>
<el-col :span="3" class="tleftb">
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>付款银行账号</span></el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.payBankAcc }}
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>收款银行</span></el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.proBankValue }}
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
<el-form-item><span slot="label"><span class="icon">*</span>收款银行账号</span></el-form-item>
</el-col>
<el-col :span="5" class="trightb">
<el-col :span="4" class="trightb">
<el-form-item>
{{ temp.proBankAcc }}
{{ temp.proBankAccValue }}
</el-form-item>
</el-col>
<el-col :span="4" class="tleftb">
</el-col>
<el-col :span="4" class="trightb">
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="tleftb">

Loading…
Cancel
Save