diff --git a/src/components/semri/process/FlowScheduleStartModalForBG.vue b/src/components/semri/process/FlowScheduleStartModalForBG.vue index ce4f9a3..09bae3e 100644 --- a/src/components/semri/process/FlowScheduleStartModalForBG.vue +++ b/src/components/semri/process/FlowScheduleStartModalForBG.vue @@ -50,7 +50,7 @@ - + + + {{ user.realname }} + + + + + diff --git a/src/views/bg/xispeak/components/DeptRoleSelectUser.vue b/src/components/semri/userComponent/DeptRoleUserSelectRadioGroup.vue similarity index 100% rename from src/views/bg/xispeak/components/DeptRoleSelectUser.vue rename to src/components/semri/userComponent/DeptRoleUserSelectRadioGroup.vue diff --git a/src/views/bg/bgpartymatter/components/BgPartymatterForm.vue b/src/views/bg/bgpartymatter/components/BgPartymatterForm.vue index 7a8f8d6..5913a9b 100644 --- a/src/views/bg/bgpartymatter/components/BgPartymatterForm.vue +++ b/src/views/bg/bgpartymatter/components/BgPartymatterForm.vue @@ -97,7 +97,7 @@ - - - + @@ -279,6 +279,7 @@ import { useUserStore } from '/@/store/modules/user'; import JSelectDept from '/@/components/Form/src/jeecg/components/JSelectDept.vue'; import JSelectUser from '/@/components/Form/src/jeecg/components/JSelectUser.vue'; +import SzDeptUserModal from '/@/components/semri/deptUserComponent/SzDeptUserModal.vue'; import JTreeSelect from '/@/components/Form/src/jeecg/components/JTreeSelect.vue'; import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue'; import Icon from '/@/components/Icon/index'; @@ -293,7 +294,7 @@ import TaskHandleInnerContent from '/@/views/super/bpm/process/personalOffice/myHandleTask/content/TaskHandleInnerContent.vue'; import BgXiSpeakBPMFeedbackModal from './BgXiSpeakBPMFeedbackModal.vue'; import SUploadFile from '/@/components/semri/fileComponent/SUploadFile.vue'; - import DeptRoleSelectUser from './DeptRoleSelectUser.vue'; + import DeptRoleUserSelectRadioGroup from '/@/components/semri/userComponent/DeptRoleUserSelectRadioGroup.vue'; const { isDisabledAuth, hasPermission, initBpmFormData } = usePermission(); const userStore = useUserStore(); diff --git a/src/views/bg/xispeak/components/BgXiSpeakForm.vue b/src/views/bg/xispeak/components/BgXiSpeakForm.vue index 5e15cde..67025f5 100644 --- a/src/views/bg/xispeak/components/BgXiSpeakForm.vue +++ b/src/views/bg/xispeak/components/BgXiSpeakForm.vue @@ -39,8 +39,8 @@ - - + + @@ -60,18 +60,15 @@ - - - - + - + - @@ -126,16 +123,20 @@ import { defHttp } from '/@/utils/http/axios'; import { useMessage } from '/@/hooks/web/useMessage'; import JSelectDept from '/@/components/Form/src/jeecg/components/JSelectDept.vue'; - import JSelectUser from '/@/components/Form/src/jeecg/components/JSelectUser.vue'; + import DeptRoleUserSelectDropDown from '/@/components/semri/userComponent/DeptRoleUserSelectDropDown.vue'; import JTreeSelect from '/@/components/Form/src/jeecg/components/JTreeSelect.vue'; import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue'; - import DeptRoleSelectUser from './DeptRoleSelectUser.vue'; +import JSwitch from '/@/components/Form/src/jeecg/components/JSwitch.vue'; + import DeptRoleUserSelectRadioGroup from '/@/components/semri/userComponent/DeptRoleUserSelectRadioGroup.vue'; import { getValueType } from '/@/utils'; import { loadTreeData, saveOrUpdateDict } from '../BgXiSpeak.api'; import { Form } from 'ant-design-vue'; import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue'; import { usePermission } from '/@/hooks/web/usePermission'; +const PARTY_COMMITTEE_DEPT_ID = '2044677562460508161'; +const SDW_LEADER_ROLE_ID = '2044676455280570370'; + const { initBpmFormData } = usePermission(); const useForm = Form.useForm; const formRef = ref(); @@ -154,7 +155,7 @@ status: 'x月x日召开xxxx年第x次党委会议', secretLevel: '', responsiblePerson: '', - needSdwApproval: 0, + needSdwApproval: '', sdwLeaderList: '', implPlan: '', implMeasures: '', @@ -268,7 +269,7 @@ const tmpData = {}; Object.keys(formData).forEach((key) => { if (data.hasOwnProperty(key)) { - tmpData[key] = data[key] === null ? (key === 'needSdwApproval' ? 0 : '') : data[key]; + tmpData[key] = data[key] === null ? (key === 'needSdwApproval' ? '0' : '') : data[key]; } }); @@ -301,7 +302,7 @@ } if (formData.needSdwApproval === undefined || formData.needSdwApproval === null) { - formData.needSdwApproval = 0; + formData.needSdwApproval = '0'; } confirmLoading.value = true; diff --git a/src/views/dq/inspectTask/components/DqInspectTaskBPMForm.vue b/src/views/dq/inspectTask/components/DqInspectTaskBPMForm.vue index 38ab75b..a26a35f 100644 --- a/src/views/dq/inspectTask/components/DqInspectTaskBPMForm.vue +++ b/src/views/dq/inspectTask/components/DqInspectTaskBPMForm.vue @@ -203,7 +203,7 @@ - + @@ -247,6 +247,7 @@ import { useUserStore } from '/@/store/modules/user'; import JSelectDept from '/@/components/Form/src/jeecg/components/JSelectDept.vue'; import JSelectUser from '/@/components/Form/src/jeecg/components/JSelectUser.vue'; +import SzDeptUserModal from '/@/components/semri/deptUserComponent/SzDeptUserModal.vue'; import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue'; import Icon from '/@/components/Icon/index'; import { saveBpmForm, setProcessVariable, specificProblemOptions } from '../DqInspectTask.api'; diff --git a/src/views/dq/inspectTask/components/DqInspectTaskForm.vue b/src/views/dq/inspectTask/components/DqInspectTaskForm.vue index b28cf53..1e37c84 100644 --- a/src/views/dq/inspectTask/components/DqInspectTaskForm.vue +++ b/src/views/dq/inspectTask/components/DqInspectTaskForm.vue @@ -32,7 +32,13 @@ - + @@ -46,7 +52,12 @@ - + @@ -60,39 +71,65 @@ 责任与监督 - - - - - - - + + - + + + + + + - + - + - + @@ -117,7 +154,7 @@ -
+
提 交
@@ -131,31 +168,40 @@ import { JVxeTable } from '/@/components/jeecg/JVxeTable'; import { dqInspectProgressColumns } from '../DqInspectTask.data'; import JDictSelectTag from '/@/components/Form/src/jeecg/components/JDictSelectTag.vue'; +import JSwitch from '/@/components/Form/src/jeecg/components/JSwitch.vue'; import JSelectDept from '/@/components/Form/src/jeecg/components/JSelectDept.vue'; - import JSelectUser from '/@/components/Form/src/jeecg/components/JSelectUser.vue'; + import DeptRoleUserSelectRadioGroup from '/@/components/semri/userComponent/DeptRoleUserSelectRadioGroup.vue'; import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue'; import { Form } from 'ant-design-vue'; + import DeptRoleUserSelectDropDown from '@/components/semri/userComponent/DeptRoleUserSelectDropDown.vue'; const useForm = Form.useForm; export default defineComponent({ - name: "DqInspectTaskForm", - components:{ + name: 'DqInspectTaskForm', + components: { + DeptRoleUserSelectDropDown, JDictSelectTag, + JSwitch, JSelectDept, - JSelectUser, + DeptRoleUserSelectRadioGroup, JVxeTable, JFormContainer, }, - props:{ - formDisabled:{ + props: { + formDisabled: { type: Boolean, - default: false + default: false, }, - formData: { type: Object, default: ()=>{} }, - formBpm: { type: Boolean, default: true } + formData: { type: Object, default: () => {} }, + formBpm: { type: Boolean, default: true }, }, - emits:['success'], - setup(props, {emit}) { + emits: ['success'], + setup(props, { emit }) { + const CHARGE_LEADER_DEPT_ID = '2044677562460508161'; + const CHARGE_LEADER_ROLE_ID = '2062794430936240130'; + const PARTY_MASSES_DEPT_ID = '2044677628281720834'; + const MEASURE_RES_LEADER_ROLE_ID = '2044680793306591234'; + const loading = ref(false); const formRef = ref(); const dqInspectProgressTableRef = ref(); @@ -164,7 +210,7 @@ const dqInspectProgressTable = reactive>({ loading: false, columns: dqInspectProgressColumns, - dataSource: [] + dataSource: [], }); const activeKey = ref('dqInspectProgress'); const formData = reactive>({ @@ -198,34 +244,41 @@ //表单验证 const validatorRules = reactive({ problemId: [{ required: true, message: '请选择具体问题' }], + secretLevel: [{ required: true, message: '请选择密级' }], + improveMeasure: [{ required: true, message: '请输入整改措施' }], + deadline: [{ required: true, message: '请选择完成时限' }], + measureResDept: [{ required: true, message: '请选择措施责任部门' }], + measureResLeader: [{ required: true, message: '请选择措施责任领导' }], + chargeLeaderId: [{ required: true, message: '请选择分管所领导' }], + isNeedAppro: [{ required: true, message: '请选择是否需要党群领导审批' }], }); - const {resetFields, validate, validateInfos} = useForm(formData, validatorRules, {immediate: false}); + const { resetFields, validate, validateInfos } = useForm(formData, validatorRules, { immediate: false }); const dbData = {}; // 表单禁用 - const disabled = computed(()=>{ - if(props.formBpm === true){ - if(props.formData.disabled === false){ + const disabled = computed(() => { + if (props.formBpm === true) { + if (props.formData.disabled === false) { return false; - }else{ + } else { return true; } } return props.formDisabled; }); - onMounted(()=>{ + onMounted(() => { loadSpecificProblemOptions(); initFormData(); }); //渲染流程表单数据 const queryByIdUrl = '/dqinspecttask/dqInspectTask/queryById'; - async function initFormData(){ - if(props.formBpm === true){ - let params = {id: props.formData.dataId}; - const row = await defHttp.get({url: queryByIdUrl, params}); + async function initFormData() { + if (props.formBpm === true) { + let params = { id: props.formData.dataId }; + const row = await defHttp.get({ url: queryByIdUrl, params }); //设置表单的值 - Object.keys(row).map(k => { + Object.keys(row).map((k) => { formData[k] = row[k]; }); //子表数据 @@ -234,15 +287,23 @@ } } // 是否显示提交按钮 - const showFlowSubmitButton = computed(()=>{ - if(props.formBpm === true){ - if(props.formData.disabled === false){ - return true + const showFlowSubmitButton = computed(() => { + if (props.formBpm === true) { + if (props.formData.disabled === false) { + return true; } } - return false + return false; }); + const measureResDeptId = computed(() => { + const val = formData.measureResDept; + if (!val) return ''; + return String(val).split(',')[0]; + }); + + const measureResLeaderDisabled = computed(() => !measureResDeptId.value); + /** * 整改任务只能选择具体问题,分类和面上问题由后端置灰用于分组展示。 */ @@ -276,16 +337,16 @@ resetFields(); const tmpData = {}; Object.keys(formData).forEach((key) => { - if(row.hasOwnProperty(key)){ - tmpData[key] = row[key] + if (row.hasOwnProperty(key)) { + tmpData[key] = row[key]; } - }) + }); //赋值 - Object.assign(formData,tmpData); + Object.assign(formData, tmpData); } - const {getSubFormAndTableData, transformData} = useValidateAntFormAndTable(activeKey, { - 'dqInspectProgress': dqInspectProgressTableRef, + const { getSubFormAndTableData, transformData } = useValidateAntFormAndTable(activeKey, { + dqInspectProgress: dqInspectProgressTableRef, }); async function getFormData() { @@ -301,7 +362,7 @@ } return Promise.reject(errorFields); } - return transformData(toRaw(formData)) + return transformData(toRaw(formData)); } async function submitForm() { @@ -320,16 +381,16 @@ } catch {} } const values = Object.assign({}, dbData, mainData, subData); - console.log('表单提交数据', values) - const isUpdate = values.id ? true : false + console.log('表单提交数据', values); + const isUpdate = values.id ? true : false; await saveOrUpdate(values, isUpdate); //关闭弹窗 emit('success'); } function setFieldsValue(values) { - if(values){ - Object.keys(values).map(k=>{ + if (values) { + Object.keys(values).map((k) => { formData[k] = values[k]; }); } @@ -344,7 +405,6 @@ formData[key] = value; } - return { dqInspectProgressTableRef, dqInspectProgressTable, @@ -361,13 +421,19 @@ wrapperCol, disabled, showFlowSubmitButton, + CHARGE_LEADER_DEPT_ID, + CHARGE_LEADER_ROLE_ID, + PARTY_MASSES_DEPT_ID, + MEASURE_RES_LEADER_ROLE_ID, + measureResDeptId, + measureResLeaderDisabled, getFormData, submitForm, add, edit, formRef, - } - } + }; + }, });