Jelajahi Sumber

feat(web-admin): add collection region staff API types and clients

Co-authored-by: Cursor <cursoragent@cursor.com>
zlwu 1 bulan lalu
induk
melakukan
d5e5ae52a0
2 mengubah file dengan 49 tambahan dan 0 penghapusan
  1. 29 0
      web-admin/src/api/admin.ts
  2. 20 0
      web-admin/src/types/api.d.ts

+ 29 - 0
web-admin/src/api/admin.ts

@@ -1034,6 +1034,35 @@ export function fetchDeleteHospital(regionId: string, hospitalId: string) {
   return request.del({ url: `/web/admin/collection-regions/${regionId}/hospitals/${hospitalId}` })
 }
 
+export function fetchRegionStaffList(
+  regionId: string,
+  params?: { page?: number; pageSize?: number }
+) {
+  return request.get<PageResult<Api.BizCollectionRegionStaff.StaffItem>>({
+    url: `/web/admin/collection-regions/${regionId}/staff`,
+    params
+  })
+}
+export function fetchCreateRegionStaff(
+  regionId: string,
+  data: { userId: string; isLeader?: boolean; orderNum?: number; remark?: string }
+) {
+  return request.post({ url: `/web/admin/collection-regions/${regionId}/staff`, params: data })
+}
+export function fetchUpdateRegionStaff(
+  regionId: string,
+  staffId: string,
+  data: Partial<{ isLeader: boolean; orderNum: number; remark: string }>
+) {
+  return request.put({
+    url: `/web/admin/collection-regions/${regionId}/staff/${staffId}`,
+    params: data
+  })
+}
+export function fetchDeleteRegionStaff(regionId: string, staffId: string) {
+  return request.del({ url: `/web/admin/collection-regions/${regionId}/staff/${staffId}` })
+}
+
 export function fetchCollectionProtocolNoList(params?: {
   page?: number
   pageSize?: number

+ 20 - 0
web-admin/src/types/api.d.ts

@@ -535,6 +535,8 @@ declare namespace Api {
       id: string
       regionName: string
       hospitalNames: string[]
+      staffNames: string[]
+      leaderNames: string[]
       tenantNo: string
       orderNum: number
       remark: string
@@ -557,6 +559,24 @@ declare namespace Api {
     }
   }
 
+  namespace BizCollectionRegionStaff {
+    interface StaffItem {
+      id: string
+      regionId: string
+      userId: string
+      userName: string
+      nickName: string
+      userNo: string
+      deptName: string
+      isLeader: boolean
+      tenantNo: string
+      orderNum: number
+      remark: string
+      createTime: string
+      updateTime: string
+    }
+  }
+
   namespace BizCollectionProtocolNo {
     interface ProtocolNoItem {
       id: string