|
@@ -36,8 +36,8 @@
|
|
|
</el-col>
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
|
|
|
<el-form-item label="审批部门" prop="approveOrgId" :rules="[{ required: false, message: '请选择审批部门', trigger: 'change' }]">
|
|
|
- <el-select v-model="state.ruleForm.approveOrgId" placeholder="请选择审批部门" class="w100">
|
|
|
- <el-option v-for="item in state.genderOptions" :key="item.key" :label="item.value" :value="item.key" />
|
|
|
+ <el-select v-model="state.ruleForm.approveOrgId" placeholder="请选择审批部门" class="w100" clearable @change="selectDepartment" filterable>
|
|
|
+ <el-option v-for="item in department" :key="item.dicDataValue" :label="item.dicDataName" :value="item.dicDataValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -47,8 +47,8 @@
|
|
|
prop="bulletinTypePublicityId"
|
|
|
:rules="[{ required: false, message: '请选择关联宣传学习', trigger: 'change' }]"
|
|
|
>
|
|
|
- <el-select v-model="state.ruleForm.bulletinTypePublicityId" placeholder="请选择关联宣传学习" class="w100">
|
|
|
- <el-option v-for="item in state.genderOptions" :key="item.key" :label="item.value" :value="item.key" />
|
|
|
+ <el-select v-model="state.ruleForm.bulletinTypePublicityId" placeholder="请选择关联宣传学习" class="w100" clearable @change="selectxc" filterable>
|
|
|
+ <el-option v-for="item in bulletinType" :key="item.dicDataValue" :label="item.dicDataName" :value="item.dicDataValue"/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -58,15 +58,15 @@
|
|
|
prop="bulletinTypeGuideId"
|
|
|
:rules="[{ required: false, message: '请选择关联操作指引', trigger: 'change' }]"
|
|
|
>
|
|
|
- <el-select v-model="state.ruleForm.bulletinTypeGuideId" placeholder="请选择关联操作指引" class="w100">
|
|
|
- <el-option v-for="item in state.genderOptions" :key="item.key" :label="item.value" :value="item.key" />
|
|
|
+ <el-select v-model="state.ruleForm.bulletinTypeGuideId" placeholder="请选择关联操作指引" class="w100" clearable @change="selectzy" filterable>
|
|
|
+ <el-option v-for="item in bulletinType" :key="item.dicDataValue" :label="item.dicDataName" :value="item.dicDataValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
|
|
|
<el-form-item label="关联受理类型" prop="acceptTypeCode" :rules="[{ required: false, message: '请选择关联受理类型', trigger: 'change' }]">
|
|
|
- <el-select v-model="state.ruleForm.acceptTypeCode" placeholder="请选择关联受理类型" class="w100">
|
|
|
- <el-option v-for="item in state.genderOptions" :key="item.key" :label="item.value" :value="item.key" />
|
|
|
+ <el-select v-model="state.ruleForm.acceptTypeCode" placeholder="请选择关联受理类型" class="w100" clearable @change="selectAcceptType" filterable>
|
|
|
+ <el-option v-for="item in acceptType" :key="item.dicDataValue" :label="item.dicDataName" :value="item.dicDataValue" />
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -81,8 +81,8 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
|
|
|
- <el-form-item label="小程序状态" prop="isAffix">
|
|
|
- <el-switch v-model="state.ruleForm.isAffix" inline-prompt active-text="启用" inactive-text="禁用" />
|
|
|
+ <el-form-item label="小程序状态" prop="IsAppEnable">
|
|
|
+ <el-switch v-model="state.ruleForm.IsAppEnable" inline-prompt active-text="启用" inactive-text="禁用" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :xs="24" :sm="12" :md="12" :lg="12" :xl="12">
|
|
@@ -147,7 +147,7 @@
|
|
|
:on-error="onUploadError"
|
|
|
>
|
|
|
<img v-if="bgUrl" :src="bgUrl" class="avatar" alt="" />
|
|
|
- <SvgIcon v-else class="avatar-uploader-icon" name="ele-Plus" size="28px"/>
|
|
|
+ <SvgIcon v-else class="avatar-uploader-icon" name="ele-Plus" size="28px" />
|
|
|
</el-upload>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -217,10 +217,10 @@
|
|
|
</template>
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
-import { computed, defineAsyncComponent, reactive, ref } from 'vue';
|
|
|
+import { computed, defineAsyncComponent, onMounted, reactive, ref } from 'vue';
|
|
|
import { ElMessage, FormInstance, UploadFile, UploadFiles } from 'element-plus';
|
|
|
import { throttle } from '@/utils/tools';
|
|
|
-import { addIndustry } from '@/api/snapshot/config';
|
|
|
+import { addIndustry, baseIndustry } from '@/api/snapshot/config';
|
|
|
|
|
|
const AnnexList = defineAsyncComponent(() => import('@/components/AnnexList/index.vue')); // 附件列表
|
|
|
|
|
@@ -245,6 +245,7 @@ const state = reactive<any>({
|
|
|
acceptType: null, // 关联受理类型名称
|
|
|
titleSuffix: null, // 标题追加信息
|
|
|
isEnable: true, // 系统状态
|
|
|
+ IsAppEnable:true, // 小程序状态
|
|
|
displayOrder: 1, // 排序
|
|
|
pageUrl: null, // 页面Url
|
|
|
pageCareUrl: null, //Care页面Url
|
|
@@ -283,6 +284,42 @@ const openDialog = async () => {
|
|
|
console.log(error);
|
|
|
}
|
|
|
};
|
|
|
+// 审批部门
|
|
|
+const selectDepartment = (val: any)=>{
|
|
|
+ if(val){
|
|
|
+ const item = department.value.find((item:any)=>item.dicDataValue === val);
|
|
|
+ state.ruleForm.approveOrgName = item?.dicDataName;
|
|
|
+ }else{
|
|
|
+ state.ruleForm.approveOrgName = null;
|
|
|
+ }
|
|
|
+}
|
|
|
+// 关联宣传学习
|
|
|
+const selectxc = (val:any)=>{
|
|
|
+ if(val){
|
|
|
+ const item = bulletinType.value.find((item:any)=>item.dicDataValue === val);
|
|
|
+ state.ruleForm.bulletinTypePublicityName = item?.dicDataName;
|
|
|
+ }else{
|
|
|
+ state.ruleForm.bulletinTypePublicityName = null;
|
|
|
+ }
|
|
|
+}
|
|
|
+// 关联操作指引
|
|
|
+const selectzy = (val:any)=>{
|
|
|
+ if(val){
|
|
|
+ const item = bulletinType.value.find((item:any)=>item.dicDataValue === val);
|
|
|
+ state.ruleForm.bulletinTypeGuideName = item?.dicDataName;
|
|
|
+ }else{
|
|
|
+ state.ruleForm.bulletinTypeGuideName = null;
|
|
|
+ }
|
|
|
+}
|
|
|
+// 受理类型
|
|
|
+const selectAcceptType = (val:any)=>{
|
|
|
+ if(val){
|
|
|
+ const item = acceptType.value.find((item:any)=>item.dicDataValue === val);
|
|
|
+ state.ruleForm.acceptType = item?.dicDataName;
|
|
|
+ }else{
|
|
|
+ state.ruleForm.acceptType = null;
|
|
|
+ }
|
|
|
+}
|
|
|
// 上传地址
|
|
|
const action = computed(() => {
|
|
|
return import.meta.env.VITE_API_UPLOAD_URL + '/file/upload?source=hotline';
|
|
@@ -293,7 +330,7 @@ const uploadListRefBg = ref<RefType>(); // 上传组件ref
|
|
|
const updateSuccessBg = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => {
|
|
|
if (response.result.path) {
|
|
|
// bgUrl.value = import.meta.env.VITE_API_UPLOAD_URL + response.result.path;
|
|
|
- bgUrl.value = URL.createObjectURL(uploadFile.raw!)
|
|
|
+ bgUrl.value = URL.createObjectURL(uploadFile.raw!);
|
|
|
state.ruleForm.backgroundImgUrl = response.result.id;
|
|
|
} else {
|
|
|
uploadListRefBg.value.handleRemove(uploadFile);
|
|
@@ -306,7 +343,7 @@ const uploadListRefBanner = ref<RefType>();
|
|
|
const updateSuccessBanner = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => {
|
|
|
if (response.result.path) {
|
|
|
// bannerUrl.value = import.meta.env.VITE_API_UPLOAD_URL + response.result.path;
|
|
|
- bannerUrl.value = URL.createObjectURL(uploadFile.raw!)
|
|
|
+ bannerUrl.value = URL.createObjectURL(uploadFile.raw!);
|
|
|
state.ruleForm.bannerImgUrl = response.result.id;
|
|
|
} else {
|
|
|
uploadListRefBanner.value.handleRemove(uploadFile);
|
|
@@ -319,7 +356,7 @@ const uploadListRefCell = ref<RefType>();
|
|
|
const updateSuccessCell = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => {
|
|
|
if (response.result.path) {
|
|
|
// cellImgUrl.value = import.meta.env.VITE_API_UPLOAD_URL + response.result.path;
|
|
|
- cellImgUrl.value = URL.createObjectURL(uploadFile.raw!)
|
|
|
+ cellImgUrl.value = URL.createObjectURL(uploadFile.raw!);
|
|
|
state.ruleForm.cellImgUrl = response.result.id;
|
|
|
} else {
|
|
|
uploadListRefCell.value.handleRemove(uploadFile);
|
|
@@ -332,7 +369,7 @@ const uploadListRefCareCell = ref<RefType>();
|
|
|
const updateSuccessCareCell = (response: any, uploadFile: UploadFile, uploadFiles: UploadFiles) => {
|
|
|
if (response.result.path) {
|
|
|
// careCellImgUrl.value = import.meta.env.VITE_API_UPLOAD_URL + response.result.path;
|
|
|
- careCellImgUrl.value = URL.createObjectURL(uploadFile.raw!)
|
|
|
+ careCellImgUrl.value = URL.createObjectURL(uploadFile.raw!);
|
|
|
state.ruleForm.careCellImgUrl = response.result.id;
|
|
|
} else {
|
|
|
uploadListRefCareCell.value.handleRemove(uploadFile);
|
|
@@ -363,6 +400,7 @@ const close = () => {
|
|
|
bannerUrl.value = '';
|
|
|
cellImgUrl.value = '';
|
|
|
careCellImgUrl.value = '';
|
|
|
+ state.ruleForm.files = [];
|
|
|
};
|
|
|
|
|
|
const filesFormat = ref<EmptyArrayType>([]); // 附件列表格式化
|
|
@@ -391,6 +429,23 @@ const onSubmit = throttle(async (formEl: FormInstance | undefined) => {
|
|
|
});
|
|
|
});
|
|
|
}, 300);
|
|
|
+// 获取基础数据
|
|
|
+const acceptType = ref<EmptyArrayType>([]); // 受理类型
|
|
|
+const bulletinType = ref<EmptyArrayType>([]); // 公告类型
|
|
|
+const department = ref<EmptyArrayType>([]); // 审批部门
|
|
|
+const getBaseData = async () => {
|
|
|
+ try {
|
|
|
+ const { result } = await baseIndustry();
|
|
|
+ acceptType.value = result.acceptType;
|
|
|
+ bulletinType.value = result.bulletinType;
|
|
|
+ department.value = result.department;
|
|
|
+ } catch (e) {
|
|
|
+ console.log(e);
|
|
|
+ }
|
|
|
+};
|
|
|
+onMounted(() => {
|
|
|
+ getBaseData();
|
|
|
+});
|
|
|
// 暴露变量
|
|
|
defineExpose({
|
|
|
openDialog,
|