Commit dad20b2e authored by Marcus's avatar Marcus

Merge remote-tracking branch 'origin/dev' into dev

parents b92b714a dace2a39
...@@ -80,7 +80,7 @@ export function createGoods(data) { ...@@ -80,7 +80,7 @@ export function createGoods(data) {
*/ */
export function getMergePkgList(params) { export function getMergePkgList(params) {
return request({ return request({
url: "/ecw/box-merge-pkg/pager", url: "/ecw/box-merge-pkg/page",
method: "get", method: "get",
params, params,
}); });
...@@ -99,4 +99,63 @@ export function createMergePkg(data) { ...@@ -99,4 +99,63 @@ export function createMergePkg(data) {
method: "post", method: "post",
data, data,
}); });
}
/**
* 更新合包箱
*
* @export
* @param {*} data
* @return {*}
*/
export function updateMergePkg(data) {
return request({
url: "/ecw/box-merge-pkg/update",
method: "put",
data,
});
}
/**
* 删除合包箱
*
* @export
* @param {*} data
* @return {*}
*/
export function deleteMergePkg(id) {
return request({
url: `/ecw/box-merge-pkg/delete?id=`+id,
method: "delete",
});
}
/**
* 获得未装箱列表分页
*
* @export
* @param {*} data
* @return {*}
*/
export function getUnPkgPage(params) {
return request({
url: "/ecw/box-merge-pkg/getUnPkgPage",
method: "get",
params,
});
}
/**
* 获得已装箱列表分页
*
* @export
* @param {*} data
* @return {*}
*/
export function getPkgPageByPkgId(params) {
return request({
url: "/ecw/box-merge-pkg/getPkgPageByPkgId",
method: "get",
params,
});
} }
\ No newline at end of file
...@@ -63,6 +63,10 @@ export default { ...@@ -63,6 +63,10 @@ export default {
value(val){ value(val){
// console.log('初始化内容', val) // console.log('初始化内容', val)
this.init() this.init()
},
// 类型变了,清空内容
productType(){
this.list = []
} }
}, },
created(){ created(){
......
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
{{$l(row, 'destTitle')}} {{$l(row, 'destTitle')}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('渠道')" prop="startTitleZh"> <el-table-column :label="$t('渠道')" prop="startTitleZh" v-if="type == 'air'">
<template slot-scope="{row}"> <template slot-scope="{row}">
{{$l(row.channel, 'name')}} {{$l(row.channel, 'name')}}
</template> </template>
......
...@@ -200,6 +200,7 @@ export const DICT_TYPE = { ...@@ -200,6 +200,7 @@ export const DICT_TYPE = {
ORDER_SPECIAL_NEEDS:'order_special_needs', // 订单特殊需求 ORDER_SPECIAL_NEEDS:'order_special_needs', // 订单特殊需求
ORDER_ABNORMAL_STATE:'order_abnormal_state', ORDER_ABNORMAL_STATE:'order_abnormal_state',
TARGET_TYPE:'target_type',//部门业绩目标类型 TARGET_TYPE:'target_type',//部门业绩目标类型
CEBE_UNIT:'cube_unit',//目标单位
RECEIPT_ITEM_STATE:'receipt_item_state',//收款单明细状态 RECEIPT_ITEM_STATE:'receipt_item_state',//收款单明细状态
// ========== 出货模块 ========== // ========== 出货模块 ==========
BOX_SHIPPING_TRAILER_STATUS: 'shipping_trailer_status', // 拖车状态 BOX_SHIPPING_TRAILER_STATUS: 'shipping_trailer_status', // 拖车状态
......
...@@ -168,12 +168,17 @@ ...@@ -168,12 +168,17 @@
</template> </template>
<script> <script>
import { createbox, updatebox, deletebox, getbox, getboxPage, exportboxExcel } from '@/api/ecw/box' import { deletebox, getbox, getboxPage, exportboxExcel } from '@/api/ecw/box'
import { getChannelList } from '@/api/ecw/channel' import { getChannelList } from '@/api/ecw/channel'
import { getWarehouseList } from '@/api/ecw/warehouse' import { getWarehouseList } from '@/api/ecw/warehouse'
import costForm from './costForm.vue' import costForm from './costForm.vue'
import regError from './regError.vue' import regError from './regError.vue'
import editAirForm from './editAirForm.vue' import editAirForm from './editAirForm.vue'
import {
downloadFile,
downloadFileByUrl,
formatDate,
} from "./shippingAir/utils";
export default { export default {
name: 'indexAir', name: 'indexAir',
...@@ -291,6 +296,7 @@ export default { ...@@ -291,6 +296,7 @@ export default {
this.getChannelList() this.getChannelList()
}, },
methods: { methods: {
formatDate,
getChannelList() { getChannelList() {
getChannelList().then((res) => (this.channelList = res.data)) getChannelList().then((res) => (this.channelList = res.data))
}, },
......
...@@ -5,123 +5,111 @@ ...@@ -5,123 +5,111 @@
<el-card> <el-card>
<el-descriptions :column="4" border> <el-descriptions :column="4" border>
<el-descriptions-item :label="$t('自编号')"> <el-descriptions-item :label="$t('自编号')">
{{shipmentObj.selfNo}} {{ shipmentObj.selfNo }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item :label="$t('运输方式')"> <el-descriptions-item :label="$t('运输方式')">
<dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="shipmentObj.transportType" /> <dict-tag :type="DICT_TYPE.ECW_TRANSPORT_TYPE" :value="shipmentObj.transportType" />
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item :label="$t('始发地')"> <el-descriptions-item :label="$t('始发地')">
{{getCityName(shipmentObj.startWarehouseId)}} {{ getCityName(shipmentObj.startWarehouseId) }}
</el-descriptions-item> </el-descriptions-item>
<el-descriptions-item :label="$t('目的地')"> <el-descriptions-item :label="$t('目的地')">
{{getCityName(shipmentObj.destWarehouseId)}} {{ getCityName(shipmentObj.destWarehouseId) }}
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
</el-card> </el-card>
<el-row style="margin-top: 15px"> <el-row style="margin-top: 15px">
<el-row> <el-row>
<el-button size="small" type="primary" @click="addMergedialogVisible=true">{{$t('创建合箱')}}</el-button> <el-button
size="small"
type="primary"
@click="
addMergedialogVisible = true
addMergeForm = {}
mergeTitle = $t('新建合包箱号')
"
>{{ $t('新建合包箱号') }}</el-button
>
</el-row> </el-row>
<el-row style="margin-top: 5px"> <el-row style="margin-top: 5px">
<el-table border :data="tallyList" @select="checkboxSelect" @select-all="checkboxSelect" max-height="600px"> <el-table border :data="pagList" max-height="600px">
<el-table-column type="selection" align="center" width="55" fixed="left" />
<el-table-column align="center" :label="$t('序号')" width="50" prop="tidanNum" /> <el-table-column align="center" :label="$t('序号')" width="50" prop="tidanNum" />
<el-table-column :label="$t('订单号')" align="center" prop="orderNo"> <el-table-column :label="$t('箱号')" align="center" prop="pkgNum" />
<template slot-scope="scope"> <el-table-column :label="$t('尺寸')" width="250px" align="center">
<div> <template slot-scope="scope"> {{ scope.row.pkgLength }}*{{ scope.row.pkgWidth }}*{{ scope.row.pkgHight }} </template>
{{scope.row.orderNo}}
</div>
<div style="color:blue;fontWeight:bold;">
{{ scope.row.isExternalWarehouse === 1 ? ('('+$t('外部仓')+')') : ''}}
</div>
<div style="color:red;fontWeight:bold;">
{{ scope.row.adjustToDestWarehouseId > 0 ? ('('+$t('调仓')+')') : ''}}
</div>
</template>
</el-table-column>
<el-table-column :label="$t('商品信息')" width="250px" align="center" prop="">
<template slot-scope="{row}">
{{$l(row,'prodTitle')}}
</template>
</el-table-column>
<el-table-column :label="$t('备案')" align="center" prop="feeType">
<template slot-scope="{row}">
<template v-if="row.brandName">{{row.brandName}}</template>
<dict-tag v-else :type="DICT_TYPE.ECW_IS_BRAND" :value="row.feeType" />
</template>
</el-table-column>
<el-table-column :label="$t('报关方式')" align="center" prop="customsType">
<template slot-scope="scope">
<div :class="scope.row.customsType !== 1 ? 'custom_type_red' : ''">
<dict-tag :type="DICT_TYPE.ECW_CUSTOMS_TYPE" :value="scope.row.customsType" />
</div>
</template>
</el-table-column>
<el-table-column :label="$t('箱数')" align="center" prop="warehouseInInfo.cartonsNum">
<template slot-scope="scope">
<el-link type="primary" @click.native="showWarehouseLogs(scope.row)">
{{scope.row.warehouseInInfo.cartonsNum}}
</el-link>
<div style="color:blue;fontWeight:bold;">
{{ scope.row.multiSpecification === true ? '(多规格)' : ''}}
</div>
</template>
</el-table-column>
<el-table-column :label="$t('纸箱尺寸')" align="center" prop="warehouseInInfo.boxGauge">
</el-table-column>
<el-table-column :label="$t('体积')" align="center" prop="warehouseInInfo.volume">
</el-table-column>
<el-table-column :label="$t('重量')" align="center" prop="warehouseInInfo.weight">
</el-table-column>
<el-table-column :label="$t('数量(个)')" align="center" prop="quantity"></el-table-column>
<el-table-column :label="$t('储位')" align="center" prop="positionNo" width="250px">
<template slot-scope="scope">
{{notset(scope.row.positionNo)}}
</template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('订单数')" width="250px" align="center" prop="orderCount" />
<el-table-column :label="$t('箱数')" width="250px" align="center" prop="sumCount" />
<el-table-column :label="$t('入仓体积')" width="250px" align="center" prop="sumVolume" />
<el-table-column :label="$t('入仓重量')" align="center" prop="sumWeight" />
<el-table-column :label="$t('入仓数量(个)')" align="center" prop="sumQuantity" />
<el-table-column :label="$t('状态')" align="center" prop="tallyStatus"> <el-table-column :label="$t('状态')" align="center" prop="tallyStatus">
<template slot-scope="scope"> <template slot-scope="scope">
{{scope.row.tallyStatus === 1 ? $t('已理货') : $t('未理货')}} {{ statusData[scope.row.status] }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('理货时间')" align="center" prop="tallyTime"> <el-table-column :label="$t('创建时间')" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
{{formatDate(scope.row.tallyTime,'YYYY-MM-DD HH:mm:ss')}} {{ formatDate(scope.row.createTime, 'YYYY-MM-DD HH:mm:ss') }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('操作')" align="center" width="160" class-name="small-padding fixed-width" fixed="right"> <el-table-column :label="$t('操作')" align="center" width="260" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" size="small" @click="tallyClick('single',scope.row)">{{$t('理货')}}</el-button> <el-button v-if="scope.row.status == 1" type="text" size="small" @click="editMerge(scope.row)">{{ $t('编辑') }}</el-button>
<el-button type="text" size="small" @click="removeClick('single',scope.row)">{{$t('移出')}}</el-button> <el-button type="text" size="small" @click="pkgPage(scope.row)">{{ $t('装箱') }}</el-button>
<el-button v-if="scope.row.status != 2" type="text" size="small" @click="deleteMerge(scope.row.id)">{{ $t('删除') }}</el-button>
<el-button type="text" size="small" @click="removeClick('single', scope.row)">{{ $t('打印标签') }}</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-row> </el-row>
</el-row> </el-row>
<el-dialog custom-class="shipping-dialog" :title="$t('生成箱号')" :visible.sync="addMergedialogVisible" width="550px" :modal-append-to-body="false" append-to-body> <!-- 新增合包箱 -->
<el-dialog :title="mergeTitle" :visible.sync="addMergedialogVisible" width="700px" :modal-append-to-body="false" append-to-body>
<el-form ref="addMergeForm" :model="addMergeForm" label-width="100px"> <el-form ref="addMergeForm" :model="addMergeForm" label-width="100px">
<el-form-item :label="$t('数量')" prop="num" :rules="[ <el-form-item :label="$t('箱号')" prop="pkgNum">
{ required: true, message: this.$t('数量不能为空'), trigger: 'blur' } {{ !isMergeEdit ? '自动生成' : addMergeForm.pkgNum }}
]">
<el-input-number v-model="addMergeForm.num" :controls="false" :min="1" :precision="0" />
</el-form-item>
<el-form-item :label="$t('长')" prop="pkgLength">
<el-input-number v-model="addMergeForm.pkgLength" :controls="false" :precision="2" />
</el-form-item>
<el-form-item :label="$t('宽')" prop="pkgWidth">
<el-input-number v-model="addMergeForm.pkgWidth" :controls="false" :precision="2" />
</el-form-item> </el-form-item>
<el-form-item :label="$t('高')" prop="pkgHight"> <el-form-item v-if="!isMergeEdit" :label="$t('数量')" prop="num" :rules="[{ required: true, message: this.$t('数量不能为空'), trigger: 'blur' }]">
<el-input-number v-model="addMergeForm.pkgHight" :controls="false" :precision="2" /> <el-input-number v-model="addMergeForm.num" :controls="false" :min="1" :precision="0" />
</el-form-item> </el-form-item>
<el-row>
<el-col :span="8">
<el-form-item :label="$t('长')" prop="pkgLength">
<el-input-number v-model="addMergeForm.pkgLength" :controls="false" :precision="2" style="width: 100px" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :label="$t('宽')" prop="pkgWidth">
<el-input-number v-model="addMergeForm.pkgWidth" :controls="false" :precision="2" style="width: 100px" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item :label="$t('高')" prop="pkgHight">
<el-input-number v-model="addMergeForm.pkgHight" :controls="false" :precision="2" style="width: 100px" />
</el-form-item>
</el-col>
</el-row>
</el-form> </el-form>
<el-button size="small" type="primary" @click="addMerge">{{$t('确定')}}</el-button> <div style="text-align: center">
<el-button size="small" type="primary" @click="addMerge">{{ $t('确定') }}</el-button>
<el-button size="small" type="primary" @click="addMergedialogVisible = false">{{ $t('取消') }}</el-button>
</div>
</el-dialog>
<!-- 装箱 -->
<el-dialog :title="pkgPageTitle" :visible.sync="pkgPagedialogVisible" :fullscreen="true" :modal-append-to-body="false" append-to-body>
<el-radio-group v-model="pkgPageType">
<el-radio-button :label="1">{{$t('未装箱列表')}}</el-radio-button>
<el-radio-button :label="2">{{$t('已装箱列表')}}</el-radio-button>
</el-radio-group>
<un-pkg-page v-if="pkgPageType == 1" />
<pkg-page v-if="pkgPageType == 2" />
</el-dialog> </el-dialog>
<el-row style="margin-top: 15px" class="operate-button"> <el-row style="margin-top: 15px" class="operate-button">
<el-button size="small" type="primary" @click="tallyFinish">{{$t('完成理货')}}</el-button> <el-button size="small" type="primary" @click="finish">{{ $t('完成') }}</el-button>
<el-button size="small" @click="cancel">{{$t('取消')}}</el-button> <el-button size="small" @click="$emit('closeDialog')">{{ $t('取消') }}</el-button>
</el-row> </el-row>
</el-col> </el-col>
</el-row> </el-row>
...@@ -129,31 +117,64 @@ ...@@ -129,31 +117,64 @@
</template> </template>
<script> <script>
import { getMergePkgList, createMergePkg } from "@/api/ecw/boxAir" import { getMergePkgList, createMergePkg, updateMergePkg, deleteMergePkg } from '@/api/ecw/boxAir'
import { formatDate, serviceMsg } from '../../utils'
import unPkgPage from './unPkgPage.vue'
import PkgPage from './pkgPage.vue'
export default { export default {
components: {
unPkgPage,
PkgPage
},
data() { data() {
return { return {
pagList: [],
statusData: ['', '未装箱', '装箱中', '已封箱'],
// 查询参数
queryParams: {
page: 1,
rows: 10,
shipmentId: this.$attrs.shipmentObj.id
},
// 出货信息 // 出货信息
shipmentObj: this.$attrs.shipmentObj, shipmentObj: this.$attrs.shipmentObj,
addMergedialogVisible: false, addMergedialogVisible: false,
addMergeForm: {} addMergeForm: {},
mergeTitle: '',
isMergeEdit: false,
pkgPageType: 1,
pkgPageTitle: '',
pkgPagedialogVisible: false
} }
}, },
created() { created() {
this.getList(); this.getList()
}, },
computed: { computed: {
/* 获取仓库 */ /* 获取仓库 */
getCityName() { getCityName() {
return (id) => { return (id) => {
let arr = this.$attrs.warehouseList.filter((item) => item.id == id); let arr = this.$attrs.warehouseList.filter((item) => item.id == id)
return arr.length > 0 ? this.$l(arr[0], "title") : this.$t(""); return arr.length > 0 ? this.$l(arr[0], 'title') : this.$t('')
}; }
}, }
}, },
methods: { methods: {
getList(){ formatDate,
getMergePkgList() getList() {
getMergePkgList(this.queryParams).then((res) => {
this.pagList = res.data.list
})
},
editMerge(row) {
this.mergeTitle = this.$t('编辑合包箱号')
this.isMergeEdit = true
this.addMergedialogVisible = true
this.addMergeForm.pkgNum = row.pkgNum
this.addMergeForm.pkgLength = row.pkgLength
this.addMergeForm.pkgWidth = row.pkgWidth
this.addMergeForm.pkgHight = row.pkgHight
this.addMergeForm.id = row.id
}, },
addMerge() { addMerge() {
this.$refs['addMergeForm'].validate((valid) => { this.$refs['addMergeForm'].validate((valid) => {
...@@ -161,9 +182,40 @@ export default { ...@@ -161,9 +182,40 @@ export default {
return return
} }
this.addMergeForm.shipmentId = this.$attrs.shipmentObj.id this.addMergeForm.shipmentId = this.$attrs.shipmentObj.id
createMergePkg(this.addMergeForm) if (!this.addMergeForm.id) {
createMergePkg(this.addMergeForm).then((res) => {
serviceMsg(res, this).then(() => {
this.addMergedialogVisible = false
this.getList()
})
})
} else {
updateMergePkg(this.addMergeForm).then((res) => {
serviceMsg(res, this).then(() => {
this.addMergedialogVisible = false
this.getList()
})
})
}
}) })
} },
deleteMerge(id) {
this.$modal
.confirm(this.$t('是否确认删除?'))
.then(function () {
return deleteMergePkg(id)
})
.then(() => {
this.getList()
this.$modal.msgSuccess(this.$t('删除成功'))
})
.catch(() => {})
},
pkgPage(row) {
this.pkgPagedialogVisible = true
this.pkgPageTitle = this.$t('合包箱号: ')+row.pkgNum
},
finish() {}
} }
} }
</script> </script>
......
<template>
<div>
22
</div>
</template>
<script>
export default {
}
</script>
<style>
</style>
\ No newline at end of file
<template>
<div>
11
</div>
</template>
<script>
export default {
}
</script>
<style>
</style>
\ No newline at end of file
...@@ -294,7 +294,16 @@ export default { ...@@ -294,7 +294,16 @@ export default {
this.form.channelPackagingList[index].channelPriceStepClearanceList[indexx] = p; this.form.channelPackagingList[index].channelPriceStepClearanceList[indexx] = p;
} }
let it = this.form.channelPackagingList[index].channelPriceStepClearanceList[indexx] let it = this.form.channelPackagingList[index].channelPriceStepClearanceList[indexx]
this.form.channelPackagingList[index].channelPriceStepClearanceList[indexx] = {...p,...it,clearancePrice:itemm.clearancePrice,clearancePriceUnit:itemm.clearancePriceUnit,clearanceVolumeUnit:itemm.clearanceVolumeUnit} ; this.form.channelPackagingList[index].channelPriceStepClearanceList[indexx] = {
...p,
...it,
clearancePrice:itemm.clearancePrice,
clearancePriceUnit:itemm.clearancePriceUnit,
clearanceVolumeUnit:itemm.clearanceVolumeUnit,
endNum:itemm.endNum,
startNum:itemm.startNum,
weightUnit:itemm.weightUnit
} ;
}) })
}) })
this.$forceUpdate() this.$forceUpdate()
......
...@@ -124,8 +124,11 @@ ...@@ -124,8 +124,11 @@
:key="item.channelId"></el-option> :key="item.channelId"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('立方数')" prop="cubeNum"> <el-form-item :label="$t('目标值')" prop="cubeNum">
<el-input v-model="form.cubeNum" :placeholder="$t('请输入立方数')"/> <el-input v-model="form.cubeNum" :placeholder="$t('请输入目标值')"/>
</el-form-item>
<el-form-item :label="$t('目标单位')" prop="cubeUnit">
<dict-selector :type="DICT_TYPE.CEBE_UNIT" v-model="form.cubeUnit" :placeholder="$t('请选择目标单位')" />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
......
...@@ -931,6 +931,9 @@ export default { ...@@ -931,6 +931,9 @@ export default {
if(updateChannel){ if(updateChannel){
this.$set(this, 'showWorkFlow', true) this.$set(this, 'showWorkFlow', true)
} }
},
'$route.query.transportType'(transportType){
this.$set(this.form, 'transportId', +transportType)
} }
}, },
activated(){ activated(){
......
...@@ -232,7 +232,7 @@ ...@@ -232,7 +232,7 @@
复制模板线路价格:{{lineNum}}个 复制模板线路价格:{{lineNum}}个
</span> </span>
<span @click="toPriceManager(formCopy)" style="color: #0a84ff;cursor: pointer;"> <span @click="toPriceManager(formCopy)" style="color: #0a84ff;cursor: pointer;">
查看《#选择空运商品模板名称#》路线价格 查看《#{{$l(formCopy,'title')}}#》路线价格
</span> </span>
</p> </p>
</el-form> </el-form>
...@@ -424,16 +424,19 @@ export default { ...@@ -424,16 +424,19 @@ export default {
this.form.priceStepClearanceList[index].clearancePrice = item.clearancePrice this.form.priceStepClearanceList[index].clearancePrice = item.clearancePrice
this.form.priceStepClearanceList[index].clearancePriceUnit = item.clearancePriceUnit this.form.priceStepClearanceList[index].clearancePriceUnit = item.clearancePriceUnit
this.form.priceStepClearanceList[index].clearanceVolumeUnit = item.clearanceVolumeUnit this.form.priceStepClearanceList[index].clearanceVolumeUnit = item.clearanceVolumeUnit
this.form.priceStepClearanceList[index].endNum = item.endNum
this.form.priceStepClearanceList[index].startNum = item.startNum
this.form.priceStepClearanceList[index].weightUnit = item.weightUnit
}else { }else {
let p = { let p = {
"channelId":'', "channelId":undefined,
"clearancePrice":item.clearancePrice, "clearancePrice":item.clearancePrice,
"clearancePriceUnit":item.clearancePriceUnit, "clearancePriceUnit":item.clearancePriceUnit,
"clearanceVolumeUnit":item.clearanceVolumeUnit, "clearanceVolumeUnit":item.clearanceVolumeUnit,
"endNum":'', "endNum":item.endNum,
"packagingId":'', "packagingId":undefined,
"startNum":'', "startNum":item.startNum,
"weightUnit":'' "weightUnit":item.weightUnit
} }
this.form.priceStepClearanceList.push(p) this.form.priceStepClearanceList.push(p)
} }
......
...@@ -43,7 +43,7 @@ ...@@ -43,7 +43,7 @@
复制模板线路价格:{{lineNum}}个 复制模板线路价格:{{lineNum}}个
</span> </span>
<span @click="toPriceManager(formCopv)" style="color: #0a84ff;cursor: pointer;"> <span @click="toPriceManager(formCopv)" style="color: #0a84ff;cursor: pointer;">
查看《#选择空运商品模板名称#》路线价格 查看《#{{$l(formCopv,'title')}}#》路线价格
</span> </span>
</p> </p>
<el-form-item> <el-form-item>
...@@ -154,16 +154,19 @@ export default { ...@@ -154,16 +154,19 @@ export default {
this.form.priceStepClearanceList[index].clearancePrice = item.clearancePrice this.form.priceStepClearanceList[index].clearancePrice = item.clearancePrice
this.form.priceStepClearanceList[index].clearancePriceUnit = item.clearancePriceUnit this.form.priceStepClearanceList[index].clearancePriceUnit = item.clearancePriceUnit
this.form.priceStepClearanceList[index].clearanceVolumeUnit = item.clearanceVolumeUnit this.form.priceStepClearanceList[index].clearanceVolumeUnit = item.clearanceVolumeUnit
this.form.priceStepClearanceList[index].endNum = item.endNum
this.form.priceStepClearanceList[index].startNum = item.startNum
this.form.priceStepClearanceList[index].weightUnit = item.weightUnit
}else { }else {
let p = { let p = {
"channelId":'', "channelId":'',
"clearancePrice":item.clearancePrice, "clearancePrice":item.clearancePrice,
"clearancePriceUnit":item.clearancePriceUnit, "clearancePriceUnit":item.clearancePriceUnit,
"clearanceVolumeUnit":item.clearanceVolumeUnit, "clearanceVolumeUnit":item.clearanceVolumeUnit,
"endNum":'', "endNum":item.endNum,
"packagingId":'', "packagingId":'',
"startNum":'', "startNum":item.startNum,
"weightUnit":'' "weightUnit":item.weightUnit
} }
this.form.priceStepClearanceList.push(p) this.form.priceStepClearanceList.push(p)
} }
......
...@@ -777,19 +777,24 @@ export default { ...@@ -777,19 +777,24 @@ export default {
} }
}else{ }else{
// 全包价 的阶段 设置和运费(全包价)不能为空 // 全包价 的阶段 设置和运费(全包价)不能为空
let stepPriceEmpty = false let stepPriceEmpty = []
this.form.priceStepList.forEach(item => { this.form.priceStepList.forEach((item, index) => {
let notEmptyFields = ['startNum', 'endNum', 'weightUnit'] let notEmptyFields = ['endNum', 'weightUnit']
// 第一条阶梯的起始值可以是0,其他的不能为0
if(index){
notEmptyFields.push('startNum')
}
notEmptyFields.forEach(field => { notEmptyFields.forEach(field => {
if(!item[field] || item[field].toString().trim() == ''){ if(!item[field] || item[field].toString().trim() == ''){
stepPriceEmpty = true stepPriceEmpty.push({index, field})
} }
}) })
if((this.form.priceType == 0 && !item.transportPrice) || (this.form.priceType == 1 && !item.allPrice)){ if((this.form.priceType == 0 && !item.transportPrice) || (this.form.priceType == 1 && !item.allPrice)){
stepPriceEmpty = true stepPriceEmpty.push({index, field: !item.transportPrice ? 'transportPrice' : 'allPrice'})
} }
}) })
if(stepPriceEmpty){ if(stepPriceEmpty.length){
console.log('stepPriceEmpty', stepPriceEmpty)
return this.$message.error(this.$t('阶梯和价格设置不能留空')) return this.$message.error(this.$t('阶梯和价格设置不能留空'))
} }
} }
...@@ -813,7 +818,7 @@ export default { ...@@ -813,7 +818,7 @@ export default {
this.loading = true this.loading = true
return updateProductPrice(data).then(res => { return updateProductPrice(data).then(res => {
this.$modal.msgSuccess(this.$t("请求成功")); this.$modal.msgSuccess(this.$t("请求成功"));
this.$router.back() this.$tab.closePage()
}).finally(res => this.loading = false) }).finally(res => this.loading = false)
} }
......
...@@ -12,11 +12,11 @@ ...@@ -12,11 +12,11 @@
<el-option v-for="type in typeList" :key="type.id" :label="type.titleZh" :value="type.id"/> <el-option v-for="type in typeList" :key="type.id" :label="type.titleZh" :value="type.id"/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="$t('运输方式')" prop="transportType"> <el-form-item :label="$t('运输方式')" prop="transportType" v-if="!transportType">
<dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model="queryParams.transportType" formatter="number" clearable /> <dict-selector :type="DICT_TYPE.ECW_TRANSPORT_TYPE" v-model="queryParams.transportType" formatter="number" clearable />
</el-form-item> </el-form-item>
<!--海运不显示渠道--> <!--海运不显示渠道-->
<el-form-item :label="$t('出货渠道')" prop="shippingChannelId" v-if="type == 'sea'"> <el-form-item :label="$t('出货渠道')" prop="shippingChannelId" v-if="type == 'air'">
<el-select v-model="queryParams.shippingChannelId" clearable> <el-select v-model="queryParams.shippingChannelId" clearable>
<el-option v-for="item in channelList" :key="item.id" :label="$l(item, 'name')" :value="item.channelId" /> <el-option v-for="item in channelList" :key="item.id" :label="$l(item, 'name')" :value="item.channelId" />
</el-select> </el-select>
...@@ -732,7 +732,7 @@ export default { ...@@ -732,7 +732,7 @@ export default {
}, },
// 批量修改单个商品的价格(一条或者多条,后者全部路线) // 批量修改单个商品的价格(一条或者多条,后者全部路线)
batchSetSingleProductPrice(type){ batchSetSingleProductPrice(type){
this.$router.push(`../../lineProject/product-price/edit?action=batchUpdate&type=${type}&product_id=${this.$route.query.product_id}&ids=${this.ids}`) this.$router.push(`../../lineProject/product-price/edit-${type}?action=batchUpdate&type=${type}&product_id=${this.$route.query.product_id}&ids=${this.ids}`)
}, },
// 批量设置路线 // 批量设置路线
handleBatchEdit(type) { handleBatchEdit(type) {
......
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