123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365 |
- //
- // OOAttandanceModels.swift
- // O2Platform
- //
- // Created by 刘振兴 on 2018/5/16.
- // Copyright © 2018年 zoneland. All rights reserved.
- //
- import Foundation
- import HandyJSON
- // MARK:- 移动端获到打卡记录Bean
- class OOAttandanceMobileQueryBean:NSObject,DataModel {
-
- @objc var empNo:String? //员工号,根据员工号查询记录
-
- @objc var empName:String? //员工姓名,根据员工姓名查询记录.
-
- @objc var startDate:String? //开始日期:yyyy-mm-dd.
-
- @objc var endDate:String? //结束日期:yyyy-mm-dd,如果开始日期填写,结束日期不填写就是只查询开始日期那一天
-
- @objc var signDescription:String? //打卡说明:上班打卡,下班打卡.
-
- override required init() {
-
- }
- }
- // MARK:- 移动端打卡数据
- class OOAttandanceMobileDetail:NSObject,DataModel {
- @objc var id:String? //数据库主键,自动生成.
- @objc var createTime:String? //创建时间,自动生成.
- @objc var updateTime:String? //修改时间,自动生成.
- @objc var empNo:String? //员工号
- @objc var empName:String? //员工姓名
- @objc var recordDateString:String? //打卡记录日期字符串
- @objc var recordDate:String? //打卡记录日期
- @objc var signTime:String? //打卡时间
- @objc var signDescription:String? //打卡说明
- @objc var desc:String? //其他说明备注
- @objc var recordAddress:String? //打卡地点描述
- @objc var longitude:String? //经度
- @objc var latitude:String? //纬度
- @objc var optMachineType:String? // 操作设备类别:手机品牌|PAD|PC|其他
- @objc var optSystemName:String? // 操作设备类别:Mac|Windows|IOS|Android|其他
- var recordStatus:Int? //记录状态:0-未分析 1-已分析
- @objc var checkin_type: String? // 打卡类型 上午上班打卡 下午下班打卡
-
- required override init() {
-
- }
-
- func mapping(mapper: HelpingMapper) {
- mapper <<< self.desc <-- "description"
- }
- }
- // MARK: - 打卡班次对象
- class OOAttandanceScheduleSetting: NSObject, DataModel {
- /**
- "id": "7c89ddfe-7e69-40ce-9908-d699081aa660",
- "topUnitName": "浙江兰德纵横网络技术股份有限公司@1@U",
- "unitName": "移动开发组@320494093@U",
- "unitOu": "移动开发组@320494093@U",
- "onDutyTime": "09:00",
- "offDutyTime": "17:00",
- "signProxy": 0,
- "lateStartTime": "9:05",
- "createTime": "2020-05-27 09:19:16",
- "updateTime": "2020-05-27 09:19:16"
- */
- @objc var id: String?
- @objc var topUnitName: String?
- @objc var unitName: String?
- @objc var unitOu: String?
- @objc var onDutyTime: String?
- @objc var offDutyTime: String?
- var signProxy: Int?
- @objc var lateStartTime: String?
- @objc var createTime: String?
- @objc var updateTime: String?
-
- required override init() {
-
- }
-
- }
- // MARK: - 当前用户当天打卡功能
- class OOAttandanceFeature: NSObject, DataModel {
- /**
- "signSeq": 1,
- "signDate": "2020-06-02",
- "signTime": "09:00",
- "checkinType": "上午上班打卡"
- */
- @objc var signDate: String?
- @objc var signTime: String?
- @objc var checkinType: String?
- var signSeq: Int? //第几次打卡 -1就不能打卡了
-
- required override init() {
-
- }
-
- }
- // MARK: - 打卡班次对象 和 打卡结果拼接的结果
- class OOAttandanceMobileScheduleInfo: NSObject, DataModel {
- @objc var signDate: String?
- @objc var signTime: String?
- @objc var checkinType: String?
- var signSeq: Int?
- @objc var checkinStatus: String? // 未打卡 已打卡
- @objc var checkinTime: String? //打卡时间
- @objc var recordId: String? //打卡结果的id 更新打卡用
-
- required override init() {
-
- }
-
- }
- // MARK: - MyRecords 登录者当天的所有移动打卡信息记录 排版情况等
- class OOMyAttandanceRecords: NSObject, DataModel {
-
- @objc var records:[OOAttandanceMobileDetail]?
- @objc var scheduleSetting:OOAttandanceScheduleSetting?
- @objc var feature: OOAttandanceFeature?
- //2020-07-21 新添加的
- @objc var scheduleInfos: [OOAttandanceFeature]?
-
- required override init() {
-
- }
- }
- // MARK:- 提交打卡数据FormBean
- class OOAttandanceMobileCheckinForm:NSObject,DataModel {
-
- @objc var id:String? //id 为空就是新增 有id就是更新
-
- @objc var empNo:String? //员工号, 可以为空.
-
- @objc var empName:String? //员工姓名, 必须填写.
-
- @objc var recordDateString:String? //打卡记录日期字符串:yyyy-mm-dd, 必须填写.
-
- @objc var signTime:String? //打卡时间: hh24:mi:ss, 必须填写.
-
- @objc var signDescription:String? //打卡说明:上班打卡,下班打卡, 可以为空.
-
- @objc var desc:String? //其他说明备注, 可以为空.
-
- @objc var recordAddress:String? //打卡地点描述, 可以为空.
-
- @objc var longitude:String? //经度, 可以为空.
-
- @objc var latitude:String? //纬度, 可以为空.
-
- @objc var optMachineType:String? //操作设备类别:手机品牌|PAD|PC|其他, 可以为空.
-
- @objc var optSystemName:String? //操作设备类别:Mac|Windows|IOS|Android|其他, 可以为空
-
- @objc var checkin_type: String? //上午上班打卡 下午下班打卡 。。。。 对应OOAttandanceFeature里面的checkinType
-
- required override init() {
-
- }
-
- func mapping(mapper: HelpingMapper) {
- mapper <<< self.desc <-- "description"
- }
- }
- // MARK:- 打卡地点配置
- class OOAttandanceWorkPlace:NSObject,DataModel{
-
- @objc var desc: String?
- @objc var id:String? // 数据库主键,自动生成.
- @objc var createTime:String? // 创建时间,自动生成.
- @objc var updateTime:String? // 修改时间,自动生成.
- @objc var placeName:String? // 场所名称
- @objc var placeAlias:String? // 场所别名
- @objc var creator:String? // 创建人
- @objc var longitude:String? // 经度
- @objc var latitude:String? // 纬度
- var errorRange:Int? // 误差范围
-
- required override init() {
-
- }
-
- func mapping(mapper: HelpingMapper) {
- mapper <<< self.desc <-- "description"
- }
- }
- // MARK:- 提交新的打卡地点
- class OOAttandanceNewWorkPlace:NSObject,DataModel {
-
- @objc var placeName:String? //场所名称
-
- @objc var placeAlias:String? //场所别名
-
- @objc var creator:String? //创建人
-
- @objc var longitude:String? //经度
-
- @objc var latitude:String? //纬度
-
- @objc var errorRange:String? //误差范围
-
- @objc var desc:String? //说明备注
-
- required override init() {
-
- }
-
- func mapping(mapper: HelpingMapper) {
- mapper <<< self.desc <-- "description"
- }
- }
- // MARK:- 考勤配置管理员
- class OOAttandanceAdmin:NSObject,DataModel {
- @objc var desc: String?
- @objc var id:String? // 数据库主键,自动生成.
- @objc var createTime:String? // 创建时间,自动生成.
- @objc var updateTime:String? // 修改时间,自动生成.
- @objc var unitName:String? // 组织名称
- @objc var unitOu:String? // 组织编号
- @objc var adminName:String? // 管理员姓名
- @objc var adminLevel:String? // 管理级别:UNIT|TOPUNIT
- required override init() {
-
- }
-
- func mapping(mapper: HelpingMapper) {
- mapper <<< self.desc <-- "description"
- }
-
- }
- class OOAttandanceTotalBean:NSObject,DataModel {
- @objc var q_year:String? // : 打卡年份
- @objc var q_month:String? // : 打卡月份
- @objc var cycleYear:String? // : 考勤周期年份
- @objc var cycleMonth:String? // : 考勤周期月份
- @objc var q_empName:String? //:人员全名
-
- required override init() {
-
- }
- }
- // MARK:- cycleDetail
- class OOAttandanceCycleDetail:NSObject,DataModel {
- @objc var id:String? //: "ea55970a-bd18-4388-a40b-b0cc7d6cc576",
- @objc var createTime:String? //: "2018-04-12 12:49:37",
- @objc var updateTime:String? //: "2018-04-12 12:49:37",
- @objc var topUnitName:String? //": "*",
- @objc var unitName:String? //: "*",
- @objc var cycleYear:String? //: "2018",
- @objc var cycleMonth:String? //: "04",
- @objc var cycleStartDateString:String? //: "2018-04-01",
- @objc var cycleEndDateString:String? //: "2018-05-01",
- @objc var cycleStartDate:String? //: "2018-04-01",
- @objc var cycleEndDate:String? //: "2018-05-01",
- @objc var desc:String? //: "系统自动创建"
-
- required override init() {
-
- }
-
- func mapping(mapper: HelpingMapper) {
- mapper <<< self.desc <-- "description"
- }
- }
- // MARK:- OOAttandanceCheckinTotal
- class OOAttandanceCheckinTotal:NSObject,DataModel {
- @objc var abnormalDutyDayTime : String?
- var absence : Int?
- @objc var absentDayTime : String?
- @objc var appealDescription : String?
- @objc var appealProcessor : String?
- @objc var appealReason : String?
- var appealStatus : Int?
- var attendance : Int?
- @objc var batchName : String?
- @objc var createTime : String?
- @objc var cycleMonth : String?
- @objc var cycleYear : String?
- @objc var descriptionField : String?
- @objc var empName : String?
- @objc var empNo : String?
- var getSelfHolidayDays : Int?
- @objc var id : String?
- var isAbnormalDuty : Bool?
- var isAbsent : Bool?
- var isGetSelfHolidays : Bool?
- var isHoliday : Bool?
- var isLackOfTime : Bool?
- var isLate : Bool?
- var isLeaveEarlier : Bool?
- var isWeekend : Bool?
- var isWorkOvertime : Bool?
- var isWorkday : Bool?
- var lateTimeDuration : Int?
- var leaveEarlierTimeDuration : Int?
- @objc var monthString : String?
- @objc var offDutyTime : String?
- @objc var offWorkTime : String?
- @objc var onDutyTime : String?
- @objc var onWorkTime : String?
- @objc var recordDate : String?
- @objc var recordDateString : String?
- var recordStatus : Int?
- @objc var selfHolidayDayTime : String?
- @objc var topUnitName : String?
- @objc var unitName : String?
- @objc var updateTime : String?
- var workOvertimeTimeDuration : Int?
- var workTimeDuration : Int?
- @objc var yearString : String?
-
-
- required override init() {
-
- }
- }
- // MARK:- 考勤统计分析model
- class OOAttandanceAnalyze:NSObject,DataModel {
- var abNormalDutyCount : Int?
- var absenceDayCount : Int?
- @objc var createTime : String?
- @objc var employeeName : String?
- @objc var id : String?
- var lackOfTimeCount : Int?
- var lateTimes : Int?
- var leaveEarlyTimes : Int?
- var offDutyTimes : Int?
- var onDutyDayCount : Int?
- var onDutyTimes : Int?
- var onSelfHolidayCount : Int?
- @objc var statisticMonth : String?
- @objc var statisticYear : String?
- @objc var topUnitName : String?
- @objc var unitName : String?
- @objc var updateTime : String?
- var workDayCount : Int?
-
- required override init() {
-
- }
- }
|