duy 2 жил өмнө
parent
commit
22b2a12b16

+ 17 - 1
src/api/modules/program/section.js

@@ -9,7 +9,7 @@ export default {
             params: form
         }, msg);
     },
- //获取部门列表/blade-control/departmentMonthPlan/getDepartmentDict
+ //获取部门列表
     async getDepartmentDict(form, msg = true) {
         return httpApi({
             url: '/api/blade-control/departmentMonthPlan/getDepartmentDict',
@@ -17,4 +17,20 @@ export default {
             params: form
         }, msg);
     },
+    //查询部门月度计划
+    async getDepartmentPlan(form, msg = true) {
+        return httpApi({
+            url: '/api/blade-control/departmentMonthPlan/getDepartmentPlan',
+            method: 'post',
+            data: form
+        }, msg);
+    },
+    //新增部门月计划
+    async addDepartmentPlan(form, msg = true) {
+        return httpApi({
+            url: '/api/blade-control/departmentMonthPlan/addDepartmentPlan',
+            method: 'post',
+            data: form
+        }, msg);
+    },
 }

+ 44 - 2
src/views/program/section/form.vue

@@ -73,10 +73,52 @@
 </template>
 
 <script setup>
-import {ref} from "vue";
-import {useRouter} from 'vue-router'
+
+import {useRouter,useRoute} from 'vue-router'
+import {onActivated, ref,watch} from "vue";
+import sectionApi from '~api/program/section.js';
+import {getArrValue,getObjValue,formValidate} from "js-fast-way"
 
 const router = useRouter()
+const useRoutes = useRoute()
+const dataId = ref(useRoutes?.query?.id ?? '')
+const dataType = ref(useRoutes?.query?.type ?? '')
+const planDate=ref(useRoutes?.query?.month ?? '')
+const departmentType=ref(useRoutes?.query?.section ?? '')
+//缓存页面被激活时
+onActivated(() => {
+    dataId.value = useRoutes?.query?.id ?? ''
+    dataType.value = useRoutes?.query?.type ?? ''
+    planDate.value = useRoutes?.query?.month ?? ''
+    departmentType.value = useRoutes?.query?.section ?? ''
+    getDepartmentPlan()
+    if(dataType.value!=='add'){
+        // getDepartmentPlan()
+    
+    }else if(dataType.value=='add'){
+  
+    }
+
+ 
+})
+//获取详情
+const getDepartmentPlan=async()=>{
+    const {error, code, data} = await sectionApi.getDepartmentPlan(
+        {
+            departmentType:departmentType.value,
+            planDate:planDate.value,
+           
+        }
+    )
+    if (!error && code === 200) {
+        console.log(getObjValue(data),'详情');
+     
+       
+
+    } else {
+        // milestoneData.value=[]
+    }
+}
 
 //类型tab数据和相关处理
 const tabKey = ref('key1')

+ 32 - 10
src/views/program/section/index.vue

@@ -66,7 +66,7 @@
             <el-form ref="formMonthRef" label-position="top" size="large" :model="formMonthModel" :rules="formMonthRules">
                 <el-form-item label="选择部门" prop="section">
                     <el-select v-model="formMonthModel.section" block placeholder="选择部门">
-                        <el-option v-for="item in department" :label="item.name" :value="item.key"/>
+                        <el-option v-for="item in department" :label="item.dictName" :value="item.dictValue"/>
                     </el-select>
                 </el-form-item>
                 <el-form-item label="选择月份" prop="month">
@@ -81,8 +81,9 @@
 <script setup>
 import {ref,onMounted,onActivated} from "vue";
 import {useRouter} from 'vue-router'
-import {getArrValue} from "js-fast-way"
 import sectionApi from '~api/program/section.js';
+import {useAppStore} from "~src/store";
+import {getArrValue,getObjValue,formValidate} from "js-fast-way"
 
 const router = useRouter()
 onActivated(()=>{
@@ -178,7 +179,7 @@ const monthModal = ref(false)
 //选择月份的表单数据
 const formMonthRef = ref(null)
 const formMonthModel = ref({
-    section: '', month: null
+    section: null, month: null
 })
 const formMonthRules = {
     section: [{required: true, message: '请选择部门', trigger: 'blur'}],
@@ -188,21 +189,42 @@ const formMonthRules = {
 const monthCloseClick = () => {
     monthModal.value = false
 }
+//新增部门月计划
+const addPlan=async(obj)=>{;
+    const {error, code, data,msg} = await sectionApi.addDepartmentPlan( {
+        planDate:obj.month,
+        departmentType:obj.section
+    })
+    if (!error && code === 200) {
+       window.$message.success(msg)
+        monthModal.value = false
+        router.push({
+            name: 'program-section-form',
+            query: {...formMonthModel.value,type:'add'},
+    
+        })
+    } 
+
+}
 //确认下一步
-const monthSaveClick = () => {
+const monthSaveClick =async() => {
+    const res = await formValidate(formMonthRef.value)
+    if(res){
+        addPlan(formMonthModel.value)
+    }
     monthModal.value = false
-    router.push({
-        name: 'program-section-form',
-        query: formMonthModel.value
-    })
+
 }
 
 //编辑预算
 const editRowClick = (row) => {
     router.push({
-        name: 'program-index-info',
+        name: 'program-section-form',
         query: {
-            id: row.id
+            id: row.id,
+            month:row.planDate,
+            section:row.departmentType,
+            type:'edit'
         }
     })
 }