diff --git a/src/utils/request.ts b/src/utils/request.ts index 0d193ebf..9fb45387 100644 --- a/src/utils/request.ts +++ b/src/utils/request.ts @@ -66,7 +66,7 @@ service.interceptors.request.use( service.interceptors.response.use( (response) => { const res = response.data - if (!res.succeeded) { + if (res.succeeded===false ) { $message.error(res.message || UNKNOWN_ERROR) } return response diff --git a/src/views/baseinfo/edi/TenantAuditStepModal.vue b/src/views/baseinfo/edi/TenantAuditStepModal.vue new file mode 100644 index 00000000..2c05ca94 --- /dev/null +++ b/src/views/baseinfo/edi/TenantAuditStepModal.vue @@ -0,0 +1,123 @@ + + diff --git a/src/views/baseinfo/edi/api.ts b/src/views/baseinfo/edi/api.ts new file mode 100644 index 00000000..51a80420 --- /dev/null +++ b/src/views/baseinfo/edi/api.ts @@ -0,0 +1,44 @@ +import { request } from '/@/utils/request' +import { DataResult, PageRequest } from '/@/api/model/baseModel' +enum Api { + list = '/mainApi/EdiSet/GetEdiSetList', + edit = '/mainApi/EdiSet/EditEdiSet', + info = '/mainApi/EdiSet/GetEdiSetInfo', + + Del = '/mainApi/EdiSet/BatchDelEdiSet', + +} +// 列表 (Auth) +export function ApiList(data: PageRequest) { + return request({ + url: Api.list, + method: 'post', + data, + }) +} +// 编辑 (Auth) +export function ApiEdit(data: PageRequest) { + return request({ + url: Api.edit, + method: 'post', + data, + }) +} +// 详情 (Auth) +export function ApiInfo(query) { + return request({ + url: Api.info, + method: 'get', + params: query, + }) +} + +// 批量删除 (Auth) +export function ApiDel(data: PageRequest) { + return request({ + url: Api.Del, + method: 'post', + data, + }) +} + diff --git a/src/views/baseinfo/edi/columns.tsx b/src/views/baseinfo/edi/columns.tsx new file mode 100644 index 00000000..c9b80f24 --- /dev/null +++ b/src/views/baseinfo/edi/columns.tsx @@ -0,0 +1,491 @@ +import { BasicColumn, FormSchema } from '/@/components/Table' +import { GetCarrierlist } from '/@/views/operation/seaexport/api/BookingLedger' +import { getDictOption } from '/@/utils/dictUtil' +import { ref } from 'vue' +let ForData = (data, label, value) => { + let RData: any = [] + data.forEach((e) => { + RData.push({ ...e, label: e[label], value: e[value] }) + }) + return RData +} +const customTypeDict = ref([]) +const ediTypeDict = ref([]) +// 列表 +export const columns: BasicColumn[] = [ + { + title: 'EDI类型代码', + dataIndex: 'ediTypeCode', + width: 150, + }, + { + title: 'EDI类型名称', + dataIndex: 'ediName', + width: 200, + }, + { + title: '服务器IP', + dataIndex: 'serverIp', + width: 200, + }, + { + title: '文件夹', + dataIndex: 'folderName', + width: 200, + }, + { + title: '用户名', + dataIndex: 'userName', + width: 200, + }, + { + title: '密码', + dataIndex: 'password', + width: 200, + }, + { + title: '发送方代码', + dataIndex: 'sendCode', + width: 200, + }, + { + title: '接收方代码', + dataIndex: 'receiveCode', + width: 200, + }, + { + title: '发送方名称', + dataIndex: 'sendName', + width: 200, + }, + { + title: '发送方联系人', + dataIndex: 'sendAttn', + width: 200, + }, + { + title: '发送方电话', + dataIndex: 'sendTel', + width: 200, + }, + { + title: '发送方邮箱', + dataIndex: 'sendEmail', + width: 200, + }, + { + title: '发送方公司代码', + dataIndex: 'sendCompanyCode', + width: 200, + }, + { + title: '发送方部门代码', + dataIndex: 'sendSubCompanyCode', + width: 200, + }, + { + title: '船公司代码', + dataIndex: 'carrierCode', + width: 200, + }, + { + title: '船公司名称', + dataIndex: 'carrierName', + width: 200, + }, + { + title: '船公司Id', + dataIndex: 'carrierId', + width: 200, + }, + { + title: '接收方邮箱', + dataIndex: 'receiveEmail', + width: 200, + }, + { + title: '接收方SI邮箱', + dataIndex: 'receiveSiEmail', + width: 200, + }, + { + title: '接收方操作', + dataIndex: 'receiveOp', + width: 200, + }, + { + title: '接收方销售', + dataIndex: 'receiveSale', + width: 200, + }, + { + title: '接收方部门', + dataIndex: 'receiveDept', + width: 200, + }, + { + title: '发送人电话', + dataIndex: 'shipperTel', + width: 200, + }, + { + title: '收货人电话', + dataIndex: 'consigneeTel', + width: 200, + }, + { + title: '通知人电话', + dataIndex: 'notifypartyTel', + width: 200, + }, + { + title: '发送类型', + dataIndex: 'sendType', + width: 200, + }, + { + title: '发送方别名', + dataIndex: 'aliasSendCode', + width: 200, + }, + { + title: '发货方代码', + dataIndex: 'sendShipperCode', + width: 200, + }, + { + title: 'FTP主动模式', + dataIndex: 'ftpModeActive', + width: 200, + }, + // { + // title: '是否启用', + // dataIndex: 'status', + // width: 80, + // customRender: ({ text }) => { + // if (text === 0) { + // return 启用 + // } else if (text === 1) { + // return 禁用 + // } + // return text + // }, + // }, + { + title: '创建时间', + dataIndex: 'createTime', + width: 200, + }, +] +// 搜索 +export const searchFormSchema: FormSchema[] = [ + { + field: 'ediTypeCode', + label: 'EDI类型', + component: 'Select', + colProps: { span: 6 }, + componentProps: ({ formModel }) => { + if (ediTypeDict.value.length == 0) { + getDictOption('edi_type').then((res) => { + ediTypeDict.value = res + }) + } + return { + options: ediTypeDict.value, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + if (obj) { + formModel.ediTypeCode = obj.value + formModel.ediName = obj.label + } + }, + } + }, + }, +] +export const formSchema: FormSchema[] = [ + { + label: '', + field: 'id', + component: 'Input', + defaultValue: '', + show: false, + }, + { + label: '基础信息', + field: '基础信息', + component: 'Divider', + colProps: { lg: 24, md: 24 }, + }, + { + field: 'carrierCode', + label: '船公司代码', + component: 'Input', + colProps: { span: 6 }, + show: false, + }, + { + field: 'carrierName', + label: '船公司名称', + component: 'Input', + colProps: { span: 6 }, + show: false, + }, + { + field: 'carrierId', + label: '船公司', + component: 'Select', + required: false, + dynamicDisabled: false, + colProps: { span: 6 }, + componentProps: ({ formModel }) => { + if (customTypeDict.value.length == 0) { + GetCarrierlist().then((res) => { + customTypeDict.value = ForData(res.data, 'shortName', 'id') + }) + } + return { + options: customTypeDict.value, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + if (obj) { + formModel.carrierId = obj.id + formModel.carrierName = obj.shortName + formModel.carrierCode = obj.codeName + } + }, + } + }, + }, + { + field: 'ediName', + label: 'EDI类型名称', + component: 'Input', + colProps: { span: 6 }, + show: false, + }, + { + field: 'ediTypeCode', + label: 'EDI类型代码', + component: 'Select', + colProps: { span: 6 }, + required: true, + componentProps: ({ formModel }) => { + if (ediTypeDict.value.length == 0) { + getDictOption('edi_type').then((res) => { + ediTypeDict.value = res + }) + } + return { + options: ediTypeDict.value, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + if (obj) { + formModel.ediTypeCode = obj.value + formModel.ediName = obj.label + } + }, + } + }, + }, + + { + field: 'serverIp', + label: '服务器IP', + component: 'Input', + colProps: { span: 6 }, + required: true, + }, + { + field: 'folderName', + label: '文件夹', + component: 'Input', + colProps: { span: 6 }, + required: true, + }, + { + field: 'userName', + label: '用户名', + component: 'Input', + colProps: { span: 6 }, + required: true, + }, + { + field: 'password', + label: '密码', + component: 'Input', + colProps: { span: 6 }, + required: true, + }, + { + field: 'sendType', + label: '发送类型', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'ftpModeActive', + label: 'FTP主动模式', + component: 'RadioButtonGroup', + defaultValue: true, + colProps: { span: 6 }, + componentProps: { + options: [ + { label: '是', value: true }, + { label: '否', value: false }, + ], + }, + }, + { + label: '发送方', + field: '发送方', + component: 'Divider', + colProps: { lg: 24, md: 24 }, + }, + { + field: 'sendName', + label: '名称', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'sendCode', + label: '代码', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'sendAttn', + label: '联系人', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'sendTel', + label: '电话', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'sendEmail', + label: '邮箱', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'sendCompanyCode', + label: '公司代码', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'sendSubCompanyCode', + label: '部门代码', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'aliasSendCode', + label: '别名代码', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'sendShipperCode', + label: '发货方代码', + component: 'Input', + colProps: { span: 6 }, + }, + { + label: '接收方', + field: '接收方', + component: 'Divider', + colProps: { lg: 24, md: 24 }, + }, + { + field: 'receiveCode', + label: '代码', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'receiveEmail', + label: '邮箱', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'receiveSiEmail', + label: 'SI邮箱', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'receiveOp', + label: '操作', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'receiveSale', + label: '销售', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'receiveDept', + label: '部门', + component: 'Input', + colProps: { span: 6 }, + }, + { + label: '收发通', + field: '收发通', + component: 'Divider', + colProps: { lg: 24, md: 24 }, + }, + { + field: 'shipperTel', + label: '发件人电话', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'consigneeTel', + label: '收货人电话', + component: 'Input', + colProps: { span: 6 }, + }, + { + field: 'notifypartyTel', + label: '通知人电话', + component: 'Input', + colProps: { span: 6 }, + }, + + // { + // field: 'status', + // label: '是否可用', + // component: 'RadioButtonGroup', + // defaultValue: 0, + // colProps: { span: 6 }, + // componentProps: { + // options: [ + // { label: '禁用', value: 1 }, + // { label: '启用', value: 0 }, + // ], + // }, + // }, +] diff --git a/src/views/baseinfo/edi/index.vue b/src/views/baseinfo/edi/index.vue index ec9dc1b5..60c3c78b 100644 --- a/src/views/baseinfo/edi/index.vue +++ b/src/views/baseinfo/edi/index.vue @@ -1,6 +1,130 @@ diff --git a/src/views/baseinfo/orderContact/TenantAuditStepModal.vue b/src/views/baseinfo/orderContact/TenantAuditStepModal.vue new file mode 100644 index 00000000..f9eadd3b --- /dev/null +++ b/src/views/baseinfo/orderContact/TenantAuditStepModal.vue @@ -0,0 +1,123 @@ + + diff --git a/src/views/baseinfo/orderContact/api.ts b/src/views/baseinfo/orderContact/api.ts new file mode 100644 index 00000000..5b52d2fe --- /dev/null +++ b/src/views/baseinfo/orderContact/api.ts @@ -0,0 +1,54 @@ + +import { request } from '/@/utils/request' +import { DataResult, PageRequest } from '/@/api/model/baseModel' +enum Api { + list = '/mainApi/OrderContact/GetOrderContactList', + edit = '/mainApi/OrderContact/EditOrderContact', + info = '/mainApi/OrderContact/GetOrderContactInfo', + + OrderContact = '/mainApi/OrderContact/GetOrderContactListByClientId', + Del = '/mainApi/OrderContact/BatchDelOrderContact', + +} +// 列表 (Auth) +export function ApiList(data: PageRequest) { + return request({ + url: Api.list, + method: 'post', + data, + }) +} +// 编辑 (Auth) +export function ApiEdit(data: PageRequest) { + return request({ + url: Api.edit, + method: 'post', + data, + }) +} +// 详情 (Auth) +export function ApiInfo(query) { + return request({ + url: Api.info, + method: 'get', + params: query, + }) +} + +// 根据客户Id获取订单关系人列表 (Auth) +export function GetOrderContact(query) { + return request({ + url: Api.OrderContact, + method: 'get', + params: query, + }) +} +// 批量删除 (Auth) +export function ApiDel(data: PageRequest) { + return request({ + url: Api.Del, + method: 'post', + data, + }) +} + diff --git a/src/views/baseinfo/orderContact/columns.tsx b/src/views/baseinfo/orderContact/columns.tsx new file mode 100644 index 00000000..f4bd393c --- /dev/null +++ b/src/views/baseinfo/orderContact/columns.tsx @@ -0,0 +1,100 @@ +import { BasicColumn, FormSchema } from '/@/components/Table' + +// 列表 +export const columns: BasicColumn[] = [ + { + title: '客户类别', + dataIndex: 'customerType', + width: 150, + }, + { + title: '客户Id', + dataIndex: 'customerId', + width: 200, + }, + { + title: '客户名称', + dataIndex: 'customerName', + width: 200, + }, + { + title: '角色代码', + dataIndex: 'roleCode', + width: 200, + }, + { + title: '联系人', + dataIndex: 'name', + width: 200, + }, + { + title: '电话', + dataIndex: 'tel', + width: 200, + }, + { + title: '邮箱', + dataIndex: 'email', + width: 200, + }, +] +// 搜索 +export const searchFormSchema: FormSchema[] = [ + { + field: 'customerName', + label: '客户名称', + component: 'Input', + colProps: { span: 6 }, + }, +] +export const formSchema: FormSchema[] = [ + { + label: '', + field: 'id', + component: 'Input', + defaultValue: '', + show: false, + }, + { + field: 'customerType', + label: '客户类别', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'customerId', + label: '客户Id', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'customerName', + label: '客户名称', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'roleCode', + label: '角色代码', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'name', + label: '联系人', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'tel', + label: '电话', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'email', + label: '邮箱', + component: 'Input', + colProps: { span: 12 }, + }, +] diff --git a/src/views/baseinfo/orderContact/index.vue b/src/views/baseinfo/orderContact/index.vue index ec9dc1b5..99508256 100644 --- a/src/views/baseinfo/orderContact/index.vue +++ b/src/views/baseinfo/orderContact/index.vue @@ -1,6 +1,130 @@ diff --git a/src/views/baseinfo/sendReciveTem/TenantAuditStepModal.vue b/src/views/baseinfo/sendReciveTem/TenantAuditStepModal.vue new file mode 100644 index 00000000..36dfb885 --- /dev/null +++ b/src/views/baseinfo/sendReciveTem/TenantAuditStepModal.vue @@ -0,0 +1,123 @@ + + diff --git a/src/views/baseinfo/sendReciveTem/api.ts b/src/views/baseinfo/sendReciveTem/api.ts new file mode 100644 index 00000000..6a35c975 --- /dev/null +++ b/src/views/baseinfo/sendReciveTem/api.ts @@ -0,0 +1,45 @@ + +import { request } from '/@/utils/request' +import { DataResult, PageRequest } from '/@/api/model/baseModel' +enum Api { + list = '/opApi/ShippingBillTemplate/GetShippingBillTemplateList', + edit = '/opApi/ShippingBillTemplate/EditShippingBillTemplate', + info = '/opApi/ShippingBillTemplate/GetShippingBillTemplateInfo', + + Del = '/opApi/ShippingBillTemplate/BatchDelShippingBillTemplate', + +} +// 列表 (Auth) +export function ApiList(data: PageRequest) { + return request({ + url: Api.list, + method: 'post', + data, + }) +} +// 编辑 (Auth) +export function ApiEdit(data: PageRequest) { + return request({ + url: Api.edit, + method: 'post', + data, + }) +} +// 详情 (Auth) +export function ApiInfo(query) { + return request({ + url: Api.info, + method: 'get', + params: query, + }) +} + +// 批量删除 (Auth) +export function ApiDel(data: PageRequest) { + return request({ + url: Api.Del, + method: 'post', + data, + }) +} + diff --git a/src/views/baseinfo/sendReciveTem/columns.tsx b/src/views/baseinfo/sendReciveTem/columns.tsx new file mode 100644 index 00000000..0787f1cf --- /dev/null +++ b/src/views/baseinfo/sendReciveTem/columns.tsx @@ -0,0 +1,192 @@ +import { BasicColumn, FormSchema } from '/@/components/Table' +import { GetCountrySelectList } from '/@/views/baseinfo/port/api' +import { ref } from 'vue' +const CountryDict = ref([]) +let ForData = (data, label, value) => { + let RData: any = [] + data.forEach((e) => { + RData.push({ ...e, label: e[label], value: e[value] }) + }) + return RData +} +let TypeList = [ + { label: '收货人', value: '1' }, + { label: '发货人', value: '2' }, + { label: '通知人', value: '3' }, +] +// 列表 +export const columns: BasicColumn[] = [ + { + title: '模板名称', + dataIndex: 'templateName', + width: 150, + }, + { + title: '名称', + dataIndex: 'name', + width: 200, + }, + { + title: '地址', + dataIndex: 'address', + width: 200, + }, + { + title: '国家', + dataIndex: 'countryName', + width: 200, + }, + { + title: '电话', + dataIndex: 'tel', + width: 200, + }, + { + title: '类型', + dataIndex: 'type', + width: 200, + customRender: ({ record }) => { + let RData = '' + TypeList.forEach((item) => { + if (item.value == record.type) { + RData = item.label + } + }) + return RData + }, + }, + { + title: '备注', + dataIndex: 'note', + width: 200, + }, +] +// 搜索 +export const searchFormSchema: FormSchema[] = [ + { + field: 'type', + label: '类型', + component: 'Select', + required: false, + dynamicDisabled: false, + colProps: { span: 6 }, + componentProps: ({ formModel }) => { + return { + options: TypeList, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + if (obj) { + formModel.carrierId = obj.id + formModel.carrierName = obj.shortName + formModel.carrierCode = obj.codeName + } + }, + } + }, + }, +] +export const formSchema: FormSchema[] = [ + { + label: '', + field: 'id', + component: 'Input', + defaultValue: '', + show: false, + }, + { + field: 'templateName', + label: '模板名称', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'name', + label: '名称', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'address', + label: '地址', + component: 'Input', + colProps: { span: 12 }, + }, + { + label: '国家code', + field: 'countryName', + component: 'Input', + defaultValue: '', + show: false, + }, + { + field: 'country', + label: '国家', + component: 'Select', + required: false, + dynamicDisabled: false, + colProps: { span: 12 }, + componentProps: ({ formModel }) => { + if (CountryDict.value.length == 0) { + GetCountrySelectList().then((res) => { + CountryDict.value = ForData(res.data, 'countryName', 'id') + }) + } + return { + options: CountryDict.value, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + if (obj) { + formModel.countryName = obj.countryName + } + }, + } + }, + }, + + { + field: 'tel', + label: '电话', + component: 'Input', + colProps: { span: 12 }, + }, + + { + field: 'type', + label: '类型', + component: 'Select', + required: false, + dynamicDisabled: false, + colProps: { span: 12 }, + componentProps: ({ formModel }) => { + return { + options: TypeList, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + if (obj) { + formModel.carrierId = obj.id + formModel.carrierName = obj.shortName + formModel.carrierCode = obj.codeName + } + }, + } + }, + }, + { + field: 'note', + label: '备注', + component: 'Input', + colProps: { span: 12 }, + }, +] diff --git a/src/views/baseinfo/sendReciveTem/index.vue b/src/views/baseinfo/sendReciveTem/index.vue index 77fb6706..549140d5 100644 --- a/src/views/baseinfo/sendReciveTem/index.vue +++ b/src/views/baseinfo/sendReciveTem/index.vue @@ -1,7 +1,130 @@ diff --git a/src/views/baseinfo/userEmail/TenantAuditStepModal.vue b/src/views/baseinfo/userEmail/TenantAuditStepModal.vue new file mode 100644 index 00000000..2bbbbddb --- /dev/null +++ b/src/views/baseinfo/userEmail/TenantAuditStepModal.vue @@ -0,0 +1,123 @@ + + diff --git a/src/views/baseinfo/userEmail/api.ts b/src/views/baseinfo/userEmail/api.ts new file mode 100644 index 00000000..401dc59f --- /dev/null +++ b/src/views/baseinfo/userEmail/api.ts @@ -0,0 +1,45 @@ + +import { request } from '/@/utils/request' +import { DataResult, PageRequest } from '/@/api/model/baseModel' +enum Api { + list = '/mainApi/UserEmail/GetUserEmailList', + edit = '/mainApi/UserEmail/EditUserEmail', + info = '/mainApi/UserEmail/GetUserEmailInfo', + + Del = '/mainApi/UserEmail/BatchDelUserEmail', + +} +// 列表 (Auth) +export function ApiList(data: PageRequest) { + return request({ + url: Api.list, + method: 'post', + data, + }) +} +// 编辑 (Auth) +export function ApiEdit(data: PageRequest) { + return request({ + url: Api.edit, + method: 'post', + data, + }) +} +// 详情 (Auth) +export function ApiInfo(query) { + return request({ + url: Api.info, + method: 'get', + params: query, + }) +} + +// 批量删除 (Auth) +export function ApiDel(data: PageRequest) { + return request({ + url: Api.Del, + method: 'post', + data, + }) +} + diff --git a/src/views/baseinfo/userEmail/columns.tsx b/src/views/baseinfo/userEmail/columns.tsx new file mode 100644 index 00000000..a7277112 --- /dev/null +++ b/src/views/baseinfo/userEmail/columns.tsx @@ -0,0 +1,178 @@ +import { BasicColumn, FormSchema } from '/@/components/Table' + +let TFList = [ + { label: '是', value: true }, + { label: '否', value: false }, +] +// 列表 +export const columns: BasicColumn[] = [ + { + title: '邮箱账号', + dataIndex: 'mailAccount', + width: 150, + }, + { + title: '发件显示名', + dataIndex: 'showName', + width: 200, + }, + { + title: '密码', + dataIndex: 'password', + width: 200, + }, + { + title: '收件服务器', + dataIndex: 'receiveServer', + width: 200, + }, + { + title: '收件端口', + dataIndex: 'receivePort', + width: 200, + }, + { + title: '使用IMAP4', + dataIndex: 'useImap', + width: 200, + customRender: ({ record }) => { + let RData = '' + TFList.forEach((item) => { + if (item.value == record.useImap) { + RData = item.label + } + }) + return RData + }, + }, + { + title: '发件服务器', + dataIndex: 'smtpServer', + width: 200, + }, + { + title: '收件SSL', + dataIndex: 'receiveSSL', + width: 200, + customRender: ({ record }) => { + let RData = '' + TFList.forEach((item) => { + if (item.value == record.useImap) { + RData = item.label + } + }) + return RData + }, + }, + + { + title: '发件端口', + dataIndex: 'smtpPort', + width: 200, + }, + { + title: '发件SSL', + dataIndex: 'smtpSSL', + width: 200, + customRender: ({ record }) => { + let RData = '' + TFList.forEach((item) => { + if (item.value == record.useImap) { + RData = item.label + } + }) + return RData + }, + }, +] +// 搜索 +export const searchFormSchema: FormSchema[] = [ + { + field: 'mailAccount', + label: '邮箱账号', + component: 'Input', + colProps: { span: 6 }, + }, +] +export const formSchema: FormSchema[] = [ + { + label: '', + field: 'id', + component: 'Input', + defaultValue: '', + show: false, + }, + { + field: 'mailAccount', + label: '邮箱账号', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'showName', + label: '发件显示名', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'password', + label: '密码', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'receiveServer', + label: '收件服务器', + component: 'Input', + colProps: { span: 12 }, + }, + + { + field: 'receivePort', + label: '收件端口', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'useImap', + label: '使用IMAP4', + component: 'RadioButtonGroup', + defaultValue: true, + colProps: { span: 12 }, + componentProps: { + options: TFList, + }, + }, + { + field: 'smtpServer', + label: '发件服务器', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'receiveSSL', + label: '收件SSL', + component: 'RadioButtonGroup', + defaultValue: true, + colProps: { span: 12 }, + componentProps: { + options: TFList, + }, + }, + { + field: 'smtpPort', + label: '发件端口', + component: 'Input', + colProps: { span: 12 }, + }, + { + field: 'smtpSSL', + label: '发件SSL', + component: 'RadioButtonGroup', + defaultValue: true, + colProps: { span: 12 }, + componentProps: { + options: TFList, + }, + }, +] diff --git a/src/views/baseinfo/userEmail/index.vue b/src/views/baseinfo/userEmail/index.vue index ec9dc1b5..47f8dac1 100644 --- a/src/views/baseinfo/userEmail/index.vue +++ b/src/views/baseinfo/userEmail/index.vue @@ -1,6 +1,130 @@ diff --git a/src/views/operation/seaexport/asd.json b/src/views/operation/seaexport/asd.json index e7c6c26c..01490a5b 100644 --- a/src/views/operation/seaexport/asd.json +++ b/src/views/operation/seaexport/asd.json @@ -1,266 +1,4 @@ -{ - "code": 0, - "multiCode": "Data_Query_Success", - "count": 0, - "message": "查询成功", - "succeeded": true, - "data": { - "ediInfo": { - "id": "1795664152585441280", - "businessId": "1794974161731457024", - "customerName": null, - "sendCode": null, - "receiveCode": "1", - "notifyCdoe": null, - "salerCode": null, - "masterBolIndicator": null, - "emanifestHbl": null, - "consigneeEdiCode": null, - "shipperEdiCode": null, - "ediAttn": null, - "ediAttnTel": "1", - "ediAttnMail": null, - "amsConsignee": null, - "amsNotifyParty": null, - "opEName": null, - "opTel": "1", - "opEmail": "1", - "acihbl": null, - "s0CC0C": null, - "goodsName": null, - "masterBolIndicatorName": null, - "salerCodeName": null, - "ckhi": null, - "cncm": null, - "wncm": null, - "orderRemark": null, - "exRemark1": null, - "exRemark2": null, - "exRemark3": null, - "exRemark4": null, - "kingTareweight": null, - "xmcywy": null, - "emcNameAccount": null, - "cnptNo": null - }, - "id": "1794974161731457024", - "parentId": "0", - "businessStatus": 0, - "businessStatusName": null, - "billFeeStatus": 0, - "billFeeStatusTime": null, - "isBusinessLocking": false, - "isFeeLocking": false, - "arFeeStatus": 0, - "apFeeStatus": 0, - "arInvoiceStatus": 0, - "apInvoiceStatus": 0, - "arCheckStatus": 0, - "businessDate": "2024-05-30 09:52:18", - "accountDate": "2024-08", - "mblno": "WebTest001", - "hblno": "WebTest001", - "customerNo": "2405270001", - "transNo": null, - "customerId": "1790269205392789504", - "customerName": "QDDS/青岛东胜", - "blType": "合票分票", - "shipperId": null, - "consigneeId": null, - "notifyPartyId": null, - "agentId": "1788484097849561088", - "agent": "1", - "shipperContent": "WEBTEST001", - "consigneeContent": "WEBTEST002", - "notifyPartyContent": "WEBTEST001", - "agentContent": null, - "yardId": "1788484097849561088", - "yard": "123123", - "vessel": "1763455594347499520", - "vesselId": "0", - "voyno": "1763475534341345280", - "etd": "2024-05-22 16:01:01", - "eta": "2024-05-28 09:36:28", - "atd": "2024-05-27 16:29:44", - "ata": null, - "closingDate": "2024-05-28 09:36:20", - "receiptPlace": "CALLAO", - "receiptPlaceId": "1763399503139966976", - "loadPortId": "1763399503139966976", - "loadPort": "CALLAO", - "dischargePortId": "1763399503139966976", - "dischargePort": "CALLAO", - "deliveryPlaceId": "1763399503139966976", - "deliveryPlace": "CALLAO", - "destinationId": "1763399503139966976", - "destination": "CALLAO", - "noBill": "ONE", - "copyNoBill": "ONE", - "issueType": null, - "issueDate": "2024-05-28 10:20:00", - "issuePlaceId": "1763399503139966976", - "issuePlace": "CALLAO", - "blIssueSatus": null, - "prepareAtId": "0", - "prepareAt": "1763399503139966976", - "payableAt": "1763399503139966976", - "service": null, - "marks": "WebTest001", - "cntrSealNo": null, - "noPkgs": null, - "description": "WebTest001", - "goodsName": "1763017385863942144", - "goodsId": "0", - "grossWeight": null, - "measurement": null, - "pkgs": 8, - "kindPkgs": "1763017299448696832", - "kgs": 8.0, - "cbm": 8.0, - "totalNo": "SAY:ONE HUNDRED AND TWENTY-ONE ONLY.", - "cntrNo": null, - "cntr1": 0, - "cntr2": 0, - "cntr3": 0, - "cntr4": 0, - "cntr5": 0, - "cntr6": 0, - "cntr7": 0, - "cntr8": 0, - "cntr9": 0, - "cntr10": 0, - "otherCntr": 10, - "teu": 14, - "cntrTotal": "*3*4*3*4", - "operatorId": "1770719115145777152", - "customerService": "1770719115145777152", - "foreignCustomerService": "1770719115145777152", - "laneId": "1763453587733745664", - "lane": "WebTest001", - "saleId": "1771068747235332096", - "sale": null, - "carrierId": "0", - "carrier": "1772138307266940928", - "forwarderId": "0", - "forwarder": null, - "customserId": "0", - "customser": "1788484097849561088", - "truckerId": "0", - "trucker": "1788484097849561088", - "invoiceNo": null, - "cargoId": "R", - "dangerClass": "", - "dangerNo": "", - "dangerPage": "", - "dangerLabel": "", - "reeferQuantity": "2", - "temperatureUnit": "C", - "temperatureSet": "1", - "temperatureMin": "2", - "temperatureMax": "2", - "sourceId": "0", - "sourceDetailId": "0", - "sourceDetailName": null, - "customsNum": 0, - "contractNo": "1", - "bookingType": null, - "bookingNo": "1", - "insuranceer": null, - "insuranceNo": null, - "insuranceAmount": null, - "isVoucher": false, - "voucherNo": null, - "remark": null, - "isFumigation": false, - "isStorage": false, - "isLand": false, - "isCustoms": false, - "isInspection": false, - "isBooking": false, - "isAgent": false, - "isHBLNO": false, - "service9": false, - "service10": false, - "doc": "0", - "packingType": null, - "wareHouse": null, - "closeDocDate": "2024-05-28 00:04:00", - "intoPortDocDate": "0001-01-01 00:00:00", - "saleDeptId": "0", - "mblFrt": "1767427156532662272", - "stlName": null, - "stlDate": "1901-01-01 00:00:00", - "orderType": null, - "orderNo": null, - "operatorCode": null, - "isOperator": false, - "operatorEmail": null, - "operatorTel": null, - "operatorFax": null, - "financialStaffCode": "true", - "isFinancialStaff": false, - "financialStaffEmail": null, - "financialStaffTel": null, - "financialStaffFax": null, - "sourceCode": null, - "linkMan": null, - "hsCode": "WebTest001", - "ediRemark": "WebTest001", - "mailProjectId": "0", - "irCode": null, - "serviceContractNo": "1", - "applyNo": null, - "customNo": "WebTest001", - "customDate": "1901-01-01 00:00:00", - "enterpriseId": "0", - "enterprise": "1788484097849561088", - "inspectionNo": "WebTest001", - "inspectionDate": "1901-01-01 00:00:00", - "tradeTerm": "门到门", - "termDelivery": "3", - "clearCustomDate": "1900-01-01 00:00:00", - "insperctService": "1788484097849561088", - "shipAgencyId": "0", - "shipAgency": "0", - "humidity": "2", - "masterShipperId": null, - "masterConsigneeId": null, - "masterNotifyPartyId": null, - "masterConsigneeContent": null, - "masterNotifyPartyContent": null, - "masterShipperContent": null, - "masterDescription": null, - "isContainerSoc": false, - "tranStatus": null, - "manifestStatus": null, - "isMoreGood": false, - "isPrintReceipt": false, - "vessel2N": "1763455594347499520", - "vesselId2N": "0", - "voyno2N": "WebTest001", - "deliveryDate": "2024-05-28 08:18:59", - "yardATTN": null, - "yardTel": null, - "saleOrgId": "1760142686767157248", - "transport": "CALLAO", - "transRemark": null, - "preRecord": 0, - "note": "", - "createTime": "2024-05-27 14:09:24", - "closeDocRemark": "WebTest001", - "bookingRemark": "WebTest001", - "blIssueStatus": 0, - "billSubmitStatus": 0, - "isBookingYZ": null, - "closeVgmDate": null, - "transportCode": "1438781440", - "thirdPayAt": "", - "shipper": null, - "consignee": null, - "notifyParty": null, - "innerVoyno": "1", - "secondNotifyPartyId": null, - "secondNotifyParty": null, - "secondNotifyPartyContent": null - } -} + +Could not convert string to boolean: 1. Path 'smtpSSL', line 1, position 171 +Could not convert string to boolean: 1. Path 'useImap', line 1, position 90 +Could not convert string to boolean: 1. Path 'receiveSSL', line 1, position 125. \ No newline at end of file diff --git a/src/views/operation/seaexport/columns.tsx b/src/views/operation/seaexport/columns.tsx index f6a6074c..14895a50 100644 --- a/src/views/operation/seaexport/columns.tsx +++ b/src/views/operation/seaexport/columns.tsx @@ -148,7 +148,7 @@ const FnsaleId: any = await GetSaleList() if (FnsaleId.succeeded) { ListData.saleId = [] FnsaleId.data.forEach((e) => { - ListData.saleId.push({ ...e, label: `${e.userName}/${e.userCode}`, value: e.id }) + ListData.saleId.push({ ...e, label: e.userName, value: e.id }) }) } @@ -1128,7 +1128,7 @@ export const columns: BasicColumn[] = [ width: 150, }, { - title: '尺寸', + title: '尺码', dataIndex: 'cbm', width: 150, }, @@ -1744,26 +1744,6 @@ export const basicInfoFormSchema: FormSchema[] = [ }, }, }, - { - label: '所属分部', - field: 'saleOrgId', - component: 'Select', - required: false, - dynamicDisabled: false, - // defaultValue: '', - colProps: { span: 4 }, - componentProps: { - allowClear: true, - options: ListData.saleDeptId, - showSearch: true, - filterOption: (input: string, option: any) => { - return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 - }, - onChange: (e, obj) => { - console.log(e, obj) - }, - }, - }, { label: '委托单位Nmae', field: 'customerName', @@ -2142,36 +2122,91 @@ export const basicInfoFormSchema: FormSchema[] = [ } return RData }, - onChange: (e, obj) => { + onChange: async (e, obj) => { if (e && obj) { + console.log(e, obj, '揽货人!!!!!!!!!!') + let saleDeptIdArr: any = [] formModel.sale = obj.label formModel.saleOrgId = obj.defaultOrgId + formModel.saleDeptId = obj.deptId if (formActionType) { ListData.saleDeptId = [] obj.saleOrgList.forEach((item) => { ListData.saleDeptId.push({ label: item.orgName, value: item.orgId }) }) + if (obj.defaultOrgId) { + await GetDeptList({ orgId: obj.defaultOrgId }).then((res) => { + console.log(res, '所属分部 查询 所属部门') + res.data.forEach((item) => { + saleDeptIdArr.push({ label: item.orgName, value: item.id }) + }) + }) + } + const { updateSchema } = formActionType - updateSchema({ - label: '所属分部', - field: 'saleOrgId', - component: 'Select', - required: false, - dynamicDisabled: false, - // defaultValue: '', - colProps: { span: 4 }, - componentProps: { - allowClear: true, - options: ListData.saleDeptId, - showSearch: true, - filterOption: (input: string, option: any) => { - return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + updateSchema([ + { + label: '所属分部', + field: 'saleOrgId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.saleDeptId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + formModel.saleDeptId = '' + GetDeptList({ orgId: e }).then((res) => { + console.log(res, '所属分部 查询 所属部门') + let Arr: any = [] + res.data.forEach((item) => { + Arr.push({ label: item.orgName, value: item.id }) + }) + updateSchema({ + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: Arr, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }) + }) + }, }, - onChange: (e, obj) => { - console.log(e, obj) + }, + { + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: saleDeptIdArr, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, }, }, - }) + ]) } } else { formModel.sale = '' @@ -2180,6 +2215,26 @@ export const basicInfoFormSchema: FormSchema[] = [ } }, }, + { + label: '所属分部', + field: 'saleOrgId', + component: 'Select', + required: false, + colProps: { span: 4 }, + dynamicDisabled: ({ values }) => { + return !values.saleId + }, + }, + { + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + colProps: { span: 4 }, + dynamicDisabled: ({ values }) => { + return !values.saleOrgId + }, + }, { label: '客服员', field: 'customerService', @@ -2289,23 +2344,7 @@ export const basicInfoFormSchema: FormSchema[] = [ }, }, }, - { - label: '所属部门', - field: 'saleDeptId', - component: 'Select', - required: false, - dynamicDisabled: false, - // defaultValue: '', - colProps: { span: 4 }, - componentProps: { - allowClear: true, - options: ListData.saleDeptId, - showSearch: true, - filterOption: (input: string, option: any) => { - return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 - }, - }, - }, + // { // field: 'czRemark', // label: '操作备注', @@ -3339,7 +3378,7 @@ export const cargoInfoFormSchema2: FormSchema[] = [ }, }, { - label: '尺寸', + label: '尺码', field: 'cbm', component: 'InputNumber', required: false, @@ -3512,7 +3551,7 @@ export const cargoInfoFormSchema2: FormSchema[] = [ // colProps: { span: 12 }, // }, // { -// label: '尺寸', +// label: '尺码', // field: 'cbm', // component: 'InputNumber', // required: false, @@ -4338,7 +4377,7 @@ export const goodsTablecolumns: BasicColumn[] = [ width: 80, }, { - title: '尺寸', + title: '尺码', dataIndex: 'size', align: 'left', editRow: true, diff --git a/src/views/operation/seaexport/detail/columns.tsx b/src/views/operation/seaexport/detail/columns.tsx new file mode 100644 index 00000000..f82c38d8 --- /dev/null +++ b/src/views/operation/seaexport/detail/columns.tsx @@ -0,0 +1,4192 @@ +import { useComponentRegister } from '/@/components/Form' +import { ref } from 'vue' +import SelectTextArea from '/@/views/operation/seaexport/components/SelectTextArea.vue' +useComponentRegister('SelectTextArea', SelectTextArea) +import { + // ---------------basicInfo---------------- + GetDeptList, + GetClientStlModeSelectList, + GetControllerClientList, + GetClientSourceSelectList, + GetClientSourceDetailSelectList, + GetAgentCnClientList, + GetClientLanesSelectList, + GetOperatorUserList, + GetSaleUserList, + GetSaleList, + GetVouchingClerkList, + GetCustomerServiceList, + // ---------------mailingInfo---------------- + GetShipperClientList, + GetConsigneeClientList, + GetNotifyPartyClientList, + GetYardClientList, + GetCarrierlist, + GetAgentClientList, + GetShipAgencyClientList, + GetCustomClientList, + GetWareHouseClientList, + GetTruckClientList, + GetVesselSelectList, + GetVoynoSelectList, + GetClientPortSelectList, + GetIssueTypeSelectList, + GetClientFrtSelectList, + GetServiceSelectList, + // ---------------cargoInfo---------------- + GetPackageSelectList, + GetEnterpriseClientList, +} from '/@/views/operation/seaexport/api/BookingLedger' +import { getDictDropDown } from '/@/api/common' +import { getDictOption } from '/@/utils/dictUtil' +let Rtime = (type) => { + let RData = '' + const today = new Date() + const year = today.getFullYear() // 获取当前年份 + const month = today.getMonth() + 1 // 获取当前月份,+1因为getMonth()返回0-11 + const day = today.getDate() // 获取当前日期 + switch (type) { + case 'Month': + RData = `${year}-${month}` + break + + default: + RData = `${year}-${month}-${day}` + break + } + return RData +} +// 业务种类字典 +const salerCodeDict = ref([]) +let ListData: any = await {} +const FnblType: any = await getDictOption('bl_type') +if (FnblType.length) { + ListData.blType = [] + FnblType.forEach((e) => { + ListData.blType.push({ label: e.name, value: e.value }) + }) +} +const FnsaleDeptId: any = await GetDeptList() +if (FnsaleDeptId.succeeded) { + ListData.saleDeptId = [] + FnsaleDeptId.data.forEach((e) => { + ListData.saleDeptId.push({ label: e.orgName, value: e.id }) + }) +} +const Fncustomername: any = await GetControllerClientList() +if (Fncustomername.succeeded) { + ListData.customername = [] + Fncustomername.data.forEach((e) => { + ListData.customername.push({ label: `${e.codeName}/${e.shortName}`, value: e.id, ...e }) + }) +} +const FnsourceId: any = await GetClientSourceSelectList() +if (FnsourceId.succeeded) { + ListData.sourceId = [] + FnsourceId.data.forEach((e) => { + ListData.sourceId.push({ label: e.sourceName, value: e.id }) + }) +} +const FnstlName: any = await GetClientStlModeSelectList() +if (FnstlName.succeeded) { + ListData.stlName = [] + FnstlName.data.forEach((e) => { + ListData.stlName.push({ label: e.stlName, value: e.id }) + }) +} +const Fncarrier: any = await GetCarrierlist() +if (Fncarrier.succeeded) { + ListData.carrier = [] + Fncarrier.data.forEach((e) => { + ListData.carrier.push({ label: e.codeName, value: e.id }) + }) +} +const FnforwarderId: any = await GetAgentCnClientList() +if (FnforwarderId.succeeded) { + ListData.forwarderId = [] + FnforwarderId.data.forEach((e) => { + ListData.forwarderId.push({ label: `${e.codeName}/${e.shortName}`, value: e.id, ...e }) + }) +} +const Fnvessel: any = await GetVesselSelectList() +if (Fnvessel.succeeded) { + ListData.vessel = [] + Fnvessel.data.forEach((e) => { + ListData.vessel.push({ label: e.vesselName, value: e.id }) + }) +} +const Fnvoyno: any = await GetVoynoSelectList() +if (Fnvoyno.succeeded) { + ListData.voyno = [] + Fnvoyno.data.forEach((e) => { + ListData.voyno.push({ label: e.voyNo, value: e.id }) + }) +} +const FnlaneId: any = await GetClientLanesSelectList() +if (FnlaneId.succeeded) { + ListData.laneId = [] + FnlaneId.data.forEach((e) => { + ListData.laneId.push({ label: e.laneName, value: e.id }) + }) +} +const FnshipAgencyId: any = await GetShipAgencyClientList() +if (FnshipAgencyId.succeeded) { + ListData.shipAgencyId = [] + FnshipAgencyId.data.forEach((e) => { + ListData.shipAgencyId.push({ label: e.codeName, value: e.id }) + }) +} +// const FnsaleId: any = await GetSaleUserList() +// if (FnsaleId.succeeded) { +// ListData.saleId = [] +// FnsaleId.data.forEach((e) => { +// ListData.saleId.push({ ...e, label: `${e.userName}/${e.userCode}`, value: e.id }) +// }) +// } + +const FnsaleId: any = await GetSaleList() +if (FnsaleId.succeeded) { + ListData.saleId = [] + FnsaleId.data.forEach((e) => { + ListData.saleId.push({ ...e, label: e.userName, value: e.id }) + }) +} + +const FncustomerService: any = await GetCustomerServiceList() +if (FncustomerService.succeeded) { + ListData.customerService = [] + FncustomerService.data.forEach((e) => { + ListData.customerService.push({ ...e, label: `${e.userName}/${e.userCode}`, value: e.id }) + }) +} +const FnoperatorId: any = await GetCustomerServiceList() +if (FnoperatorId.succeeded) { + ListData.operatorId = [] + FnoperatorId.data.forEach((e) => { + ListData.operatorId.push({ ...e, label: `${e.userName}/${e.userCode}`, value: e.id }) + }) +} +const Fndoc: any = await GetVouchingClerkList() +if (Fndoc.succeeded) { + ListData.doc = [] + Fndoc.data.forEach((e) => { + ListData.doc.push({ ...e, label: `${e.userName}/${e.userCode}`, value: e.id }) + }) +} + +const FnreceiptPlaceId: any = await GetClientPortSelectList() +if (FnreceiptPlaceId.succeeded) { + ListData.receiptPlaceId = [] + FnreceiptPlaceId.data.forEach((e) => { + ListData.receiptPlaceId.push({ ...e, label: `${e.portName}/${e.ediCode}`, value: e.id }) + }) +} +const Fnyard: any = await GetYardClientList() +if (Fnyard.succeeded) { + ListData.yard = [] + Fnyard.data.forEach((e) => { + ListData.yard.push({ label: e.codeName, value: e.id }) + }) +} +const Fncustomser: any = await GetCustomClientList() +if (Fncustomser.succeeded) { + ListData.customser = [] + Fncustomser.data.forEach((e) => { + ListData.customser.push({ label: `${e.codeName}/${e.shortName}`, value: e.id, ...e }) + }) +} +const FnagentId: any = await GetAgentClientList() +if (FnagentId.succeeded) { + ListData.agentId = [] + FnagentId.data.forEach((e) => { + ListData.agentId.push({ label: e.shortName, value: e.id }) + }) +} +const FntermDelivery: any = await getDictOption('term_delivery') +if (FntermDelivery.length) { + ListData.termDelivery = [] + FntermDelivery.forEach((e) => { + ListData.termDelivery.push({ label: e.label, value: e.value }) + }) +} +const FnwareHouse: any = await GetWareHouseClientList() +if (FnwareHouse.succeeded) { + ListData.wareHouse = [] + FnwareHouse.data.forEach((e) => { + ListData.wareHouse.push({ label: e.shortName, value: e.id }) + }) +} +const Fntrucker: any = await GetTruckClientList() +if (Fntrucker.succeeded) { + ListData.trucker = [] + Fntrucker.data.forEach((e) => { + ListData.trucker.push({ label: `${e.codeName}/${e.shortName}`, value: e.id, ...e }) + }) +} +const FnissueType: any = await GetIssueTypeSelectList() +if (FnissueType.succeeded) { + ListData.issueType = [] + FnissueType.data.forEach((e) => { + ListData.issueType.push({ label: e.enName, value: e.id }) + }) +} +const FnnoBill: any = await getDictOption('no_bill') +if (FnnoBill.length) { + ListData.noBill = [] + FnnoBill.forEach((e) => { + ListData.noBill.push({ label: e.name, value: e.value }) + }) +} +const FncopyNoBill: any = await getDictOption('copy_no_bill') +if (FncopyNoBill.length) { + ListData.copyNoBill = [] + FncopyNoBill.forEach((e) => { + ListData.copyNoBill.push({ label: e.name, value: e.value }) + }) +} +const FnmblFrt: any = await GetClientFrtSelectList() +if (FnmblFrt.succeeded) { + ListData.mblFrt = [] + FnmblFrt.data.forEach((e) => { + ListData.mblFrt.push({ label: e.cnName, value: e.id }) + }) +} +const FnprepareAt: any = await GetClientPortSelectList() +if (FnprepareAt.succeeded) { + ListData.prepareAt = [] + FnprepareAt.data.forEach((e) => { + ListData.prepareAt.push({ ...e, label: `${e.portName}/${e.ediCode}`, value: e.id }) + }) +} +const FnpayableAt: any = await GetClientPortSelectList() +if (FnpayableAt.succeeded) { + ListData.payableAt = [] + FnpayableAt.data.forEach((e) => { + ListData.payableAt.push({ ...e, label: `${e.portName}/${e.ediCode}`, value: e.id }) + }) +} +const Fnservice: any = await GetServiceSelectList() +if (Fnservice.succeeded) { + ListData.service = [] + Fnservice.data.forEach((e) => { + ListData.service.push({ label: e.enName, value: e.id }) + }) +} +const FntradeTerm: any = await getDictOption('packing_type') +if (FntradeTerm.length) { + ListData.tradeTerm = [] + FntradeTerm.forEach((e) => { + ListData.tradeTerm.push({ label: e.name, value: e.value }) + }) +} +const FngoodsName: any = await GetPackageSelectList() +if (FngoodsName.succeeded) { + ListData.goodsName = [] + FngoodsName.data.forEach((e) => { + ListData.goodsName.push({ label: e.packageName, value: e.id }) + }) +} +const FncargoId: any = await getDictOption('cargo_tag') +if (FncargoId.length) { + ListData.cargoId = [] + FncargoId.forEach((e) => { + ListData.cargoId.push({ label: e.name, value: e.value }) + }) +} +const Fnenterprise: any = await GetEnterpriseClientList() +if (Fnenterprise.succeeded) { + ListData.enterprise = [] + Fnenterprise.data.forEach((e) => { + ListData.enterprise.push({ label: e.shortName, value: e.id }) + }) +} +const FninsperctService: any = await GetEnterpriseClientList() +if (FninsperctService.succeeded) { + ListData.insperctService = [] + FninsperctService.data.forEach((e) => { + ListData.insperctService.push({ label: e.shortName, value: e.id }) + }) +} +// 箱型 字段转换 改按需的时候不要动 +let CtnMapArr: any = [] +const ctnMap = await getDictOption('seaexport_ctn_map') +ctnMap.forEach((item) => { + CtnMapArr.push({ + title: item.value, + dataIndex: `cntr${item.name.split('CTNR')[1]}`, + width: 150, + }) +}) + +// const Fnctn: any = await +await getDictDropDown({ code: 'ctn_code' }) +const Fnctn: any = await getDictOption('ctn_code') + +if (Fnctn.length) { + ListData.ctn = [] + Fnctn.forEach((e) => { + ListData.ctn.push({ label: e.name, value: e.value }) + }) +} + +import { BasicColumn, FormSchema } from '/@/components/Table' +import { Tag } from 'ant-design-vue' +const LockType = [ + { label: '锁定', value: true }, + { label: '未锁定', value: false }, +] + +// basicInfo表单 +export const basicInfoFormSchema: FormSchema[] = [ + { + label: '', + field: 'id', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + field: 'customerNo', + label: '委托编号', + component: 'Input', + required: false, + dynamicDisabled: true, + // defaultValue: '', + colProps: { span: 4 }, + }, + // businessStatus + { + field: 'isBusinessLocking', + label: '业务锁定', + component: 'Select', + required: false, + dynamicDisabled: true, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + options: LockType, + }, + }, + { + field: 'isFeeLocking', + label: '费用锁定', + component: 'Select', + required: false, + dynamicDisabled: true, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + options: LockType, + }, + }, + { + field: 'accountDate', + label: '会计期间', + component: 'MonthPicker', + required: true, + dynamicDisabled: false, + defaultValue: Rtime('Month'), + colProps: { span: 4 }, + componentProps: { + valueFormat: 'YYYY-MM', + }, + }, + { + field: 'blType', + label: '装运方式', + component: 'Select', + required: true, + dynamicDisabled: false, + defaultValue: ListData.blType[0].label, + colProps: { span: 4 }, + componentProps: { + options: ListData.blType, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '委托单位Nmae', + field: 'customerName', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + label: '委托单位', + field: 'customerId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: ({ formActionType, formModel }) => { + return { + allowClear: true, + options: ListData.customername, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + + if (option.codeName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.shortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.enShortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + + return RData + }, + onChange: (e) => { + if (e) { + ListData.customername.forEach((item) => { + if (item.value == e) { + formModel.customerName = item.label + } + }) + } else { + formModel.Lane = '' + } + }, + } + }, + }, + { + label: '业务来源', + field: 'sourceId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: ({ formActionType, formModel }) => { + return { + allowClear: true, + options: ListData.sourceId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: async (e) => { + if (e) { + if (formActionType) { + const { updateSchema } = formActionType + let Arr: any = [] + await GetClientSourceDetailSelectList({ id: e }).then((res) => { + res.data.forEach((item) => { + Arr.push({ label: item.detailName, value: item.id }) + }) + }) + updateSchema({ + label: '来源明细', + field: 'sourceDetailId', + component: 'Select', + required: false, + dynamicDisabled: ({ values }) => { + return !values.sourceId + }, + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: Arr, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }) + } + } + formModel.sourceDetailId = '' + }, + } + }, + }, + { + label: '来源明细', + field: 'sourceDetailId', + component: 'Select', + required: false, + dynamicDisabled: ({ values }) => { + return !values.sourceId + }, + colProps: { span: 4 }, + }, + { + field: 'stlName', + label: '结算方式', + component: 'Select', + required: false, + dynamicDisabled: true, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + options: ListData.stlName, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'stlDate', + label: '结算日期', + component: 'DatePicker', + required: false, + dynamicDisabled: true, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + }, + }, + { + field: 'bookingNo', + label: '订舱编号', + component: 'Input', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + }, + { + field: 'mblno', + label: '主提单号', + component: 'Input', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + }, + { + field: 'hblno', + label: '分提单号', + component: 'Input', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + }, + { + label: '船公司', + field: 'carrier', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.carrier, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.codeName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.shortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.enShortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + { + label: '订舱代理', + field: 'forwarderId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.forwarderId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.codeName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.shortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.enShortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + { + field: 'contractNo', + label: '运费协议号', + component: 'Input', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + }, + { + field: 'serviceContractNo', + label: '服务合同号', + component: 'Input', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + }, + { + field: 'etd', + label: '开船日期', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + }, + }, + { + label: '船名', + field: 'vessel', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.vessel, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '内部航次', + field: 'innerVoyno', + component: 'Input', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + }, + { + label: '海关航次', + field: 'voyno', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.voyno, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '船司航线', + field: 'Lane', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + label: '船司航线', + field: 'laneId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.laneId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.laneId.forEach((item) => { + if (item.value == e) { + formModel.Lane = item.label + } + }) + } else { + formModel.Lane = '' + } + }, + } + }, + }, + { + label: '船代', + field: 'shipAgencyId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.customername, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.codeName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.shortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.enShortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + { + label: '揽货人', + field: 'sale', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + label: '揽货人', + field: 'saleId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: ({ formModel, formActionType }) => { + return { + allowClear: true, + options: ListData.saleId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: async (e, obj) => { + if (e && obj) { + console.log(e, obj, '揽货人!!!!!!!!!!') + let saleDeptIdArr: any = [] + formModel.sale = obj.label + formModel.saleOrgId = obj.defaultOrgId + formModel.saleDeptId = obj.deptId + if (formActionType) { + ListData.saleDeptId = [] + obj.saleOrgList.forEach((item) => { + ListData.saleDeptId.push({ label: item.orgName, value: item.orgId }) + }) + if (obj.defaultOrgId) { + await GetDeptList({ orgId: obj.defaultOrgId }).then((res) => { + console.log(res, '所属分部 查询 所属部门') + res.data.forEach((item) => { + saleDeptIdArr.push({ label: item.orgName, value: item.id }) + }) + }) + } + + const { updateSchema } = formActionType + updateSchema([ + { + label: '所属分部', + field: 'saleOrgId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.saleDeptId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + formModel.saleDeptId = '' + GetDeptList({ orgId: e }).then((res) => { + console.log(res, '所属分部 查询 所属部门') + let Arr: any = [] + res.data.forEach((item) => { + Arr.push({ label: item.orgName, value: item.id }) + }) + updateSchema({ + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: Arr, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }) + }) + }, + }, + }, + { + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: saleDeptIdArr, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + ]) + } + } else { + formModel.sale = '' + } + }, + } + }, + }, + { + label: '所属分部', + field: 'saleOrgId', + component: 'Select', + required: false, + colProps: { span: 4 }, + dynamicDisabled: ({ values }) => { + return !values.saleId + }, + }, + { + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + colProps: { span: 4 }, + dynamicDisabled: ({ values }) => { + return !values.saleOrgId + }, + }, + { + label: '客服员', + field: 'customerService', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.customerService, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + { + label: '操作', + field: 'operatorId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.operatorId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + { + label: '单证', + field: 'doc', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.doc, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + // { + // label: '海外客服', + // field: 'foreignCustomerService', + // component: 'Select', + // required: false, + // dynamicDisabled: false, + // // defaultValue: '', + // colProps: { span: 4 }, + // componentProps: { + // allowClear: true, + // options: ListData.saleId, + // showSearch: true, + // filterOption: (input: string, option: any) => { + // return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + // }, + // }, + // }, + { + label: '海外客服', + field: 'foreignCustomerService', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.saleId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + + // { + // field: 'czRemark', + // label: '操作备注', + // component: 'InputTextArea', + // required: false, + // dynamicDisabled: false, + // // defaultValue: '', + // colProps: { span: 12 }, + // }, + // { + // field: 'dzRemark', + // label: '单证备注', + // component: 'InputTextArea', + // required: false, + // dynamicDisabled: false, + // // defaultValue: '', + // colProps: { span: 12 }, + // }, +] +// mailingInfo表单 +export const mailingInfoFormSchemaL: FormSchema[] = [ + { + label: '', + field: 'shipperContent', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + label: '', + field: 'shipper', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + field: '', + component: 'SelectTextArea', + colProps: { span: 24 }, + componentProps: ({ formModel }) => { + return { + label: '发货人', + details: formModel, + field: 'shipper', + onChange: (e) => { + if (e) { + formModel[`shipper${e.type}`] = e.res + } + }, + } + }, + }, + { + label: '', + field: 'consigneeContent', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + label: '', + field: 'consignee', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + field: '', + component: 'SelectTextArea', + colProps: { span: 24 }, + componentProps: ({ formModel }) => { + return { + label: '收货人', + details: formModel, + field: 'consignee', + onChange: (e) => { + if (e) { + formModel[`consignee${e.type}`] = e.res + } + }, + } + }, + }, + { + label: '', + field: 'notifyPartyContent', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + label: '', + field: 'notifyParty', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + field: '', + component: 'SelectTextArea', + colProps: { span: 24 }, + componentProps: ({ formModel }) => { + return { + label: '通知人', + details: formModel, + field: 'notifyParty', + onChange: (e) => { + if (e) { + formModel[`notifyParty${e.type}`] = e.res + } + }, + } + }, + }, + { + field: 'agent', + label: 'AGENT', + component: 'InputTextArea', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 24 }, + componentProps: { + rows: 3, + }, + }, +] +export const mailingInfoFormSchemaR: FormSchema[] = [ + { + label: '收货地代码', + field: 'receiptPlaceId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 7 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.portName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.ediCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.receiptPlace = item.portName + } + }) + } else { + formModel.receiptPlace = '' + } + }, + } + }, + }, + { + label: '收货地', + field: 'receiptPlace', + component: 'Input', + required: false, + colProps: { span: 7 }, + }, + { + label: '', + field: 'yard', + component: 'Input', + + show: false, + }, + { + field: 'yardId', + label: '场站', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.yard, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.codeName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.shortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.enShortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: (e) => { + if (e) { + ListData.yard.forEach((item) => { + if (item.value == e) { + formModel.yard = item.label + formModel.yardId = item.value + } + }) + } else { + formModel.yard = '' + formModel.yardId = '' + } + }, + } + }, + }, + { + field: 'customser', + label: '报关行', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + allowClear: true, + options: ListData.customser, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.codeName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.shortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.enShortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + // { + // field: 'financialStaffCode', + // label: '场站费自结', + // component: 'RadioGroup', + // required: false, + // dynamicDisabled: false, + // defaultValue: true, + // colProps: { span: 5 }, + // componentProps: { + // options: [ + // { label: '是', value: 'true' }, + // { label: '否', value: 'false' }, + // ], + // }, + // }, + { + label: '装货港代码', + field: 'loadPortId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 7 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.portName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.ediCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.loadPort = item.portName + } + }) + } else { + formModel.loadPort = '' + } + }, + } + }, + }, + { + label: '装货港', + field: 'loadPort', + component: 'Input', + required: false, + colProps: { span: 7 }, + }, + { + field: 'closingDate', + label: '截港时间', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + showTime: true, + allowClear: true, + }, + }, + { + field: 'trucker', + label: '车队', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + allowClear: true, + options: ListData.trucker, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.codeName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.shortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.enShortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + // { + // label: '', + // field: '', + // component: '', + // colProps: { span: 5 }, + // }, + // { + // label: '第三付款地', + // field: 'thirdPayAt', + // component: 'Input', + // // defaultValue: '', + // show: false, + // }, + { + label: '中转港代码', + field: 'transportCode', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 7 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.portName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.ediCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.transport = item.portName + } + }) + } else { + formModel.transport = '' + } + }, + } + }, + }, + { + label: '中转港', + field: 'transport', + component: 'Input', + required: false, + colProps: { span: 7 }, + }, + { + field: 'closeDocDate', + label: '截单日期', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + showTime: true, + allowClear: true, + }, + }, + { + field: 'agentId', + label: '国外代理', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + options: ListData.agentId, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '卸货港代码', + field: 'dischargePortId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 7 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.portName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.ediCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.dischargePort = item.portName + } + }) + } else { + formModel.dischargePort = '' + } + if (!formModel.destinationId || formModel.destinationId == 0) { + formModel.destinationId = e + formModel.destination = formModel.dischargePort + } + if (!formModel.deliveryPlaceId || formModel.deliveryPlaceId == 0) { + formModel.deliveryPlaceId = e + formModel.deliveryPlace = formModel.dischargePort + } + }, + } + }, + }, + { + label: '卸货港', + field: 'dischargePort', + component: 'Input', + required: false, + colProps: { span: 7 }, + }, + { + field: 'deliveryDate', + label: '交货日期', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + allowClear: true, + }, + }, + { + field: 'eta', + label: '预抵日期', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + allowClear: true, + }, + }, + { + label: '目的地代码', + field: 'destinationId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 7 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.portName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.ediCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.destination = item.portName + } + }) + } else { + formModel.destination = '' + } + }, + } + }, + }, + { + label: '目的地', + field: 'destination', + component: 'Input', + required: false, + colProps: { span: 7 }, + }, + { + field: 'atd', + label: 'ATD', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + allowClear: true, + }, + }, + { + field: 'wareHouse', + label: '仓库', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + options: ListData.wareHouse, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + // { + // label: '', + // field: '', + // component: '', + // colProps: { span: 5 }, + // }, + { + label: '交货地代码', + field: 'deliveryPlaceId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 7 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.portName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.ediCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.deliveryPlace = item.portName + } + }) + } else { + formModel.deliveryPlace = '' + } + }, + } + }, + }, + { + label: '交货地', + field: 'deliveryPlace', + component: 'Input', + required: false, + colProps: { span: 7 }, + }, + { + field: 'termDelivery', + label: '贸易方式', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: ({ formModel }) => { + return { + options: ListData.termDelivery, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + } + }, + }, + + { + field: 'tradeTerm', + label: '贸易条款', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + options: ListData.tradeTerm, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'divider-selects', + component: 'Divider', + colProps: { span: 24 }, + }, + + { + field: 'issueType', + label: '签单方式', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + options: ListData.issueType, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'issueDate', + label: '签单日期', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + allowClear: true, + }, + }, + { + label: '签单地点', + field: 'issuePlace', + component: 'Input', + required: false, + colProps: { span: 5 }, + }, + { + label: '签单地代码', + field: 'issuePlaceId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.issuePlace = item.portName + } + }) + } else { + formModel.issuePlace = '' + } + }, + } + }, + }, + { + field: 'mblFrt', + label: '付费方式', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + options: ListData.mblFrt, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'prepareAt', + label: '预付地点', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + options: ListData.prepareAt, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'payableAt', + label: '到付地点', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + options: ListData.payableAt, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + // { + // label: '', + // field: '', + // component: '', + // colProps: { span: 5 }, + // }, + { + field: 'service', + label: '运输条款', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + options: ListData.service, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'noBill', + label: '提单份数', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 5 }, + componentProps: { + options: ListData.noBill, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'copyNoBill', + label: '副本份数', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + options: ListData.copyNoBill, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'divider-selects', + component: 'Divider', + colProps: { span: 24 }, + }, + { + field: 'bookingRemark', + label: '订舱备注', + component: 'InputTextArea', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 12 }, + componentProps: { + rows: 3, + }, + }, + { + field: 'closeDocRemark', + label: '截单备注', + component: 'InputTextArea', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 12 }, + componentProps: { + rows: 3, + }, + }, + + // { + // field: 'note', + // label: '备注', + // component: 'InputTextArea', + // required: false, + // dynamicDisabled: false, + // // defaultValue: '', + // colProps: { span: 12 }, + // componentProps: { + // rows: 3, + // }, + // }, +] +// cargoInfo表单 +export const cargoInfoFormSchema1: FormSchema[] = [ + { + field: 'marks', + label: `唛头`, + component: 'InputTextArea', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { + span: 24, + }, + componentProps: { + rows: 6, + }, + }, +] +export const cargoInfoFormSchema2: FormSchema[] = [ + { + field: 'goodsName', + label: '品名', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + options: ListData.goodsName, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'cargoId', + label: '货物标识', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + options: ListData.cargoId, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: () => { + formModel.dangerClass = '' + formModel.dangerNo = '' + formModel.dangerPage = '' + formModel.dangerLabel = '' + formModel.temperatureSet = '' + formModel.reeferQuantity = '' + formModel.temperatureUnit = '' + formModel.temperatureMin = '' + formModel.temperatureMax = '' + formModel.humidity = '' + }, + } + }, + }, + { + label: 'HS编码', + field: 'hsCode', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '件数', + field: 'pkgs', + component: 'InputNumber', + required: false, + colProps: { span: 6 }, + componentProps: ({ formActionType }) => { + return { + onChange: () => { + formActionType ? formActionType.submit() : null + }, + } + }, + }, + { + label: '', + field: 'kindPkgsName', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + label: '包装', + field: 'kindPkgs', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 6 }, + componentProps: ({ formActionType, formModel }) => { + return { + options: ListData.goodsName, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.goodsName.forEach((item) => { + if (item.value == e) { + formModel.kindPkgsName = item.label + } + }) + + setTimeout(() => { + formActionType ? formActionType.submit() : null + }, 10) + } + }, + } + }, + }, + { + label: '货物描述', + field: 'description', + component: 'InputTextArea', + required: false, + dynamicDisabled: false, + colProps: { span: 12 }, + componentProps: { + rows: 3, + }, + }, + { + label: '毛重', + field: 'kgs', + component: 'InputNumber', + required: false, + colProps: { span: 6 }, + componentProps: ({ formActionType }) => { + return { + onChange: () => { + formActionType ? formActionType.submit() : null + }, + } + }, + }, + { + label: '尺码', + field: 'cbm', + component: 'InputNumber', + required: false, + colProps: { span: 6 }, + }, + + // 危险品 + { + label: '危险品等级', + field: 'dangerClass', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'D' + }, + }, + { + label: '危险品编号', + field: 'dangerNo', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'D' + }, + }, + { + label: '危险品页号', + field: 'dangerPage', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'D' + }, + }, + { + label: '危险品标签', + field: 'dangerLabel', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'D' + }, + }, + // { + // label: '危险品联系人', + // field: 'hsCode', + // component: 'Input', + // required: false, + // colProps: { span: 4 }, + // show: ({ values }) => { + // return values.cargoId == 'D' + // }, + // }, + // 冻柜 + { + label: '设置温度', + field: 'temperatureSet', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'R' + }, + }, + { + label: '冷藏通风量', + field: 'reeferQuantity', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'R' + }, + }, + { + label: '温度单位', + field: 'temperatureUnit', + component: 'Select', + required: false, + dynamicDisabled: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'R' + }, + componentProps: { + options: [ + { label: '摄氏', value: 'C' }, + { label: '华氏', value: 'F' }, + ], + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '最低温度', + field: 'temperatureMin', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'R' + }, + }, + { + label: '最高温度', + field: 'temperatureMax', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'R' + }, + }, + { + label: '湿度', + field: 'humidity', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: ({ values }) => { + return values.cargoId == 'R' + }, + }, +] +// export const cargoInfoFormSchema3: FormSchema[] = [ +// { +// label: '件数', +// field: 'pkgs', +// component: 'InputNumber', +// required: false, +// colProps: { span: 12 }, +// componentProps: ({ schema, tableAction, formActionType, formModel }) => { +// return { +// onChange: () => { +// formActionType.submit() +// }, +// } +// }, +// }, +// { +// field: 'kindPkgs', +// label: '包装', +// component: 'Select', +// required: false, +// dynamicDisabled: false, +// // defaultValue: '', +// colProps: { span: 12 }, +// componentProps: { +// options: ListData.FngoodsName, +// allowClear: true, +// showSearch: true, +// filterOption: (input: string, option: any) => { +// return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 +// }, +// }, +// }, + +// { +// label: '毛重', +// field: 'kgs', +// component: 'InputNumber', +// required: false, +// colProps: { span: 12 }, +// }, +// { +// label: '尺码', +// field: 'cbm', +// component: 'InputNumber', +// required: false, +// colProps: { span: 12 }, +// }, +// ] +export const cargoInfoFormSchema4: FormSchema[] = [ + { + field: 'totalNo', + label: '件数大写', + component: 'Input', + required: false, + colProps: { span: 24 }, + dynamicDisabled: true, + }, +] +// ediMore表单 +export const ediMoreFormSchema: FormSchema[] = [ + { + label: '主键Id', + field: 'id', + component: 'Input', + show: false, + }, + { + label: '业务Id', + field: 'businessId', + component: 'Input', + show: false, + }, + { + label: '委托方', + field: 'customerName', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '发送方EDI代码', + field: 'sendCode', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '接收方EDI代码', + field: 'receiveCode', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '通知方EDI代码', + field: 'notifyCdoe', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '太平销售EDI名称', + field: 'salerCodeName', + component: 'Input', + required: false, + colProps: { span: 4 }, + show: false, + }, + { + label: '太平销售EDI代码', + field: 'salerCode', + component: 'Select', + required: false, + dynamicDisabled: false, + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + getDictOption('saler_code').then((data) => { + data.forEach((res) => { + res.value = String(res.value) + }) + salerCodeDict.value = data + }) + return { + options: salerCodeDict.value, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + console.log(e, obj) + + if (e) { + formModel.salerCodeName = obj.name + } else { + formModel.salerCodeName = '' + } + }, + } + }, + }, + { + label: 'Master Bol Indicator', + field: 'masterBolIndicator', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'EMANIFEST HBL', + field: 'emanifestHbl', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '收货人EDI代码', + field: 'consigneeEdiCode', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '发货人EDI代码', + field: 'shipperEdiCode', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'EDI联系人名称', + field: 'ediAttn', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'EDI联系人电话', + field: 'ediAttnTel', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'EDI联系人邮箱', + field: 'ediAttnMail', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'AMS收货人', + field: 'amsConsignee', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'AMS通知人', + field: 'amsNotifyParty', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '操作英文名称', + field: 'opEName', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '操作电话', + field: 'opTel', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '操作邮箱', + field: 'opEmail', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'ACI HBL', + field: 'acihbl', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'S0C C0C', + field: 's0CC0C', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '商品名称', + field: 'goodsName', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'Master Bol Indicator名称', + field: 'masterBolIndicatorName', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + + { + label: '欧盟港口、伊朗港口、KHI', + field: 'ckhi', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '南美东', + field: 'cncm', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '巴西线的木质包装情况', + field: 'wncm', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '订舱人说明', + field: 'orderRemark', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '辅助字段1', + field: 'exRemark1', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '辅助字段2', + field: 'exRemark2', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '辅助字段3', + field: 'exRemark3', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '辅助字段4', + field: 'exRemark4', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '第一层包装皮重', + field: 'kingTareweight', + component: 'InputNumber', + required: false, + colProps: { span: 4 }, + }, + { + label: '箱满仓业务员', + field: 'xmcywy', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'EMC Name accout', + field: 'emcNameAccount', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: 'CNPTNo', + field: 'cnptNo', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, +] +// export const ediMoreFormSchema: FormSchema[] = [ +// { +// label: '报关单号', +// field: 'customNo', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// field: 'customDate', +// label: '报关日期', +// component: 'DatePicker', +// required: false, +// dynamicDisabled: false, +// // defaultValue: '', +// colProps: { span: 4 }, +// componentProps: { +// allowClear: true, +// }, +// }, +// { +// label: '商检单号', +// field: 'inspectionNo', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// field: 'inspectionDate', +// label: '商检日期', +// component: 'DatePicker', +// required: false, +// dynamicDisabled: false, +// // defaultValue: '', +// colProps: { span: 4 }, +// componentProps: { +// allowClear: true, +// }, +// }, +// { +// label: 'EDI备注', +// field: 'ediRemark', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '单位编码', +// field: 'enterprise', +// component: 'Input', +// show: false, +// }, +// { +// field: 'enterpriseId', +// label: '单位', +// component: 'Select', +// required: false, +// dynamicDisabled: false, +// // defaultValue: '', +// colProps: { span: 4 }, +// componentProps: ({ schema, tableAction, formActionType, formModel }) => { +// return { +// options: ListData.enterprise, +// allowClear: true, +// showSearch: true, +// filterOption: (input: string, option: any) => { +// return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 +// }, +// onChange: (e) => { +// if (e) { +// ListData.enterprise.forEach((item) => { +// if (item.value == e) { +// formModel.enterprise = item.label +// } +// }) +// } else { +// formModel.enterprise = '' +// } +// }, +// } +// }, +// }, +// { +// label: '报关票数', +// field: 'customsNum', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '预录', +// field: 'preRecord', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// field: 'isMoreGood', +// label: '是否多品名', +// component: 'RadioGroup', +// required: false, +// dynamicDisabled: false, +// defaultValue: true, +// colProps: { span: 4 }, +// componentProps: { +// options: [ +// { label: '是', value: true }, +// { label: '否', value: false }, +// ], +// }, +// }, +// // { +// // field: 'termDelivery', +// // label: '贸易方式', +// // component: 'Select', +// // required: false, +// // dynamicDisabled: false, +// // // defaultValue: '', +// // colProps: { span: 4 }, +// // componentProps: { +// // options: ListData.termDelivery, +// // allowClear: true, +// // showSearch: true, +// // filterOption: (input: string, option: any) => { +// // return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 +// // }, +// // }, +// // }, +// { +// field: 'insperctService', +// label: '报检项目', +// component: 'Select', +// required: false, +// dynamicDisabled: false, +// // defaultValue: '', +// colProps: { span: 4 }, +// componentProps: { +// options: ListData.insperctService, +// allowClear: true, +// showSearch: true, +// filterOption: (input: string, option: any) => { +// return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 +// }, +// }, +// }, +// { +// field: 'vessel2N', +// label: '船名', +// component: 'Select', +// required: false, +// dynamicDisabled: false, +// // defaultValue: '', +// colProps: { span: 4 }, +// componentProps: { +// options: ListData.vessel, +// allowClear: true, +// showSearch: true, +// filterOption: (input: string, option: any) => { +// return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 +// }, +// }, +// }, +// { +// label: '二程航次', +// field: 'voyno2N', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '发送方EDI代码', +// field: 'sendCode', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '接收方EDI代码', +// field: 'receiveCode', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: 'EDI联系人名称', +// field: 'ediAttn', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: 'EDI联系人电话', +// field: 'ediAttnTel', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: 'EDI联系人邮箱', +// field: 'ediAttnMail', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: 'AMS收货人', +// field: 'amsConsignee', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: 'AMS通知人', +// field: 'amsNotifyParty', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '操作英文名称', +// field: 'opEName', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '操作电话', +// field: 'opTel', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '操作邮箱', +// field: 'opEmail', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// // { +// // label: '商品名称', +// // field: 'goodsName', +// // component: 'Input', +// // required: false, +// // colProps: { span: 4 }, +// // }, +// { +// field: 'isContainerSoc', +// label: '是否SOC箱', +// component: 'RadioGroup', +// required: false, +// dynamicDisabled: false, +// defaultValue: true, +// colProps: { span: 4 }, +// componentProps: { +// options: [ +// { label: '是', value: true }, +// { label: '否', value: false }, +// ], +// }, +// }, +// { +// label: 'SCAC代码', +// field: 'scaccode', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: 'ITN编号', +// field: 'itncode', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '订舱人说明', +// field: 'orderRemark', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '付款方', +// field: 'freightpayer', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '第一层包装皮重', +// field: 'kingTareweight', +// component: 'InputNumber', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// label: '指定业务员', +// field: 'xmcywy', +// component: 'Input', +// required: false, +// colProps: { span: 4 }, +// }, +// { +// field: 'weiTuoFang', +// label: '委托方', +// component: 'InputTextArea', +// required: false, +// dynamicDisabled: false, +// // defaultValue: '', +// colProps: { span: 24 }, +// componentProps: { +// rows: 3, +// }, +// }, +// // { +// // label: '业务备注', +// // field: 'divider-selects', +// // component: 'Divider', +// // colProps: { span: 24 }, +// // }, +// // { +// // field: 'exRemark1', +// // label: '辅助字段1', +// // component: 'InputTextArea', +// // required: false, +// // dynamicDisabled: false, +// // // defaultValue: '', +// // colProps: { span: 12 }, +// // componentProps: { +// // rows: 3, +// // }, +// // }, +// // { +// // field: 'exRemark2', +// // label: '辅助字段2', +// // component: 'InputTextArea', +// // required: false, +// // dynamicDisabled: false, +// // // defaultValue: '', +// // colProps: { span: 12 }, +// // componentProps: { +// // rows: 3, +// // }, +// // }, +// // { +// // field: 'exRemark3', +// // label: '辅助字段3', +// // component: 'InputTextArea', +// // required: false, +// // dynamicDisabled: false, +// // // defaultValue: '', +// // colProps: { span: 12 }, +// // componentProps: { +// // rows: 3, +// // }, +// // }, +// // { +// // field: 'exRemark4', +// // label: '辅助字段4', +// // component: 'InputTextArea', +// // required: false, +// // dynamicDisabled: false, +// // // defaultValue: '', +// // colProps: { span: 12 }, +// // componentProps: { +// // rows: 3, +// // }, +// // }, +// ] + +// mastetMore表单 +export const mastetMoreFormSchema: FormSchema[] = [ + { + label: '', + field: 'masterShipperContent', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + field: 'masterShipperId', + component: 'SelectTextArea', + colProps: { span: 12 }, + componentProps: ({ formModel }) => { + return { + label: '发货人', + onChange: (e) => { + if (e) { + console.log(e) + + formModel.masterShipperContent = e.res + } + }, + } + }, + }, + { + label: '', + field: 'masterConsigneeContent', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + field: 'masterConsigneeId', + component: 'SelectTextArea', + colProps: { span: 12 }, + componentProps: ({ formModel }) => { + return { + label: '收货人', + onChange: (e) => { + if (e) { + formModel.masterConsigneeContent = e.res + } + }, + } + }, + }, + { + label: '', + field: 'masterNotifyPartyContent', + component: 'Input', + // defaultValue: '', + show: false, + }, + { + field: 'masterNotifyPartyId', + component: 'SelectTextArea', + colProps: { span: 12 }, + componentProps: ({ formModel }) => { + return { + label: '通知人', + onChange: (e) => { + if (e) { + formModel.masterNotifyPartyContent = e.res + } + }, + } + }, + }, +] +// goodsTable 表格 +export const goodsTablecolumns: BasicColumn[] = [ + { + title: '箱型代码', + dataIndex: 'ctnCode', + align: 'left', + ifShow: false, + }, + { + title: '箱型', + dataIndex: 'ctn', + align: 'left', + editRow: true, + editComponent: 'Select', + editComponentProps: { + options: ListData.ctn, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + // editComponentProps: ({ schema, tableAction, formActionType, formModel }) => { + // return { + // options: ListData.ctn, + // allowClear: true, + // showSearch: true, + // filterOption: (input: string, option: any) => { + // return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + // }, + // onChange: (e) => { + // formModel.ctnCode = e.res + // }, + // } + // }, + width: 120, + }, + { + title: '箱量', + dataIndex: 'ctnNum', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '箱号', + dataIndex: 'cntrNo', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '封号', + dataIndex: 'sealNo', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '件数', + dataIndex: 'pkgs', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '包装', + dataIndex: 'kindPkgs', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '毛重', + dataIndex: 'kgs', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '尺码', + dataIndex: 'size', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '皮重', + dataIndex: 'tareWeight', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '称重方式', + dataIndex: 'weightType', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '称重重量', + dataIndex: 'weightKGS', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '称重日期', + dataIndex: 'weightDate', + align: 'left', + editRow: true, + editComponent: 'DatePicker', + editComponentProps: { + allowClear: true, + }, + width: 80, + }, + { + title: 'TEU', + dataIndex: 'teu', + align: 'left', + editRow: true, + editComponent: 'Input', + editRule: true, + width: 80, + }, + { + title: '表现形式', + dataIndex: 'ctnAll', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + + { + title: '毛重', + dataIndex: 'kgs', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '尺码', + dataIndex: 'cbm', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + + { + title: '品名', + dataIndex: 'goodsName', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '箱状态', + dataIndex: 'ctnStatus', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + + { + title: 'VGM联系人', + dataIndex: 'weightATTN', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: 'VGM联系人电话', + dataIndex: 'weightTel', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: 'VGM联系人签名', + dataIndex: 'weightSign', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + + { + title: '主票业务编号', + dataIndex: 'masterNo', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '承运车队', + dataIndex: 'trucker', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '车号', + dataIndex: 'truckNo', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '运费', + dataIndex: 'truckFee', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '免堆存天数', + dataIndex: 'freeStorageDay', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + editRule: true, + width: 80, + }, + { + title: '堆存天数', + dataIndex: 'storageDay', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + editRule: true, + width: 80, + }, + { + title: '堆存费/天', + dataIndex: 'storagePrice', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '堆存费', + dataIndex: 'storageFee', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '免箱使天数', + dataIndex: 'freeCtnDay', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + editRule: true, + width: 80, + }, + { + title: '箱使天数', + dataIndex: 'ctnDay', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + editRule: true, + width: 80, + }, + { + title: '箱使费/天', + dataIndex: 'ctnPrice', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '箱使费', + dataIndex: 'ctnFee', + align: 'left', + editRow: true, + editComponent: 'InputNumber', + width: 80, + }, + { + title: '是否暂出', + dataIndex: 'isTemp', + align: 'left', + editRow: true, + editComponent: 'Select', + editComponentProps: { + // 数据源1:固定数据 + options: [ + { label: '是', value: true }, + { label: '否', value: false }, + ], + }, + width: 80, + }, + { + title: 'VGM地址', + dataIndex: 'vgmAddr', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: 'VGM邮箱', + dataIndex: 'vgmEmail', + align: 'left', + editRow: true, + editComponent: 'Input', + width: 80, + }, + { + title: '提箱时间', + dataIndex: 'pickUpTime', + align: 'left', + editRow: true, + editComponent: 'DatePicker', + editComponentProps: { + allowClear: true, + }, + width: 80, + }, + { + title: '实际到港时间', + dataIndex: 'actualArrivalPortTime', + align: 'left', + editRow: true, + editComponent: 'DatePicker', + editComponentProps: { + allowClear: true, + }, + width: 80, + }, +] + +// BatchModification表单 +export const BatchModificationFormSchema: FormSchema[] = [ + { + label: '场站联系方式', + field: 'YardTel', + component: 'Input', + + show: false, + }, + { + label: '场站联系人', + field: 'YardATTN', + component: 'Input', + + show: false, + }, + { + label: '', + field: 'InnerVoyno', + component: 'Input', + + show: false, + }, + { + label: '', + field: 'AgentContent', + component: 'Input', + + show: false, + }, + { + label: '', + field: 'TemperatureSet', + component: 'Input', + + show: false, + }, + { + label: '', + field: 'yard', + component: 'Input', + + show: false, + }, + { + field: 'yardId', + label: '场站', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + options: ListData.yard, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.yard.forEach((item) => { + if (item.value == e) { + formModel.yard = item.label + } + }) + } else { + formModel.yard = '' + } + }, + } + }, + }, + { + label: '', + field: 'carrier', + component: 'Input', + + show: false, + }, + { + label: '船公司', + field: 'carrierId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + options: ListData.carrier, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.carrier.forEach((item) => { + if (item.value == e) { + formModel.carrier = item.label + } + }) + } else { + formModel.carrier = '' + } + }, + } + }, + }, + { + label: '订舱代理', + field: 'forwarder', + component: 'Input', + + show: false, + }, + { + label: '订舱代理', + field: 'forwarderId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.forwarderId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.forwarderId.forEach((item) => { + if (item.value == e) { + formModel.forwarder = item.label + } + }) + } else { + formModel.forwarder = '' + } + }, + } + }, + }, + { + label: '船司航线', + field: 'Lane', + component: 'Input', + + show: false, + }, + { + label: '船司航线', + field: 'laneId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.laneId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.laneId.forEach((item) => { + if (item.value == e) { + formModel.Lane = item.label + } + }) + } else { + formModel.Lane = '' + } + }, + } + }, + }, + { + field: 'hblno', + label: '分提单号', + component: 'Input', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + }, + { + label: '揽货人', + field: 'saleId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.saleId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + onChange: (e) => { + if (e) { + ListData.saleId.forEach((item) => { + if (item.value == e) { + formModel.sale = item.cnName + } + }) + } else { + formModel.sale = '' + } + }, + } + }, + }, + { + field: 'customser', + label: '报关行', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + options: ListData.customser, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'trucker', + label: '承运车队', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + options: ListData.trucker, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '装货港代码', + field: 'loadPortId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.loadPort = item.portName + } + }) + } else { + formModel.loadPort = '' + } + }, + } + }, + }, + { + label: '装货港', + field: 'loadPort', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '卸货港代码', + field: 'dischargePortId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.dischargePort = item.portName + } + }) + } else { + formModel.dischargePort = '' + } + }, + } + }, + }, + { + label: '卸货港', + field: 'dischargePort', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '船名', + field: 'vessel', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.vessel, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '航次', + field: 'voyno', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.voyno, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'etd', + label: '开船日期', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + }, + }, + { + field: 'agentId', + label: '代理', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + options: ListData.agentId, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'blType', + label: '装运方式', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + options: ListData.blType, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '单证', + field: 'doc', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.doc, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + { + field: 'closingDate', + label: '截港时间', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + showTime: true, + allowClear: true, + }, + }, + { + field: 'contractNo', + label: '运费协议号', + component: 'Input', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + }, + { + field: 'serviceContractNo', + label: '服务合同号', + component: 'Input', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + }, + { + label: '客服员', + field: 'customerService', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.customerService, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + { + field: 'closeDocDate', + label: '截单日期', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + showTime: true, + allowClear: true, + }, + }, + { + label: '业务来源', + field: 'sourceId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formActionType, formModel }) => { + return { + allowClear: true, + options: ListData.sourceId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: async (e) => { + if (e) { + const { updateSchema } = formActionType + const FnsourceDetailId: any = await GetClientSourceDetailSelectList({ + id: e, + }) + if (FnsourceDetailId.succeeded) { + ListData.sourceDetailId = [] + FnsourceDetailId.data.forEach((e) => { + ListData.sourceDetailId.push({ label: e.detailName, value: e.id }) + }) + updateSchema({ + label: '来源明细', + field: 'sourceDetailId', + component: 'Select', + required: false, + dynamicDisabled: ({ values }) => { + return !values.sourceId + }, + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.sourceDetailId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }) + } + } + formModel.sourceDetailId = '' + }, + } + }, + }, + { + label: '船代', + field: 'shipAgencyId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.shipAgencyId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + // { + // label: '外国客服', + // field: 'foreignCustomerService', + // component: 'Input', + // required: false, + // colProps: { span: 4 }, + // }, + { + label: '操作', + field: 'operatorId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.operatorId, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + if (option.userName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.userCode.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + return RData + }, + }, + }, + { + label: '目的地', + field: 'destination', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.destination = item.portName + } + }) + } else { + formModel.destination = '' + } + }, + } + }, + }, + { + label: '目的地代码', + field: 'destinationId', + component: 'Input', + + required: false, + colProps: { span: 4 }, + }, + { + field: 'atd', + label: 'ATD', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + }, + }, + { + label: 'HS编码', + field: 'hsCode', + component: 'Input', + required: false, + + colProps: { span: 3 }, + }, + { + label: '交货地', + field: 'deliveryPlace', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.receiptPlaceId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.receiptPlaceId.forEach((item) => { + if (item.value == e) { + formModel.deliveryPlace = item.portName + } + }) + } else { + formModel.deliveryPlace = '' + } + }, + } + }, + }, + { + label: '交货地代码', + field: 'deliveryPlaceId', + component: 'Input', + required: false, + colProps: { span: 4 }, + }, + { + label: '来源明细', + field: 'sourceDetailId', + component: 'Select', + required: false, + dynamicDisabled: ({ values }) => { + return !values.sourceId + }, + colProps: { span: 4 }, + }, + { + field: 'orderNo', + label: '订舱编号', + component: 'Input', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + }, + { + label: '签单地点', + field: 'issuePlace', + component: 'Input', + + required: false, + colProps: { span: 4 }, + }, + { + field: 'issueDate', + label: '签单日期', + component: 'DatePicker', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + }, + }, + { + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.saleDeptId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + label: '委托单位', + field: 'customerName', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: ListData.customername, + showSearch: true, + filterOption: (input: string, option: any) => { + let RData = false + + if (option.codeName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.shortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } else if (option.enShortName.toLowerCase().indexOf(input.toLowerCase()) >= 0) { + RData = true + } + + return RData + }, + }, + }, + { + field: 'accountDate', + label: '会计期间', + component: 'MonthPicker', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: { + valueFormat: 'YYYY-MM', + }, + }, + { + label: '船司航线', + field: 'Sale', + component: 'Input', + + show: false, + }, + { + label: '所属分部', + field: 'saleOrgId', + component: 'Select', + required: false, + dynamicDisabled: false, + + colProps: { span: 4 }, + componentProps: ({ formModel }) => { + return { + allowClear: true, + options: ListData.saleDeptId, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e) => { + if (e) { + ListData.saleDeptId.forEach((item) => { + if (item.value == e) { + formModel.Sale = item.label + } + }) + } else { + formModel.Sale = '' + } + }, + } + }, + }, + { + field: 'cargoId', + label: '货物标识', + component: 'Select', + required: false, + dynamicDisabled: false, + colProps: { span: 4 }, + componentProps: { + options: ListData.cargoId, + allowClear: true, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + { + field: 'agent', + label: 'AGENT', + component: 'InputTextArea', + required: false, + dynamicDisabled: false, + + colProps: { span: 12 }, + componentProps: { + rows: 3, + }, + }, + { + field: 'Remark', + label: '备注', + component: 'InputTextArea', + required: false, + dynamicDisabled: false, + + colProps: { span: 12 }, + componentProps: { + rows: 3, + }, + }, +] diff --git a/src/views/operation/seaexport/detail/index.vue b/src/views/operation/seaexport/detail/index.vue index d08f8695..1fd2432a 100644 --- a/src/views/operation/seaexport/detail/index.vue +++ b/src/views/operation/seaexport/detail/index.vue @@ -222,6 +222,8 @@ CheckCtnCover, GetCtnListRefsh, GetClientSourceDetailSelectList, + GetSaleList, + GetDeptList, } from '../api/BookingLedger' import { getDictDropDown } from '/@/api/common' const appStore = useAppStore() @@ -249,7 +251,7 @@ cargoInfoFormSchema4, ediMoreFormSchema, mastetMoreFormSchema, - } from '/@/views/operation/seaexport/columns' + } from '/@/views/operation/seaexport/detail/columns' const initDetail = {} const bookingEDIExtData = { weiTuoFang: '', @@ -638,6 +640,89 @@ }, }) } + if (res.data.saleId) { + const FnsaleId: any = await GetSaleList() + FnsaleId.data.forEach(async (item) => { + if (item.id == res.data.saleId) { + let saleDeptIdArr: any = [] + let saleOrgIdArr: any = [] + item.saleOrgList.forEach((item) => { + saleOrgIdArr.push({ label: item.orgName, value: item.orgId }) + }) + if (item.defaultOrgId) { + await GetDeptList({ orgId: item.defaultOrgId }).then((res) => { + console.log(res, '所属分部 查询 所属部门') + res.data.forEach((item) => { + saleDeptIdArr.push({ label: item.orgName, value: item.id }) + }) + }) + } + RefbasicInfo.value.updateSchema([ + { + label: '所属分部', + field: 'saleOrgId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: saleOrgIdArr, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + onChange: (e, obj) => { + // formModel.saleDeptId = '' + GetDeptList({ orgId: e }).then((res) => { + console.log(res, '所属分部 查询 所属部门') + let Arr: any = [] + res.data.forEach((item) => { + Arr.push({ label: item.orgName, value: item.id }) + }) + updateSchema({ + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: Arr, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }) + }) + }, + }, + }, + { + label: '所属部门', + field: 'saleDeptId', + component: 'Select', + required: false, + dynamicDisabled: false, + // defaultValue: '', + colProps: { span: 4 }, + componentProps: { + allowClear: true, + options: saleDeptIdArr, + showSearch: true, + filterOption: (input: string, option: any) => { + return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0 + }, + }, + }, + ]) + } + }) + } }) .catch(() => { appStore.settopDown(false) diff --git a/src/views/operation/seaexport/detail/modules/basicInfo.vue b/src/views/operation/seaexport/detail/modules/basicInfo.vue index 6dd4f0f6..e35dae38 100644 --- a/src/views/operation/seaexport/detail/modules/basicInfo.vue +++ b/src/views/operation/seaexport/detail/modules/basicInfo.vue @@ -550,7 +550,7 @@ } from '/@/views/operation/seaexport/api/BookingLedger' import { BasicForm, useForm } from '/@/components/Form/index' - import { basicInfoFormSchema } from '/@/views/operation/seaexport/columns' + import { basicInfoFormSchema } from '/@/views/operation/seaexport/detail/columns' import { ref, reactive, getCurrentInstance, h, watch, onMounted } from 'vue' import { useAppStore } from '/@/store/modules/app' diff --git a/src/views/operation/seaexport/detail/modules/cargoInfo.vue b/src/views/operation/seaexport/detail/modules/cargoInfo.vue index c523484b..00de7312 100644 --- a/src/views/operation/seaexport/detail/modules/cargoInfo.vue +++ b/src/views/operation/seaexport/detail/modules/cargoInfo.vue @@ -604,7 +604,7 @@ cargoInfoFormSchema2, // cargoInfoFormSchema3, cargoInfoFormSchema4, - } from '/@/views/operation/seaexport/columns' + } from '/@/views/operation/seaexport/detail/columns' import { ref, getCurrentInstance, watch, onMounted } from 'vue' import inputView from '../components/inputView.vue' import textareaView from '../components/textareaView.vue' @@ -653,7 +653,7 @@ labelWidth: 80, schemas: cargoInfoFormSchema1, showActionButtonGroup: false, - size: 'small' + size: 'small', }) const [ registerForm2, @@ -668,7 +668,7 @@ schemas: cargoInfoFormSchema2, showActionButtonGroup: false, submitFunc: submit, - size: 'small' + size: 'small', }) // const [ // registerForm3, diff --git a/src/views/operation/seaexport/detail/modules/ediMore.vue b/src/views/operation/seaexport/detail/modules/ediMore.vue index 1b85de34..3cfc7e13 100644 --- a/src/views/operation/seaexport/detail/modules/ediMore.vue +++ b/src/views/operation/seaexport/detail/modules/ediMore.vue @@ -5,7 +5,7 @@