Commit 41f396ad authored by dragondean@qq.com's avatar dragondean@qq.com

修复bug等

parent 41b58be7
......@@ -46,6 +46,10 @@ export default {
align-items: center;
justify-content: center;
}
.empty-placeholder{
padding: 50px;
text-align: center;
}
$sizes: 10,20,30,50,100,150,200,500,800,1000;
@for $i from 1 through length($sizes){
$item: nth($sizes, $i);
......
......@@ -352,3 +352,11 @@ export function getOrderSpecialByApproveId(approveId) {
})
}
// 根据合并订单编号获得已合单的订单动态
export function getMergeLogByMergedOrderNo(params){
return request({
url: '/order/merge/getMergeLogByMergedOrderNo',
method: 'get',
params
})
}
\ No newline at end of file
......@@ -93,3 +93,26 @@ export function orderReview(orderId){
method: 'put'
})
}
// 根据订单id批量复合订单控货人放货
export function batchReview(data){
return request({
url: '/ecw/order-cargo-control-pick/review/',
method: 'put',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
data
})
}
// 获得可调货的控货订单列表
export function seasoningCondimentsSelect(data){
return request({
url: '/ecw/order-cargo-control-pick/seasoning-condiments/cargo-control/order/select',
method: 'put',
data
})
}
<template>
<div class="need-know" :id="'need-know_' + keyname" v-if="detail">
<!-- <h2>{{detail.titleZh}}</h2> -->
<div class="body" v-html="detail.contentZh"></div>
<div class="body" ref="body" v-html="detail.contentZh"></div>
</div>
</template>
<script>
......@@ -26,6 +26,9 @@ export default {
download(){
// 直接保存图片
let l = this.$loading()
/* document.querySelectorAll(`#need-know_${this.keyname} img`).forEach(img => {
img.setAttribute('crossOrigin', '*')
}) */
html2canvas(document.querySelector("#need-know_" + this.keyname)).then(canvas => {
canvas.toBlob((blob) => {
FileSaver.saveAs(blob, this.keyname + '.png')
......
......@@ -63,7 +63,7 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="2">
<el-button type="primary" plain icon="el-icon-setting" size="mini" :disabled="multiple">批量复核</el-button>
<el-button type="primary" plain icon="el-icon-setting" size="mini" :disabled="multiple" @click="batchReview">批量复核</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
......@@ -148,10 +148,9 @@ import { getTradeCityList } from '@/api/ecw/region'
import Transfer from '@/views/ecw/order/components/Transfer'
import Release from './components/Release'
import CargoControlEdit from './components/CargoControlEdit'
import { getCargoControlOrderPage } from "@/api/ecw/orderCargoControl"
import { getCargoControlOrderPage, batchReview } from "@/api/ecw/orderCargoControl"
import TransferCargo from '@/views/ecw/order/components/TransferCargo'
export default {
name: "OrderCargonControl",
components: {
......@@ -273,6 +272,15 @@ export default {
this.handleQuery()
})
},
// 批量复核
batchReview(){
this.$confirm('确定复核选中的订单么?').then(() => {
return batchReview({orderIds: this.ids.join(',')})
}).then(() => {
this.$message.error('操作成功')
this.handleQuery()
})
},
onReleaseSuccess(){
this.showReleaseOrderId = null
this.handleQuery()
......
<template>
<el-dialog :title="title" visible :before-close="closeDialog" :close-on-click-modal="false">
<el-collapse v-model="activeNames">
<template v-for="item in list">
<el-collapse-item :key="item.orderNo" :title="item.orderNo" :name="item.orderNo">
<el-timeline :reverse="reverse">
<el-timeline-item
v-for="(activity, index) in item.logs"
:key="index"
:timestamp="activity.createTime|parseTime">
{{activity.titleZh}}
</el-timeline-item>
</el-timeline>
</el-collapse-item>
</template>
<div class="empty-placeholder" v-if="status == 'finished' && !list.length">
暂无数据
</div>
</el-collapse>
</el-dialog>
</template>
<script>
import {getMergeLogByMergedOrderNo} from '@/api/ecw/order'
import {parseTime} from '@/utils/ruoyi'
export default {
props:{
orderNo: String
},
data(){
return {
show: false,
list:[],
activeNames:[],
status: null
}
},
filters: {parseTime},
computed:{
title(){
return '合单日志 - ' + this.orderNo
}
},
created(){
this.status = 'loading'
getMergeLogByMergedOrderNo({mergedOrderNo: this.orderNo}).then(res => {
for(let orderNo in res.data){
this.list.push({
orderNo,
logs: res.data[orderNo]
})
}
if(!this.list.length){
this.empty = true
}
}).finally(res => {
this.status = 'finished'
})
},
methods:{
closeDialog(){
this.show = false
this.$emit('close');
}
}
}
</script>
\ No newline at end of file
......@@ -17,7 +17,12 @@
</el-form>
</div>
<div v-if="step=='preview'" style="height:250px; overflow-y:hidden">
<div class="order-print-tag-item" v-for="item in tags.filter(tag => tag.num >= form.start && tag.num <= form.end)" style="width: 80mm; margin: 0 auto;" :id="'order-print-tag' + item.num" :key="item.num">
<div
class="order-print-tag-item"
v-for="(item, index) in tags.filter(tag => tag.num >= form.start && tag.num <= form.end)"
style="width: 80mm; margin: 0 auto;" :id="'order-print-tag' + item.num"
:style="{display: index == 0 ? 'block':'none' }"
:key="item.num">
<div style="float: left; width: 28mm; border-bottom: 0.2mm solid #333; border-right: 0.2mm solid #333; " >
<img :src="detail.url" alt="ECP0063704N-1" style="width: 26mm" />
<p style=" text-align: center; height: 5mm; font-size: 3mm; -webkit-margin-before: 0em; -webkit-margin-after: 0em; margin-top: 0mm; " >
......
<template>
<el-dialog title="调货" visible :before-close="closeDialog" :close-on-click-modal="false" width="800px">
<!--调货-->
<el-form ref="form" :model="formData" :rules="rules" size="small" label-width="150px" >
<el-form ref="form" :model="formData" :rules="rules" size="small" label-width="150px" v-if="detail" >
<el-row>
<el-col :span="12">
<el-form-item label="收货人">
{{detail.orderNo}}
{{detail.consigneeName}}
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="收货人电话">
{{detail.sumNum}}
{{detail.consigneeCountryCode}} {{detail.consigneePhone}}
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="选择控货订单">
<el-select v-model="formData.order" placeholder="请选择控货中的订单" multiple>
<el-option :label="1" :value="1"></el-option>
<el-select v-model="formData.orderIds" placeholder="请选择控货中的订单" multiple>
<el-option v-for="item in orders" :label="item.orderNo" :value="item.orderId" :key="item.orderId"></el-option>
</el-select>
</el-form-item>
</el-col>
......@@ -72,7 +72,7 @@
</el-dialog>
</template>
<script>
import {createPick, getRleaseInfo} from '@/api/ecw/orderCargoControl'
import {createPick, getRleaseInfo, seasoningCondimentsSelect} from '@/api/ecw/orderCargoControl'
import AreaCodeSelector from '@/components/AreaCodeSelector'
import SendSmsCode from '@/views/ecw/order/components/SendSmsCode'
export default {
......@@ -85,16 +85,19 @@ export default {
show: false,
detail: null,
formData:{
"pickNum": 0,
"pickQuantity": 0,
"pickVolume": 0,
"pickWeight": 0,
"remarks": "",
orderIds:[]
},
rules:{
consigneeName: {required: true, message: '请填写收货人'},
code: {required: true, message: '请填写验证码'}
},
orders: [],
selectedOrders:[]
}
},
watch:{
'formData.orderIds'(val){
this.selectedOrders = this.orders.filter(item => val.indexOf(item.orderId) > -1)
}
},
created(){
......@@ -104,6 +107,9 @@ export default {
methods:{
loadData(){
getRleaseInfo(this.orderId).then(res => this.detail = res.data)
seasoningCondimentsSelect({orderId: this.orderId}).then(res => {
this.orders = res.data
})
},
closeDialog(){
this.show = false
......
......@@ -44,7 +44,7 @@
<el-col :span="12">
<el-descriptions class="margin-top" border title="基础信息" :column="2">
<el-descriptions-item label="唛头">{{order.marks}}</el-descriptions-item>
<el-descriptions-item label="送货时间"></el-descriptions-item>
<el-descriptions-item label="送货时间">{{order.consigneeVO.deliveryDate}}</el-descriptions-item>
<el-descriptions-item label="是否控货">{{order.isCargoControl?'是':'否'}}</el-descriptions-item>
<el-descriptions-item label="填单信息">
{{order.costVO.totalNum}}箱 {{order.costVO.totalWeight}}Kg {{order.costVO.totalVolume}}m³
......@@ -83,7 +83,7 @@
</template>
</el-table-column>
<el-table-column prop="num" label="填单件数" />
<el-table-column prop="num" label="入仓件数" />
<el-table-column prop="sumNum" label="入仓件数" />
<el-table-column prop="unit" label="单位">
<template slot-scope="{row}">
<dict-tag :type="DICT_TYPE.ECW_PACKAGE_TYPE" :value="row.unit" />
......@@ -129,8 +129,8 @@
<el-result v-else icon="info " title="暂无数据" subTitle="暂无订单动态数据" />
</el-tab-pane>
<el-tab-pane label="运单资料/提货单" name="three">
<el-button type="text" @click="showWarehouseReceipt=true">查看入仓单</el-button>
<!--inWarehouseState 1待入库,2多了,3少了,4到齐-->
<el-button type="text" @click="showWarehouseReceipt=true" :disabled="order.inWarehouseState <= 1">查看入仓单</el-button>
<el-button type="text" @click.native="showLadingBill=true" :disabled="!order.tidanNo">查看提货单</el-button>
<el-button :disabled="true" type="text">装箱单未上传</el-button>
</el-tab-pane>
......
......@@ -19,7 +19,7 @@
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="电话" :labelStyle="labelStyle">
{{consignorContact.phoneNew || ''}}
{{consignorContact.areaCode}} {{consignorContact.phoneNew || ''}}
</el-descriptions-item>
<el-descriptions-item label="发货人公司" :labelStyle="labelStyle">
{{consignorContact.company || ''}}
......@@ -35,7 +35,7 @@
</el-form-item>
</el-descriptions-item>
<el-descriptions-item label="电话" :labelStyle="labelStyle">
{{consigneeContact.phoneNew || ''}}
{{consigneeContact.areaCode}} {{consigneeContact.phoneNew || ''}}
</el-descriptions-item>
<el-descriptions-item label="收货人公司" :labelStyle="labelStyle">
{{consigneeContact.company || ''}}
......@@ -190,11 +190,20 @@
</template>
</template>
</el-table-column> -->
<el-table-column label="是否预付">
<template slot-scope="{row}">
<dict-tag v-if="row.fee" :type="DICT_TYPE.ECW_PAY_ADVANCE" :value="row.fee.isPayAdvance" />
</template>
</el-table-column>
<el-table-column label="商品链接" width="200px" align="center">
<template slot-scope="{row}">
<el-link type="primary" :href="row.link" target="_blank" style="display:block">{{row.link}}</el-link>
<el-button type="primary" size="mini" @click="setLink(row)">
{{row.link ? '编辑商品链接' : '添加商品链接'}}
</el-button>
</template>
</el-table-column>
<el-table-column label="操作" width="80px" fixed="right">
<template slot-scope="scope">
<el-button size="mini" type="danger" @click="delProduct(scope.$index)">删除</el-button>
......@@ -541,9 +550,9 @@ export default {
homeDeliveryService(){
return this.selectedRouter && this.selectedRouter.otherService && this.selectedRouter.otherService.indexOf('1') > -1
},
// 代收货款
// 代收货款(非控货订单,且路线开通了代收服务)
collectionProxy(){
return this.selectedRouter && this.selectedRouter.otherService && this.selectedRouter.otherService.indexOf('2') > -1
return !this.form.isCargoControl && this.selectedRouter && this.selectedRouter.otherService && this.selectedRouter.otherService.indexOf('2') > -1
},
// 根据渠道id显示渠道名
getChannelNameById(){
......@@ -673,6 +682,12 @@ export default {
downloadTpl(){
window.open('http://v4.groupage.cn/Download/%E8%A3%85%E7%AE%B1%E5%8D%95%E6%A8%A1%E6%9D%BF.xls')
},
setLink(row){
this.$prompt('请输入商品链接', {inputValue: row.link}).then(({value}) => {
console.log('value', value)
this.$set(row, 'link', value)
})
},
onFileChoosed(e){
window.choosed = e
console.log('onFileChoosed', e)
......
......@@ -72,7 +72,7 @@
</el-form-item>
<el-form-item label="是否齐货" >
<!--// 字段存疑-->
<dict-selector v-model="queryParams.isCargoControl" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" fomatter="bool" />
<dict-selector v-model="queryParams.isNeat" :type="DICT_TYPE.INFRA_BOOLEAN_STRING" fomatter="bool" />
</el-form-item>
<!-- <el-form-item label="重货比" prop="weightRatio">
<el-input style="width: 100px;" v-model="molecule" placeholder="" clearable @change="moleculeChange"
......@@ -179,6 +179,7 @@
<el-button type="text" size="mini" @click="$router.push(`/order/release?orderId=${scope.row.orderId}`)">确认放货</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/singleApply?orderNo=${scope.row.orderNo}`)">合单申请</el-button>
<el-button type="text" size="mini" @click="$router.push(`/order/splitApply?orderId=${scope.row.orderId}`)">拆单申请</el-button>
<el-button type="text" size="mini" @click="showMergedLogOrderNo=scope.row.orderNo">合单日志</el-button>
</div>
</el-popover>
......@@ -241,6 +242,7 @@
<withdrawal v-if="show" :dialog-visible="show" :orderId="orderId" ></withdrawal>
<batch-single-application :order-list="orderId" :dialog-visible.sync="warehouseBol"></batch-single-application>
<fee-application :order-id="orderId" :dialog-visible.sync="feeApplicationBol"></fee-application>
<merge-log :order-no="showMergedLogOrderNo" v-if="showMergedLogOrderNo !== null" @close="showMergedLogOrderNo=null" />
</div>
</template>
......@@ -272,12 +274,14 @@ import withdrawal from "@/views/ecw/order/withdrawal";
import UserSelector from '@/components/UserSelector'
import BatchSingleApplication from "@/views/ecw/order/batchSingleApplication";
import FeeApplication from "@/views/ecw/order/feeApplication";
import MergeLog from '@/views/ecw/order/components/MergeLog'
export default {
name: "Order",
components: {
UserSelector,
FeeApplication,
BatchSingleApplication,
MergeLog,
CustomerSelector, ProductSelector, Selector,specialNeeds,PrintTag, PrintWarehouseReceipt, PrintLadingBill, BatchPickup,withdrawal
},
props: {
......@@ -353,6 +357,7 @@ export default {
printWarehouseReceiptOrderId: null, // 打印入仓单的订单ID
printLadingBillInfo: null, // 打印提单
showBatchPickup: false, // 是否显示批量提货弹窗
showMergedLogOrderNo:null, // 显示合单日志订单号
isShow:false,//特殊显示
orderId:undefined,
/* DICT_TYPE,
......
......@@ -29,7 +29,7 @@
<el-dialog title="查看须知" :visible.sync="showNotice" width="700px">
<!-- <img :src="noticeUrl" id="noticeImg" /> -->
<need-know keyname="control" ref="needKnow" />
<need-know keyname="warehousing" ref="needKnow" />
<div style="text-align:center">
<el-button type="primary" @click="$refs.needKnow.download()">下载</el-button>
</div>
......
<template>
<div class="app-container">
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
<el-form ref="form" :model="form" :rules="rules" label-width="150px" :disabled="readonly">
<el-form-item label="商品类型" prop="productType">
<el-select v-model="form.productType" :disabled="!!$route.query.ids">
......@@ -230,7 +230,7 @@
</el-form>
<div style="margin: 20px 0">
<el-button @click="submitForm" type="primary">确认提交</el-button>
<el-button @click="submitForm" type="primary" v-if="!readonly">确认提交</el-button>
<el-button type="default" @click="$router.back()">返回上一页</el-button>
</div>
</div>
......@@ -280,6 +280,7 @@ export default {
unitList: [],
productTypeList: [],
productDisabled: true,
readonly: false,
lineList: [] //路线数组
}
},
......@@ -364,6 +365,9 @@ export default {
}
},
async created() {
if(this.$route.query.readonly){
this.readonly = true
}
// action=batchUpdate 表示批量修改单个商品的价格(一条或者多条),如果没有ids显示路线选择组件,否则不显示路线组件
// action=update 表示修改单个商品的单条路线价格,需要回显
if(this.$route.query.action == 'update'){
......
......@@ -171,6 +171,8 @@
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="140">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row, true)"
v-hasPermi="['ecw:product-price:update']">查看</el-button>
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
v-hasPermi="['ecw:product-price:update']">编辑</el-button>
......@@ -402,7 +404,8 @@ export default {
if(this.$route.query.product_id != productId){
this.queryParams = {
pageNo: 1,
pageSize: 10
pageSize: 10,
productId: this.$route.query.product_id
}
getProduct(this.$route.query.product_id).then(res => {
this.product = res.data
......@@ -417,6 +420,7 @@ export default {
}
// 指定产品获取产品信息
if(this.$route.query.product_id){
this.$set(this.queryParams, 'productId', +this.$route.query.product_id);
getProduct(this.$route.query.product_id).then(res => {
this.product = res.data
})
......@@ -578,8 +582,10 @@ export default {
this.$router.push('../../lineProject/batch-edit')
},
/** 修改按钮操作 */
handleUpdate(row) {
return this.$router.push('../../lineProject/product-price/edit?action=update&id=' + row.id)
handleUpdate(row, readonly) {
let url = '../../lineProject/product-price/edit?action=update&id=' + row.id
if(readonly)url += '&readonly=1'
return this.$router.push(url)
},
updateStatus(row, type) {
......
......@@ -103,7 +103,7 @@ export default {
companyZh: undefined,
agentName: undefined,
tell: "",
address: "Abc123456",
address: "",
remark: undefined,
field110: undefined,
companyType: [],
......@@ -137,23 +137,11 @@ export default {
},
treeList:[],
provinceList:[],
cityList:[]/*
selectedCountryIndex: null,
selectedProvinceIndex: null,
selectedCityIndex: null, */
// selectedRegionIndex: null
cityList:[]
}
},
computed: {
/* provinceList(){
return this.treeList[this.selectedCountryIndex] ?. children || []
},
cityList(){
return this.provinceList[this.selectedProvinceIndex] ?. children || []
},
regionList(){
return this.cityList[this.selectedCityIndex] ?. children || []
} */
},
watch: {
'formData.country'(country){
......@@ -197,20 +185,7 @@ export default {
return;
}
let data = Object.assign({}, this.formData)
/* if(data.companyType && data.companyType.length){
data.companyType = data.companyType.join(',')
} */
/* let regionArr = []
if(this.selectedCountryIndex !== null){
//regionArr.push(this.treeList[this.selectedCountryIndex].id)
data.country = this.treeList[this.selectedCountryIndex].id
}
if(this.selectedProvinceIndex !== null){
data.province = this.treeList[this.selectedCountryIndex].id
}
if(this.selectedCityIndex !== null){
data.city = this.cityList[this.selectedCityIndex].id
} */
// 修改的提交
if (data.id != null) {
updateSupplier(data).then(response => {
......@@ -229,21 +204,7 @@ export default {
},
resetForm() {
this.$refs['elForm'].resetFields()
},
/* licenseBeforeUpload(file) {
let isRightSize = file.size / 1024 / 1024 < 2
if (!isRightSize) {
this.$message.error('文件大小超过 2MB')
}
return isRightSize
},
contractBeforeUpload(file) {
let isRightSize = file.size / 1024 / 1024 < 2
if (!isRightSize) {
this.$message.error('文件大小超过 2MB')
}
return isRightSize
}, */
}
}
......
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