Просмотр исходного кода

员工关联查询 增加 员工名称模糊查询

张忠帅 1 год назад
Родитель
Сommit
307ceb2eb5

Разница между файлами не показана из-за своего большого размера
+ 656 - 631
DK.Client/SystemModule/F_MST_0210.Designer.cs


+ 2 - 0
DK.Client/SystemModule/F_MST_0210.cs

@@ -328,6 +328,8 @@ namespace Dongke.IBOSS.PRD.Client.SystemModule
 			this._userInfo.OrganizationID = scbOrganization.SearchedPKMember;
 			// 备注
 			this._userInfo.Remarks = this.txtRemarks.Text.Trim();
+
+			this._userInfo.StaffName = this.txtStaffName.Text.Trim();
 			if (this.chkIsWorker.Checked == true)
 			{
 				_userInfo.IsWorker = 1;

+ 85 - 15
DK.Service/SystemModuleLogic/SystemModuleLogic.cs

@@ -93,21 +93,91 @@ namespace Dongke.IBOSS.PRD.Service.SystemModuleLogic
 			try
 			{
 				con.Open();
-				OracleParameter[] paras = new OracleParameter[]{
-					new OracleParameter("in_accountID",sUserInfo.AccountID),
-					new OracleParameter("in_userID",sUserInfo.UserID),
-					new OracleParameter("in_userCode",requestEntity.UserCode),
-					new OracleParameter("in_userName",requestEntity.UserName),
-					new OracleParameter("in_organizationID",requestEntity.OrganizationID),
-					new OracleParameter("in_remarks",requestEntity.Remarks),
-					new OracleParameter("in_limitMAC",requestEntity.LimitMAC),
-					new OracleParameter("in_isWorker",requestEntity.IsWorker),
-					new OracleParameter("rs_result",OracleDbType.RefCursor),
-					new OracleParameter("in_ValueFlag",requestEntity.IsValueFlag),
-					new OracleParameter("in_IsLocked",requestEntity.IsLocked),
-				};
-				paras[8].Direction = ParameterDirection.Output;
-				DataSet ds = con.ExecStoredProcedure("PRO_MST_SearchUser", paras);
+				string sql = @"SELECT
+										DISTINCT 
+											0 AS Sel,
+											U.UserID,
+											U.UserCode,
+											U.limitMAC,
+											U.UserName,
+											POST.PostName,
+											U.CanPCLogin,
+											U.CanSmartLogin,
+											U.IsWorker,
+											U.IsGroutingWorker,
+											U.IsPublicBody,
+											U.CanLoginPRD,
+											U.CanLoginMBC,
+											U.ValueFlag,
+											O.OrganizationName,
+											O.OrganizationFullName,
+											UL.ISLOCKED,
+											U.Remarks,
+											Printer.PrinterName BarcodePrinter,
+											plc.plcName,
+											(
+											SELECT
+												listagg ( to_char( s.staffname ), ',' ) within GROUP ( ORDER BY s.staffcode ) staffnames 
+											FROM
+												tp_mst_userstaff us
+												INNER JOIN tp_hr_staff s ON s.staffid = us.staffid 
+											WHERE
+												us.userid = U.userid 
+											) staffnames 
+										FROM
+											TP_MST_User U
+											LEFT JOIN TP_MST_Organization O ON U.Organizationid = O.Organizationid
+											LEFT JOIN TP_MST_POST POST ON POST.POSTID = U.POST
+											LEFT JOIN TP_MST_BarcodePrinter Printer ON Printer.PrinterID = U.BarcodePrinterID
+											LEFT JOIN TP_MST_PLC plc ON plc.plcid = U.plcid
+											INNER JOIN TP_MST_USERLOGIN UL ON U.USERID = UL.USERID
+											LEFT JOIN TP_MST_USERSTAFF us ON us.USERID = u.USERID
+											LEFT JOIN TP_HR_STAFF staff ON staff.STAFFID = us.STAFFID 
+										WHERE
+											U.AccountID = 1 ";
+				if (requestEntity.UserCode != "" && requestEntity.UserCode != null) {
+					sql += " AND U.UserCode like '%" + requestEntity.UserCode + "%'";
+				}
+
+				if (requestEntity.UserName != "" && requestEntity.UserName != null)
+				{
+					sql += " AND U.UserCode like '%" + requestEntity.UserName + "%'";
+				}
+
+				if (requestEntity.OrganizationID >0)
+				{
+					sql += "AND U.OrganizationID="+ requestEntity.OrganizationID + "";
+				}
+
+				if (requestEntity.Remarks != "" && requestEntity.Remarks != null)
+				{
+					sql += " AND U.Remarks like '%" + requestEntity.UserCode + "%'";
+				}
+
+				if (requestEntity.LimitMAC != "" && requestEntity.LimitMAC != null)
+				{
+					sql += " AND U.LimitMAC like '%" + requestEntity.LimitMAC + "%'";
+				}
+
+				if (requestEntity.IsWorker ==1)
+				{
+					sql += "AND U.isWorker=" + requestEntity.IsWorker + "";
+				}
+
+				if (requestEntity.IsValueFlag != "" && requestEntity.IsValueFlag != null)
+				{
+					sql += "AND U.ValueFlag=" + requestEntity.IsValueFlag + "";
+				}
+				if (requestEntity.IsLocked != "" && requestEntity.IsLocked != null)
+				{
+					sql += "AND U.IsLocked=" + requestEntity.IsLocked + "";
+				}
+				if (requestEntity.StaffName != "" && requestEntity.StaffName != null)
+				{
+					sql += " AND STAFF.STAFFNAME like '%" + requestEntity.StaffName + "%'";
+				}
+
+				DataSet ds = con.GetSqlResultToDs(sql, null);
 				return ds;
 			}
 			catch (Exception ex)

+ 27 - 0
WCF.Service/WCF.DataModels/SystemModule/UserEntity.cs

@@ -366,5 +366,32 @@ namespace Dongke.IBOSS.PRD.WCF.DataModels
             get;
             set;
         }
+        /// <summary>
+        /// 员工ID
+        /// </summary>
+        [DataMember]
+        public string StaffID
+        {
+            get;
+            set;
+        }
+        /// <summary>
+        /// 员工编码
+        /// </summary>
+        [DataMember]
+        public string StaffCode
+        {
+            get;
+            set;
+        }
+        /// <summary>
+        /// 员工姓名
+        /// </summary>
+        [DataMember]
+        public string StaffName
+        {
+            get;
+            set;
+        }
     }
 }

Некоторые файлы не были показаны из-за большого количества измененных файлов