import { ContractorVO } from '@/api/project/contractor/types';
import { ProjectTeamVO } from '@/api/project/projectTeam/types';

export interface ConstructionUserVO {
  /**
   * 主键id
   */
  id: string | number;

  /**
   * 微信id
   */
  openid: string | number;

  /**
   * 微信名称
   */
  nickName: string;

  /**
   * 人脸照
   */
  facePic: string;

  /**
   * 人脸照url
   */
  facePicUrl: string;

  /**
   * 人员姓名
   */
  userName: string;

  /**
   * 项目id
   */
  projectId: string | number;

  /**
   * 分包公司id
   */
  contractorId: string | number;

  /**
   * 分包公司
   */
  contractorVo: ContractorVO;

  /**
   * 班组id
   */
  teamId: string | number;

  /**
   * 班组
   */
  teamVo: ProjectTeamVO;

  /**
   * 状态（0在职 1离职）
   */
  status: number;

  /**
   * 是否代打
   */
  isPinch: number;

  /**
   * 联系电话
   */
  phone: string;

  /**
   * 0:保密 1:男 2女
   */
  sex: number;

  /**
   * 民族
   */
  nation: string;

  /**
   * 身份证正面照片
   */
  sfzFrontPic: string;

  /**
   * 身份证背面照片
   */
  sfzBackPic: string;

  /**
   * 身份证号码
   */
  sfzNumber: string;

  /**
   * 身份证有效开始期
   */
  sfzStart: string;

  /**
   * 身份证有效结束期
   */
  sfzEnd: string;

  /**
   * 身份证地址
   */
  sfzSite: string;

  /**
   * 身份证出生日期
   */
  sfzBirth: string;

  /**
   * 籍贯
   */
  nativePlace: string;

  /**
   * 银行卡图片
   */
  yhkPic: string;

  /**
   * 银行卡号
   */
  yhkNumber: string;

  /**
   * 开户行
   */
  yhkOpeningBank: string;

  /**
   * 持卡人
   */
  yhkCardholder: string;

  /**
   * 工种(字典type_of_work)
   */
  typeOfWork: number;

  /**
   * 特种工作证图片
   */
  specialWorkPic: string;

  /**
   * 打卡(0启用打卡 1禁止打卡)
   */
  clock: number;

  /**
   * 入场时间
   */
  entryDate: string;

  /**
   * 离场时间
   */
  leaveDate: string;

  /**
   * 薪水
   */
  salary: number;

  /**
   * 备注
   */
  remark: string;

  /**
   * 创建时间
   */
  createTime: string;
}

export interface ConstructionUserForm extends BaseEntity {
  /**
   * 主键id
   */
  id?: string | number;

  /**
   * 微信id
   */
  openid?: string | number;

  /**
   * 微信名称
   */
  nickName?: string;

  /**
   * 人脸照
   */
  facePic?: string;

  /**
   * 人员姓名
   */
  userName?: string;

  /**
   * 项目id
   */
  projectId?: string | number;

  /**
   * 分包公司id
   */
  contractorId?: string | number;

  /**
   * 班组id
   */
  teamId?: string | number;

  /**
   * 状态（0在职 1离职）
   */
  status?: number;

  /**
   * 是否代打
   */
  isPinch?: number;

  /**
   * 联系电话
   */
  phone?: string;

  /**
   * 0:保密 1:男 2女
   */
  sex?: number;

  /**
   * 民族
   */
  nation?: string;

  /**
   * 身份证正面照片
   */
  sfzFrontPic: string;

  /**
   * 身份证背面照片
   */
  sfzBackPic: string;

  /**
   * 身份证号码
   */
  sfzNumber?: string;

  /**
   * 身份证有效开始期
   */
  sfzStart?: string;

  /**
   * 身份证有效结束期
   */
  sfzEnd?: string;

  /**
   * 身份证地址
   */
  sfzSite?: string;

  /**
   * 身份证出生日期
   */
  sfzBirth?: string;

  /**
   * 籍贯
   */
  nativePlace?: string;

  /**
   * 银行卡图片
   */
  yhkPic: string;

  /**
   * 银行卡号
   */
  yhkNumber?: string;

  /**
   * 开户行
   */
  yhkOpeningBank?: string;

  /**
   * 持卡人
   */
  yhkCardholder?: string;

  /**
   * 工种(字典type_of_work)
   */
  typeOfWork?: number;

  /**
   * 特种工作证图片
   */
  specialWorkPic: string;

  /**
   * 打卡(0启用打卡 1禁止打卡)
   */
  clock?: number;

  /**
   * 入场时间
   */
  entryDate?: string;

  /**
   * 离场时间
   */
  leaveDate?: string;

  /**
   * 薪水
   */
  salary?: number;

  /**
   * 备注
   */
  remark?: string;
}

export interface ConstructionUserQuery extends PageQuery {
  /**
   * 微信id
   */
  openid?: string | number;

  /**
   * 微信名称
   */
  nickName?: string;

  /**
   * 人员姓名
   */
  userName?: string;

  /**
   * 项目id
   */
  projectId?: string | number;

  /**
   * 分包公司id
   */
  contractorId?: string | number;

  /**
   * 班组id
   */
  teamId?: string | number;

  /**
   * 不在班组id
   */
  notTeamId?: string | number;

  /**
   * 状态（0在职 1离职）
   */
  status?: number;

  /**
   * 是否代打
   */
  isPinch?: number;

  /**
   * 联系电话
   */
  phone?: string;

  /**
   * 0:保密 1:男 2女
   */
  sex?: number;

  /**
   * 民族
   */
  nation?: string;

  /**
   * 身份证号码
   */
  sfzNumber?: string;

  /**
   * 身份证有效开始期
   */
  sfzStart?: string;

  /**
   * 身份证有效结束期
   */
  sfzEnd?: string;

  /**
   * 身份证地址
   */
  sfzSite?: string;

  /**
   * 身份证出生日期
   */
  sfzBirth?: string;

  /**
   * 籍贯
   */
  nativePlace?: string;

  /**
   * 银行卡号
   */
  yhkNumber?: string;

  /**
   * 开户行
   */
  yhkOpeningBank?: string;

  /**
   * 持卡人
   */
  yhkCardholder?: string;

  /**
   * 工种(字典type_of_work)
   */
  typeOfWork?: number;

  /**
   * 打卡(0启用打卡 1禁止打卡)
   */
  clock?: number;

  /**
   * 入场时间
   */
  entryDate?: string;

  /**
   * 离场时间
   */
  leaveDate?: string;

  /**
   * 薪水
   */
  salary?: number;

  /**
   * 日期范围参数
   */
  params?: any;
}
