/*******************************************************************************
* Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
* 类的信息:
* 1.程序名称:IHRModule.cs
* 2.功能描述:人力资源模块服务契约
* 编辑履历:
* 作者 日期 版本 修改内容
* 张国印 2014/09/04 1.00 新建
*******************************************************************************/
using System;
using System.Collections.Generic;
using System.Data;
using System.ServiceModel;
using Dongke.IBOSS.PRD.WCF.DataModels;
using Dongke.IBOSS.PRD.WCF.DataModels.HRModule;
namespace Dongke.IBOSS.PRD.WCF.Contracts
{
///
/// 人力资源模块服务契约
///
[ServiceContract(ConfigurationName = "HRModuleService.IHRModule",
Name = "IHRModule",
Namespace = "Dongke.IBOSS.PRD.WCF.Contracts")]
public interface IHRModule
{
#region 查询逻辑
[OperationContract]
string GetData();
///
/// 员工当案一览
///
/// 员工档案实体类/param>
/// DataSet
[OperationContract]
DataSet SearchHrStaff(SearchStaffEntity pSearchStaff);
///
/// 是否存在相同的员工编码
///
/// 员工编码
/// DataSet
[OperationContract]
DataSet IsExistsStaffCode(string staffCode);
///
/// 获取员工行数据
///
/// 员工ID
/// DataSet
[OperationContract]
DataSet GetRowData(int staffid);
///
/// 获取员工和员工履历信息
///
/// 员工实体类
/// DataSet
[OperationContract]
DataSet SearchHrStaffAndRecord(SearchStaffEntity staffEntity);
///
/// 获取员工信息中审批信息
///
/// 员工实体类
/// DataSet
[OperationContract]
DataSet SearchHrStaffApprove(SearchStaffEntity staffEntity);
///
/// 获取员工图片
///
/// 员工ID
///
[OperationContract]
DataSet GetImageByStaffId(int staffId);
///
/// 获了员工履历行数据
///
/// 员工履历ID
/// DataSet
[OperationContract]
DataSet GetStaffRecorsRowData(int staffrecordid);
///
/// 根据工号查询员工档案信息
///
/// 员工ID
/// DataSet
///
/// 作者 日期 内容
/// 冯雪 2014-9-23 新建
///
[OperationContract]
DataSet SearchHrStaffInfo(int userId);
///
/// 根据查询非工号下的员工档案信息
///
/// 员工查询实体
/// DataSet
[OperationContract]
DataSet SearchStaffInfo(SearchStaffEntity searchStaffEntity);
///
/// 根据传入的查询实体获取员工考勤表中的数据
///
/// 查询实体
/// DataSet员工考勤数据集集合
[OperationContract]
DataSet SearcStaffAttendance(SearchAttendanceEntity searchAttendanceEntity);
///
/// 获取员工员工考勤编辑信息
///
/// 查询实体
/// DataSet员工考勤数据集集合
[OperationContract]
DataSet SearcStaffAttendanceForEdit(SearchAttendanceEntity searchAttendanceEntity);
///
/// 将导入Excel中的数据转换为GridView显示的数据集
///
/// Excel中的数据员工集合
/// DataSet员工考勤信息表
[OperationContract]
DataSet GetStaffAttendanceInfoForExcel(DataTable pStaff);
///
/// 根据传入的实体获取行政奖惩信息
///
/// 查询实体
/// DataSet行政奖惩信息表
[OperationContract]
DataSet SearcStaffAdminRAPInfo(SearchAdminRAPEntity searchAdminRAPEntity);
///
/// 获取员工报餐信息
///
/// 员工报餐查询实体
/// DataSet员工报餐信息表
[OperationContract]
DataSet SearcStaffDailyMealInfo(SearchDailyMealEntity searchDailyMealEntity);
///
/// 获取员工报餐编辑信息
///
/// 员工报餐查询实体
/// DataSet员工报餐信息表
[OperationContract]
DataSet SearcStaffDailyMealInfoForEdit(SearchDailyMealEntity searchDailyMealEntity);
///
/// 将导入Excel中的数据转换为GridView显示的数据集
///
/// Excel中的数据员工集合
/// DataSet员工报餐信息表
[OperationContract]
DataSet GetStaffDailyMealInfoForExcel(DataTable pStaff, WCFConstant.FormMode pStatus);
///
/// 获取管理者或组内员工的数据源
///
/// 员工查询实体
/// DataSet
[OperationContract]
DataSet SearchManagersOrMembers(SearchStaffEntity searchStaffEntity);
#endregion
#region 业务逻辑
///
/// 添加员工档案
///
/// 员工实体类
/// 员工图片集
/// HRResultEntity
[OperationContract]
HRResultEntity AddStaffInfo(StaffEntity requestEntity, List staffPhoto);
///
/// 导入员工档案
///
/// 员工档案
/// ServiceResultEntity
[OperationContract]
ServiceResultEntity ImportStaffInfo(DataTable staffInfo);
///
/// 更新员工档案
///
/// 员工实体类
/// 员工图片集
/// HRResultEntity
[OperationContract]
HRResultEntity EditStaffInfo(StaffEntity requestEntity, List staffPhoto);
///
/// 设置禁用员工
///
/// 员工ID
/// HRResultEntity
[OperationContract]
HRResultEntity SetValueFlag(int staffid);
///
/// 添加员工履历
///
/// 员工履历实体类
/// HRResultEntity
[OperationContract]
HRResultEntity AddStaffRecord(StaffRecordEntity staffrecord);
///
/// 编辑员工履历
///
/// 员工履历实体类
/// HRResultEntity
[OperationContract]
HRResultEntity EditStaffRecord(StaffRecordEntity staffrecord);
///
/// 保存工种调整方法
///
/// 员工履历实体类
/// 状态 1:新增 2:保存
/// 0 没有数据被修改 -1存在待审批履历 -2员工履历被其他用户修改 -3员工档案被其他用户修改
[OperationContract]
HRResultEntity SaveTargetJobInfo(StaffRecordEntity staffRecordEntity, WCFConstant.FormMode editStatus);
///
/// 保存员工离职履历信息
///
/// 员工编号
/// 员工档案表时间戳
/// 员工履历表实体
/// 窗体是新增还是编辑
/// 0 没有数据被修改 -1员工档案被其他用户修改 -2存在待审批履历 -3员工履历被其他用户修改
[OperationContract]
HRResultEntity SaveStaffRecordDimission(int pUserId, DateTime pOPTimeStamp, StaffRecordEntity pStaffRecord, WCFConstant.FormMode pStatus);
///
/// 人事审批保存
///
/// 员工编号
/// 员工档案表时间戳
/// 员工履历表实体
/// 审批状态 True 通过 False 不通过
/// 审批意见
/// 0 没有数据被修改 -1员工档案被其他用户修改 -2存在待审批履历 -3员工履历被其他用户修改
[OperationContract]
HRResultEntity SaveHRDimissionApprovalInfo(int pUserId, DateTime pOPTimeStamp, StaffRecordEntity pStaffRecord, bool pState, string pMemo);
///
/// 设置禁用员工履历
///
/// 员工履历ID
/// HRResultEntity
[OperationContract]
HRResultEntity SetStaffRecordValueFlag(int staffrecordid);
///
/// 员工入职审批
///
/// 员工编号
/// 员工时间戳
/// 员工履历表实体
/// 审批状态 True 通过 False 不通过
/// 审批意见
/// HRResultEntity
[OperationContract]
HRResultEntity SaveHRStaffRecordApprovalInfo(int pUserId, DateTime pOPTimeStamp, StaffRecordEntity pStaffRecord, bool pState, string pMemo);
///
/// 工种调整审批保存
///
/// 员工编号
/// 员工档案表时间戳
/// 员工履历表实体
/// 审批状态 True 通过 False 不通过
/// 审批意见
/// 0 没有数据被修改 -1员工档案被其他用户修改 -2存在待审批履历 -3员工履历被其他用户修改
[OperationContract]
HRResultEntity SaveHRStaffJobsApprovalInfo(int pUserId, DateTime pOPTimeStamp, StaffRecordEntity pStaffRecord, bool pState, string pMemo);
///
/// 保存职务调整方法
///
/// 员工履历实体类
/// 用户基本信息
/// 状态 1:新增 2:保存
/// 0 没有数据被修改 -1存在待审批履历 -2员工履历被其他用户修改 -3员工档案被其他用户修改
[OperationContract]
HRResultEntity SaveTargetPostInfo(StaffRecordEntity staffRecordEntity, WCFConstant.FormMode editStatus);
///
/// 职务调整审批保存
///
/// 员工编号
/// 员工档案表时间戳
/// 员工履历表实体
/// 审批状态 True 通过 False 不通过
/// 审批意见
/// 0 没有数据被修改 -1员工档案被其他用户修改 -2存在待审批履历 -3员工履历被其他用户修改
[OperationContract]
HRResultEntity SaveHRStaffPostApprovalInfo(int pUserId, DateTime pOPTimeStamp, StaffRecordEntity pStaffRecord, bool pState, string pMemo);
///
/// 保存部门调整方法
///
/// 员工履历实体类
/// 状态 1:新增 2:保存
/// 0 没有数据被修改 -1存在待审批履历 -2员工履历被其他用户修改 -3员工档案被其他用户修改
[OperationContract]
HRResultEntity SaveTargetOrganizationInfo(StaffRecordEntity staffRecordEntity, WCFConstant.FormMode editStatus);
///
/// 部门调整审批保存
///
/// 员工编号
/// 员工档案表时间戳
/// 员工履历表实体
/// 审批状态 True 通过 False 不通过
/// 审批意见
/// 0 没有数据被修改 -1员工档案被其他用户修改 -2存在待审批履历 -3员工履历被其他用户修改
[OperationContract]
HRResultEntity SaveHRStaffOrganizationApprovalInfo(int pUserId, DateTime pOPTimeStamp, StaffRecordEntity pStaffRecord, bool pState, string pMemo);
///
/// 员工转正审批
///
/// 员工编号
/// 员工档案表的时间戳
/// 员工履历表实体
/// 审批状态 True 通过 False 不通过
/// 审批原因
/// HRResultEntity
[OperationContract]
HRResultEntity SaveHrStaffPositiveApprovalInfo(int pUserId, DateTime pOPTimeStamp, StaffRecordEntity pStaffRecord, bool pState, string pMemo);
///
/// 根据DataTable中的考勤数据更新数据表
///
/// 考勤数据表
/// HRResultEntity
[OperationContract]
HRResultEntity SaveStaffAttendanceInfo(DataTable pStaffAttendance);
///
/// 根据传入的实体保存 行政奖惩记录
///
/// 行政奖惩实体
/// 新增还是编辑枚举
/// HRResultEntity
[OperationContract]
HRResultEntity SaveStaffAdminRAPInfo(HRAdminRAPEntity pAdminRAPEntity, WCFConstant.FormMode pStatus);
///
/// 行政奖惩审批
///
/// 行政奖惩实体
/// 审批状态 True 通过 False 不通过
/// 审批原因
/// HRResultEntity
[OperationContract]
HRResultEntity SaveStaffAdminRAPApprovalInfo(HRAdminRAPEntity pAdminRAPEntity, bool pState);
///
/// 设置行政奖惩停用
///
/// 行政奖惩编号
/// HRResultEntity
[OperationContract]
HRResultEntity SetStaffAdminRAPValueFlag(int pRAPID);
///
/// 员工报餐保存
///
/// 待保存的数据表
/// 窗口状态枚举
/// HRResultEntity
[OperationContract]
HRResultEntity SaveStaffDailyMealInfo(DataTable pStaff, WCFConstant.FormMode pStatus);
#endregion
#region 工资结算
///
/// 根据结算时间获取各基础信息
///
/// 时间信息实体
/// 基础信息数据集
[OperationContract]
DataSet GetSalaryData(GetSalaryEntity gsEntity);
///
/// 工资结算记录一览
///
///
///
[OperationContract]
DataSet GetSettlementMain(GetSalaryEntity gsEntity);
///
/// 工资结算汇总数据集
///
///
///
[OperationContract]
DataSet GetSettlementDetail(int MainId);
///
/// 添加工资结算信息
///
/// 总结算信息实体
/// 各明细结算信息数据集
/// 结算用生产数据
/// 结算用考勤数据
/// 当前操作用户
/// 结果值
[OperationContract]
int AddSalarySettlement(GetSalaryEntity salaryEntity, DataSet dsStaffSalary,
DataSet dsBase);
///
/// 根据员工工资ID以及员工ID,获取员工工资各明细数据集
///
/// 员工工资ID
/// 员工ID
/// 各明细集合
[OperationContract]
DataSet GetStaffSalaryDetail(int StaffSalaryID, int StaffID);
///
/// 调整工资结算信息
///
/// 调整工资总体信息
/// 各员工工资信息集合
/// 影响行数
[OperationContract]
int EditSalarySettlement(GetSalaryEntity salaryEntity, DataTable dtStaffSalary);
///
/// 审批工资结算信息
///
/// 各员工工资信息集合
/// 影响行数
[OperationContract]
int AuditSalarySettlement(DataTable dtStaffSalary);
#endregion
}
}