Commit 58750a76 authored by dragondean@qq.com's avatar dragondean@qq.com

完善可出列表

parent 1bf66983
......@@ -748,6 +748,15 @@ export function splitItemUpdate(data){
data
})
}
// 可出订单列表
export function canShipmentPage(params){
return request({
url: 'air/order/can/shipment/page',
method: 'get',
params
})
}
// 确认订单可出
export function setCanShipment(orderId){
return request({
......@@ -755,3 +764,16 @@ export function setCanShipment(orderId){
method: 'put',
})
}
// 批量可出
export function batchCanShipment(ids){
throw new Error('接口未出,待完善,以下代码是copilot生成')
return request({
url: '/air/order/can/shipment/batch',
method: 'put',
params: {ids}
})
}
// 批量转异
export function batchException(ids){
throw new Error('接口未出,待完善,以下代码是copilot生成')
}
......@@ -346,12 +346,6 @@
)">
<el-dropdown-item @click.native="handleUpdate(scope.row, true)" v-hasPermi="['ecw:order:update_channel']">{{$t('变更出货渠道')}}</el-dropdown-item>
</template>
<!--可出,待出的时候显示-->
<template v-if="(
scope.row.airShipment == 1
)">
<el-dropdown-item @click.native="setCanShipment(scope.row)" v-hasPermi="['ecw:order:can_shipment']">{{$t('可出')}}</el-dropdown-item>
</template>
</el-dropdown-menu>
</el-dropdown>
......@@ -905,15 +899,6 @@ export default {
onBatchClose(){
this.showBatchPickup = false
this.handleQuery()
},
// 设置可出
setCanShipment(row){
this.$confirm(this.$t(`您确定要将订单${row.orderNo}设置为可出吗?`)).then(() =>{
setCanShipment(row.orderId)
}).then(res =>{
this.$message.success(res.message || this.$t('操作成功'))
this.getList()
})
}
}
};
......
......@@ -104,8 +104,8 @@
<!-- 操作工具栏 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button :disabled="!multipleSelection.length" type="primary" plain size="mini" @click="$alert('//TODO')" v-hasPermi="['ecw:order:peddingList:batch_avail4shpiing']">{{$t('批量可出')}}</el-button>
<el-button :disabled="!multipleSelection.length" type="primary" plain size="mini" @click="$alert('//TODO')" v-hasPermi="['ecw:order:peddingList:batch_exception']">{{$t('批量转异')}}</el-button>
<el-button :disabled="!multipleSelection.length" type="primary" plain size="mini" @click="batchCanShipment" v-hasPermi="['ecw:order:peddingList:batch_can_shipment']">{{$t('批量可出')}}</el-button>
<el-button :disabled="!multipleSelection.length" type="primary" plain size="mini" @click="batchException" v-hasPermi="['ecw:order:peddingList:batch_exception']">{{$t('批量转异')}}</el-button>
</el-col>
</el-row>
......@@ -172,7 +172,7 @@
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width actions" width="150px">
<template slot-scope="scope">
<el-button type="text" @click="$alert('// TODO')" v-hasPermi="['ecw:order:peddingList:avail4shpiing']">{{$t('可出')}}</el-button>
<el-button type="text" @click="setCanShipment(scope.row)" v-hasPermi="['ecw:order:peddingList:can_shipment']">{{$t('可出')}}</el-button>
<el-button type="text" @click="printTagOrderId=scope.row.orderId" v-hasPermi="['ecw:order:peddingList:print_tag']">{{$t('打印标签')}}</el-button>
</template>
</el-table-column>
......@@ -182,6 +182,27 @@
@pagination="getList" />
<print-tag v-if="printTagOrderId !== null" :order-id="printTagOrderId" @close="printTagOrderId=null" />
<el-dialog :title="$t('订单转异')" center :visible.sync="showBatchException">
<el-form label-position="top" label-width="200" ref="batchExceptionForm" :model="batchExceptionForm" :rules="exceptionRules">
<el-form-item :label="$t('订单号')" prop="manualExceptionType">
{{multipleSelection.map(item => item.orderNo).join(',')}}
</el-form-item>
<el-form-item :label="$t('原因类型')" prop="manualExceptionType">
<dict-selector v-model="batchExceptionForm.manualExceptionType" form-type="checkbox" :type="DICT_TYPE.MANUAL_EXCEPTION_TYPE" multiple ></dict-selector>
</el-form-item>
<el-form-item :label="$t('附件')">
<image-upload v-model="batchExceptionForm.exceptionUrls"></image-upload>
</el-form-item>
<el-form-item :label="$t('详细信息')">
<el-input v-model="batchExceptionForm.descZh" type="textarea"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" @click="handleBatchException">{{$t('确认转异')}}</el-button>
<el-button @click="showBatchException = false">{{$t('取消')}}</el-button>
</span>
</el-dialog>
</div>
</template>
......@@ -216,7 +237,7 @@ import {
exportCustomsDatas,
exportShippingDatas,
exportShipFee,
exportUnload
exportUnload, setCanShipment, canShipmentPage, batchCanShipment, batchException
} from "@/api/ecw/order";
import PrintTag from './components/PrintTag'
import PrintWarehouseReceipt from './components/PrintWarehouseReceipt'
......@@ -278,7 +299,25 @@ export default {
rows: 20,
},
currencyList:[],
channelList:[]
channelList:[],
// 是否显示批量转异弹层
showBatchException: false,
// 批量转异表单
batchExceptionForm: {},
// 批量转异表单验证规则
exceptionRules: {
manualExceptionType: [
{ required: true, message: '请勾选原因类型', trigger: 'change' },
{
validator: (rule, value, callback) => {
if (value.length <= 0) {
callback(new Error('请勾选原因类型'))
}
callback()
}, trigger: 'change'
}
]
}
};
},
watch:{
......@@ -323,7 +362,7 @@ export default {
getList() {
this.loading = true;
// 执行查询
getOrderPage(this.combinedQueryParams).then(response => {
canShipmentPage(this.combinedQueryParams).then(response => {
// 部分情况下,订单后面的操作下拉菜单会显示按钮,但是下来没有选项,在elTable组件更新的时候会导致渲染错误,所以要在更新渲染前清空一次list让table彻底重新渲染,避免部分更新导致异常
this.list = []
this.$nextTick(() => {
......@@ -361,6 +400,45 @@ export default {
this.ids = selection.map(item => item.orderId)
this.single = selection.length !== 1
this.multiple = !selection.length
},
// 设置可出
setCanShipment(row){
this.$confirm(this.$t(`您确定要将订单{orderNo}设置为可出吗?`, {orderNo: row.orderNo})).then(() =>{
return setCanShipment(row.orderId)
}).then(res =>{
this.$message.success(res.message || this.$t('操作成功'))
this.getList()
})
},
// 批量可出
batchCanShipment(){
let orderNos = this.multipleSelection.map(item => item.orderNo).join(',')
this.$confirm(this.$t(`您确定要将订单{orderNos}设置为可出吗?`, {orderNos})).then(() =>{
return batchCanShipment(this.ids)
}).then(res =>{
this.$message.success(res.message || this.$t('操作成功'))
this.getList()
})
},
// 批量转异
batchException(){
if(!this.multipleSelection.length){
return this.$message.error("暂无选择订单")
}
this.showBatchException = true
},
handleBatchException(){
// 以下代码是copilot生成,暂无接口,回头在改
this.$refs.batchExceptionForm.validate(valid => {
if (valid) {
let params = Object.assign({}, this.batchExceptionForm, {orderIds: this.ids})
batchException(params).then(res =>{
this.$message.success(res.message || this.$t('操作成功'))
this.showBatchException = false
this.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