This commit is contained in:
linfso 2024-11-06 16:37:50 +08:00
parent 69ff2c5c0c
commit dfa78d680b
10 changed files with 573 additions and 275 deletions

View File

@ -47,6 +47,7 @@
"dayjs": "^1.11.10", "dayjs": "^1.11.10",
"default-passive-events": "^2.0.0", "default-passive-events": "^2.0.0",
"echarts": "4.9.0", "echarts": "4.9.0",
"el-table-virtual-scroll": "^2.0.1",
"element-china-area-data": "^6.1.0", "element-china-area-data": "^6.1.0",
"element-ui": "2.15.6", "element-ui": "2.15.6",
"exceljs": "^4.3.0", "exceljs": "^4.3.0",

File diff suppressed because it is too large Load Diff

View File

@ -124,6 +124,7 @@ export default {
...mapGetters([ ...mapGetters([
'sidebar', 'sidebar',
'avatar', 'avatar',
'userId',
'nickName', 'nickName',
'userName', 'userName',
'ownerSiteName', 'ownerSiteName',
@ -171,9 +172,9 @@ export default {
}, },
// 初始化客服 // 初始化客服
initKFClient(){ initKFClient(){
qimoClientId = {userId: this.userId, nickName:this.empName,agent:'8001',customField: {}, priority: false} qimoClientId = {userId: this.userId, nickName:this.nickName,agent:'8000',customField: {}, priority: false}
// console.log(qimoClientId); console.log("==qimoClientId=>",qimoClientId);
// this.insertJsScript('https://ykf-weixin01.7moor.com/javascripts/7moorInit.js?accessId=0c6a3ec0-020b-11ef-a016-bf340ef083f1&autoShow=true&language=ZHCN'); this.insertJsScript('https://ykf-weixin01.7moor.com/javascripts/7moorInit.js?accessId=0c6a3ec0-020b-11ef-a016-bf340ef083f1&autoShow=true&language=ZHCN');
}, },
toggleSideBar() { toggleSideBar() {
this.$store.dispatch('app/toggleSideBar') this.$store.dispatch('app/toggleSideBar')

View File

@ -10,7 +10,7 @@ import getPageTitle from '@/utils/get-page-title'
NProgress.configure({ showSpinner: false }) NProgress.configure({ showSpinner: false })
const whiteList = ['/login', '/auth-redirect', '/bind', '/register','/tools','/loginBySSO','/queryTraceInfo'] const whiteList = ['/login', '/auth-redirect', '/bind', '/register','/tools','/loginBySSO','/queryTraceInfo','/onlineChat']
router.beforeEach(async(to, from, next) => { router.beforeEach(async(to, from, next) => {
NProgress.start() NProgress.start()

View File

@ -65,6 +65,14 @@ export const constantRoutes = [
title:'轨迹查询' title:'轨迹查询'
} }
}, },
{
path: '/onlineChat',
component: () => import('@/views/openpage/onlineChat'),
hidden: true,
meta:{
title:'在线客服'
}
},
{ {
path: '/register', path: '/register',
component: () => import('@/views/register'), component: () => import('@/views/register'),

View File

@ -8,7 +8,7 @@ const getters = {
avatar: state => state.user.avatar, avatar: state => state.user.avatar,
empCode: state => state.user.empCode, empCode: state => state.user.empCode,
empName: state => state.user.empName, empName: state => state.user.empName,
nickName: state => state.user.nickName, userId: state => state.user.userId,
name: state => state.user.name, name: state => state.user.name,
nickName: state => state.user.nickName, nickName: state => state.user.nickName,
customerType: state => state.user.customerType, customerType: state => state.user.customerType,

View File

@ -6,6 +6,7 @@ const user = {
token: getToken(), token: getToken(),
empCode:'', empCode:'',
empName:'', empName:'',
userId:'',
ownerSiteCode:'', ownerSiteCode:'',
ownerSiteName:'', ownerSiteName:'',
customerType:'', customerType:'',
@ -24,12 +25,16 @@ const user = {
state.name = name state.name = name
}, },
SET_EXTRA: (state, userInfo) => { SET_EXTRA: (state, userInfo) => {
state.userId = userInfo.userId;
state.empCode = userInfo.empCode; state.empCode = userInfo.empCode;
state.empName = userInfo.empName; state.empName = userInfo.empName;
state.ownerSiteCode = userInfo.ownerSiteCode; state.ownerSiteCode = userInfo.ownerSiteCode;
state.ownerSiteName = userInfo.ownerSiteName; state.ownerSiteName = userInfo.ownerSiteName;
state.customerType = userInfo.customerType; state.customerType = userInfo.customerType;
}, },
SET_USER_ID: (state, userId) => {
state.userId = userId
},
SET_NICK_NAME: (state, nickName) => { SET_NICK_NAME: (state, nickName) => {
state.nickName = nickName state.nickName = nickName
}, },
@ -110,6 +115,8 @@ const user = {
} else { } else {
commit('SET_ROLES', ['ROLE_DEFAULT']) commit('SET_ROLES', ['ROLE_DEFAULT'])
} }
commit('SET_USER_ID', user.userId)
commit('SET_NAME', user.userName) commit('SET_NAME', user.userName)
commit('SET_NICK_NAME', user.nickName) commit('SET_NICK_NAME', user.nickName)
commit('SET_AVATAR', avatar) commit('SET_AVATAR', avatar)

View File

@ -485,7 +485,7 @@
<el-input v-model="scope.row.ingredients" size="mini" placeholder=""></el-input> <el-input v-model="scope.row.ingredients" size="mini" placeholder=""></el-input>
</template> </template>
</el-table-column> --> </el-table-column> -->
<el-table-column prop="supplier" label="供应商" align="center" width="60" :show-overflow-tooltip="true"> <el-table-column prop="supplier" label="供应商" align="center" width="80" :show-overflow-tooltip="true">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.supplier" size="mini" placeholder=""></el-input> <el-input v-model="scope.row.supplier" size="mini" placeholder=""></el-input>
</template> </template>
@ -496,17 +496,17 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="length" :label="$t('长(cm)')" align="center" width="60"> <el-table-column prop="length" :label="$t('长(cm)')" align="center" width="80">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.length" size="mini" placeholder=""></el-input> <el-input v-model="scope.row.length" size="mini" placeholder=""></el-input>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="width" :label="$t('宽(cm)')" align="center" width="60"> <el-table-column prop="width" :label="$t('宽(cm)')" align="center" width="80">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.width" size="mini" placeholder=""></el-input> <el-input v-model="scope.row.width" size="mini" placeholder=""></el-input>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="height" :label="$t('高(cm)')" align="center" width="60"> <el-table-column prop="height" :label="$t('高(cm)')" align="center" width="80">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.height" size="mini" placeholder=""></el-input> <el-input v-model="scope.row.height" size="mini" placeholder=""></el-input>
</template> </template>
@ -692,6 +692,7 @@ import CardWithHeader from '@/components/CardWithHeader/index.vue';
import GoodsInput from '@/views/oms/EmisBaseTools/GoodsInput.vue'; import GoodsInput from '@/views/oms/EmisBaseTools/GoodsInput.vue';
import TransProductCasPicker from '@/views/oms/EmisBaseTools/TransProductCasPicker.vue'; import TransProductCasPicker from '@/views/oms/EmisBaseTools/TransProductCasPicker.vue';
import { listSimpleEmisMonthpayAccount } from "@/api/oms/emisMonthpayAccount";
// import TransProductCasPicker from '@/views/oms/EmisBaseTools/TransProductCasPicker.vue'; // import TransProductCasPicker from '@/views/oms/EmisBaseTools/TransProductCasPicker.vue';
@ -777,7 +778,7 @@ data() {
{ required: true, message: "收货人名不能为空", trigger: ["blur",'change'] } { required: true, message: "收货人名不能为空", trigger: ["blur",'change'] }
], ],
phone: [ phone: [
{ required: true, message: "收货人手机号不能为空", trigger: "blur" } { required: true, message: "收货人手机号不能为空", trigger: ["blur",'change'] }
], ],
country: [ country: [
{ required: true, message: "收货人国家不能为空", trigger: ["blur",'change'] } { required: true, message: "收货人国家不能为空", trigger: ["blur",'change'] }
@ -795,7 +796,7 @@ data() {
// { required: true, message: "区不能为空", trigger: "blur" } // { required: true, message: "区不能为空", trigger: "blur" }
// ], // ],
address: [ address: [
{ required: true, message: "收货地址不能为空", trigger: "blur" } { required: true, message: "收货地址不能为空", trigger: ["blur",'change'] }
], ],
}, },
sender:{ sender:{
@ -803,7 +804,7 @@ data() {
{ required: true, message: "寄件人名不能为空", trigger: ["blur",'change'] } { required: true, message: "寄件人名不能为空", trigger: ["blur",'change'] }
], ],
phone: [ phone: [
{ required: true, message: "寄件人手机号不能为空", trigger: "blur" } { required: true, message: "寄件人手机号不能为空", trigger: ["blur",'change'] }
], ],
country: [ country: [
{ required: true, message: "寄件人国家不能为空", trigger: ["blur",'change'] } { required: true, message: "寄件人国家不能为空", trigger: ["blur",'change'] }
@ -822,7 +823,7 @@ data() {
// { required: true, message: "寄件区不能为空", trigger: "blur" } // { required: true, message: "寄件区不能为空", trigger: "blur" }
// ], // ],
address: [ address: [
{ required: true, message: "寄件地址不能为空", trigger: "blur" } { required: true, message: "寄件地址不能为空", trigger: ["blur",'change'] }
], ],
}, },
paymentType: [ paymentType: [
@ -859,10 +860,10 @@ data() {
// { required: true, message: "总体积不能为空", trigger: "blur" } // { required: true, message: "总体积不能为空", trigger: "blur" }
// ], // ],
parcelQty: [ parcelQty: [
{ required: true, message: "件数不能为空", trigger: "blur" } { required: true, message: "件数不能为空", trigger: ["blur",'change'] }
], ],
billWeight: [ billWeight: [
{ required: true, message: "实际重量不能为空", trigger: "blur" } { required: true, message: "实际重量不能为空", trigger: ["blur",'change'] }
], ],
// volumeWeight: [ // volumeWeight: [
// { required: true, message: "体积重量不能为空", trigger: "blur" } // { required: true, message: "体积重量不能为空", trigger: "blur" }
@ -871,7 +872,7 @@ data() {
// { required: true, message: "结算重量不能为空", trigger: "blur" } // { required: true, message: "结算重量不能为空", trigger: "blur" }
// ], // ],
freight: [ freight: [
{ required: true, message: "运费不能为空", trigger: "blur" } { required: true, message: "运费不能为空", trigger: ["blur",'change'] }
], ],
// sendSiteCode: [ // sendSiteCode: [
// { required: true, message: "发件网点代码不能为空", trigger: ["blur",'change'] } // { required: true, message: "发件网点代码不能为空", trigger: ["blur",'change'] }
@ -880,7 +881,7 @@ data() {
// { required: true, message: "发货时间不能为空", trigger: "blur" } // { required: true, message: "发货时间不能为空", trigger: "blur" }
// ], // ],
dispatchUnderlingSiteCode: [ dispatchUnderlingSiteCode: [
{ required: true, message: "目的地网点代码不能为空", trigger: "blur" } { required: true, message: "目的地网点代码不能为空", trigger: ["blur",'change'] }
], ],
custNo: [ custNo: [
{ required: true, message: "月结卡号不能为空", trigger: ["blur",'change'] } { required: true, message: "月结卡号不能为空", trigger: ["blur",'change'] }
@ -926,7 +927,7 @@ watch: {
created() { created() {
if(this.$route.query.action=="copyOrder"){ if(this.$route.query.action=="copyOrder"||this.$route.query.action=="modify"){
this.action=this.$route.query.action; this.action=this.$route.query.action;
this.billCode=this.$route.query.billCode; this.billCode=this.$route.query.billCode;
this.initData(); this.initData();
@ -946,7 +947,10 @@ methods: {
if(this.billCode && this.billCode!=undefined) { if(this.billCode && this.billCode!=undefined) {
this.loading = true; this.loading = true;
getWaybillDetail(this.billCode).then(response => { getWaybillDetail(this.billCode).then(response => {
this.form = response.data; console.log("===>getWaybillDetail===>",response);
this.form = deepClone(response.data);
console.log("===>this.form===>",this.form);
this.form.productTypeSelArr=[this.form.transLine,this.form.productType]; this.form.productTypeSelArr=[this.form.transLine,this.form.productType];
this.loading = false; this.loading = false;
@ -976,6 +980,29 @@ methods: {
this.form.blMessage='1' this.form.blMessage='1'
this.form.blAcceptMessage='1' this.form.blAcceptMessage='1'
this.isNeedSave=true; this.isNeedSave=true;
// 月结客户OMS登录
let customerType=this.$store.getters.customerType;
if(customerType==2){
// 获取默认的月结账号
this.form.paymentType='2';
this.form.custNo=this.$store.getters.userName;
let qParams = {
pageNumber:1,
pageSize:10
};
listSimpleEmisMonthpayAccount(qParams).then(response => {
let monthList=response.rows;
if(monthList&&monthList.length>0){
let item=monthList[0];
this.form.custNo=item.custNo;
this.form.payee=item.payee;
this.form.salesmen=item.salesmen;
}
});
}
this.productFeeList=[]; this.productFeeList=[];
} }

View File

@ -29,8 +29,8 @@
<el-form-item label="查询时间范围" prop=""> <el-form-item label="查询时间范围" prop="">
<div slot="label" > <div slot="label" >
<el-radio-group class="query-label" v-model="queryOrderDateType" style="font-size:12px"> <el-radio-group class="query-label" v-model="queryOrderDateType" style="font-size:12px">
<el-radio :key="1" label="1" ><span style="font-size:12px">发货时间</span></el-radio> <el-radio :key="1" label="1" ><span style="font-size:12px">下单时间</span></el-radio>
<el-radio :key="1" label="1"><span style="font-size:12px">创建时间</span></el-radio> <!-- <el-radio :key="2" label="2"><span style="font-size:12px">创建时间</span></el-radio> -->
</el-radio-group> </el-radio-group>
</div> </div>
<elDateAdvPicker v-model="dateRange" ></elDateAdvPicker> <elDateAdvPicker v-model="dateRange" ></elDateAdvPicker>
@ -503,6 +503,7 @@
<!-- <el-table-column label="创建人" align="center" prop="createByName" width="80" :show-overflow-tooltip="true"/> --> <!-- <el-table-column label="创建人" align="center" prop="createByName" width="80" :show-overflow-tooltip="true"/> -->
<!-- <el-table-column label="创建网点" align="center" prop="createSiteName" width="80" :show-overflow-tooltip="true"/> --> <!-- <el-table-column label="创建网点" align="center" prop="createSiteName" width="80" :show-overflow-tooltip="true"/> -->
<el-table-column label="下单时间" align="center" prop="orderDate" width="170"/>
<el-table-column label="创建时间" align="center" prop="createTime" width="170"/> <el-table-column label="创建时间" align="center" prop="createTime" width="170"/>
<!-- <el-table-column label="修改人" align="center" prop="updateByName" width="80" :show-overflow-tooltip="true"/> --> <!-- <el-table-column label="修改人" align="center" prop="updateByName" width="80" :show-overflow-tooltip="true"/> -->
<!-- <el-table-column label="修改网点" align="center" prop="updateSiteName" width="80" :show-overflow-tooltip="true"/> --> <!-- <el-table-column label="修改网点" align="center" prop="updateSiteName" width="80" :show-overflow-tooltip="true"/> -->

View File

@ -49,7 +49,7 @@
</div> </div>
<div v-if="extBillInfo.blBillPicDispatchRmk==1" style="line-height:30px;margin-top: 10px; font-size: 14px;display: inline-flex;width:100%" class="panel" > <div v-if="extBillInfo!=null&&extBillInfo.blBillPicDispatchRmk==1" style="line-height:30px;margin-top: 10px; font-size: 14px;display: inline-flex;width:100%" class="panel" >
<div style="width: 85%;color:gray;padding-left: 10px;">签收底单</div> <div style="width: 85%;color:gray;padding-left: 10px;">签收底单</div>
<div style="width: 15%;text-align: center;font-size: 14px;" @click="viewSignedPic">查看</div> <div style="width: 15%;text-align: center;font-size: 14px;" @click="viewSignedPic">查看</div>
</div> </div>