diff --git a/src/components/Basic/src/BasicTitle.vue b/src/components/Basic/src/BasicTitle.vue index c943ea9d..a91877db 100644 --- a/src/components/Basic/src/BasicTitle.vue +++ b/src/components/Basic/src/BasicTitle.vue @@ -50,7 +50,8 @@ .@{prefix-cls} { position: relative; display: flex; - font-size: 16px; + font-size: 12px; + padding-left: 10px; font-family: 'PingFang SC'; font-weight: 600; line-height: 24px; diff --git a/src/design/ant/form.less b/src/design/ant/form.less index 7f07e02d..e5c9160d 100644 --- a/src/design/ant/form.less +++ b/src/design/ant/form.less @@ -8,4 +8,73 @@ width: 100%; } } +} + +// 自定义最小输入框 +.ant-form-small { + .ant-input-affix-wrapper-sm, + .ant-select-selector, + .ant-input-disabled, + .ant-input-number { + height: 26px !important; + .ant-select-selection-item { + line-height: 26px !important; + } + } + .ant-select-selection-search-input, .ant-input-affix-wrapper, .ant-input-number-input { + height: 26px!important; + } + .ant-picker-small { + height: 26px; + width: 100%; + } + .ant-form-item { + margin-bottom: 2px!important; + } + .ant-input-number-input-wrap { + height: 26px; + line-height: 24px; + } + .ant-form-item-label { + height: 22px; + } + .ant-select-selection-item, + .ant-select-selection-placeholder, + .ant-input-affix-wrapper-placeholder { + line-height: 26px !important; + font-size: 12px; + } + .ant-picker, .ant-input { + height: 26px!important; + width: 100%; + font-size: 12px!important; + } + .ant-btn { + height: 26px; + } +} + +// 表单详情样式 +.ds-form-detail { + .ant-form-item { + margin-bottom: 10px; + } + .ant-form-item-control-input-content { + white-space: nowrap; + width: 100%; + text-overflow: ellipsis; + overflow: hidden; + font-size: 12px; + } + .ant-form-item-control-input { + min-height: 28px; + } + .ant-form-item-label { + padding: 0 !important; + label { + font-family: PingFang SC-Semibold, PingFang SC; + font-size: 12px; + color: #7A8798; + } + } } \ No newline at end of file diff --git a/src/design/ant/modal.less b/src/design/ant/modal.less index 2981f5e6..43cdc0b7 100644 --- a/src/design/ant/modal.less +++ b/src/design/ant/modal.less @@ -1,6 +1,6 @@ // 小弹窗 .ant-modal-header { - border-bottom: none; + border-bottom: none!important; padding: 16px 16px 0px 16px; .ant-modal-title { font-size: 12px; @@ -11,6 +11,7 @@ } .ant-modal-body { padding: 15px 30px; + margin-top: 5px; .ant-form { background-color: #F5F9FC; border-radius: 2px; @@ -39,4 +40,35 @@ top: -1px; } } +} +.ant-modal-confirm-btns { + .ant-btn { + height: 26px; + width: 100px; + padding: 0; + line-height: 27px; + span { + position: relative; + top: -1px; + } + } +} +.anticon-exclamation-circle { + svg { + display: none; + } +} +.ant-modal-confirm-title, .ant-modal-confirm-content { + font-size: 14px!important; +} +.ant-modal-confirm-title { + font-weight: 600!important; +} +.ant-modal-confirm-content { + margin-left: 0!important; +} + +.ant-modal-close-x { + text-align: right !important; + padding-right: 15px; } \ No newline at end of file diff --git a/src/design/public.less b/src/design/public.less index b6d9a72b..952a864e 100644 --- a/src/design/public.less +++ b/src/design/public.less @@ -50,61 +50,6 @@ } } -.ant-modal { - // top: 30px!important; -} - -// 自定义最小输入框 -.ant-form-small { - .ant-input-affix-wrapper-sm, - .ant-select-selector, - .ant-input-disabled, - .ant-input-number { - height: 26px !important; - .ant-select-selection-item { - line-height: 26px !important; - } - } - .ant-input-disabled { - // height: 16px !important; - } - // .ant-select-selection-search-input { - // height: 26px !important; - // font-size: 12px!important; - // } - .ant-select-selection-search-input, .ant-input-affix-wrapper, .ant-input-number-input { - height: 26px!important; - } - .ant-picker-small { - height: 26px; - width: 100%; - } - .ant-form-item { - margin-bottom: 2px!important; - } - .ant-input-number-input-wrap { - height: 26px; - line-height: 24px; - } - .ant-form-item-label { - height: 22px; - } - .ant-select-selection-item, - .ant-select-selection-placeholder, - .ant-input-affix-wrapper-placeholder { - line-height: 26px !important; - font-size: 12px; - } - .ant-picker { - height: 26px!important; - width: 100%; - font-size: 12px!important; - } - .ant-btn { - height: 26px; - } -} - .ant-col-5 { max-width: 20% !important; flex: 0; @@ -114,23 +59,12 @@ border-color: rgba(0, 0, 0, 0.16); } -.ant-modal-close-x { - text-align: right !important; - padding-right: 15px; -} - .ant-tabs-card { .ant-tabs-tab { padding: 5px 15px !important; } } // 定义所有表单组件高度为26 -// .ant-select-selector, -// .ant-input-number-input-wrap { -// height: 26px !important; -// min-height: 26px!important; -// font-size: 12px!important; -// } input::placeholder { font-size: 12px!important; } @@ -191,31 +125,6 @@ h5 { .ml10 { margin-left: 10px; } -// 表单详情样式 -.ds-form-detail { - .ant-form-item { - margin-bottom: 10px; - } - .ant-form-item-control-input-content { - white-space: nowrap; - width: 100%; - text-overflow: ellipsis; - overflow: hidden; - font-size: 12px; - } - .ant-form-item-control-input { - min-height: 28px; - } - .ant-form-item-label { - padding: 0 !important; - label { - font-family: PingFang SC-Semibold, PingFang SC; - font-size: 12px; - color: #7A8798; - } - } -} - .ds-tb-check { position: absolute; diff --git a/src/directives/repeatClick.ts b/src/directives/repeatClick.ts index e191a0f7..f2e2f891 100644 --- a/src/directives/repeatClick.ts +++ b/src/directives/repeatClick.ts @@ -7,24 +7,18 @@ import type { App, Directive, DirectiveBinding } from 'vue' const repeatDirective: Directive = { beforeMount(el: Element, binding: DirectiveBinding) { - let interval: Nullable = null - let startTime = 0 - console.log(binding) - const handler = (): void => binding?.value() - const clear = (): void => { - if (Date.now() - startTime < 100) { - handler() + on(el, 'click', (e: MouseEvent): void => { + if (!el.disabled) { + el.disabled = true + el.style.cursor = 'not-allowed' + el.style.color = 'rgba(0, 0, 0, 0.25)' + const timer = setTimeout(() => { + el.disabled = false + el.style.color = '#257AFA' + el.style.cursor = 'pointer' + clearInterval(timer) + }, binding.value || 1500) } - interval && clearInterval(interval) - interval = null - } - - on(el, 'mousedown', (e: MouseEvent): void => { - if ((e as any).button !== 0) return - startTime = Date.now() - once(document as any, 'mouseup', clear) - interval && clearInterval(interval) - interval = setInterval(handler, 1000) }) }, } diff --git a/src/views/operation/seaexport/detail/index.vue b/src/views/operation/seaexport/detail/index.vue index 273f77d2..3ef6f421 100644 --- a/src/views/operation/seaexport/detail/index.vue +++ b/src/views/operation/seaexport/detail/index.vue @@ -127,7 +127,7 @@ diff --git a/src/views/operation/seaexport/detail/modules/Letter/OpBusinessYardEdit.vue b/src/views/operation/seaexport/detail/modules/Letter/OpBusinessYardEdit.vue index cf1cfd4d..af4f2ba7 100644 --- a/src/views/operation/seaexport/detail/modules/Letter/OpBusinessYardEdit.vue +++ b/src/views/operation/seaexport/detail/modules/Letter/OpBusinessYardEdit.vue @@ -1,7 +1,10 @@ - - diff --git a/src/views/system/print/api.ts b/src/views/system/print/api.ts index febd71cf..2e5bdf4f 100644 --- a/src/views/system/print/api.ts +++ b/src/views/system/print/api.ts @@ -17,10 +17,11 @@ enum Api { GetTenantParamDataSelectList = '/mainApi/ClientParam/GetTenantParamDataSelectList' } // 列表 (Auth) -export function GetSysPrintTemplateList() { +export function GetSysPrintTemplateList(data) { return request({ url: Api.list, - method: 'get' + method: 'post', + data }) } // 模块列表 diff --git a/src/views/system/print/index.vue b/src/views/system/print/index.vue index 5fbfc65f..62e1c2b5 100644 --- a/src/views/system/print/index.vue +++ b/src/views/system/print/index.vue @@ -11,8 +11,8 @@
-
- {{ item.templateCount }}{{ item.moduleName }} +
+ {{ item.templateCount }}{{ item.moduleName }}
@@ -78,10 +78,22 @@ const [registerModal, { openModal: openModal1 }] = useModal() // 模版弹窗 const [registerTemModal, { openModal: openModal2 }] = useModal() + const mloading = ref(false) + // 初始化模块数据 + const initModel = () => { + mloading.value = true + GetPrintModuleList().then(res => { + modelList.value = res.data + mloading.value = false + }).catch(() => { + mloading.value = false + }) + } + initModel() // 模块列表 const modelList = ref([]) - const mloading = ref(false) const [registerTable, { reload, getForm, getPaginationRef }] = useTable({ + title: "打印模版列表", api: async (p) => { const res: API.DataResult = await GetSysPrintTemplateList(p) return new Promise((resolve) => { @@ -90,9 +102,13 @@ }, beforeFetch: (p) => { if (modalId) { - p['id'] = modalId + const condition = { + FieldName: 'modalId', + FieldValue: modalId, + ConditionalType: 1 + } + p['queryCondition'] = JSON.stringify(condition) } - initModel() return formatParams(p) }, columns, @@ -115,16 +131,6 @@ fixed: 'right', }, }) - // 初始化模块数据 - const initModel = () => { - mloading.value = true - GetPrintModuleList().then(res => { - modelList.value = res.data - mloading.value = false - }).catch(() => { - mloading.value = false - }) - } // 添加模块 function handleCreate() { openModal1(true, { @@ -180,6 +186,9 @@ .opt { padding: 10px; } + .vben-basic-table-title { + justify-content: space-between; + } .list-box { border: 1px solid #E8EBED; border-radius: 2px;