海运出口详情bug

szh-new
lijingjia 4 months ago
parent 48841397c9
commit d156b56398

@ -159,8 +159,10 @@
emit('change', _, ...args)
emitData.value = args
}
return { state, attrs, getOptions, loading, t, handleFetch, handleChange, props }
const getPopupContainer = triggerNode => {
return triggerNode
}
return { state, attrs, getOptions, loading, t, handleFetch, handleChange, props, getPopupContainer }
},
})
</script>

@ -130,6 +130,8 @@ export function formatParams(params = {}) {
}
const conditions = [] as any
for (let key in params) {
console.log(key)
// 排除不是分页排序等字段
if (key != 'page' && key != 'pageSize' && key != 'order' && key != 'field') {
if (key == 'advancedSearchParams') {
// 高级查询
@ -160,6 +162,22 @@ export function formatParams(params = {}) {
})
})
}
} else if (key.includes(':')) {
// or 多个字段查询
const orKeys = key.split(':')
const ConditionalList = { ConditionalList: [] }
orKeys.forEach(item => {
let obj = {
Key: 1,
Value: {
FieldName: item,
FieldValue: params[key],
ConditionalType: 1
}
}
ConditionalList.ConditionalList.push(obj)
})
conditions.push(ConditionalList)
} else {
// 其他普通查询
if (params[key] || params[key] === 0) {

@ -64,10 +64,10 @@ export const useOptionsStore = defineStore({
GetTenantParamSelectList: null,
// 商品
GetClientGoodsList: null,
//场站
// 场站
GetYardClientList: null,
//委托单位
GetControllerClientList: null,
// 委托单位
GetControllerClientList: null
}),
getters: {
// 通过code获取下拉字典code)就是接口尾部单词

@ -7,8 +7,8 @@ import { BasicColumn, FormSchema } from '/@/components/Table'
import { GetCarrierlist } from '/@/views/operation/seaexport/api/BookingLedger'
// 引入字典数据
import { getDictOption } from '/@/utils/dictUtil'
// 箱型下拉数据
import { GetCtnSelectList } from '/@/api/common'
import { useOptionsStore } from '/@/store/modules/options'
const optionsStore = useOptionsStore()
// 模块字典
const modulesDict = await getDictOption('modules')
export const columns: BasicColumn[] = [
@ -62,10 +62,13 @@ export const searchFormSchema: FormSchema[] = [
component: 'ApiSelect',
componentProps: () => {
return {
api: GetCtnSelectList,
option: optionsStore.getOptionsByCode('GetCtnSelectList'),
labelField: 'ctnName',
valueField: 'ediCode',
resultField: 'data',
valueField: 'id',
key: 'id',
filterOption: (input: string, option: any) => {
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
}
}
},
},
@ -93,17 +96,18 @@ export const formSchema: FormSchema[] = [
required: true,
componentProps: ({ formModel, formActionType }) => {
return {
api: GetCtnSelectList,
params: {},
option: optionsStore.getOptionsByCode('GetCtnSelectList'),
labelField: 'ctnName',
valueField: 'ediCode',
resultField: 'data',
valueField: 'id',
filterOption: (input: string, option: any) => {
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
},
onChange: (v, obj) => {
if (obj) {
formModel['code'] = obj.ediCode
formModel['linkId'] = obj.id
}
formActionType.clearValidate()
// formActionType.clearValidate()
},
}
},

@ -1,8 +1,11 @@
<template>
<div>
<BasicTable @register="registerTable">
<template #toolbar>
<a-button type="primary" @click="handleCreate"> </a-button>
<BasicTable class="ds-table" @register="registerTable">
<template #tableTitle>
<a-button type="link" @click="handleCreate">
<span class="iconfont icon-new_document"></span>
新建
</a-button>
</template>
<template #bodyCell="{ column, record }">
<template v-if="column.key === 'userName'">

@ -2093,9 +2093,9 @@ export function SetTaskStatus(data) {
}
// 海运出口日志
export function GetAuditLogList(params) {
export function GetSeaExportLogList(params) {
return request({
url: '/mainApi/ClientCommon/GetAuditLogList',
url: '/opApi/SeaExport/GetSeaExportLogList',
method: 'get',
params
})

@ -77,25 +77,12 @@ getDictOption('seaexport_ctn_map').then((res) => {
export const searchFormSchema: FormSchema[] = [
{
field: 'customerNo',
label: '委托编号',
field: 'customerNo:mblno:hblno',
label: '编号查询',
component: 'Input',
// defaultValue: '',
colProps: { span: 4 },
},
{
field: 'mblno',
label: '主提单号',
component: 'Input',
// defaultValue: '',
colProps: { span: 4 },
},
{
field: 'hblno',
label: '分提单号',
component: 'Input',
colProps: { span: 4 },
},
{
label: '委托单位',
field: 'customerId',

@ -34,6 +34,7 @@
watch(
() => props.parentVal,
(nval) => {
console.log(nval, 11111)
tvalue.value = nval
},
)

@ -11,7 +11,8 @@ import {
GetClientSourceDetailSelectList,
GetDeptList,
GetPackageSelectList,
GetOrderContactListByClientId
GetOrderContactListByClientId,
GetShippingBillTemplateSelectList
} from '/@/views/operation/seaexport/api/BookingLedger'
import { useOptionsStore } from '/@/store/modules/options'
const optionsStore = useOptionsStore()
@ -976,13 +977,6 @@ export const basicInfoFormSchema: FormSchema[] = [
// mailingInfo表单
export const mailingInfoFormSchemaL: FormSchema[] = [
{
label: '',
field: 'shipperContent',
component: 'Input',
defaultValue: '',
show: false,
},
{
label: '',
field: 'shipper',
@ -991,48 +985,75 @@ export const mailingInfoFormSchemaL: FormSchema[] = [
show: false,
},
{
label: '',
label: '发货人',
field: 'shipperId',
component: 'Input',
defaultValue: '',
show: false,
},
{
field: 'fhr',
component: 'SelectTextArea',
component: 'ApiSelect',
required: false,
dynamicDisabled: false,
// defaultValue: '',
colProps: { span: 24 },
defaultValue: '',
componentProps: ({ formModel }) => {
return {
label: '发货人',
details: formModel,
field: 'shipper',
onChange: (e) => {
if (e) {
switch (e.type) {
case 'Content':
formModel[`shipper${e.type}`] = e.res
break
case 'Id':
formModel.shipper = e.res.label
formModel.shipperId = e.res.id
formModel.shipperContent = e.res.content
break
default:
break
}
}
allowClear: true,
showSearch: true,
api: GetShippingBillTemplateSelectList,
params: { type: 2 },
labelField: 'templateName',
valueField: 'id',
immediate: false,
resultField: 'data',
filterOption: (input: string, option: any) => {
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
},
onChange: (e, obj) => {
console.log(obj)
if (obj) {
formModel.shipper = obj.label
formModel.shipperContent = obj.content
}
}
}
},
}
},
{
label: '',
field: 'consigneeContent',
component: 'Input',
// defaultValue: '',
show: false,
label: ' ',
field: 'shipperContent',
component: 'InputTextArea',
defaultValue: '',
colProps: { span: 24 },
componentProps: {
slice: [30, 35, 40]
}
},
// {
// field: 'fhr',
// component: 'SelectTextArea',
// colProps: { span: 24 },
// defaultValue: '',
// componentProps: ({ formModel }) => {
// return {
// label: '发货人',
// details: formModel,
// field: 'shipper',
// onChange: (e) => {
// if (e) {
// switch (e.type) {
// case 'Content':
// formModel[`shipper${e.type}`] = e.res
// break
// case 'Id':
// formModel.shipper = e.res.label
// formModel.shipperId = e.res.id
// formModel.shipperContent = e.res.content
// break
// default:
// break
// }
// }
// },
// }
// },
// },
{
label: '',
field: 'consignee',
@ -1048,39 +1069,73 @@ export const mailingInfoFormSchemaL: FormSchema[] = [
show: false,
},
{
field: 'shr',
component: 'SelectTextArea',
label: '收货人',
field: 'consigneeId',
component: 'ApiSelect',
required: false,
dynamicDisabled: false,
// defaultValue: '',
colProps: { span: 24 },
componentProps: ({ formModel }) => {
return {
label: '收货人',
details: formModel,
field: 'consignee',
onChange: (e) => {
if (e) {
switch (e.type) {
case 'Content':
formModel[`consignee${e.type}`] = e.res
break
case 'Id':
formModel.consignee = e.res.label
formModel.consigneeId = e.res.value
formModel.consigneeContent = e.res.content
break
default:
break
}
}
allowClear: true,
showSearch: true,
api: GetShippingBillTemplateSelectList,
params: { type: 1 },
labelField: 'templateName',
valueField: 'id',
resultField: 'data',
immediate: false,
filterOption: (input: string, option: any) => {
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
},
onChange: (e, obj) => {
console.log(obj)
if (obj) {
formModel.consignee = obj.label
formModel.consigneeContent = obj.content
}
}
}
},
}
},
// {
// field: 'shr',
// component: 'SelectTextArea',
// colProps: { span: 24 },
// componentProps: ({ formModel }) => {
// return {
// label: '收货人',
// details: formModel,
// field: 'consignee',
// onChange: (e) => {
// if (e) {
// switch (e.type) {
// case 'Content':
// formModel[`consignee${e.type}`] = e.res
// break
// case 'Id':
// formModel.consignee = e.res.label
// formModel.consigneeId = e.res.value
// formModel.consigneeContent = e.res.content
// break
// default:
// break
// }
// }
// },
// }
// },
// },
{
label: '',
field: 'notifyPartyContent',
component: 'Input',
// defaultValue: '',
show: false,
label: ' ',
field: 'consigneeContent',
component: 'InputTextArea',
defaultValue: '',
colProps: { span: 24 },
componentProps: {
slice: [30, 35, 40]
}
},
{
label: '',
@ -1118,39 +1173,80 @@ export const mailingInfoFormSchemaL: FormSchema[] = [
show: false,
},
{
field: 'tzr',
component: 'SelectTextArea',
label: '通知人',
field: 'notifyPartyId',
component: 'ApiSelect',
required: false,
dynamicDisabled: false,
// defaultValue: '',
colProps: { span: 24 },
componentProps: ({ formModel }) => {
return {
label: '通知人',
details: formModel,
field: 'notifyParty',
onChange: (e) => {
if (e) {
switch (e.type) {
case 'Content':
formModel[`notifyParty${e.type}`] = e.res
break
case 'Id':
formModel.notifyParty = e.res.label
formModel.notifyPartyId = e.res.value
formModel.notifyPartyContent = e.res.content
break
case 'Content2':
formModel.secondNotifyPartyContent = e.res
break
case 'Id2':
formModel.secondNotifyParty = e.res.label
formModel.secondNotifyPartyId = e.res.value
break
default:
break
}
}
allowClear: true,
showSearch: true,
api: GetShippingBillTemplateSelectList,
params: { type: 3 },
labelField: 'templateName',
valueField: 'id',
resultField: 'data',
immediate: false,
filterOption: (input: string, option: any) => {
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0
},
onChange: (e, obj) => {
console.log(obj)
if (obj) {
formModel.notifyParty = obj.label
formModel.notifyPartyContent = obj.content
}
}
}
},
}
},
// {
// field: 'tzr',
// component: 'SelectTextArea',
// colProps: { span: 24 },
// componentProps: ({ formModel }) => {
// return {
// label: '通知人',
// details: formModel,
// field: 'notifyParty',
// onChange: (e) => {
// if (e) {
// switch (e.type) {
// case 'Content':
// formModel[`notifyParty${e.type}`] = e.res
// break
// case 'Id':
// formModel.notifyParty = e.res.label
// formModel.notifyPartyId = e.res.value
// formModel.notifyPartyContent = e.res.content
// break
// case 'Content2':
// formModel.secondNotifyPartyContent = e.res
// break
// case 'Id2':
// formModel.secondNotifyParty = e.res.label
// formModel.secondNotifyPartyId = e.res.value
// break
// default:
// break
// }
// }
// },
// }
// }
// },
{
label: ' ',
field: 'notifyPartyContent',
component: 'InputTextArea',
defaultValue: '',
colProps: { span: 24 },
componentProps: {
slice: [30, 35, 40]
}
}
]
@ -2004,8 +2100,8 @@ export const cargoInfoFormSchema1: FormSchema[] = [
colProps: { span: 12 },
componentProps: {
slice: [30, 35, 40]
},
},
}
}
]
export const cargoInfoFormSchema2: FormSchema[] = [
{
@ -2550,7 +2646,7 @@ export const otherInfoFormSchema: FormSchema[] = [
option: optionsStore.getOptionsByCode('GetServiceSelectList'),
allowClear: true,
showSearch: true,
labelField: 'enName',
labelField: 'cnName',
valueField: 'id',
filterOption: (input: string, option: any) => {
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0

@ -352,20 +352,6 @@
type: 'numeric',
format: '0',
},
{
title: '毛重',
width: 80,
data: 'kgs',
type: 'numeric',
format: '0',
},
{
title: '尺码',
width: 80,
data: 'cbm',
type: 'numeric',
format: '0',
},
{
title: '包装',
width: 120,
@ -388,6 +374,20 @@
process(dict)
},
},
{
title: '毛重',
width: 80,
data: 'kgs',
type: 'numeric',
format: '0',
},
{
title: '尺码',
width: 80,
data: 'cbm',
type: 'numeric',
format: '0',
},
{
title: '皮重',
width: 80,

@ -1,5 +1,5 @@
<template>
<div style="overflow: hidden;">
<div class="flex">
<div class="ds-card mt15 left-box">
<h4>收发通信息</h4>
<BasicForm class="mt10" @register="registerFormL" />
@ -124,7 +124,9 @@
() => props.details,
(nval) => {
console.log(nval)
setFieldsValueL(nval)
setFieldsValueL({
...nval
})
setFieldsValueR(nval)
// if (!props.details.notifypartY2) {
// props.details.notifypartY2 = ''
@ -691,12 +693,10 @@
}
.left-box {
width: calc(42.85% - 25px);
float: left;
margin-right: 15px;
}
.right-box {
width: calc(57.15% + 10px);
float: left;
}
.ds-card {
padding: 5px 20px 5px;

@ -295,9 +295,9 @@
</div>
<div v-for="(log, lindex) in logList" :key="lindex">
<div class="list">
<span class="btn" style="width: 20%">{{ log.createdUserName }}</span>
<span class="btn" style="width: 42%; text-align: left" :title="log.createdTime">
{{ log.createdTime }}
<span class="btn" style="width: 20%">{{ log.createUserName }}</span>
<span class="btn" style="width: 42%; text-align: left" :title="log.createTime">
{{ log.createTime }}
<i
class="iconfont icon-xia more"
v-if="log.details.length > 0"
@ -313,9 +313,9 @@
justify-content: center;
align-items: center;
"
:title="log.fromFunc"
:title="log.sourceName"
class="btn"
>{{ log.fromFunc }}</span
>{{ log.sourceName }}</span
>
</div>
<div class="more-detail" v-if="log.details.length > 0 && log.showMore">
@ -558,7 +558,7 @@
GetSeaExportRemarkList,
EditSeaExportRemark,
DelSeaExportRemark,
GetAuditLogList
GetSeaExportLogList
} from '/@/views/operation/seaexport/api/BookingLedger'
import { ref, Ref, getCurrentInstance, watch, onMounted } from 'vue'
//
@ -1198,8 +1198,7 @@
const logLoading = ref(false)
const getLogList = () => {
// logLoading.value = true
GetAuditLogList({ id: props.id }).then((res) => {
console.log(res.data)
GetSeaExportLogList({ id: props.id }).then((res) => {
logList.value = res.data
// logLoading.value = false
}).catch(() => {

@ -10,9 +10,8 @@
<template v-slot:bodyCell="{ column, record }">
<!-- 应收费用 -->
<template v-if="column.dataIndex == 'arFeeStatus'">
<span v-if="record.arFeeStatus == 0" class="ds-green-tag">{{
FeeStatus[record.arFeeStatus]
}}</span>
<span v-if="record.arFeeStatus == 0" class="ds-green-tag">
{{ FeeStatus[record.arFeeStatus] }}</span>
<span v-else-if="record.arFeeStatus == 1" class="ds-blue-tag">{{
FeeStatus[record.arFeeStatus]
}}</span>

Loading…
Cancel
Save