From 3e7639ad7426ca52e17715b1fce7bf4465920d68 Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Wed, 16 Jul 2025 08:34:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E6=8C=87=E4=BB=A4=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Form/src/jeecg/components/JCheckbox.vue | 3 +- .../src/jeecg/components/JDictSelectTag.vue | 6 +- .../instructiontag/InstructionTag.vue | 31 ++++- .../ConfigServiceCategoryList.vue | 31 ++++- .../ConfigServiceDirective.data.ts | 6 + .../ConfigServiceDirectiveList.vue | 2 +- .../components/ConfigServiceDirectiveForm.vue | 107 ++++++++++++------ .../serviceType/ConfigServiceTypeList.vue | 32 +++++- 8 files changed, 164 insertions(+), 54 deletions(-) diff --git a/src/components/Form/src/jeecg/components/JCheckbox.vue b/src/components/Form/src/jeecg/components/JCheckbox.vue index 6b25089..408052b 100644 --- a/src/components/Form/src/jeecg/components/JCheckbox.vue +++ b/src/components/Form/src/jeecg/components/JCheckbox.vue @@ -24,7 +24,7 @@ export default defineComponent({ default: () => [], }, }, - emits: ['change', 'update:value'], + emits: ['change', 'update:value', 'upDictCode'], setup(props, { emit }) { const attrs = useAttrs(); //checkbox选项 @@ -86,6 +86,7 @@ export default defineComponent({ if (res) { checkOptions.value = res.map((item) => ({ value: item.value, label: item.text, disabled: item.status == 1 && !checkboxArray.value.includes(item.value), color: item.color })); //console.info('res', dictOptions.value); + emit('upDictCode', checkOptions.value) } else { console.error('getDictItems error: : ', res); checkOptions.value = []; diff --git a/src/components/Form/src/jeecg/components/JDictSelectTag.vue b/src/components/Form/src/jeecg/components/JDictSelectTag.vue index 88f12aa..e470cd3 100644 --- a/src/components/Form/src/jeecg/components/JDictSelectTag.vue +++ b/src/components/Form/src/jeecg/components/JDictSelectTag.vue @@ -34,7 +34,8 @@ - {{ item.label }}{{ ignoreDisabled && item.disabled ? '(已停用)' : '' }} + {{ item.label }}{{ ignoreDisabled && item.disabled ? '(已停用)' : '' + }} @@ -77,7 +78,7 @@ export default defineComponent({ style: propTypes.any, ignoreDisabled: propTypes.bool.def(false), }, - emits: ['options-change', 'change', 'update:value'], + emits: ['options-change', 'change', 'update:value', 'upDictCode'], setup(props, { emit, refs }) { const dictOptions = ref([]); const attrs = useAttrs(); @@ -140,6 +141,7 @@ export default defineComponent({ } return prev; }, []); + emit('upDictCode', dictOptions.value) } function handleChange(e) { diff --git a/src/views/services/instructiontag/InstructionTag.vue b/src/views/services/instructiontag/InstructionTag.vue index bbe2a0f..8fd5cfb 100644 --- a/src/views/services/instructiontag/InstructionTag.vue +++ b/src/views/services/instructiontag/InstructionTag.vue @@ -74,13 +74,15 @@ import { ref, reactive } from 'vue'; import { BasicTable, useTable, TableAction } from '/@/components/Table'; import { useListPage } from '/@/hooks/system/useListPage'; import { columns, superQuerySchema } from './InstructionTag.data'; -import { list, deleteOne, batchDelete, getImportUrl, getExportUrl } from './InstructionTag.api'; +import { list, deleteOne, batchDelete, getImportUrl, getExportUrl, saveOrUpdate } from './InstructionTag.api'; import { downloadFile } from '/@/utils/common/renderUtils'; import InstructionTagModal from './components/InstructionTagModal.vue' import { useUserStore } from '/@/store/modules/user'; import JInput from "/@/components/Form/src/jeecg/components/JInput.vue"; import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue'; +import { useMessage } from '/@/hooks/web/useMessage'; +const { createMessage } = useMessage(); const formRef = ref(); const queryParam = reactive({}); const toggleSearchStatus = ref(false); @@ -186,19 +188,38 @@ function handleSuccess() { (selectedRowKeys.value = []) && reload(); } +//启用停用 +function handleIzEnabled(record, izEnabled_) { + record.izEnabled = izEnabled_ + saveOrUpdate(record, true).then((res) => { + if (res.success) { + createMessage.success(res.message); + reload(); + } else { + createMessage.warning(res.message); + } + }) +} + /** * 操作栏 */ function getTableAction(record) { return [ - { - label: '编辑', - onClick: handleEdit.bind(null, record) - }, { label: '详情', onClick: handleDetail.bind(null, record), }, + { + label: '启用', + onClick: handleIzEnabled.bind(null, record, '0'), + ifShow: record.izEnabled == 1 + }, + { + label: '停用', + onClick: handleIzEnabled.bind(null, record, '1'), + ifShow: record.izEnabled == 0 + }, ]; } diff --git a/src/views/services/serviceCategory/ConfigServiceCategoryList.vue b/src/views/services/serviceCategory/ConfigServiceCategoryList.vue index fe559ae..e0c4140 100644 --- a/src/views/services/serviceCategory/ConfigServiceCategoryList.vue +++ b/src/views/services/serviceCategory/ConfigServiceCategoryList.vue @@ -82,13 +82,15 @@ import { ref, reactive } from 'vue'; import { BasicTable, useTable, TableAction } from '/@/components/Table'; import { useListPage } from '/@/hooks/system/useListPage'; import { columns, superQuerySchema } from './ConfigServiceCategory.data'; -import { list, deleteOne, batchDelete, getImportUrl, getExportUrl } from './ConfigServiceCategory.api'; +import { list, deleteOne, batchDelete, getImportUrl, getExportUrl, saveOrUpdate } from './ConfigServiceCategory.api'; import { downloadFile } from '/@/utils/common/renderUtils'; import ConfigServiceCategoryModal from './components/ConfigServiceCategoryModal.vue' import { useUserStore } from '/@/store/modules/user'; import JInput from "/@/components/Form/src/jeecg/components/JInput.vue"; import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue'; +import { useMessage } from '/@/hooks/web/useMessage'; +const { createMessage } = useMessage(); const formRef = ref(); const queryParam = reactive({}); const toggleSearchStatus = ref(false); @@ -194,19 +196,38 @@ function handleSuccess() { (selectedRowKeys.value = []) && reload(); } +//启用停用 +function handleIzEnabled(record, izEnabled_) { + record.izEnabled = izEnabled_ + saveOrUpdate(record, true).then((res) => { + if (res.success) { + createMessage.success(res.message); + reload(); + } else { + createMessage.warning(res.message); + } + }) +} + /** * 操作栏 */ function getTableAction(record) { return [ - { - label: '编辑', - onClick: handleEdit.bind(null, record) - }, { label: '详情', onClick: handleDetail.bind(null, record), }, + { + label: '启用', + onClick: handleIzEnabled.bind(null, record, '0'), + ifShow: record.izEnabled == 1 + }, + { + label: '停用', + onClick: handleIzEnabled.bind(null, record, '1'), + ifShow: record.izEnabled == 0 + }, ]; } diff --git a/src/views/services/serviceDirective/ConfigServiceDirective.data.ts b/src/views/services/serviceDirective/ConfigServiceDirective.data.ts index 61ae651..b6e13a2 100644 --- a/src/views/services/serviceDirective/ConfigServiceDirective.data.ts +++ b/src/views/services/serviceDirective/ConfigServiceDirective.data.ts @@ -100,6 +100,12 @@ export const columns: BasicColumn[] = [ dataIndex: 'serviceDuration', width: 135, }, + { + title: '指令状态', + align: 'center', + dataIndex: 'status_dictText', + width: 100, + }, { title: '是否启用', align: 'center', diff --git a/src/views/services/serviceDirective/ConfigServiceDirectiveList.vue b/src/views/services/serviceDirective/ConfigServiceDirectiveList.vue index 2685325..f7d8d12 100644 --- a/src/views/services/serviceDirective/ConfigServiceDirectiveList.vue +++ b/src/views/services/serviceDirective/ConfigServiceDirectiveList.vue @@ -56,7 +56,7 @@ - diff --git a/src/views/services/serviceDirective/components/ConfigServiceDirectiveForm.vue b/src/views/services/serviceDirective/components/ConfigServiceDirectiveForm.vue index 2f06b36..2898f5d 100644 --- a/src/views/services/serviceDirective/components/ConfigServiceDirectiveForm.vue +++ b/src/views/services/serviceDirective/components/ConfigServiceDirectiveForm.vue @@ -10,28 +10,31 @@ id="ConfigServiceDirectiveForm-instructionTagId" name="instructionTagId"> + placeholder="请选择分类标签" allowClear @upDictCode="upInstructionDictCode" + :disabled="!!formData.id && formData.status == 0" /> + :disabled="!formData.instructionTagId || (!!formData.id && formData.status == 0)" + :dictCode="categoryDictCode" placeholder="请选择服务类别" allow-clear @upDictCode="upCategoryDictCode" /> + :disabled="!formData.categoryId || (!!formData.id && formData.status == 0)" placeholder="请选择服务类型" + allowClear @upDictCode="upTypeDictCode" /> - + @@ -66,7 +69,8 @@ + placeholder="请选择周期类型" allowClear @upDictCode="upCycleTypeDictCode" + :disabled="!!formData.id && formData.status == 0" /> @@ -82,30 +86,31 @@ + :dictCode="`nu_config_body_tag,tag_name,id,del_flag = 0 order by sort asc`" + @upDictCode="upBodyTagsDictCode" /> + :dictCode="`nu_config_emotion_tag,tag_name,id,del_flag = 0 order by sort asc`" + @upDictCode="upEmotionTagsDictCode" /> - 未授权 - - + 无文件 + :bizPath="formComputedData.mediaFileSavePath"> @@ -122,14 +127,14 @@ 无文件 + :bizPath="formComputedData.mediaFileSavePath"> 无文件 + :bizPath="formComputedData.mediaFileSavePath"> @@ -138,7 +143,7 @@ - +