Commit 7029bc6b authored by huyf's avatar huyf

Merge remote-tracking branch 'origin/dev1.6' into dev1.6

parents 52e1e6fc 668f950b
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
NODE_ENV = 'production' NODE_ENV = 'production'
# 页面标题 # 页面标题
VUE_APP_TITLE = 捷道管理系统 - 开发 VUE_APP_TITLE = 捷道管理系统 - 开发
# 捷道管理系统/开发环境 # 捷道管理系统/开发环境
VUE_APP_BASE_API = 'https://api.sit.jdshangmen.com' VUE_APP_BASE_API = 'https://api.sit.jdshangmen.com'
......
...@@ -70,3 +70,12 @@ export function getCustomerAvailableCouponList(data){ ...@@ -70,3 +70,12 @@ export function getCustomerAvailableCouponList(data){
data data
}) })
} }
// 更新优惠券有效期
export function updateEndtime(data){
return request({
url: '/product/coupon/update/endTime',
method: 'put',
data
})
}
\ No newline at end of file
...@@ -51,6 +51,16 @@ export function getCustomerPage(query) { ...@@ -51,6 +51,16 @@ export function getCustomerPage(query) {
params: query params: query
}) })
} }
/**
* 获得部门客户
* */
export function getCustomerDeptPage(query){
return request({
url:'/ecw/customer/deptPage',
method:'get',
params:query
})
}
// 获得客户下拉 // 获得客户下拉
export function getCustomerSelect(query) { export function getCustomerSelect(query) {
...@@ -350,3 +360,22 @@ export function testEnterToOpenSea(customerId) { ...@@ -350,3 +360,22 @@ export function testEnterToOpenSea(customerId) {
params: {customerId} params: {customerId}
}) })
} }
/**
* 获取常用提货网点
* */
export function getServiceNetwork(){
return request({
url:'/ecw/node/list',
method:'get',
})
}
//设置空运客户
export function changeCustomerAir(data){
return request({
url:'/ecw/customer/change-customer-air',
method:'put',
data
})
}
...@@ -124,3 +124,12 @@ export function recovery(id) { ...@@ -124,3 +124,12 @@ export function recovery(id) {
params: {id} params: {id}
}) })
} }
// 获取部门报价单列表
export function offerDeptPage(params) {
return request({
url: '/ecw/offer/dept/page',
method: 'get',
params
})
}
...@@ -505,3 +505,39 @@ export function warehousePictureList(data){ ...@@ -505,3 +505,39 @@ export function warehousePictureList(data){
data data
}) })
} }
// 获得部门订单分页
export function deptOrderPage(params){
return request({
url: '/ecw/order/dept-order-page',
method: 'GET',
params
})
}
// 获得订单统计
export function orderStatistics(params){
return request({
url: '/ecw/order/statistics',
method: 'GET',
params
})
}
// 获得我的订单统计
export function orderMyStatistics(params){
return request({
url: '/ecw/order/my/statistics',
method: 'GET',
params
})
}
// 获得部门订单统计
export function orderDeptStatistics(params){
return request({
url: '/ecw/order/dept/statistics',
method: 'GET',
params
})
}
\ No newline at end of file
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
<div class="line"> <div class="line">
<div class="label">{{$t('姓名')}}</div> <div class="label">{{$t('姓名')}}</div>
<div class="value">{{item.contactsName}}</div> <div class="value">{{item.contactsName}}</div>
<el-tag v-if="item.isInOpenSea" type="danger" effect="dark">{{$t('')}}</el-tag>
</div> </div>
<div class="line"> <div class="line">
<div class="label">{{$t('电话')}}</div> <div class="label">{{$t('电话')}}</div>
......
...@@ -264,11 +264,18 @@ export const constantRoutes = [ ...@@ -264,11 +264,18 @@ export const constantRoutes = [
meta: {title: '佣金设置', titleEn:'Commission settings', icon: '', activeMenu: '/customer/customerCommissionInfo'}, meta: {title: '佣金设置', titleEn:'Commission settings', icon: '', activeMenu: '/customer/customerCommissionInfo'},
props: true, props: true,
}, },
// {
// path: 'edit/:customerId(\\d+)',
// component: (resolve) => import('@/views/ecw/customer/edit'),
// props: true,
// name: 'customerEdit',
// meta: {title:'编辑客户',titleEn:'Edit Customer', icon: ''}
// },
{ {
path: 'edit/:customerId(\\d+)', path: 'edit-distribution/:customerId(\\d+)',
component: (resolve) => import('@/views/ecw/customer/edit'), component: (resolve) => import('@/views/ecw/customer/edit'),
props: true, props: true,
name: 'customerEdit', name: 'allocatedCustomerEdit',
meta: {title:'编辑客户',titleEn:'Edit Customer', icon: ''} meta: {title:'编辑客户',titleEn:'Edit Customer', icon: ''}
}, },
{ {
......
...@@ -117,6 +117,7 @@ export const DICT_TYPE = { ...@@ -117,6 +117,7 @@ export const DICT_TYPE = {
ECW_CANCEL_PICK_TYPE: 'cancel_pick_type', // 取消放货类型 ECW_CANCEL_PICK_TYPE: 'cancel_pick_type', // 取消放货类型
ECW_CUSTOMER_RESOURCE_TYPE: 'customer_resource_type', // 客户资源类型 ECW_CUSTOMER_RESOURCE_TYPE: 'customer_resource_type', // 客户资源类型
ECW_CUSTOMER_TRANSPORT_TYPE: 'customer_transport_type', // 客户出货渠道(跟运输方式相同,但是显示全部) ECW_CUSTOMER_TRANSPORT_TYPE: 'customer_transport_type', // 客户出货渠道(跟运输方式相同,但是显示全部)
ECW_ORDER_APPROVAL_TYPE: 'order_approval_type', // 订单相关审批类型
//--------ecw--------- //--------ecw---------
CUSTOMER_STATUS: 'customer_status', CUSTOMER_STATUS: 'customer_status',
CUSTOMER_SOURCE: 'customer_source', CUSTOMER_SOURCE: 'customer_source',
......
...@@ -84,7 +84,7 @@ export function addDateRange(params, dateRange, propName) { ...@@ -84,7 +84,7 @@ export function addDateRange(params, dateRange, propName) {
* 大小为 2 的数组,每个时间为 yyyy-MM-dd 格式 * 大小为 2 的数组,每个时间为 yyyy-MM-dd 格式
* @param propName 加入的参数名,可以为空 * @param propName 加入的参数名,可以为空
*/ */
export function addBeginAndEndTime(params, dateRange, propName) { export function addBeginAndEndTime(params, dateRange, propName,isTime = true) {
// 必须传入参数 // 必须传入参数
if (!dateRange) { if (!dateRange) {
return params; return params;
...@@ -97,10 +97,10 @@ export function addBeginAndEndTime(params, dateRange, propName) { ...@@ -97,10 +97,10 @@ export function addBeginAndEndTime(params, dateRange, propName) {
} }
// 设置参数 // 设置参数
if (dateRange[0]) { if (dateRange[0]) {
params['begin' + propName] = dateRange[0] + ' 00:00:00'; params['begin' + propName] = dateRange[0] + (isTime ? ' 00:00:00':'');
} }
if (dateRange[1]) { if (dateRange[1]) {
params['end' + propName] = dateRange[1] + ' 23:59:59'; params['end' + propName] = dateRange[1] + (isTime ? ' 23:59:59' : '');
} }
return params; return params;
} }
......
...@@ -188,6 +188,8 @@ ...@@ -188,6 +188,8 @@
v-hasPermi="['ecw:coupon:update']">{{ $t('编辑') }}</el-button> v-hasPermi="['ecw:coupon:update']">{{ $t('编辑') }}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleCopy(scope.row)" <el-button size="mini" type="text" icon="el-icon-edit" @click="handleCopy(scope.row)"
v-hasPermi="['ecw:coupon:create']">{{ $t('复制') }}</el-button> v-hasPermi="['ecw:coupon:create']">{{ $t('复制') }}</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="updateEndtimeItem = scope.row"
v-hasPermi="['ecw:coupon:update']">{{ $t('延期') }}</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)" <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
v-hasPermi="['ecw:coupon:delete']">{{ $t('删除') }}</el-button> v-hasPermi="['ecw:coupon:delete']">{{ $t('删除') }}</el-button>
</template> </template>
...@@ -197,11 +199,31 @@ ...@@ -197,11 +199,31 @@
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize" <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/> @pagination="getList"/>
<el-dialog :title="$t('延期活动时间')" :visible="!!updateEndtimeItem" :before-close="() => updateEndtimeItem=null">
<div v-if="updateEndtimeItem">
{{$t('优惠活动“{name}”的当前结束时间:{time}',{
name: updateEndtimeItem.name,
time: updateEndtimeItem.endTime || $t('永久有效')
})}}
</div>
<div>{{$t('请问您确定延长活动吗?')}}</div>
<el-form :model="updateEndtimeForm" :rules="updateEndtimeRules" label-position="left" >
<el-form-item :label="$t('活动结束时间')" prop="endTime">
<el-date-picker type="datetime" value-format="yyyy-MM-dd HH:mm:ss" v-model="updateEndtimeForm.endTime" placeholder=""></el-date-picker>
<el-checkbox :label="$t('永久有效')" v-model="updateEndtimeForm.forever" class="ml-10"></el-checkbox>
</el-form-item>
</el-form>
<div slot="footer">
<el-button type="primary" @click="updateEndtime">{{$t('确定')}}</el-button>
<el-button type="default" @click="updateEndtimeItem = null">{{$t('取消')}}</el-button>
</div>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { createCoupon, updateCoupon, deleteCoupon, getCoupon, getCouponPage, exportCouponExcel } from "@/api/ecw/coupon"; import { createCoupon, updateCoupon, deleteCoupon, getCoupon, getCouponPage, exportCouponExcel, updateEndtime } from "@/api/ecw/coupon";
export default { export default {
name: "EcwCouponIndex", name: "EcwCouponIndex",
...@@ -260,9 +282,20 @@ export default { ...@@ -260,9 +282,20 @@ export default {
form: {}, form: {},
// 表单校验 // 表单校验
rules: { rules: {
} },
updateEndtimeItem: null, // 延期操作的数据
updateEndtimeForm:{} // 延长有效期的表单数据
}; };
}, },
computed:{
updateEndtimeRules(){
return {
endTime: [
{required: !this.updateEndtimeForm.forever, message: "请填写结束时间"}
]
}
}
},
created() { created() {
this.getList(); this.getList();
}, },
...@@ -331,6 +364,18 @@ export default { ...@@ -331,6 +364,18 @@ export default {
this.$message.success(this.$t("删除成功")); this.$message.success(this.$t("删除成功"));
}).catch(() => {}); }).catch(() => {});
}, },
// 延期
updateEndtime(){
if(!this.updateEndtimeForm.forever && !this.updateEndtimeForm.endTime){
return this.$message.error(this.$t("请填写结束时间"))
}
let form = {couponId: this.updateEndtimeItem.couponId, ...this.updateEndtimeForm}
form.isValidity = !form.forever // 是否设置有效期
updateEndtime(form).then(res => {
this.getList()
this.updateEndtimeItem = null
})
},
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {
// 处理查询参数 // 处理查询参数
......
...@@ -107,9 +107,13 @@ ...@@ -107,9 +107,13 @@
<el-form-item label="100外币兑人民币汇率" prop="huilv"> <el-form-item label="100外币兑人民币汇率" prop="huilv">
<el-input v-model="form.huilv" placeholder="请输入100外币兑人民币汇率汇率" /> <el-input v-model="form.huilv" placeholder="请输入100外币兑人民币汇率汇率" />
</el-form-item> </el-form-item>
<el-form-item label="100人民币兑外币汇率" prop="huilv">
{{ form.huilv ? (10000 / form.huilv).toFixed(6) : ''}} <el-form-item label="100人民币兑外币汇率" prop="exchangeToFc">
<el-input v-model="form.exchangeToFc" placeholder="请输入100人民币兑外币汇率" />
</el-form-item> </el-form-item>
<!-- <el-form-item label="100人民币兑外币汇率" prop="huilv">
{{ form.huilv ? (10000 / form.huilv).toFixed(6) : ''}}
</el-form-item> -->
<el-form-item :label="$t('排序')" prop="aorder"> <el-form-item :label="$t('排序')" prop="aorder">
<el-input v-model="form.aorder" :placeholder="$t('请输入排序')" /> <el-input v-model="form.aorder" :placeholder="$t('请输入排序')" />
</el-form-item> </el-form-item>
......
...@@ -33,7 +33,10 @@ ...@@ -33,7 +33,10 @@
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('出货渠道')" prop="transportType"> <el-form-item :label="$t('出货渠道')" prop="transportType">
<dict-selector :type="DICT_TYPE.ECW_CUSTOMER_TRANSPORT_TYPE" form-type="checkbox" multiple v-model="form.transportType"></dict-selector> <!-- <dict-selector :type="DICT_TYPE.ECW_CUSTOMER_TRANSPORT_TYPE" form-type="checkbox" multiple v-model="form.transportType"></dict-selector>-->
<el-checkbox-group v-model="form.transportType">
<el-checkbox v-for="item in getDictDatas(DICT_TYPE.ECW_CUSTOMER_TRANSPORT_TYPE)" :key="item.value" :label="item.value" :disabled="item.value == 4">{{item.label}}</el-checkbox>
</el-checkbox-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
...@@ -42,8 +45,13 @@ ...@@ -42,8 +45,13 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('资源类型')" prop="remarks"> <!-- <el-form-item :label="$t('资源类型')" prop="remarks">-->
<dict-selector :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="form.resourceType" formatter="number"></dict-selector> <!-- <dict-selector :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="form.resourceType" formatter="number"></dict-selector>-->
<!-- </el-form-item>-->
<el-form-item :label="$t('常用提货网点')" prop="remarks">
<el-select v-model="form.pickupPoint">
<el-option v-for="item in serviceNetworkList " :value="item.id" :label="isChinese ? item.titleZh : item.titleEn "></el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
...@@ -106,7 +114,8 @@ ...@@ -106,7 +114,8 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item :label="$t('客户经理')" prop="customerService"> <el-form-item :label="$t('客户经理')" prop="customerService">
<el-select v-model="form.customerService" :placeholder="$t('请选择客户经理')" :disabled="(customerId !== '0' || isCustomerServiceConfirmed)"> {{$route.nam}}
<el-select v-model="form.customerService" :placeholder="$t('请选择客户经理')" :disabled="((customerId !== '0' && $route.name !== 'allocatedCustomerEdit')) || isCustomerServiceConfirmed">
<el-option v-for="item in serviceUserList" <el-option v-for="item in serviceUserList"
:key="item.id" :label="item.nickname" :value="item.id" /> :key="item.id" :label="item.nickname" :value="item.id" />
</el-select> </el-select>
...@@ -205,6 +214,14 @@ ...@@ -205,6 +214,14 @@
<customer-line-table v-if="showPao1" :warehouse-list="warehouseList" :import-city-list="importCityList" v-model="paoLines" :zhong-pao-type="2"></customer-line-table> <customer-line-table v-if="showPao1" :warehouse-list="warehouseList" :import-city-list="importCityList" v-model="paoLines" :zhong-pao-type="2"></customer-line-table>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12">
<el-form-item v-hasPermi="['ecw:customer:query-card']" :label="$t('身份证姓名')">
<el-input v-model="form.carName"></el-input>
</el-form-item>
<el-form-item v-hasPermi="['ecw:customer:query-card']" :label="$t('身份证号码')">
<el-input v-model="form.carNo" ></el-input>
</el-form-item>
</el-col>
</el-row> </el-row>
<el-card class="box-card"> <el-card class="box-card">
...@@ -417,7 +434,7 @@ import { ...@@ -417,7 +434,7 @@ import {
getCustomerPage, memberUserList, getCustomerPage, memberUserList,
updateCustomer, updateCustomer,
userMemberUserList, userMemberUserList,
getCustomerLines, fillupCustomeInfo getCustomerLines, fillupCustomeInfo, getServiceNetwork
} from '@/api/ecw/customer' } from '@/api/ecw/customer'
import {getNodeList} from "@/api/ecw/node" import {getNodeList} from "@/api/ecw/node"
import { getProductTypeList } from '@/api/ecw/productType' import { getProductTypeList } from '@/api/ecw/productType'
...@@ -437,9 +454,7 @@ import MemberSelector from '@/components/MemberSelector' ...@@ -437,9 +454,7 @@ import MemberSelector from '@/components/MemberSelector'
export default { export default {
name: "edit", name: "edit",
props: {
customerId: String,
},
components: { components: {
Template, Template,
upload, upload,
...@@ -517,6 +532,10 @@ export default { ...@@ -517,6 +532,10 @@ export default {
getCountryListAll().then(r => { getCountryListAll().then(r => {
this.countryList = r.data this.countryList = r.data
}) })
// 获取服务网点
getServiceNetwork().then(r =>{
this.serviceNetworkList = r.data
})
}, },
data(){ data(){
return { return {
...@@ -566,7 +585,8 @@ export default { ...@@ -566,7 +585,8 @@ export default {
zhongLines: [], // 重货线路 zhongLines: [], // 重货线路
paoLines: [], // 泡货线路 paoLines: [], // 泡货线路
memberList:[],//会员列表 memberList:[],//会员列表
selectMemberList:[]//选中会员列表 selectMemberList:[],//选中会员列表
serviceNetworkList:[] //网点列表
} }
}, },
...@@ -751,13 +771,15 @@ export default { ...@@ -751,13 +771,15 @@ export default {
weightUnit: undefined, weightUnit: undefined,
createTime: undefined, createTime: undefined,
isShowTidanPrice:true, isShowTidanPrice:true,
carName:undefined,
carNo:undefined,
}; };
this.form.createTime = (new Date()).getTime() this.form.createTime = (new Date()).getTime()
this.resetForm("form"); this.resetForm("form");
}, },
getCustomer(id) { getCustomer(id) {
return getCustomer(id).then(response => { return getCustomer(id).then(response => {
this.form = { ...this.form, ...response.data, id: this.customerId }; this.form = { ...this.form, ...response.data, id: this.customerId,transportType: response.data.transportType.split(',') };
this.open = true; this.open = true;
this.title = this.$t('修改客户'); this.title = this.$t('修改客户');
this.getZhongPao() this.getZhongPao()
...@@ -776,7 +798,7 @@ export default { ...@@ -776,7 +798,7 @@ export default {
handleAddContact() { handleAddContact() {
this.form.customerContacts.push({ this.form.customerContacts.push({
"areaCode": "", "areaCode": "",
// "customerId": 0, // "customerId": 0,q
"department": "", "department": "",
"email": "", "email": "",
"isDefault": this.form.customerContacts.length === 0 ? 1 : 0, "isDefault": this.form.customerContacts.length === 0 ? 1 : 0,
...@@ -817,6 +839,9 @@ export default { ...@@ -817,6 +839,9 @@ export default {
userId(){ userId(){
return this.$store.state.user.id return this.$store.state.user.id
}, },
customerId(){
return this.$route.params.customerId;
},
/* userMemberUser(){ /* userMemberUser(){
let list = this.memberList.filter(item => { let list = this.memberList.filter(item => {
return this.selectMemberList.findIndex(i => i.id === item.id) < 0 return this.selectMemberList.findIndex(i => i.id === item.id) < 0
......
...@@ -46,13 +46,18 @@ ...@@ -46,13 +46,18 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('创建时间')"> <el-form-item :label="$t('创建时间')">
<el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd" <el-date-picker
type="daterange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" /> type="datetimerange"
clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('信用等级')" prop="department"> <el-form-item :label="$t('信用等级')" prop="department">
<el-select clearable v-model="queryParams.creditLevel" > <el-select clearable v-model="queryParams.creditLevel" >
<el-option v-for="(item,index) in creditList" :label="isChinese ? item.nameZh : item.nameEn" :key="index" :value="item.id" ></el-option> <el-option v-for="(item,index) in creditList" :label="isChinese ? item.nameZh : item.nameEn" :key="index" :value="item.id" ></el-option>
</el-select> </el-select>
</el-form-item>
<el-form-item v-if="$route.path === '/customer/customer'" :label="$t('市场获客')" prop="department">
<dict-selector :type="DICT_TYPE.ECW_CUSTOMER_RESOURCE_TYPE" v-model="queryParams.marketType" formatter="number"></dict-selector>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button> <el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
...@@ -74,6 +79,14 @@ ...@@ -74,6 +79,14 @@
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading" <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button> v-hasPermi="['ecw:customer:export']">{{$t('导出')}}</el-button>
</el-col> </el-col>
<el-col :span="1.5">
<el-button :disabled="!selectCustomerList.length" @click="setChangeCustomerAir(true)" v-if="$route.path === '/customer/customer'" type="primary" plain size="mini" :loading="exportLoading"
v-hasPermi="['ecw:customer:transport']" >{{$t('设为空运客户')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button :disabled="!selectCustomerList.length" @click="setChangeCustomerAir(false)" v-if="$route.path === '/customer/customer'" type="primary" plain size="mini" :loading="exportLoading"
v-hasPermi="['ecw:customer:transport']">{{$t('设为非空运客户')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
...@@ -308,8 +321,8 @@ ...@@ -308,8 +321,8 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="重货标准(CBM)" prop="weightUnit"> <el-form-item :label="$t('重货标准(CBM)')" prop="weightUnit">
<el-input v-model="form.weightUnit" placeholder="请输入重货标准(CBM)" /> <el-input v-model="form.weightUnit" :placeholder="$t('请输入重货标准(CBM)')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
...@@ -504,7 +517,7 @@ ...@@ -504,7 +517,7 @@
<script> <script>
import { import {
createCustomer, updateCustomer, deleteCustomer, getCustomer, createCustomer, updateCustomer, deleteCustomer, getCustomer,
getCustomerPage, exportCustomerExcel, testEnterToOpenSea getCustomerPage, exportCustomerExcel, testEnterToOpenSea, getCustomerDeptPage, changeCustomerAir
} from "@/api/ecw/customer"; } from "@/api/ecw/customer";
import { getDictDatas, DICT_TYPE } from '@/utils/dict'; import { getDictDatas, DICT_TYPE } from '@/utils/dict';
import {CommonStatusEnum} from '@/utils/constants' import {CommonStatusEnum} from '@/utils/constants'
...@@ -522,19 +535,6 @@ import Template from "@/views/cms/template/index.vue"; ...@@ -522,19 +535,6 @@ import Template from "@/views/cms/template/index.vue";
export default { export default {
name: "EcwCustomerIndex", name: "EcwCustomerIndex",
activated(){
this.getList();
},
computed:{
isChinese(){
return this.$i18n.locale === 'zh_CN'
},
channel(){
return (val)=>{
return !!val ? this.getDictDatas(this.DICT_TYPE.ECW_CUSTOMER_TRANSPORT_TYPE).filter(i => (val.split(',') || []).includes(i.value)).map(i => this.isChinese ? i.label : i.labelEn ).join('') :''
}
}
},
components: { components: {
Template, Template,
upload, upload,
...@@ -575,6 +575,7 @@ export default { ...@@ -575,6 +575,7 @@ export default {
department: null, department: null,
creditLevel:null, creditLevel:null,
country:null, country:null,
marketType:null,
}, },
// 表单参数 // 表单参数
form: {}, form: {},
...@@ -601,6 +602,24 @@ export default { ...@@ -601,6 +602,24 @@ export default {
transferShow:false transferShow:false
}; };
}, },
computed:{
channel(){
return (val)=>{
return !!val ? this.getDictDatas(this.DICT_TYPE.ECW_CUSTOMER_TRANSPORT_TYPE).filter(i => (val.split(',') || []).includes(i.value)).map(i => this.isChinese ? i.label : i.labelEn ).join('') :''
}
},
isChinese(){
return this.$i18n.locale === 'zh_CN'
}
},
watch:{
selectCustomerList(val){
if(val.length === 0){
this.getList()
this.$refs.multipleTable.clearSelection();
}
},
},
created() { created() {
getCreditPage({page:1,rows:999}).then(r => { getCreditPage({page:1,rows:999}).then(r => {
this.creditList = r.data.list this.creditList = r.data.list
...@@ -616,29 +635,126 @@ export default { ...@@ -616,29 +635,126 @@ export default {
this.countryList = r.data this.countryList = r.data
}) })
}, },
activated(){
this.getList();
},
methods: { methods: {
// 设置空运客户
setChangeCustomerAir(isAir){
changeCustomerAir({
customerIdList:this.selectCustomerList,
isAir
}).then(r =>{
console.log(r)
if(r.code === 0){
this.$message.success(isAir ? '设为空运客户成功!' : '设为非空空运客户成功!')
this.selectCustomerList = []
this.getList()
}
})
},
/** 取消按钮 */
cancel() {
this.open = false;
this.reset();
},
complaint(row){
this.customerId = row.id;
this.$nextTick(()=>{
this.$refs.customerComplaints.handleAdd();
})
},
countryFormatter(row, column, cellValue) { countryFormatter(row, column, cellValue) {
const country = this.countryList.find((e) => e.id === cellValue) const country = this.countryList.find((e) => e.id === cellValue)
return this.isChinese ? country?.nameZh : country?.nameEn return this.isChinese ? country?.nameZh : country?.nameEn
}, },
delay(row){
this.$router.push({path:'/customer/delay',query:{id:row.id}})
},
followUp(row){
this.customerId = row.id;
this.$nextTick(()=>{
this.$refs.CustomerFollowList.customerFollow.dialogVisible = true;
})
},
/** 查询列表 */ /** 查询列表 */
getList() { getList() {
console.log(this.$route.path,'path')
this.loading = true; this.loading = true;
// 处理查询参数 // 处理查询参数
let params = {...this.queryParams}; let params = {...this.queryParams};
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime'); this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime', false);
// 执行查询 // 执行查询
getCustomerPage(params).then(response => { switch (this.$route.path){
console.log(response,'response') case '/customer/customer' :
this.list = response.data.list; getCustomerPage(params).then(this.setData);
this.total = response.data.total; break;
this.loading = false; case '/customer/department-customers':
}); getCustomerDeptPage(params).then(this.setData);
break;
}
}, },
/** 取消按钮 */ /** 新增按钮操作 */
cancel() { handleAdd() {
this.open = false; this.$router.push('/customer/add-edit/0')
this.reset(); // this.reset();
// this.open = true;
// this.title = this.$t("添加客户");
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
const name = row.name;
const number = row.number;
this.$modal.confirm(this.$t('是否确认删除客户编号为"') + number + this.$t('"的数据项?')).then(function() {
return deleteCustomer(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess(this.$t('删除成功'));
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime');
// 执行导出
this.$modal.confirm(this.$t('是否确认导出所有客户数据项?')).then(() => {
this.exportLoading = true;
return exportCustomerExcel(params);
}).then(response => {
this.$download.excel(response, `${this.$t('客户信息')}.xls`);
/* console.log(response,'response')
this.$download.excel(response, `${this.$t('全部客户信息')}.xls`); */
this.exportLoading = false;
}).catch(() => {});
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
handleSelectionChange(val){
this.selectCustomerList = val.map(i => i.id);
},
/** 修改按钮操作 */
handleUpdate(row) {
this.$router.push('/customer/edit/' + row.id)
// this.reset();
// const id = row.id;
// getCustomer(id).then(response => {
// this.form = { ...this.form, ...response.data };
// this.open = true;
// this.title = this.$t("修改客户");
// });
},
/** 查看按钮操作 */
handleView(row) {
this.$router.push('/customer/query/' + row.id)
}, },
/** 表单重置 */ /** 表单重置 */
reset() { reset() {
...@@ -681,11 +797,6 @@ export default { ...@@ -681,11 +797,6 @@ export default {
}; };
this.resetForm("form"); this.resetForm("form");
}, },
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */ /** 重置按钮操作 */
resetQuery() { resetQuery() {
this.dateRangeCreateTime = []; this.dateRangeCreateTime = [];
...@@ -705,17 +816,6 @@ export default { ...@@ -705,17 +816,6 @@ export default {
} }
this.handleQuery(); this.handleQuery();
}, },
/** 新增按钮操作 */
handleAdd() {
this.$router.push('/customer/add-edit/0')
// this.reset();
// this.open = true;
// this.title = this.$t("添加客户");
},
/** 查看按钮操作 */
handleView(row) {
this.$router.push('/customer/query/' + row.id)
},
/** 调入公海池测试用 */ /** 调入公海池测试用 */
seasPond(row) { seasPond(row) {
testEnterToOpenSea(row.id).then(r => { testEnterToOpenSea(row.id).then(r => {
...@@ -725,16 +825,11 @@ export default { ...@@ -725,16 +825,11 @@ export default {
} }
}) })
}, },
/** 修改按钮操作 */ setData(response){
handleUpdate(row) { console.log(response,'response')
this.$router.push('/customer/edit/' + row.id) this.list = response.data.list;
// this.reset(); this.total = response.data.total;
// const id = row.id; this.loading = false;
// getCustomer(id).then(response => {
// this.form = { ...this.form, ...response.data };
// this.open = true;
// this.title = this.$t("修改客户");
// });
}, },
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
...@@ -758,65 +853,7 @@ export default { ...@@ -758,65 +853,7 @@ export default {
this.getList(); this.getList();
}); });
}); });
},
/** 删除按钮操作 */
handleDelete(row) {
const id = row.id;
const name = row.name;
const number = row.number;
this.$modal.confirm(this.$t('是否确认删除客户编号为"') + number + this.$t('"的数据项?')).then(function() {
return deleteCustomer(id);
}).then(() => {
this.getList();
this.$modal.msgSuccess(this.$t('删除成功'));
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime');
// 执行导出
this.$modal.confirm(this.$t('是否确认导出所有客户数据项?')).then(() => {
this.exportLoading = true;
return exportCustomerExcel(params);
}).then(response => {
this.$download.excel(response, `${this.$t('客户信息')}.xls`);
/* console.log(response,'response')
this.$download.excel(response, `${this.$t('全部客户信息')}.xls`); */
this.exportLoading = false;
}).catch(() => {});
},
followUp(row){
this.customerId = row.id;
this.$nextTick(()=>{
this.$refs.CustomerFollowList.customerFollow.dialogVisible = true;
})
},
delay(row){
this.$router.push({path:'/customer/delay',query:{id:row.id}})
},
complaint(row){
this.customerId = row.id;
this.$nextTick(()=>{
this.$refs.customerComplaints.handleAdd();
})
},
handleSelectionChange(val){
this.selectCustomerList = val.map(i => i.id);
}
},
watch:{
selectCustomerList(val){
if(val.length === 0){
this.getList()
this.$refs.multipleTable.clearSelection();
} }
},
} }
}; };
</script> </script>
...@@ -22,8 +22,8 @@ ...@@ -22,8 +22,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('创建时间')"> <el-form-item :label="$t('创建时间')">
<el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
type="daterange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" /> type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button> <el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
...@@ -152,7 +152,7 @@ export default { ...@@ -152,7 +152,7 @@ export default {
let params = {...this.queryParams}; let params = {...this.queryParams};
params.pageNo = undefined; params.pageNo = undefined;
params.pageSize = undefined; params.pageSize = undefined;
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime'); this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime', false);
// 执行导出 // 执行导出
this.$modal.confirm(this.$t('是否确认导出间接客户数据项?')).then(() => { this.$modal.confirm(this.$t('是否确认导出间接客户数据项?')).then(() => {
this.exportLoading = true; this.exportLoading = true;
...@@ -175,7 +175,7 @@ export default { ...@@ -175,7 +175,7 @@ export default {
this.loading = true; this.loading = true;
// 处理查询参数 // 处理查询参数
let params = {...this.queryParams}; let params = {...this.queryParams};
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime'); this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime', false);
// 执行查询 // 执行查询
getCustomerPage(params).then(response => { getCustomerPage(params).then(response => {
this.list = response.data.list; this.list = response.data.list;
......
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('创建时间')"> <el-form-item :label="$t('创建时间')">
<el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
type="daterange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" /> type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('信用等级')" prop="department"> <el-form-item :label="$t('信用等级')" prop="department">
<el-select clearable v-model="queryParams.creditLevel" > <el-select clearable v-model="queryParams.creditLevel" >
...@@ -444,7 +444,7 @@ export default { ...@@ -444,7 +444,7 @@ export default {
this.loading = true; this.loading = true;
// 处理查询参数 // 处理查询参数
let params = {...this.queryParams}; let params = {...this.queryParams};
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime'); this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime', false);
// 执行查询 // 执行查询
getWaitForConfirmList(params).then(response => { getWaitForConfirmList(params).then(response => {
this.list = response.data.list; this.list = response.data.list;
......
...@@ -47,8 +47,8 @@ ...@@ -47,8 +47,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('创建时间')"> <el-form-item :label="$t('创建时间')">
<el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
type="daterange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" /> type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('信用等级')" prop="department"> <el-form-item :label="$t('信用等级')" prop="department">
<el-select clearable v-model="queryParams.creditLevel" > <el-select clearable v-model="queryParams.creditLevel" >
...@@ -268,7 +268,7 @@ export default { ...@@ -268,7 +268,7 @@ export default {
this.loading = true; this.loading = true;
// 处理查询参数 // 处理查询参数
let params = {...this.queryParams}; let params = {...this.queryParams};
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime'); this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime', false);
// 执行查询 // 执行查询
getCustomerToBeAssigned(params).then(response => { getCustomerToBeAssigned(params).then(response => {
this.list = response.data.list; this.list = response.data.list;
...@@ -359,7 +359,7 @@ export default { ...@@ -359,7 +359,7 @@ export default {
}, },
/** 修改按钮操作 */ /** 修改按钮操作 */
handleUpdate(row) { handleUpdate(row) {
this.$router.push('/customer/edit/' + row.id) this.$router.push('/customer/edit-distribution/' + row.id)
// this.reset(); // this.reset();
// const id = row.id; // const id = row.id;
// getCustomer(id).then(response => { // getCustomer(id).then(response => {
......
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
</el-select> </el-select>
</el-form-item> --> </el-form-item> -->
<el-form-item> <el-form-item>
<el-date-picker v-model="dateFilter" type="daterange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker> <el-date-picker v-model="dateFilter" type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
<!-- <el-date-picker v-model="queryParams.beginStartTime" :placeholder="$t('请选择开始时间')" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>--> <!-- <el-date-picker v-model="queryParams.beginStartTime" :placeholder="$t('请选择开始时间')" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>-->
</el-form-item> </el-form-item>
<!-- <el-form-item :label="$t('结束时间')" prop="endStartTime">--> <!-- <el-form-item :label="$t('结束时间')" prop="endStartTime">-->
......
...@@ -41,8 +41,8 @@ ...@@ -41,8 +41,8 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('创建时间')"> <el-form-item :label="$t('创建时间')">
<el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd" <el-date-picker clearable v-model="dateRangeCreateTime" style="width: 240px" value-format="yyyy-MM-dd HH:mm:ss"
type="daterange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" /> type="datetimerange" range-separator="-" :start-placeholder="$t('开始日期')" :end-placeholder="$t('结束日期')" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('信用等级')" prop="department"> <el-form-item :label="$t('信用等级')" prop="department">
...@@ -258,7 +258,7 @@ export default { ...@@ -258,7 +258,7 @@ export default {
this.loading = true; this.loading = true;
// 处理查询参数 // 处理查询参数
let params = {...this.queryParams}; let params = {...this.queryParams};
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime'); this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime', false);
// 执行查询 // 执行查询
getMyCustomerService(params).then(response => { getMyCustomerService(params).then(response => {
this.list = response.data.list; this.list = response.data.list;
......
<template>
<div class="app-container">
<!-- 搜索工作栏 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
<el-form-item :label="$t('编号')" prop="searchNumber">
<el-input v-model="queryParams.searchNumber" :placeholder="$t('请输入报价单号、订单号')" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item :label="$t('客户')" prop="searchCustomer">
<el-input v-model="queryParams.searchCustomer" :placeholder="$t('请输入客户')" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item :label="$t('创建时间')" prop="orderNo">
<el-date-picker v-model="queryParams.beginCreateTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>{{ $t('') }}<el-date-picker v-model="queryParams.endCreateTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
<el-form-item :label="$t('始发地')" prop="departureId">
<el-select v-model="queryParams.departureId" :placeholder="$t('请选择始发地')" clearable>
<el-option v-for="item in exportCityList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('目的地')" prop="objectiveId">
<el-select v-model="queryParams.objectiveId" :placeholder="$t('请选择目的地')" clearable>
<el-option v-for="item in importCityList" :label="$l(item, 'title')" :value="item.id" :key="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('运输方式')" prop="transportId">
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model="queryParams.transportId" formatter="number" clearable />
</el-form-item>
<el-form-item :label="$t('商品')" prop="prodTitle">
<el-input v-model="queryParams.prodTitle" :placeholder="$t('请输入商品类型、品名或品牌')" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item :label="$t('控货')" prop="control">
<dict-selector :type="DICT_TYPE.INFRA_BOOLEAN_STRING" v-model="queryParams.control" clearable />
</el-form-item>
<el-form-item :label="$t('客户经理')" prop="followUpSalesmanId">
<user-selector v-model="queryParams.followUpSalesmanId" clearable />
</el-form-item>
<el-form-item :label="$t('销售阶段')" prop="status">
<dict-selector :type="DICT_TYPE.ECW_OFFER_STATUS" v-model="queryParams.status" clearable />
</el-form-item>
<el-form-item :label="$t('报关方式')" prop="customsType">
<dict-selector :type="DICT_TYPE.ECW_CUSTOMS_TYPE" v-model="queryParams.customsType" clearable />
</el-form-item>
<div>
<el-form-item :label="$t('预计结束时间')" prop="orderNo">
<el-date-picker v-model="queryParams.beginStopTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>{{ $t('') }}<el-date-picker v-model="queryParams.endStopTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
</el-form-item>
</div>
</el-form>
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
v-hasPermi="['ecw:offer:create']">{{$t('新增')}}</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" :loading="exportLoading"
v-hasPermi="['ecw:offer:export']">{{$t('导出')}}</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<!-- 列表 -->
<el-table v-loading="loading" :data="list" border>
<el-table-column :label="$t('报价单号')" align="left" prop="number" width="200px">
<template slot-scope="{row}">
<el-link type="primary" @click.native="$router.push('detail?offerId=' + row.offerId)">{{row.number}}</el-link>
</template>
</el-table-column>
<el-table-column :label="$t('订单编号')" align="left" prop="orderNo" />
<el-table-column :label="$t('客户名称')" align="left" prop="relationName" />
<el-table-column :label="$t('目的地')" align="center" prop="objectiveName" />
<el-table-column :label="$t('销售阶段')" align="left" width="180">
<template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_OFFER_STATUS" :value="row.status" />
</template>
</el-table-column>
<el-table-column :label="$t('预计结束时间')" align="left">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.stopTime, "{y}-{m}-{d}") }}</span>
</template>
</el-table-column>
<el-table-column :label="$t('运输方式')" align="left">
<template slot-scope="scope" >
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="scope.row.transportId" />
</template>
</el-table-column>
<el-table-column :label="$t('预计销售额')" align="left" prop="estCost">
<template slot-scope="{row}">
<div class="" v-for="(item, feeIndex) in row.estCostVO.feeDtoList" :key="feeIndex">
<dict-tag :type="DICT_TYPE.ECW_COST_FEE_TYPE" :value="item.feeType" />
{{item.amount}} {{currencyMap[item.currencyId]}}
</div>
</template>
</el-table-column>
<el-table-column :label="$t('客户经理')" align="left" prop="creatorName">
</el-table-column>
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<!--
0 取消 恢复
1 特价审批 编辑、跟进、 取消 删除
2 草稿 编辑、 删除
3 需求确认 编辑、跟进、结果、特价、取消 删除
4 赢单 删除
5 输单 删除
6 完成 删除
7 跟进中 编辑、跟进、结果、特价、取消、 删除
-->
<el-dropdown>
<el-button icon="el-icon-plus" circle type="primary"></el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="$router.push('detail?offerId=' + scope.row.offerId)" >{{$t('详情')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('edit?id=' + scope.row.offerId)" v-if="[1,2,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('编辑')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('logList?offerId=' + scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('跟进')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push(`result?offerId=${scope.row.offerId}&number=${scope.row.number}`)" v-if="[3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('结果')}}</el-dropdown-item>
<el-dropdown-item @click.native="$router.push('/offer/special?offerId=' + scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('特价')}}</el-dropdown-item>
<el-dropdown-item @click.native="cancel(scope.row.offerId)" v-if="[1,3,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('取消')}}</el-dropdown-item>
<el-dropdown-item @click.native="recovery(scope.row.offerId)" v-if="[0].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:update']">{{$t('恢复')}}</el-dropdown-item>
<el-dropdown-item @click.native="deleteOffer(scope.row.offerId)" v-if="[0,1,2,3,4,5,6,7].indexOf(scope.row.status) > -1" v-hasPermi="['ecw:offer:delete']">{{$t('删除')}}</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</template>
</el-table-column>
</el-table>
<!-- 分页组件 -->
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
@pagination="getList"/>
</div>
</template>
<script>
import { deleteOffer, getOfferPage, exportOfferExcel,cancel, recovery } from "@/api/ecw/offer";
import { getCurrencyList } from '@/api/ecw/currency';
import {getTradeCityList} from '@/api/ecw/region'
import UserSelector from '@/components/UserSelector'
export default {
name: "EcwOfferIndex",
components: {
UserSelector
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 报价单管理列表
list: [],
// 查询参数
queryParams: {
pageNo: 1,
pageSize: 10
},
currencyList: [],
tradeCityList:[]
};
},
computed:{
currencyMap(){
let map = {}
this.currencyList.forEach(item => {
map[item.id] = this.$l(item, 'title')
})
return map
},
exportCityList() {
return this.tradeCityList.filter(item => item.type == 2)
},
importCityList() {
return this.tradeCityList.filter(item => item.type == 1)
},
},
activated(){
this.getList()
},
created() {
getTradeCityList().then(res => this.tradeCityList = res.data)
getCurrencyList().then(res => {
this.currencyList = res.data
})
this.getList();
},
methods: {
/** 查询列表 */
getList() {
this.loading = true;
// 执行查询
getOfferPage(this.queryParams).then(response => {
this.list = response.data.list;
this.total = response.data.total;
this.loading = false;
});
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNo = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.queryParams = {
pageNo: 1,
pageSize: 10
}
this.handleQuery();
},
/** 新增按钮操作 */
handleAdd() {
return this.$router.push('create')
},
/** 修改按钮操作 */
handleUpdate(row) {
return this.$router.push('edit?id=' + row.offerId)
},
/** 删除按钮操作 */
handleDelete(row) {
const offerId = row.offerId;
this.$modal.confirm(this.$t('是否确认删除报价单管理编号为{offerId}的数据项?', {offerId})).then(function() {
return deleteOffer(offerId);
}).then(() => {
this.getList();
this.$modal.msgSuccess(this.$t("删除成功"));
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
// 处理查询参数
let params = {...this.queryParams};
params.pageNo = undefined;
params.pageSize = undefined;
// 执行导出
this.$modal.confirm(this.$t('是否确认导出所有报价单管理数据项?')).then(() => {
this.exportLoading = true;
return exportOfferExcel(params);
}).then(response => {
this.$download.excel(response, '报价列表.xls');
this.exportLoading = false;
}).catch(() => {});
},
cancel(id){
this.doAction('确定要取消此报价单么?', cancel, id);
},
recovery(id){
this.doAction('确定要恢复此报价单么?', recovery, id);
},
deleteOffer(id){
this.doAction('确定要删除此报价单么?', deleteOffer, id);
},
doAction(tips, action, id){
this.$confirm(tips).then(res => {
return action(id)
})
.then(() => {
this.$message.success('操作成功')
this.handleQuery()
})
}
}
};
</script>
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
</el-form-item> </el-form-item>
<el-form-item :label="$t('创建时间')" prop="orderNo"> <el-form-item :label="$t('创建时间')" prop="orderNo">
<el-date-picker v-model="queryParams.beginCreateTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>{{ $t('') }}<el-date-picker v-model="queryParams.endCreateTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker> <el-date-picker type="datetime" v-model="queryParams.beginCreateTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>{{ $t('') }}<el-date-picker v-model="queryParams.endCreateTime" type="datetime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item :label="$t('始发地')" prop="departureId"> <el-form-item :label="$t('始发地')" prop="departureId">
...@@ -47,7 +47,7 @@ ...@@ -47,7 +47,7 @@
<div> <div>
<el-form-item :label="$t('预计结束时间')" prop="orderNo"> <el-form-item :label="$t('预计结束时间')" prop="orderNo">
<el-date-picker v-model="queryParams.beginStopTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>{{ $t('') }}<el-date-picker v-model="queryParams.endStopTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker> <el-date-picker type="datetime" v-model="queryParams.beginStopTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>{{ $t('') }}<el-date-picker type="datetime" v-model="queryParams.endStopTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button> <el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
...@@ -143,7 +143,7 @@ ...@@ -143,7 +143,7 @@
</template> </template>
<script> <script>
import { deleteOffer, getOfferPage, exportOfferExcel,cancel, recovery } from "@/api/ecw/offer"; import { deleteOffer, getOfferPage, exportOfferExcel,cancel, recovery, offerDeptPage } from "@/api/ecw/offer";
import { getCurrencyList } from '@/api/ecw/currency'; import { getCurrencyList } from '@/api/ecw/currency';
import {getTradeCityList} from '@/api/ecw/region' import {getTradeCityList} from '@/api/ecw/region'
import UserSelector from '@/components/UserSelector' import UserSelector from '@/components/UserSelector'
...@@ -170,8 +170,8 @@ export default { ...@@ -170,8 +170,8 @@ export default {
pageSize: 10 pageSize: 10
}, },
currencyList: [], currencyList: [],
tradeCityList:[] tradeCityList:[],
dept: false, // 是否部门订单
}; };
}, },
computed:{ computed:{
...@@ -193,6 +193,11 @@ export default { ...@@ -193,6 +193,11 @@ export default {
this.getList() this.getList()
}, },
created() { created() {
console.log("offer index", this.$route)
// 部门订单
if(this.$route.fullPath.indexOf('dept') > -1){
this.dept = true
}
getTradeCityList().then(res => this.tradeCityList = res.data) getTradeCityList().then(res => this.tradeCityList = res.data)
getCurrencyList().then(res => { getCurrencyList().then(res => {
...@@ -205,8 +210,9 @@ export default { ...@@ -205,8 +210,9 @@ export default {
/** 查询列表 */ /** 查询列表 */
getList() { getList() {
this.loading = true; this.loading = true;
let func = this.dept ? offerDeptPage : getOfferPage
// 执行查询 // 执行查询
getOfferPage(this.queryParams).then(response => { func(this.queryParams).then(response => {
this.list = response.data.list; this.list = response.data.list;
this.total = response.data.total; this.total = response.data.total;
this.loading = false; this.loading = false;
......
<template>
<index dept />
</template>
<script>
import Index from './index'
export default {
name: 'EcwOrderDept',
components: {Index}
}
</script>
\ No newline at end of file
...@@ -18,8 +18,7 @@ ...@@ -18,8 +18,7 @@
</el-form-item> </el-form-item>
<el-form-item label=""> <el-form-item label="">
<dict-selector :type="DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME" v-model="dateFilterType" defaultable style="width: 150px; margin-right: 5px" /> <dict-selector :type="DICT_TYPE.ECW_BEGINTIME_TYPE_ENDTIME" v-model="dateFilterType" defaultable style="width: 150px; margin-right: 5px" />
<el-date-picker v-model="dateFilter" <el-date-picker v-model="dateFilter" type="datetimerange" range-separator="-"
type="daterange" range-separator="-"
:start-placeholder="$t('开始日期')" :start-placeholder="$t('开始日期')"
:end-placeholder="$t('结束日期')" :end-placeholder="$t('结束日期')"
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
...@@ -103,7 +102,7 @@ ...@@ -103,7 +102,7 @@
@keyup.enter.native="handleQuery" clearable /> @keyup.enter.native="handleQuery" clearable />
</el-form-item> </el-form-item>
<el-form-item :label="$t('审核状态')" prop="status"> <el-form-item :label="$t('审核状态')" prop="status">
<dict-selector :type="DICT_TYPE.AUDIT_STATUS" v-model="queryParams.auditResult" <dict-selector :type="DICT_TYPE.ECW_ORDER_APPROVAL_TYPE" v-model="queryParams.auditResult"
@keyup.enter.native="handleQuery" clearable /> @keyup.enter.native="handleQuery" clearable />
</el-form-item> </el-form-item>
...@@ -125,8 +124,29 @@ ...@@ -125,8 +124,29 @@
<el-button type="primary" plain icon="el-icon-setting" size="mini" @click="showBatchPickup=true">{{$t('批量提货')}}</el-button> <el-button type="primary" plain icon="el-icon-setting" size="mini" @click="showBatchPickup=true">{{$t('批量提货')}}</el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" <!-- <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
:loading="exportLoading" v-hasPermi="['ecw:order:export']">{{$t('导出')}}</el-button> :loading="exportLoading" v-hasPermi="['ecw:order:export']">{{$t('导出')}}</el-button> -->
<el-dropdown v-hasPermi="['ecw:order:export']">
<el-button type="primary" :loading="exportLoading" size="mini">
导出 <i class="el-icon-arrow-down el-icon--right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="exportChecked">导出勾选</el-dropdown-item>
<el-dropdown-item @click.native="exportSearch">导出搜索</el-dropdown-item>
<el-dropdown-item @click.native="$message('// TODO')">异常单统计</el-dropdown-item>
<el-dropdown-item @click.native="$message('// TODO')">重货单统计</el-dropdown-item>
<el-dropdown-item @click.native="$message('// TODO')">退仓单统计</el-dropdown-item>
<el-dropdown-item @click.native="$message('// TODO')">售后赔偿金额统计</el-dropdown-item>
<el-dropdown-item @click.native="$message('// TODO')">报关数据统计</el-dropdown-item>
<el-dropdown-item @click.native="$message('// TODO')">客户出货量统计</el-dropdown-item>
<el-dropdown-item @click.native="$message('// TODO')">预付运费统计</el-dropdown-item>
<el-dropdown-item @click.native="$message('// TODO')">卸货费统计</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</el-col>
<el-col :span="15" v-if="statistics">
<!-- 订单列表显示搜索条件对应箱数、仓库实测、收款方数、重量 -->
合计:{{statistics.totalNum}}箱,{{statistics.totalVolume}}m³(测) {{statistics.totalChargeVolume}}m³(重) {{statistics.totalWeight}}KG
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
...@@ -419,7 +439,11 @@ import { ...@@ -419,7 +439,11 @@ import {
orderSpecialNeed, orderSpecialNeed,
cancelOrder, cancelOrder,
recoveryOrder, recoveryOrder,
getMyOrderPage getMyOrderPage,
deptOrderPage,
orderStatistics,
orderMyStatistics,
orderDeptStatistics
} from "@/api/ecw/order"; } from "@/api/ecw/order";
/* import { getDictDatas, DICT_TYPE } from '@/utils/dict'; */ /* import { getDictDatas, DICT_TYPE } from '@/utils/dict'; */
import PrintTag from './components/PrintTag' import PrintTag from './components/PrintTag'
...@@ -445,7 +469,8 @@ export default { ...@@ -445,7 +469,8 @@ export default {
CustomerSelector, ProductSelector, Selector,specialNeeds,PrintTag, PrintWarehouseReceipt, PrintLadingBill, BatchPickup,withdrawal CustomerSelector, ProductSelector, Selector,specialNeeds,PrintTag, PrintWarehouseReceipt, PrintLadingBill, BatchPickup,withdrawal
}, },
props: { props: {
mine: Boolean mine: Boolean, // 标识我的订单列表
dept: Boolean // 标识部门订单列表
}, },
data() { data() {
return { return {
...@@ -502,7 +527,8 @@ export default { ...@@ -502,7 +527,8 @@ export default {
page: 1, page: 1,
rows: 20, rows: 20,
}, },
currencyList:[] currencyList:[],
statistics: null ,// 统计数据
}; };
}, },
watch:{ watch:{
...@@ -566,6 +592,29 @@ export default { ...@@ -566,6 +592,29 @@ export default {
getCurrencyPage(this.params).then(res => this.currencyList = res.data.list) getCurrencyPage(this.params).then(res => this.currencyList = res.data.list)
}, },
methods: { methods: {
// 导出勾选
exportChecked(){
if(!this.ids.length){
return this.$message.error(this.$t('请勾选需要导出的订单'))
}
return this.exportExcel(exportOrderExcel, {orderIdList: this.ids})
},
// 导出搜索
exportSearch(){
return this.exportExcel(exportOrderExcel, this.combinedQueryParams)
},
// 通用导出函数
exportExcel(func, params, fileName = null){
this.exportLoading = true;
func(params).then(res => {
if(!fileName){
fileName = this.$t('订单')
}
this.$download.excel(res, fileName + '.xls');
}).finally(() => {
this.exportLoading = false
})
},
// 提取路径中的运输方式 // 提取路径中的运输方式
getTransportFromRoute(){ getTransportFromRoute(){
let match = this.$route.path.match(/transport_(\d)/) let match = this.$route.path.match(/transport_(\d)/)
...@@ -604,19 +653,37 @@ export default { ...@@ -604,19 +653,37 @@ export default {
getList() { getList() {
this.loading = true; this.loading = true;
console.log('this.combinedQueryParams', this.combinedQueryParams) console.log('this.combinedQueryParams', this.combinedQueryParams)
let func = getOrderPage
if(this.mine){ if(this.mine){
return getMyOrderPage(this.combinedQueryParams).then(response => { func = getMyOrderPage
/* return getMyOrderPage(this.combinedQueryParams).then(response => {
this.list = response.data.list; this.list = response.data.list;
this.total = response.data.total; this.total = response.data.total;
this.loading = false; this.loading = false;
}); }); */
}else if(this.dept){
func = deptOrderPage
} }
// 执行查询 // 执行查询
getOrderPage(this.combinedQueryParams).then(response => { func(this.combinedQueryParams).then(response => {
this.list = response.data.list; this.list = response.data.list;
this.total = response.data.total; this.total = response.data.total;
this.loading = false; this.loading = false;
}); });
this.getStatistics()
},
// 获得统计数据
getStatistics(){
let func = orderStatistics
if(this.mine){
func = orderMyStatistics
}else if(this.dept){
func = orderDeptStatistics
}
func(this.combinedQueryParams).then(res => {
this.statistics = res.data
})
}, },
/** 搜索按钮操作 */ /** 搜索按钮操作 */
......
...@@ -25,7 +25,9 @@ ...@@ -25,7 +25,9 @@
v-model="form.brand" v-model="form.brand"
:placeholder="$t('可修改')" :placeholder="$t('可修改')"
filterable filterable
remote
@change="handleBrandChange" @change="handleBrandChange"
:remote-method="getProductBrandPage"
clearable> clearable>
<el-option <el-option
v-for="item in brandList" v-for="item in brandList"
...@@ -197,7 +199,9 @@ ...@@ -197,7 +199,9 @@
v-model="form1.brand" v-model="form1.brand"
:placeholder="$t('可修改')" :placeholder="$t('可修改')"
filterable filterable
remote
@change="handleBrandChange" @change="handleBrandChange"
:remote-method="getProductBrandPage"
clearable> clearable>
<el-option <el-option
v-for="item in brandList" v-for="item in brandList"
...@@ -410,17 +414,6 @@ export default { ...@@ -410,17 +414,6 @@ export default {
} }
}, },
mounted() {
getProductBrankPage({pageSize: 100000}).then(r => {
this.brandList = r.data.list.map(e => {
if(e.id){
e.id = e.id.toString()
}
return e
})
})
},
data() { data() {
return { return {
DICT_TYPE, DICT_TYPE,
...@@ -497,6 +490,9 @@ export default { ...@@ -497,6 +490,9 @@ export default {
if (this.warehousing) { if (this.warehousing) {
// this.orderItem = this.warehousing // this.orderItem = this.warehousing
this.inTime = this.warehousing.inTime this.inTime = this.warehousing.inTime
if (!!this.warehousing.brandName){
this.getProductBrandPage(this.warehousing.brandName)
}
} }
} else { } else {
} }
...@@ -535,8 +531,17 @@ export default { ...@@ -535,8 +531,17 @@ export default {
} }
} }
}, },
methods: { methods: {
getProductBrandPage(titleZh = undefined) {
getProductBrankPage({pageSize: 20, titleZh}).then(r => {
this.brandList = r.data.list.map(e => {
if(e.id){
e.id = e.id.toString()
}
return e
})
})
},
handleCancelProcessInstance(){ handleCancelProcessInstance(){
this.$prompt('请输入取消原因?', this.$t("取消流程"), { this.$prompt('请输入取消原因?', this.$t("取消流程"), {
type: 'warning', type: 'warning',
...@@ -694,9 +699,9 @@ export default { ...@@ -694,9 +699,9 @@ export default {
} }
const form = val === 1 ? this.form1 : this.form const form = val === 1 ? this.form1 : this.form
form.orderWarehouseInItemDoList.push({ form.orderWarehouseInItemDoList.push({
"boxGauge1": "", "boxGauge1": 0,
"boxGauge2": "", "boxGauge2": 0,
"boxGauge3": "", "boxGauge3": 0,
"cartonsNum": cartonsNum > 0 ? cartonsNum : '', "cartonsNum": cartonsNum > 0 ? cartonsNum : '',
"expressNo": "", "expressNo": "",
"quantityAll": undefined, "quantityAll": undefined,
...@@ -732,7 +737,7 @@ export default { ...@@ -732,7 +737,7 @@ export default {
const [boxGauge1, boxGauge2, boxGauge3] = boxGaugeList const [boxGauge1, boxGauge2, boxGauge3] = boxGaugeList
return {...e, boxGauge1, boxGauge2, boxGauge3} return {...e, boxGauge1, boxGauge2, boxGauge3}
} }
return e return {...e, boxGauge1: 0, boxGauge2: 0, boxGauge3: 0}
}) })
}, },
tableData1() { tableData1() {
......
...@@ -174,7 +174,7 @@ ...@@ -174,7 +174,7 @@
<el-form-item :label="$t('原因类型')"> <el-form-item :label="$t('原因类型')">
<dict-selector v-model="form.manualExceptionType" form-type="checkbox" :type="DICT_TYPE.MANUAL_EXCEPTION_TYPE" multiple ></dict-selector> <dict-selector v-model="form.manualExceptionType" form-type="checkbox" :type="DICT_TYPE.MANUAL_EXCEPTION_TYPE" multiple ></dict-selector>
</el-form-item> </el-form-item>
<el-form-item required :label="$t('附件')"> <el-form-item :label="$t('附件')">
<image-upload v-model="form.exceptionUrls"></image-upload> <image-upload v-model="form.exceptionUrls"></image-upload>
</el-form-item> </el-form-item>
<el-form-item :label="$t('详细信息')"> <el-form-item :label="$t('详细信息')">
...@@ -392,7 +392,7 @@ export default { ...@@ -392,7 +392,7 @@ export default {
} }
if (this.escapeBol) { if (this.escapeBol) {
form.exceptionUrls = this.form.exceptionUrls.split(','); form.exceptionUrls = this.form.exceptionUrls.length !== 0 ? this.form.exceptionUrls?.split(',') : []
form.descZh = this.form.descZh; form.descZh = this.form.descZh;
form.manualExceptionType = this.form.manualExceptionType.join(',') form.manualExceptionType = this.form.manualExceptionType.join(',')
} }
......
...@@ -19,6 +19,15 @@ ...@@ -19,6 +19,15 @@
<el-form-item :label="$t('审核状态')" prop="registerIp"> <el-form-item :label="$t('审核状态')" prop="registerIp">
<dict-selector v-model="queryParams.auditStatus" :type="DICT_TYPE.AUDIT_STATUS"></dict-selector> <dict-selector v-model="queryParams.auditStatus" :type="DICT_TYPE.AUDIT_STATUS"></dict-selector>
</el-form-item> </el-form-item>
<el-form-item :label="$t('创建时间')">
<el-date-picker
v-model="dateRangeCreateTime"
type="datetimerange"
:start-placeholder="$t('开始日期')"
value-format="yyyy-MM-dd HH:mm:ss"
:end-placeholder="$t('结束日期')">
</el-date-picker>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button> <el-button type="primary" icon="el-icon-search" @click="handleQuery">{{$t('搜索')}}</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button> <el-button icon="el-icon-refresh" @click="resetQuery">{{$t('重置')}}</el-button>
...@@ -378,8 +387,8 @@ export default { ...@@ -378,8 +387,8 @@ export default {
this.loading = true; this.loading = true;
// 处理查询参数 // 处理查询参数
let params = {...this.queryParams}; let params = {...this.queryParams};
this.addBeginAndEndTime(params, this.dateRangeLoginDate, 'loginDate'); // this.addBeginAndEndTime(params, this.dateRangeLoginDate, 'loginDate');
this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime'); this.addBeginAndEndTime(params, this.dateRangeCreateTime, 'createTime', false);
// 执行查询 // 执行查询
getUserPage(params).then(response => { getUserPage(params).then(response => {
this.list = response.data.list; this.list = response.data.list;
......
...@@ -101,7 +101,7 @@ import { CommonStatusEnum } from '@/utils/constants' ...@@ -101,7 +101,7 @@ import { CommonStatusEnum } from '@/utils/constants'
import { getDictDatas, DICT_TYPE } from '@/utils/dict' import { getDictDatas, DICT_TYPE } from '@/utils/dict'
export default { export default {
name: "Dict", name: "SystemDictIndex",
data() { data() {
return { return {
// 遮罩层 // 遮罩层
...@@ -151,6 +151,9 @@ export default { ...@@ -151,6 +151,9 @@ export default {
created() { created() {
this.getList(); this.getList();
}, },
activated(){
this.getList();
},
methods: { methods: {
/** 查询字典类型列表 */ /** 查询字典类型列表 */
getList() { getList() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment