Blame view

src/pages/attendance/Attend/subpages/AttendanceGroup/api.ts 3.09 KB
0db038b2   Shinner   请假设置增加单位;考勤组设置增加配置项
1
  import { http, PromisePageResp } from "@/typing/http";
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
2
  import request from "@/utils/request";
c7d557ee   zhaofeng   班次
3
  import { ATTENDANCE_HOST } from "@/utils/host";
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
4
5
  
  type P<T> = http.PromiseResp<T>;
c7d557ee   zhaofeng   班次
6
  //type Page<T> = http.PromisePageResp<T>;
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
7
8
  
  export interface Item {
c7d557ee   zhaofeng   班次
9
10
    id?: number; //	考勤组配置id
    name?: number; //	考勤组类型1:正常班次 2:早班 3:晚班
af380502   zhaofeng   考勤组设置
11
    desc?: string;
c7d557ee   zhaofeng   班次
12
13
    common?: boolean; // 是否集团默认通用配置
    cycleTimes?: number; //	打卡周期次数
af380502   zhaofeng   考勤组设置
14
15
    timeList: timeList[];
    shops?: Shops[];
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
16
17
  }
  
af380502   zhaofeng   考勤组设置
18
19
20
21
22
23
24
25
  interface timeList {
    clockTime?: number; //打卡时间
    noticeType?:number;//
  }
  interface Shops {
    shopId?: number; //适配门店
    shopName?: string; //门店名称
  }
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
26
  export interface Detail {
c7d557ee   zhaofeng   班次
27
28
29
30
31
32
    id?: number; //	考勤周期id
    clockBeginTime?: number; //	打卡开始时间(例如:9:00)
    noticeAdvanceTime?: number; //	待办提前通知时间(分钟)
    noticeType?: number; //	待办通知类型 1:提前通知 2:延后通知
    defectTime?: number; //	严重迟到时间判定(分钟)
    lackTime?: number; //缺卡判定时间(分钟)
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
33
34
35
36
37
38
  }
  
  /**
   * 考勤组类型1:正常班次 2:早班 3:晚班
   */
  export const typeEnum: { [key: number]: string } = {
c7d557ee   zhaofeng   班次
39
40
41
42
    0: "",
    1: "正常班次",
    2: "早班",
    3: "晚班",
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
43
44
  };
  
af380502   zhaofeng   考勤组设置
45
46
47
48
49
50
  /**分页查询考勤组配置列表
   * /attendance/group/setting/getList
  */
  // export function fetchList(): PromisePageResp<Item[]> {
  export function fetchList(): PromisePageResp<Item> {
    return request.get(`${ATTENDANCE_HOST}/attendance/group/setting/getList`);
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
51
52
  }
  
af380502   zhaofeng   考勤组设置
53
54
55
  /**删除考勤组配置
   * /attendance/group/setting/del
  */
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
56
  export function deleteApi(id?: number): P<void> {
af380502   zhaofeng   考勤组设置
57
    return request.post(`${ATTENDANCE_HOST}/attendance/group/setting/del?id=${id}`, { id });
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
58
59
  }
  
d8046bf3   zhaofeng   考勤组配置add考勤组名称
60
61
62
  /**查询考勤组配置详情
   * /attendance/group/setting/getDetail
  */
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
63
  export function fetchDetail(id: number): P<Item> {
d8046bf3   zhaofeng   考勤组配置add考勤组名称
64
    return request.get(`${ATTENDANCE_HOST}/attendance/group/setting/getDetail`, { params: { id } });
cc26d1fc   张志伟   🎉 重新构建项目,解决项目过大的问题
65
66
67
68
  }
  
  /**保存考勤组配置*/
  export function saveApi(params?: Item): P<void> {
af380502   zhaofeng   考勤组设置
69
    return request.post(`${ATTENDANCE_HOST}/attendance/group/setting/saveOrUpdate`, params);
c7d557ee   zhaofeng   班次
70
  }
d3fb0149   zhaofeng   考勤组基础设置
71
72
  
  interface BaseSettingItem {
0db038b2   Shinner   请假设置增加单位;考勤组设置增加配置项
73
74
75
76
77
78
79
80
81
    id?: number; // 主键
    groupId?: number; // 集团id
    defectTime?: number; // 严重迟到时间判定(分钟)
    onDutyNoticeTime?: number; // 上班待办提前通知时间(分钟)
    offDutyNoticeTime?: number; // 下班待办延后通知时间(分钟)
    onDutyLackTime?: number; // 上班缺卡时间判定(分钟)
    offDutyLackTime?: number; // 下班缺卡时间判定(分钟)
    outsideRemainingHour?: number; // 外勤结束时间离门店下班时间≤?小时不用打考勤卡
    travelRemainingHour?: number; // 出差结束时间离门店下班时间≤?小时不用打考勤卡
d3fb0149   zhaofeng   考勤组基础设置
82
  }
c7d557ee   zhaofeng   班次
83
84
85
  /**获取考勤组基础设置
   * /attendance/base/setting/get
   */
d3fb0149   zhaofeng   考勤组基础设置
86
  export function fetchBaseSettingApi(): P<BaseSettingItem> {
c7d557ee   zhaofeng   班次
87
88
    return request.get(`${ATTENDANCE_HOST}/attendance/base/setting/get`);
  }
d3fb0149   zhaofeng   考勤组基础设置
89
90
91
92
93
  
  /**保存/更新考勤组基础设置*/
  export function saveOrUpdateApi(params?: BaseSettingItem): P<void> {
    return request.post(`${ATTENDANCE_HOST}/attendance/base/setting/saveOrUpdate`, params);
  }