Commit 586c9c31 authored by dcy's avatar dcy

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

parents a33bae35 68ed4b97
......@@ -278,11 +278,11 @@ export function creatDelayApproval(data){
}
// 取消客户延期调入公海池的审批申请
export function cancelDelayApproval(data) {
export function cancelDelayApproval(query) {
return request({
url: '/ecw/customer/cancel/delay/approval',
method: 'put',
data: data,
params:query,
})
}
......
......@@ -39,9 +39,10 @@ export function updateCustomer(data) {
}
// 根据客户ID获得联系人列表
export function getCustomerContactsListByCustomer(id) {
export function getCustomerContactsListByCustomer(query) {
return request({
url: '/ecw/indirect-customer-contacts/list-by-customer/get?customerId=' + id,
method: 'get'
url: '/ecw/indirect-customer-contacts/list-by-customer',
method: 'get',
params: query
})
}
......@@ -181,6 +181,15 @@ export function orderWarehouseInUpdateLabel(data){
})
}
// 入仓修改储位
export function saveOrUpdateOrderLocation(data){
return request({
url: '/order/order-warehouse-in/save-or-update-order-location',
method: 'post',
data
})
}
// 获取入仓修改审批单详情-审批使用
export function getWarehouseUpdateApprovalInfo(id) {
return request({
......
......@@ -64,7 +64,8 @@
</template>
<script>
import { getByWarehouseId } from '@/api/ecw/warehouseArea'
import {getByWarehouseId} from '@/api/ecw/warehouseArea'
import {saveOrUpdateOrderLocation} from "@/api/ecw/order"
export default {
name: 'WarehouseAreaDialog',
......@@ -82,6 +83,11 @@ export default {
warehouseId: {
type: Number,
default: undefined
},
// 是否入仓修改
isEditing: {
type: Boolean,
default: false
}
},
......@@ -102,26 +108,6 @@ export default {
visible(val) {
if (val) {
this.opened = true
if (this.area.length === 0) getByWarehouseId({cityId: this.cityId,warehouseId: this.warehouseId }).then(r => {
const area = r.data
area.forEach(e => {
// 仓库
e.children?.forEach(f => {
// 区域
f.selected = false
if(f.positionList) f.positionList.forEach(g => {
// 位置
g.selected = false
g.children?.forEach(k => {
// 子位置
k.selected = false
})
})
})
})
this.area = area
})
} else {
}
},
......@@ -134,9 +120,45 @@ export default {
},
methods: {
updateArea(){
this.initArea()
},
initArea(){
return getByWarehouseId({ cityId: this.cityId, warehouseId: this.warehouseId }).then(r => {
const area = r.data
area.forEach(e => {
// 仓库
e.children?.forEach(f => {
// 区域
f.selected = this.isSelected(e.id, f.id)
if(f.positionList) f.positionList.forEach(g => {
// 位置
g.selected = this.isSelected(e.id, f.id, g.id)
g.children?.forEach(k => {
// 子位置
k.selected = this.isSelected(e.id, f.id, k.id)
})
})
})
})
this.area = area
})
},
// 用于储位回显选中
isSelected(warehouse, area, position = 0){
return !!this.value.find(e => warehouse === e.wareId && area === e.areaId && position === e.locationId)
},
handleSubmit() {
this.$emit('input', this.inputValue)
this.opened = false
if (this.isEditing) {
this.$nextTick(() => {
saveOrUpdateOrderLocation({
"orderId": this.orderId,
"orderLocationCreateReqVOList": this.inputValue
})
})
}
},
handleClose() {},
handleSelectWarehouse(warehouse) {
......@@ -146,7 +168,6 @@ export default {
return
} else if(this.activeWarehouseId !== warehouse.id) {
this.activeWarehouseId = warehouse.id
console.log(this.inputValue.find(e => e.areaId === warehouse.id), warehouse.id)
if (this.inputValue.find(e => e.areaId === warehouse.id)){
return
}
......@@ -202,7 +223,6 @@ export default {
},
mounted() {
console.log('area dialog mounted')
},
computed: {
......
......@@ -156,7 +156,7 @@
<costForm v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" />
</template>
<template v-if="dialogCfg.dialogType === 'error'">
<regError v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" />
<regError v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" :allUsers="allUsers"/>
</template>
<template v-if="dialogCfg.dialogType === 'editLadingBill'">
<ladingBill v-if="dialogCfg.open" @closeDialog="closeDialog" :shipmentObj="currRow" :getCabinetName="getCabinetName" />
......@@ -212,6 +212,7 @@ import costForm from "./costForm.vue";
import regError from "./regError.vue";
import editForm from "./editForm.vue";
import ladingBill from "./ladingBill/index.vue";
import { listUser } from "@/api/system/user";
export default {
name: "EcwBoxIndexsea",
......@@ -266,6 +267,7 @@ export default {
countryList: [],
// 通知列表
noticeList: [],
allUsers: [],
};
},
computed: {
......@@ -301,6 +303,11 @@ export default {
this.getList();
this.getCountryList();
this.queryNotice();
// 用户
listUser({ pageNo: "1", pageSize: "10000" }).then((res) => {
const { data } = res;
this.allUsers = data.list ?? [];
});
},
methods: {
formatDate,
......
......@@ -290,6 +290,7 @@
v-if="dialogCfg.open"
@closeDialog="closeDialog"
:shipmentObj="currRow"
:allUsers="allUsers"
/>
</template>
<template v-if="dialogCfg.dialogType === 'editLadingBill'">
......@@ -318,6 +319,7 @@ import costForm from './costForm.vue'
import regError from './regError.vue'
import editForm from './editSeaAirForm.vue'
import ladingBill from "./ladingBill/index.vue";
import { listUser } from "@/api/system/user";
export default {
name: 'EcwBoxIndexseaair',
......@@ -379,6 +381,7 @@ export default {
cabinetList: [],
channelList: [],
warehouseList: [],
allUsers: []
}
},
computed: {
......@@ -418,6 +421,11 @@ export default {
}
},
created() {
// 用户
listUser({ pageNo: "1", pageSize: "10000" }).then((res) => {
const { data } = res;
this.allUsers = data.list ?? [];
});
this.transportTypes = this.getDictDatas(
this.DICT_TYPE.ECW_TRANSPORT_TYPE
).filter((item) => item.value == '4')
......
......@@ -26,7 +26,7 @@
</el-table-column>
<el-table-column :label="$t('控货')" align="center" prop="">
<template slot-scope="scope">
{{scope.row.isCargoControl}}
{{scope.row.isCargoControl ? '' : '' }}
</template>
</el-table-column>
<el-table-column :label="$t('计划箱数')" align="center" prop="loadNum">
......@@ -50,7 +50,7 @@
{{ scope.row.loadWeight }}kg
</template>
</el-table-column>
<el-table-column :label="$t(' 跟进客服')" align="center" prop="" />
<el-table-column :label="$t(' 跟进客服')" align="center" prop="" />
<el-table-column :label="$t('制作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<!-- 0 (未制作提货单) 1(审核中) 2(审核通过) 3(审核拒绝) -->
......@@ -158,7 +158,7 @@ export default {
if (type === "query") {
this.getBillList();
}
if(type === 'close'){
if (type === "close") {
this.$emit("closeDialog");
}
},
......
......@@ -77,7 +77,7 @@
<!-- <el-form-item :label="$t('装箱单')">
<el-button type="primary">{{$t('下载装箱单')}}</el-button>
</el-form-item> -->
<el-form-item :label="$t('报关单')">
<el-form-item :label="$t('报关单')" v-show="isDownload">
<el-button type="primary" @click="downloadCusFile">{{$t('下载所有报关单')}}</el-button>
</el-form-item>
......@@ -228,6 +228,7 @@ export default {
inspectionTimecustoms: this.getDictDatas(
this.DICT_TYPE.BOX_INSPECTION_TIME_CUSTOMS
)[0].value,
isDownload: false,
};
},
created() {
......@@ -533,6 +534,12 @@ export default {
},
},
watch: {
"cusDeclarationObj.documentInfo"(val) {
this.isDownload = false;
if (val.includes("2")) {
this.isDownload = true;
}
},
"cusDeclarationObj.dcBoxWgt"(dcBoxWgt) {
this.calcVGM(dcBoxWgt, this.cusDeclarationObj.dcGoodsWgt);
},
......
......@@ -54,6 +54,9 @@ export default {
warehouseId: this.$attrs.shipmentObj.startWarehouseId,
};
},
mounted() {
this.$refs.area.updateArea()
},
methods: {
getTotlContent,
// 打开储位
......
......@@ -2,7 +2,9 @@
<div>
<el-form ref="unloadingForm" :model="unloadingObj" label-width="100px">
<el-form-item :label="$t('网点')">
<dockSelect v-model="unloadingObj.ulOutletsId" :placeholder="$t('请选择网点')" :allDocks="this.$attrs.allDocks" />
<el-select filterable v-model="unloadingObj.ulOutletsId" clearable>
<el-option v-for="node in nodes" :key="node.id" :label="$l(node, 'title')" :value="node.id"></el-option>
</el-select>
</el-form-item>
<el-form-item :label="$t('到仓时间')">
<el-date-picker type="datetime" :placeholder="$t('请选择日期')" v-model="unloadingObj.ulWarehouseTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
......@@ -30,7 +32,7 @@
import startUnloading from "./startUnloading.vue";
import { unloadCreate } from "@/api/ecw/boxSea";
import { formatDateStr, serviceMsg } from "../../utils";
import dockSelect from "../common/dockSelect.vue";
import { getNodePage } from "@/api/ecw/node";
/**
* 卸柜
......@@ -38,13 +40,14 @@ import dockSelect from "../common/dockSelect.vue";
export default {
name: "unloading",
inheritAttrs: false,
components: { startUnloading, dockSelect },
components: { startUnloading },
data() {
return {
// 清关对象
unloadingObj: {},
// 弹窗状态
dialogVisible: false,
nodes: [],
};
},
created() {
......@@ -52,6 +55,10 @@ export default {
let oldData = { ...this.$attrs.shipmentObj[voName] };
oldData = formatDateStr(oldData, ["ulWarehouseTime", "ulBoxTime"]);
this.unloadingObj = oldData;
getNodePage({ pageNo: 1, pageSize: 1000, status: 0 }).then((res) => {
const { data } = res;
this.nodes = data?.list ?? [];
});
},
methods: {
/** 提交 */
......
......@@ -48,7 +48,7 @@
待审核可能没有bpmStatus字段
-->
<template v-if="handlerParams.status == 1">
<el-button type="primary" @click="$router.push()">{{$t('审核中')}}</el-button>
<el-button type="primary" @click="$router.push(`/bpm/process-instance/detail?id=`+handlerParams.formId)">{{$t('审核中')}}</el-button>
<el-button plain type="primary" @click="cancelAudit">{{$t('取消审核')}}</el-button>
<el-button plain type="primary" @click="$store.dispatch('tagsView/delCurrentView')">{{$t('返回')}}</el-button>
</template>
......@@ -119,9 +119,9 @@
ids.map(v=>{
that.ccIdArr.push(parseInt(v))
})
}
console.log(that.handlerParams)
console.log(that.ccIdArr)
}else{
that.handlerParams = {
customerId:that.customerData.id,
......@@ -149,11 +149,12 @@
// this.$modal.msgError(this.$t('请上传报关资料'));
// return
// }
this.$set(this.handlerParams,'createTime',this.formatDate())
var params = Object.assign({},this.handlerParams)
// var ccIds = Array.isArray(this.handlerParams.ccIds) ? this.handlerParams.ccIds.join(',') : this.handlerParams.ccIds
// params.ccIds = ccIds
params.voucher = Array.isArray(this.handlerParams.voucher) ? this.handlerParams.voucher.join(',') : this.handlerParams.voucher
this.$set(this.handlerParams,'createTime',this.formatDate())
params.estimateEnterOpenSeaTime = this.getNowDate(this.handlerParams.estimateEnterOpenSeaTime)
creatDelayApproval(params).then(res=>{
this.$modal.msgSuccess(this.$t('提交成功'));
......@@ -200,10 +201,11 @@
inputPattern: /[\S]+/,
inputErrorMessage: '不能为空'
}).then(({value}) => {
return cancelDelayApproval(this.handlerParams.formId, value)
console.log(this.handlerParams.approvalId)
return cancelDelayApproval({approveId:this.handlerParams.approvalId,reason:value})
})
.then(res => {
this.getList()
this.$store.dispatch('tagsView/delCurrentView')
})
}
}
......
......@@ -410,6 +410,7 @@ import {
getCustomerList,
memberUserList,
userMemberUserList,
getCustomerSelect,
getCustomerLines, fillupCustomeInfo
} from '@/api/ecw/customer'
import {getNodeList} from "@/api/ecw/node"
......@@ -418,7 +419,7 @@ import { getProductList } from '@/api/ecw/product'
import {getTradeCityList} from "@/api/ecw/region"
import {getWarehouseList} from "@/api/ecw/warehouse"
import CustomerLineTable from '@/components/CustomerLineTable'
import {getCustomerSelect,getCustomerContactsListByCustomer,getCustomer,getCustomerPage,updateCustomer} from "@/api/ecw/indirectCustomer"
import {getCustomerContactsListByCustomer,getCustomer,getCustomerPage,updateCustomer} from "@/api/ecw/indirectCustomer"
import {listServiceUser, listSimpleUsers} from "@/api/system/user"
import { getZhongPaoBest, getZhongPaoPage } from '@/api/ecw/zhongPao'
// import { getCustomerContactsListByCustomer } from '@/api/ecw/customerContacts'
......
......@@ -439,7 +439,7 @@ export default {
})
getCustomer(this.id).then(response => {
this.customer = { ...this.customer, ...response.data }
console.log(this.id)
getCustomerContactsListByCustomer({customerId: this.id}).then(r => {
this.customerContacts = r.data
let list = this.customerContacts.map(r => r.userid)
......
......@@ -95,7 +95,7 @@
if(this.$route.query.number){
this.form.number = this.$route.query.number
}
userList('documentary customer service').then(res =>this.creatorData = res.data)
userList('customer service').then(res =>this.creatorData = res.data)
},
methods: {
getList() {
......
......@@ -783,10 +783,10 @@ export default {
this.calculationPrice()
},
'form.packageTypeArr'(val){
/* 'form.packageTypeArr'(val){
console.log('packageType', val, val.length)
this.$set(this.form, 'packageType', val ? val.join(',') : '')
},
}, */
'form.isExternalWarehouse'(isExternalWarehouse){
// 勾选外部仓则添加一个默认的,取消则删除默认的空的
if(!isExternalWarehouse){
......@@ -1067,6 +1067,7 @@ export default {
item.channelIds = Array.from(item.channelIdSet).join(',')
}
})
this.form.packageType = this.form.packageTypeArr.join(',')
// 修改的提交
if (this.form.orderNo != null) {
let data = Object.assign({}, this.form, {
......
......@@ -147,7 +147,7 @@
</el-form>
<warehouse-area-dialog ref="area" :visible.sync="areaVisible" v-model="form.orderLocationCreateReqVOList"
:order-id="orderId" :warehouse-id="warehouseId"></warehouse-area-dialog>
:order-id="orderId" :warehouse-id="warehouseId" :is-editing="isEdit"></warehouse-area-dialog>
<edit-dialog :title="title" :order-id="order.orderId" :visible.sync="warehousingVisible" :warehousing="warehousing" :edit="isEdit"></edit-dialog>
......@@ -226,7 +226,12 @@ export default {
this.getOrder()
getOrderWarehouseIn(this.orderId).then(r => this.orderItemList = r.data.reverse())
getSpecialListByOrderId(this.orderId).then(r => this.specialList = r.data)
listByOrderId({ orderId: this.orderId }).then(r => this.form.orderLocationCreateReqVOList = r.data)
listByOrderId({ orderId: this.orderId }).then(r => {
this.form.orderLocationCreateReqVOList = r.data
this.$nextTick(() => {
this.$refs.area.updateArea()
})
})
}
getCurrencyList().then(res => this.currencyList = res.data)
},
......
......@@ -21,7 +21,7 @@
</div>
<div>
<el-button v-if="isExamine" @click="submit" type="primary" style="margin-right: 20px;">{{$t('确定退仓')}}</el-button>
<el-button v-if="!isExamine" @click="$router.push({query:{id:details.formId},path:'/bpm/process-instance/detail'})" type="primary" style="margin-right: 20px;">{{$t('审核中')}}</el-button>
<el-button v-if="!isExamine" @click="goBpm" type="primary" style="margin-right: 20px;">{{$t('审核中')}}</el-button>
<el-button v-if="!isExamine" type="primary" style="margin-right: 20px;" @click="cancellationOfOrder">{{$t('取消审核')}}</el-button>
<el-button @click="$parent.show = false;">{{$t('不,再考虑考虑')}}</el-button>
</div>
......@@ -75,6 +75,10 @@ export default {
})
},
methods:{
goBpm(){
this.$parent.show = false
this.$router.push({query:{id:this.details.formId},path:'/bpm/process-instance/detail'})
},
submit(){
this.params.orderId = this.orderDetails.orderId;
this.params.orderNo =this.orderDetails.orderNo;
......
......@@ -3,7 +3,7 @@
<el-form ref="form" :model="form" :rules="rules" label-width="150px" :disabled="readonly">
<el-form-item :label="$t('商品类型')" prop="productType">
<el-select v-model="form.productType" :disabled="!!$route.query.ids">
<el-select v-model="form.productType" :disabled="!!$route.query.action">
<el-option
v-for="type in productTypeList"
:key="type.id"
......@@ -14,7 +14,7 @@
</el-form-item>
<el-form-item :label="$t('商品名称')" prop="titleZh">
<product-selector v-model="form.productId" :product-type="form.productType" @change="product = $event" :disabled="!!$route.query.ids" />
<product-selector v-model="form.productId" :product-type="form.productType" @change="product = $event" :disabled="!!$route.query.action" />
</el-form-item>
<el-form-item :label="$t('英文名称')" prop="titleEn">
......
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