Эх сурвалжийг харах

更新2023-07-07周功能

code4eat 2 жил өмнө
parent
commit
6511cbf185

+ 1 - 1
src/pages/Table/components/CreateForm.tsx

@@ -14,7 +14,7 @@ const CreateForm: React.FC<PropsWithChildren<CreateFormProps>> = (props) => {
       destroyOnClose
       title="新建"
       width={420}
-      visible={modalVisible}
+      open={modalVisible}
       onCancel={() => onCancel()}
       footer={null}
     >

+ 2 - 2
src/pages/budgetMana/monthlyDataCheck/index.tsx

@@ -4,7 +4,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2022-12-16 09:42:52
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-06-30 19:40:58
+ * @LastEditTime: 2023-07-06 15:32:34
  * @FilePath: /BudgetManaSystem/src/pages/budgetMana/monthlySet/index.tsx
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -2020,7 +2020,7 @@ const MonthlyDataCheck: React.FC = () => {
                                                         <>
                                                         {/* <span className='compelted'>已分配总额: <i>{pageData.completedTotal}</i></span>
                                 <span className='left'>剩余分配总额: <i>{pageData.leftTotal}</i></span> */}
-                                                        <div className='count'><span className='compelted' style={{display:'inline-block',marginRight:20}}>总成本:<i>{unitCostComputeData.unitCostTotal}</i></span><span className='left'>可控成本:<i>{unitCostComputeData.unitCostCtrlTotal}</i></span></div>
+                                                        <div className='count'><span className='compelted' style={{display:'inline-block',marginRight:20}}>总成本:<i>{formatMoneyNumber(Number(unitCostComputeData.unitCostTotal.toFixed(2)))}</i></span><span className='left'>可控成本:<i>{formatMoneyNumber(Number(unitCostComputeData.unitCostCtrlTotal.toFixed(2)))}</i></span></div>
                                                         <Popover open={ifShowTip} content={'当前处于审核中,无法操作!'} >
                                                             <div className={auditType == '1' || loading ? 'btnGroup disabled' : 'btnGroup'}
                                                                 onMouseEnter={() => auditType == '0' ? set_ifShowTip(false) : set_ifShowTip(true)}

+ 21 - 18
src/pages/budgetMana/oneBatch/index.tsx

@@ -2,7 +2,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2023-01-04 14:12:31
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-06-12 16:09:45
+ * @LastEditTime: 2023-07-06 13:54:58
  * @FilePath: /BudgetManaSystem/src/pages/budgetMana/oneBatch/index.tsx
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -14,7 +14,7 @@ import { getComputeDate } from '@/pages/Home/service';
 import { ActionType, ProColumns } from '@ant-design/pro-components';
 import { message, Modal, Popover, Table, Tabs } from 'antd';
 import { useEffect, useRef, useState } from 'react';
-import { caculate, checkRequest, getCurrentCheckStatus, getData } from './service';
+import { caculate, checkRequest, getCurrentCheckStatus, getData, getZhileiList } from './service';
 
 
 import './style.less';
@@ -43,6 +43,10 @@ const OneBatch = () => {
 
   const [currentTabKey, set_currentTabKey] = useState('1');
 
+  const [tabs,set_Tabs] = useState<{
+    name: any;value:string
+}[]>([]);
+
   const [tableDataFilterParams, set_tableDataFilterParams] = useState<any | undefined>({ reportCode: undefined });
 
   const [auditType, set_auditType] = useState('0');
@@ -153,6 +157,13 @@ const OneBatch = () => {
     const resp = await getComputeDate();
     set_currentComputeDate(resp);
   }
+  
+  const getTabList =async () => {
+       const resp = await getZhileiList();
+       if(resp){
+        set_Tabs(resp.list);
+       }
+  }
 
 
   const confirmCaculateHandle = async () => {
@@ -239,6 +250,12 @@ const OneBatch = () => {
     }, 0)
   }
 
+  useEffect(()=>{
+    if(tabs.length>0){
+      set_currentTabKey(tabs[0].value);
+    }
+  },[tabs])
+
 
   useEffect(() => {
     if (currentComputeDate) {
@@ -251,6 +268,7 @@ const OneBatch = () => {
     getCurrentComputeDate();
     window.addEventListener('resize', (e) => handleResize(e)) //监听窗口大小改变
     doResize();
+    getTabList();
 
     return () => {
       window.removeEventListener('resize', (e) => handleResize(e))
@@ -280,22 +298,7 @@ const OneBatch = () => {
           defaultActiveKey='1'
           onChange={onTabChange}
           items={[
-            {
-              label: `临床医生`,
-              key: '1',
-            },
-            {
-              label: `医技`,
-              key: '2',
-            },
-            {
-              label: `护理`,
-              key: '3',
-            },
-            {
-              label: `行政`,
-              key: '4',
-            },
+            ...tabs.map(a=>({label:a.name,key:a.value}))
           ]}
         />
         <div className='tabContent'>

+ 8 - 1
src/pages/budgetMana/oneBatch/service.ts

@@ -2,7 +2,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2023-01-04 13:59:26
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-03-01 15:50:03
+ * @LastEditTime: 2023-07-06 13:48:41
  * @FilePath: /BudgetManaSystem/src/pages/budgetMana/personnelSalaryBudget/service.ts
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -54,6 +54,13 @@ export const getCurrentCheckStatus = (computeDate:string)=>{
    })
 }
 
+//获取职类列表
+export const getZhileiList = ()=>{
+    return request('/performance/dict/getDictDataList?current=1&pageSize=500&typeCode=1', {
+        method:'GET',
+   })
+}
+
 //审核
 export const checkRequest = (data:{computeDate:string,auditType:string})=>{
     return request('/performance/first/audit', {

+ 17 - 2
src/pages/setting/baseSetting/jobCateBaseSet/index.tsx

@@ -2,7 +2,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2023-03-03 11:30:33
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-04-12 15:30:36
+ * @LastEditTime: 2023-07-06 17:23:30
  * @FilePath: /KC-MiddlePlatform/src/pages/platform/setting/pubDicTypeMana/index.tsx
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -93,6 +93,18 @@ export default function JobCateBaseSet() {
             valueType:'digit'
             //render: (_: any, record: any) => <EditableCell _={_} record={record} keyStr='workPercent' />
         },
+        {
+            title: '职类基金系数',
+            dataIndex: 'unitTypeFund',
+            valueType:'digit'
+            //render: (_: any, record: any) => <EditableCell _={_} record={record} keyStr='workPercent' />
+        },
+        {
+            title: '岗值系数',
+            dataIndex: 'defaultPositionRate',
+            valueType:'digit'
+            //render: (_: any, record: any) => <EditableCell _={_} record={record} keyStr='workPercent' />
+        },
         {
             title: '操作',
             key: 'option',
@@ -135,13 +147,16 @@ export default function JobCateBaseSet() {
 
 
     const updateTable = async (result:any) => {
+        // console.log({result});
         const resp = await editData({
             code:result.code,
             name:result.name,
             staffRate:result.staffRate,
             averageSalary:result.averageSalary,
             ratePercent:result.ratePercent,
-            workPercent:result.workPercent
+            workPercent:result.workPercent,
+            unitTypeFund:result.unitTypeFund,
+            defaultPositionRate:result.defaultPositionRate
         });
         if (resp) {
             message.success('操作成功!');

+ 4 - 2
src/pages/setting/baseSetting/jobCateBaseSet/service.ts

@@ -2,7 +2,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2023-03-03 16:31:27
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-04-12 11:23:45
+ * @LastEditTime: 2023-07-06 17:20:35
  * @FilePath: /KC-MiddlePlatform/src/pages/platform/setting/pubDicTypeMana/service.ts
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -44,7 +44,9 @@ export type EditJobCateTableDataType = {
   staffRate:number,
   averageSalary:number,
   ratePercent:number,
-  workPercent:number
+  workPercent:number,
+  unitTypeFund:number,
+  defaultPositionRate:number
 }
 
 export const editData = (data:EditJobCateTableDataType) => {

+ 7 - 3
src/pages/setting/manaPerformanceSet/indicGroupWeightSet/index.tsx

@@ -2,7 +2,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2023-03-03 11:30:33
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-07-05 14:11:19
+ * @LastEditTime: 2023-07-06 14:37:54
  * @FilePath: /KC-MiddlePlatform/src/pages/platform/setting/pubDicTypeMana/index.tsx
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -73,7 +73,7 @@ export default function IndicGroupWeightSet() {
         {
             title: '组内单元名称',
             dataIndex: 'unitInfoVos',
-            width: 300,
+            width: 250,
             ellipsis: true,
             render: (_: any, record: any) => {
 
@@ -88,7 +88,7 @@ export default function IndicGroupWeightSet() {
         {
             title: '管理指标',
             ellipsis: true,
-            width: 300,
+            width: 250,
             dataIndex: 'indicatorWeights',
             render: (_: any, record: any) => {
 
@@ -110,6 +110,10 @@ export default function IndicGroupWeightSet() {
             dataIndex: 'ceiling',
             width: 80
         },
+        {
+            title: '说明',
+            dataIndex: 'depiction',
+        },
         {
             title: '操作',
             key: 'option',

+ 51 - 21
src/pages/setting/projectSetting/checkUnitProjectSet/index.tsx

@@ -4,7 +4,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2022-12-16 09:42:52
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-06-30 20:41:30
+ * @LastEditTime: 2023-07-06 15:22:46
  * @FilePath: /BudgetManaSystem/src/pages/budgetMana/monthlySet/index.tsx
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -33,7 +33,7 @@ import 'dayjs/locale/zh-cn';
 
 import React from 'react';
 import DirectoryTree from 'antd/es/tree/DirectoryTree';
-import { findAllParents, getDeepestTreeData, getNodesWithChildren } from '@/utils/tooljs';
+import { findAllParents, findParentCodes, getDeepestTreeData, getNodesWithChildren } from '@/utils/tooljs';
 import { ColumnsType, TableRowSelection } from 'antd/es/table/interface';
 import { difference } from 'lodash';
 import { getBillProjectData } from '../bilingProjectMana/service';
@@ -520,37 +520,64 @@ const CheckUnitProjectSet: React.FC = () => {
         }
     
         const onSelectHandle = (record: any, selected:boolean, selectedRows:any[], nativeEvent: any) => {
-            let data = [...datasource];
-            let parent = record.parentCode != 0 ? findAllParents([...data],`${record.parentCode}`):undefined;
             
-            parent = parent?parent.filter(obj => Object.keys(obj).length !== 0):[];
+            // console.log({selectedRows});
 
-            set_allParentsNode([...allParentsNode,...parent]);
-
-            let result = [...selectedRows,...parent];
-
-            result = result.filter(obj => Object.keys(obj).length !== 0);
-
-            const _result = Array.from(new Set(result.map(obj => JSON.stringify(obj)))).map(str => JSON.parse(str));
+            if(selected){
+                let data = [...datasource];
+                let parent = record.parentCode != 0 ? findAllParents([...data],`${record.parentCode}`):undefined;
+                
+                parent = parent?parent.filter(obj => Object.keys(obj).length !== 0):[];
+    
+                set_allParentsNode([...allParentsNode,...parent]);
+    
+                let result = [...selectedRows,...parent];
+    
+                result = result.filter(obj => Object.keys(obj).length !== 0);
+    
+                const _result = Array.from(new Set(result.map(obj => JSON.stringify(obj)))).map(str => JSON.parse(str));
+    
+                setSelectedKeys([...selectedRows.map((a: { code: any; })=>a.code)]);
+                set_selectedRows([...selectedRows,..._result]);
+            }else {
+                if(record.children){
+                      const parentCodes = findParentCodes(record);
+                    
+                      //除去取消勾选的父级
+                      const _allParentsNode = allParentsNode.filter(a=>!parentCodes.includes(a.code));
+                      set_allParentsNode([..._allParentsNode]);
+                      setSelectedKeys([...selectedRows.map((a: { code: any; })=>a.code)]);
+                      set_selectedRows([...selectedRows]);
+                }else{
+                    setSelectedKeys([...selectedRows.map((a: { code: any; })=>a.code)]);
+                    set_selectedRows([...selectedRows]);
+                }
+            }
 
-            setSelectedKeys([...selectedRows.map((a: { code: any; })=>a.code)]);
-            set_selectedRows([...selectedRows,..._result]);
+            
 
         };
 
+        const onSelectAllHandle = (selected: boolean, selectedRows: any[], changeRows: any[])=>{
+            if(selected){
+                setSelectedKeys([...selectedRows.map((a: { code: any; })=>a.code)]);
+                set_selectedRows([...selectedRows]);
+            }else{
+                set_allParentsNode([]);
+                setSelectedKeys([]);
+                set_selectedRows([]);
+            }
+            
+        }
+
         const save = async () => {
             if (!isCopy && currentSelectedTabKey == '4') {
-                
-                //const _selectedRows = Array.from(new Set([...allParentsNode,...selectedRows].map(obj => JSON.stringify(obj)))).map(str => JSON.parse(str));
-                
-
+            
                 let _selectedRows = Object.values([...allParentsNode,...selectedRows].reduce((acc, cur) => {
                     acc[cur.code] = cur; // 如果 id 相同,后来的元素将替换前者
                     return acc;
                   }, {}));
 
-            
-        
                 const result = {
                     itemList: _selectedRows.map((a: any) => ({
                         code: a.code,
@@ -663,7 +690,10 @@ const CheckUnitProjectSet: React.FC = () => {
                         // 注释该行则默认不显示下拉选项
                         selectedRowKeys:selectedKeys,
                         onSelect: onSelectHandle,
-                        checkStrictly: false
+                        checkStrictly: false,
+                        onSelectAll(selected, selectedRows, changeRows) {
+                            onSelectAllHandle(selected, selectedRows, changeRows);
+                        },
                     }}
                     pagination={false}
                     dataSource={showList}

+ 12 - 2
src/pages/setting/projectSetting/checkUnitProjectSet/service.ts

@@ -1,3 +1,11 @@
+/*
+ * @Author: code4eat awesomedema@gmail.com
+ * @Date: 2023-05-15 13:20:27
+ * @LastEditors: code4eat awesomedema@gmail.com
+ * @LastEditTime: 2023-07-05 14:26:02
+ * @FilePath: /BudgetManaSystem/src/pages/setting/projectSetting/checkUnitProjectSet/service.ts
+ * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
+ */
 /*
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2022-12-21 11:13:51
@@ -10,7 +18,11 @@
 
 
 
+import { getRedirReportData } from '@/pages/reportCheck/report/service';
 import { request } from '@@/plugin-request';
+import { defaultActionRender } from '@ant-design/pro-utils/es/useEditableArray';
+import { cond, invertBy } from 'lodash';
+import { editReportTbaleData } from '../../reportSet/reportSetting/service';
 
 
 
@@ -301,8 +313,6 @@ export const saveCopyRequest = (data: any,tabKey:string) => {
 
 }
 
-
-
 //获取成本项目表格数据
 
 export type getCostItemsTableDataParamsType = {

+ 3 - 3
src/pages/setting/projectSetting/costIncomeProjectSet/index.tsx

@@ -2,7 +2,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2023-03-03 11:30:33
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-05-30 11:18:37
+ * @LastEditTime: 2023-07-06 14:32:51
  * @FilePath: /KC-MiddlePlatform/src/pages/platform/setting/pubDicTypeMana/index.tsx
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -355,7 +355,7 @@ export default function CostIncomeProjectSet() {
                                 rules={[{ required: true, message: '类型不能为空!' }]}
                             />
                             {
-                                !record.children&&type == 'EDIT' && (
+                                ((record&&!record.children && type == 'EDIT') || !record)&& (
                                     <ProFormRadio.Group
                                         name="summaryFlag"
                                         label="汇总:"
@@ -494,7 +494,7 @@ export default function CostIncomeProjectSet() {
                 </div>
                 <div className='btnGroup'>
                     {/* <span className='getDataBtn' onClick={() => getDataBySQL()}>获取</span> */}
-                    <UpDataActBtn record type='ADD' />
+                    <UpDataActBtn record={false} type='ADD' />
                 </div>
             </div>
             <div style={{ marginTop: 16 }}>

+ 2 - 2
src/pages/setting/reportSet/reportListMana/index.tsx

@@ -2,7 +2,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2023-03-03 11:30:33
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-06-30 18:21:06
+ * @LastEditTime: 2023-07-06 14:36:01
  * @FilePath: /KC-MiddlePlatform/src/pages/platform/setting/pubDicTypeMana/index.tsx
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -295,7 +295,7 @@ export default function ReportListMana() {
 
                             <ProFormRadio.Group
                                 name="dataType"
-                                label="数格式:"
+                                label="数格式:"
                                 options={[
                                     {
                                         label: '文本',

+ 20 - 1
src/utils/tooljs.ts

@@ -2,7 +2,7 @@
  * @Author: code4eat awesomedema@gmail.com
  * @Date: 2023-02-20 14:31:06
  * @LastEditors: code4eat awesomedema@gmail.com
- * @LastEditTime: 2023-06-30 19:33:12
+ * @LastEditTime: 2023-07-06 15:10:14
  * @FilePath: /BudgetManaSystem/src/utils/tooljs.js
  * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  */
@@ -120,3 +120,22 @@ export const getNodesWithChildren = (tree: TreeNode[]): TreeNode[] => {
 }
 
 
+//找出所有父节点的code
+
+
+
+export const  findParentCodes = (node: TreeNode, parentCodes: string[] = []): string[] => {
+  if (node.children && node.children.length > 0) {
+    parentCodes.push(node.code);
+
+    for (let child of node.children) {
+      findParentCodes(child, parentCodes);
+    }
+  }
+
+  return parentCodes;
+}
+
+
+
+