ldj/Logical/LProject.cs

345 lines
9.3 KiB
C#
Raw Normal View History

2023-05-23 16:13:17 +08:00
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);
}
}
}