1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
using CY.IDAL;
using CY.Model;
using AbstractFactory;
using CY.IBaseDAL;
using CY.Infrastructure.DESEncrypt;
using CY.Infrastructure.Query;
 
namespace CY.BLL
{
    public class OA_StaffBLL
    {
        IOA_StaffDAL idal_IOA_StaffDAL = null;
 
        public OA_StaffBLL()
        {
            idal_IOA_StaffDAL = Factory.GetDALByInterfaceName(DALInterface.IOA_StaffDAL) as IOA_StaffDAL;
        }
 
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool InsertModel(Model.OA_Staff model)
        {
            return idal_IOA_StaffDAL.InserModel(model);
        }
 
        /// <summary>
        /// 更新
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool UpdateModel(Model.OA_Staff model)
        {
 
            return idal_IOA_StaffDAL.UpdateModel(model);
        }
 
        /// <summary>
        /// 删除
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool DeleteModel(Model.OA_Staff model)
        {
 
            return idal_IOA_StaffDAL.DeleteModel(model);
        }
 
        /// <summary>
        /// 根据编号获得信息
        /// </summary>
        /// <param name="Keyid">编号</param>
        /// <returns></returns>
        public OA_Staff GetModelByKeyid(int? Keyid)
        {
            return idal_IOA_StaffDAL.GetModelByKeyid(Keyid);
        }
 
        /// <summary>
        /// 分页查询
        /// </summary>
        /// <param name="pagination"></param>
        /// <param name="DepartmentId"></param>
        /// <param name="MemberId"></param>
        /// <param name="MemberName"></param>
        /// <param name="Status"></param>
        /// <returns></returns>
        public IEnumerable<Model.OA_Staff> SelectModelPage(Infrastructure.Query.Pagination pagination, int? DepartmentId, Guid MemberId, string MemberName, string Status)
        {
          var ssss  =  idal_IOA_StaffDAL.SelectModelPage(pagination, DepartmentId, MemberId, MemberName, Status);
 
            OA_FirmRoleBLL bll_OA_FirmRoleBLL = new OA_FirmRoleBLL();
            foreach (var oA_Staff   in ssss)
            {
              var sss =  bll_OA_FirmRoleBLL.SelectOA_StaffRoleRel(oA_Staff.Keyid);
                if(sss != null)
                {
                 var ssssss =   bll_OA_FirmRoleBLL.SelectModel(sss.RoleId);
                    if (ssssss != null)
                    {
                        oA_Staff.RoleName = ssssss.RoleName;
                    }
                   
                }
            }
            return ssss;
        }
 
        /// <summary>
        /// 更新员工信息
        /// </summary>
        /// <param name="m_OA_Staff"></param>
        /// <param name="m_EC_MemberBasic"></param>
        /// <returns></returns>
        public bool UpdateStaff(OA_Staff m_OA_Staff, EC_MemberBasic m_EC_MemberBasic, OA_StaffRoleRel m_OA_StaffRoleRel)
        {
            return idal_IOA_StaffDAL.UpdateStaff(m_OA_Staff, m_EC_MemberBasic, m_OA_StaffRoleRel);
        }
 
        /// <summary>
        /// 添加员工信息
        /// </summary>
        /// <param name="m_OA_Staff"></param>
        /// <param name="m_EC_MemberBasic"></param>
        /// <returns></returns>
        public bool AddStaff(OA_Staff m_OA_Staff, EC_MemberBasic m_EC_MemberBasic, OA_StaffRoleRel m_OA_StaffRoleRel)
        {
            return idal_IOA_StaffDAL.AddStaff(m_OA_Staff, m_EC_MemberBasic, m_OA_StaffRoleRel);
        }
 
        /// <summary>
        /// 根据员工会员编号获得信息
        /// </summary>
        /// <param name="MemberId">编号</param>
        /// <returns></returns>
        public OA_Staff GetModelByMemberId(Guid MemberId)
        {
            return idal_IOA_StaffDAL.GetModelByMemberId(MemberId);
        }
 
        /// <summary>
        /// 根据厂商编号获取员工列表
        /// </summary>
        /// <param name="FirmId"></param>
        /// <param name="IsBusinessManager"></param>
        /// <param name="IsAccountManager"></param>
        /// <returns></returns>
        public IEnumerable<Model.OA_Staff> SelectListByFirmId(Guid FirmId, bool? IsBusinessManager, bool? IsAccountManager)
        {
            return idal_IOA_StaffDAL.SelectListByFirmId(FirmId, IsBusinessManager, IsAccountManager);
        }
 
        /// <summary>
        /// 检测员工姓名是否重复
        /// </summary>
        /// <param name="Name"></param>
        /// <param name="MemberId"></param>
        /// <returns></returns>
        public int IsExitsName(string Name, Guid MemberId)
        {
            return idal_IOA_StaffDAL.IsExitsName(Name,MemberId);
        }
 
        /// <summary>
        /// 根据部门获取员工
        /// </summary>
        /// <returns></returns>
        public DataTable GetStaffByDep(Guid FirmId,string DepartmentId)
        {
 
            return idal_IOA_StaffDAL.GetStaffByDep(FirmId,DepartmentId);
        }
 
        /// <summary>
        /// 生日提醒
        /// </summary>
        /// <param name="pagination"></param>
        /// <param name="DepartmentId"></param>
        /// <param name="MemberId"></param>
        /// <param name="MemberName"></param>
        /// <param name="Status"></param>
        /// <returns></returns>
        public IEnumerable<Model.OA_Staff> BirthdayRemind(Infrastructure.Query.Pagination pagination, int? DepartmentId, Guid MemberId, string MemberName, string Status)
        {
            return idal_IOA_StaffDAL.BirthdayRemind(pagination, DepartmentId, MemberId, MemberName, Status);
        }
    }
}