345 lines
		
	
	
		
			9.3 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			345 lines
		
	
	
		
			9.3 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | |||
|  | using System.Collections; | |||
|  | using DeiNiu.Utils; | |||
|  | using DeiNiu.wms.Data.Model; | |||
|  | using System.Data; | |||
|  | using System.Transactions; | |||
|  | namespace DeiNiu.wms.Logical | |||
|  | { | |||
|  |     [Serializable] | |||
|  |     public class LProject | |||
|  |     { | |||
|  |         private Project _pjObj; | |||
|  |         private ProjectDetail _pdObj; | |||
|  |         private ProjectApproveList _paObj = new ProjectApproveList(); | |||
|  | 
 | |||
|  |         public LProject() | |||
|  |         { | |||
|  | 
 | |||
|  |             Initialize(); | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF>ϸ<EFBFBD><CFB8>id<69><64>ʼ<EFBFBD><CABC> | |||
|  |         /// <20><><EFBFBD>Ǹ<EFBFBD><C7B8><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF>id | |||
|  |         /// </summary> | |||
|  |         /// <param name="pjId"></param> | |||
|  |         /// <param name="pdId"></param> | |||
|  |         public void Initialize(int pjId, int pdId) | |||
|  |         { | |||
|  |             _pjObj = pjId != 0 ? new Project(pjId) : new Project(); | |||
|  |             _pdObj = pdId != 0 ? new ProjectDetail(pdId) : new ProjectDetail(); | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// get a record by project detail id | |||
|  |         /// </summary> | |||
|  |         public void Initialize(int pdId) | |||
|  |         { | |||
|  |             _pdObj = pdId != 0 ? new ProjectDetail(pdId) : new ProjectDetail(); | |||
|  |             _pjObj = _pdObj.pd_project != 0 ? new Project(_pdObj.pd_project) : new Project(); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// get a record by id 0 | |||
|  |         /// </summary> | |||
|  |         public void Initialize() | |||
|  |         { | |||
|  |             Initialize(0, 0); | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |         public Project GetProject | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return _pjObj; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         public ProjectDetail GetProjectDetail | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return _pdObj; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         public ProjectApproveList PaObj | |||
|  |         { | |||
|  |             get { return _paObj; } | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// get all data | |||
|  |         /// </summary> | |||
|  |         public DataSet GetAllProject() | |||
|  |         { | |||
|  |             return _pjObj.Query(); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// get all data | |||
|  |         /// </summary> | |||
|  |         public DataTable GetAllProjectDetail(int prjId) | |||
|  |         { | |||
|  |             return _pdObj.GetProjectDetails(prjId); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// get all data | |||
|  |         /// </summary> | |||
|  |         public DataSet GetAllActiveProjects() | |||
|  |         { | |||
|  |             return _pjObj.QueryActived(); | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// get all data | |||
|  |         /// </summary> | |||
|  |         public DataTable GetAllProjectDetail(int emId, string year, string month) | |||
|  |         { | |||
|  |             switch (month) | |||
|  |             { | |||
|  |                 case "0": | |||
|  |                     return GetAllProjectDetail(emId, year); | |||
|  |                 default: | |||
|  |                     return _pjObj.GetProjects(emId, year, month); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// get all data | |||
|  |         /// </summary> | |||
|  |         public DataTable GetAllProjectDetail(int emId, string year) | |||
|  |         { | |||
|  |             return _pjObj.GetProjects(emId, year); | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// ɾ<><C9BE><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>֧<EFBFBD><D6A7> | |||
|  |         /// </summary> | |||
|  |         /// <param name="projId"></param> | |||
|  |         public void Delete() | |||
|  |         { | |||
|  |             DataTable dt = GetAllProjectDetail(_pjObj.ID); | |||
|  |             ProjectDetail pd; | |||
|  |     //        using (TransactionScope trans = new TransactionScope()) | |||
|  |             { | |||
|  |                 try | |||
|  |                 { | |||
|  |                     foreach (DataRow dr in dt.Rows) | |||
|  |                     { | |||
|  |                         pd = new ProjectDetail(Convert.ToInt32(dr["pk_projDetail"].ToString())); | |||
|  |                         pd.Delete(); | |||
|  |                     } | |||
|  | 
 | |||
|  |                     _pjObj.Delete();  | |||
|  |            //         trans.Complete(); | |||
|  |                 } | |||
|  |                 catch (MyException) | |||
|  |                 { | |||
|  |                     throw; | |||
|  |                 } | |||
|  |                 catch (Exception) | |||
|  |                 { | |||
|  |                     throw new Exception("<22><><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD>Ŀɾ<C4BF><C9BE>ʧ<EFBFBD>ܡ<EFBFBD>"); | |||
|  |                 } | |||
|  | 
 | |||
|  | 
 | |||
|  |             } | |||
|  | 
 | |||
|  |            | |||
|  |         } | |||
|  |         public void UpdateProject() | |||
|  |         { | |||
|  | //           using (TransactionScope trans = new TransactionScope()) | |||
|  |             { | |||
|  |                 try | |||
|  |                 { | |||
|  |                     _pjObj.Update();  | |||
|  |  //                   trans.Complete(); | |||
|  |                 } | |||
|  |                 catch (MyException) | |||
|  |                 { | |||
|  |                     throw; | |||
|  |                 } | |||
|  |                 catch (Exception) | |||
|  |                 { | |||
|  | 
 | |||
|  |                     throw new Exception("<22><><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>"); | |||
|  |                 } | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>֧<EFBFBD><D6A7> | |||
|  |         /// </summary> | |||
|  |         /// <param name="projId"></param> | |||
|  |         public void AddProject() | |||
|  |         { | |||
|  | //            using (TransactionScope trans = new TransactionScope()) | |||
|  |             { | |||
|  |                 try | |||
|  |                 { | |||
|  | 
 | |||
|  |                     ProjectDetail pd; | |||
|  |                     _pjObj.Add(); | |||
|  |                     DateTime dt = new DateTime(); | |||
|  |                     DateTime dt1 = Convert.ToDateTime(_pjObj.pj_planStartDate); | |||
|  |                     DateTime dt2 = Convert.ToDateTime(_pjObj.pj_planEndDate); | |||
|  |                     TimeSpan ts = dt2 - dt1; | |||
|  |                     pd = new ProjectDetail(); | |||
|  |                     pd.pd_project = _pjObj.ID; | |||
|  |                     pd.pd_year = dt1.Year.ToString(); | |||
|  |                     pd.pd_month = dt1.Month.ToString(); | |||
|  |                     pd.pd_status = ProjectDetailStatus.<EFBFBD>¶<EFBFBD>δ<EFBFBD>ύ; | |||
|  |                     pd.Add(); | |||
|  |                   | |||
|  |                     while (true) | |||
|  |                     { | |||
|  |                         if (dt1.Year == dt2.Year && dt1.Month == dt2.Month) | |||
|  |                             break; | |||
|  | 
 | |||
|  |                         dt1 = dt1.AddMonths(1); | |||
|  |                         pd = new ProjectDetail(); | |||
|  |                         pd.pd_project = _pjObj.ID; | |||
|  |                         pd.pd_year = dt1.Year.ToString(); | |||
|  |                         pd.pd_month = dt1.Month.ToString(); | |||
|  |                         pd.pd_status = DeiNiu.Utils.ProjectDetailStatus.<EFBFBD>¶<EFBFBD>δ<EFBFBD>ύ; | |||
|  |                         pd.Add(); | |||
|  | 
 | |||
|  |                     } | |||
|  | //                    trans.Complete(); | |||
|  |                 } | |||
|  |                 catch (MyException) | |||
|  |                 { | |||
|  |                     throw; | |||
|  |                 } | |||
|  |                 catch (Exception) | |||
|  |                 { | |||
|  |                      | |||
|  |                     throw new Exception("<22><><EFBFBD><EFBFBD><EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>ʧ<EFBFBD>ܡ<EFBFBD>"); | |||
|  |                 } | |||
|  | 
 | |||
|  | 
 | |||
|  |             } | |||
|  | 
 | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// <20><><EFBFBD><EFBFBD>ְ<EFBFBD><D6B0><EFBFBD>Բ鿴<D4B2><E9BFB4><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD><C5B5><EFBFBD><EFBFBD><EFBFBD> | |||
|  |         /// </summary> | |||
|  |         /// <param name="depId"></param> | |||
|  |         /// <param name="year"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public DataTable GetProjectsByDept(int depId, string year) | |||
|  |         { | |||
|  |             return _pjObj.GetProjectsByDept(depId, year); | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// <20><><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD>Բ鿴 ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |         /// </summary> | |||
|  |         /// <param name="year"></param> | |||
|  |         /// <param name="month"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public DataTable GetProjectsByYearMonth(string year, string month) | |||
|  |         { | |||
|  |             //    | |||
|  |             switch (month) | |||
|  |             { | |||
|  |                 case "0": | |||
|  |                     return GetProjectsByYear(year); | |||
|  |                 default: | |||
|  |                     return _pjObj.GetProjectsByYearMonth(year, month); | |||
|  |             } | |||
|  | 
 | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// <20><><EFBFBD><EFBFBD>С<EFBFBD>鿼<EFBFBD><E9BFBC><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD> | |||
|  |         /// </summary> | |||
|  |         /// <param name="year"></param> | |||
|  |         /// <param name="month"></param> | |||
|  |         /// <returns></returns> | |||
|  |         public DataTable GetKaoHeHistoryProjectsByYearMonth(string year, string month) | |||
|  |         { | |||
|  |             //    | |||
|  |             switch (month) | |||
|  |             { | |||
|  |                 case "0": | |||
|  |                     return GetKaoHeHistoryProjectsByYear(year); | |||
|  |                 default: | |||
|  |                     return _pjObj.GetKaoHeHistoryProjectsByYearMonth(year, month); | |||
|  |             } | |||
|  | 
 | |||
|  |         } | |||
|  |         /// <summary> | |||
|  |         /// <20><><EFBFBD><EFBFBD>С<EFBFBD>鿼<EFBFBD><E9BFBC><EFBFBD><EFBFBD>ʷ<EFBFBD><CAB7><EFBFBD><EFBFBD> | |||
|  |         /// </summary> | |||
|  |         /// <param name="year"></param>  | |||
|  |         /// <returns></returns> | |||
|  |         public DataTable GetKaoHeHistoryProjectsByYear(string year) | |||
|  |         { | |||
|  |             //    return _pjObj.GetProjectsByYearMonth(year, month); switch (month); | |||
|  | 
 | |||
|  |             return _pjObj.GetKaoHeHistoryProjectsByYear(year); | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// <20>ֹ<EFBFBD><D6B9>쵼<EFBFBD>Ϳ<EFBFBD><CDBF><EFBFBD>С<EFBFBD><D0A1><EFBFBD><EFBFBD><EFBFBD>Բ鿴 ȫ<><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD> | |||
|  |         /// </summary> | |||
|  |         /// <param name="year"></param>  | |||
|  |         /// <returns></returns> | |||
|  |         public DataTable GetProjectsByYear(string year) | |||
|  |         { | |||
|  |             //    return _pjObj.GetProjectsByYearMonth(year, month); switch (month); | |||
|  | 
 | |||
|  |             return _pjObj.GetProjectsByYear(year); | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         ///<2F><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>б<EFBFBD> | |||
|  |         /// </summary> | |||
|  |         /// <param name="deptList"> <20><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD></param> | |||
|  |         /// <returns></returns> | |||
|  |         public DataTable Get4ApproveList(ArrayList deptList, string year, string month) | |||
|  |         { | |||
|  |             if (deptList.Count ==0) return new DataTable(); | |||
|  |             switch (month) | |||
|  |             { | |||
|  |                 case "0": | |||
|  |                     return _pjObj.Get4ApproveListYear(deptList, year); | |||
|  |                 default: | |||
|  |                     return _pjObj.Get4ApproveListYearMonth(deptList, year, month); | |||
|  |             } | |||
|  | 
 | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  |         public DataTable GetSumProjectsByYearMonth(string year, string month) | |||
|  |         { | |||
|  |             switch (month) | |||
|  |             { | |||
|  |                 case "0": | |||
|  |                     return GetSumProjectsByYear(year); | |||
|  |                 default: | |||
|  |                     return _pjObj.GetSumProjectsByYearMonth(year, month); | |||
|  |             } | |||
|  |         } | |||
|  |         public DataTable GetSumProjectsByYear(string year) | |||
|  |         { | |||
|  |             return _pjObj.GetSumProjectsByYear(year); | |||
|  |         } | |||
|  | 
 | |||
|  | 
 | |||
|  | 
 | |||
|  |     } | |||
|  | 
 | |||
|  | 
 | |||
|  | } |