277 lines
11 KiB
C#
277 lines
11 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web.UI.WebControls;
|
|
|
|
namespace BLL
|
|
{
|
|
public class CQMS_SubPlanService
|
|
{
|
|
public static string IsAgree(Object type, Object res)
|
|
{
|
|
string result = string.Empty;
|
|
if (type.ToString().Equals(Const.SubPlan_ReCompile) || type.ToString().Equals(Const.SubPlan_Compile))
|
|
{
|
|
res = null;
|
|
}
|
|
if (res != null)
|
|
{
|
|
if (Convert.ToBoolean(res))
|
|
{
|
|
result = "是";
|
|
}
|
|
else
|
|
{
|
|
result = "否";
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据分包施工质量计划Id删除一个分包施工质量计划信息
|
|
/// </summary>
|
|
/// <param name="SubPlanId">分包施工质量计划Id</param>
|
|
public static void DeleteSubPlan(string SubPlanId)
|
|
{
|
|
Model.SGGLDB db = Funs.DB;
|
|
Model.Plan_SubPlan SubPlan = db.Plan_SubPlan.First(e => e.SubPlanId == SubPlanId);
|
|
|
|
db.Plan_SubPlan.DeleteOnSubmit(SubPlan);
|
|
db.SubmitChanges();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 增加分包施工质量计划信息
|
|
/// </summary>
|
|
/// <param name="SubPlan">分包施工质量计划实体</param>
|
|
public static void AddSubPlan(Model.Plan_SubPlan SubPlan)
|
|
{
|
|
Model.SGGLDB db = Funs.DB;
|
|
Model.Plan_SubPlan newSubPlan = new Model.Plan_SubPlan();
|
|
newSubPlan.SubPlanId = SubPlan.SubPlanId;
|
|
newSubPlan.Code = SubPlan.Code;
|
|
newSubPlan.ProjectId = SubPlan.ProjectId;
|
|
newSubPlan.UnitId = SubPlan.UnitId;
|
|
newSubPlan.PlanName = SubPlan.PlanName;
|
|
newSubPlan.UnitWorkIds = SubPlan.UnitWorkIds;
|
|
newSubPlan.CNProfessionalCodes = SubPlan.CNProfessionalCodes;
|
|
newSubPlan.CompileMan = SubPlan.CompileMan;
|
|
newSubPlan.CompileDate = SubPlan.CompileDate;
|
|
newSubPlan.State = SubPlan.State;
|
|
newSubPlan.Edition = SubPlan.Edition;
|
|
newSubPlan.FilePath=SubPlan.FilePath;
|
|
db.Plan_SubPlan.InsertOnSubmit(newSubPlan);
|
|
db.SubmitChanges();
|
|
}
|
|
/// <summary>
|
|
/// 修改分包施工质量计划信息
|
|
/// </summary>
|
|
/// <param name="SubPlan">分包施工质量计划实体</param>
|
|
public static void UpdateSubPlan(Model.Plan_SubPlan SubPlan)
|
|
{
|
|
Model.SGGLDB db = Funs.DB;
|
|
Model.Plan_SubPlan newSubPlan = db.Plan_SubPlan.First(e => e.SubPlanId == SubPlan.SubPlanId);
|
|
newSubPlan.Code = SubPlan.Code;
|
|
newSubPlan.UnitId = SubPlan.UnitId;
|
|
newSubPlan.PlanName = SubPlan.PlanName;
|
|
newSubPlan.UnitWorkIds = SubPlan.UnitWorkIds;
|
|
newSubPlan.CNProfessionalCodes = SubPlan.CNProfessionalCodes;
|
|
newSubPlan.State = SubPlan.State;
|
|
newSubPlan.Edition = SubPlan.Edition;
|
|
newSubPlan.FilePath = SubPlan.FilePath;
|
|
db.SubmitChanges();
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 把状态转换代号为文字形式
|
|
/// </summary>
|
|
/// <param name="state"></param>
|
|
/// <returns></returns>
|
|
///
|
|
public static string ConvertState(object state)
|
|
{
|
|
if (state != null)
|
|
{
|
|
if (state.ToString() == BLL.Const.SubPlan_ReCompile)
|
|
{
|
|
return "重报";
|
|
}
|
|
else if (state.ToString() == BLL.Const.SubPlan_Compile)
|
|
{
|
|
return "编制";
|
|
}
|
|
else if (state.ToString() == BLL.Const.SubPlan_Audit)
|
|
{
|
|
return "会签";
|
|
}
|
|
else if (state.ToString() == BLL.Const.SubPlan_Complete)
|
|
{
|
|
return "审批完成";
|
|
}
|
|
}
|
|
return "";
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 根据分包施工质量计划Id获取一个分包施工质量计划信息
|
|
/// </summary>
|
|
/// <param name="SubPlanCode">分包施工质量计划Id</param>
|
|
/// <returns>一个分包施工质量计划实体</returns>
|
|
public static Model.Plan_SubPlan GetSubPlanBySubPlanId(string SubPlanId)
|
|
{
|
|
return Funs.DB.Plan_SubPlan.FirstOrDefault(x => x.SubPlanId == SubPlanId);
|
|
}
|
|
|
|
public static string GetProfessionalName(string cNProfessionalCodes)
|
|
{
|
|
string professionalName = string.Empty;
|
|
if (!string.IsNullOrEmpty(cNProfessionalCodes))
|
|
{
|
|
string[] strs = cNProfessionalCodes.Split(',');
|
|
foreach (var item in strs)
|
|
{
|
|
var cn = BLL.CNProfessionalService.GetCNProfessional(item);
|
|
if (cn != null)
|
|
{
|
|
professionalName += cn.ProfessionalName + ",";
|
|
}
|
|
}
|
|
if (!string.IsNullOrEmpty(professionalName))
|
|
{
|
|
professionalName = professionalName.Substring(0, professionalName.LastIndexOf(","));
|
|
}
|
|
}
|
|
return professionalName;
|
|
}
|
|
public static string GetUnitWorkName(string unitWorkIds)
|
|
{
|
|
string unitWorkName = string.Empty;
|
|
if (!string.IsNullOrEmpty(unitWorkIds))
|
|
{
|
|
string[] strs = unitWorkIds.Split(',');
|
|
foreach (var item in strs)
|
|
{
|
|
var un = BLL.UnitWorkService.GetUnitWorkByUnitWorkId(item);
|
|
if (un != null)
|
|
{
|
|
unitWorkName += un.UnitWorkName + BLL.UnitWorkService.GetProjectType(un.ProjectType) + ",";
|
|
}
|
|
}
|
|
if (!string.IsNullOrEmpty(unitWorkName))
|
|
{
|
|
unitWorkName = unitWorkName.Substring(0, unitWorkName.LastIndexOf(","));
|
|
}
|
|
}
|
|
return unitWorkName;
|
|
}
|
|
|
|
/// <summary>
|
|
/// /设置角色树
|
|
/// </summary>
|
|
/// <param name="trOne"></param>
|
|
/// <param name="projectId"></param>
|
|
/// <param name="nodeName"></param>
|
|
/// <param name="unitType"></param>
|
|
/// <param name="roleIds"></param>
|
|
public static void setRoleTree(FineUIPro.Tree trOne, string projectId, string nodeName, string unitType, string roleIds)
|
|
{
|
|
FineUIPro.TreeNode rootNode = new FineUIPro.TreeNode
|
|
{
|
|
Text = nodeName,
|
|
NodeID = "0",
|
|
Expanded = true,
|
|
EnableCheckEvent = true
|
|
};
|
|
trOne.Nodes.Add(rootNode);
|
|
trOne.EnableCheckBox = true;
|
|
var userList = SitePerson_PersonService.GetSitePerson_PersonListByProjectIdUnitTypeRoleIds(projectId, unitType, roleIds);
|
|
foreach (var u in userList)
|
|
{
|
|
FineUIPro.TreeNode roleNode = new FineUIPro.TreeNode
|
|
{
|
|
Text = u.PersonName,
|
|
NodeID = u.PersonId,
|
|
};
|
|
rootNode.Nodes.Add(roleNode);
|
|
}
|
|
}
|
|
|
|
public static List<Model.Plan_SubPlan> getListDataForApi(string projectId, int startRowIndex, int maximumRows)
|
|
{
|
|
using (var db = new Model.SGGLDB(Funs.ConnString))
|
|
{
|
|
IQueryable<Model.Plan_SubPlan> q = db.Plan_SubPlan;
|
|
if (!string.IsNullOrEmpty(projectId))
|
|
{
|
|
q = q.Where(e => e.ProjectId == projectId);
|
|
}
|
|
var qres = from x in q
|
|
orderby x.CompileDate descending
|
|
select new
|
|
{
|
|
x.SubPlanId,
|
|
x.ProjectId,
|
|
x.Code,
|
|
x.UnitId,
|
|
x.PlanName,
|
|
x.UnitWorkIds,
|
|
x.CNProfessionalCodes,
|
|
x.CompileDate,
|
|
x.CompileMan,
|
|
x.State,
|
|
x.Edition,
|
|
StateStr = ConvertState(x.State),
|
|
CompileManName = (from y in db.Person_Persons where y.PersonId == x.CompileMan select y.PersonName).First(),
|
|
UnitName = BLL.UnitService.GetUnitNameByUnitId(x.UnitId),
|
|
UnitWorkNames=BLL.UnitWorkService.GetUnitWorkName(x.UnitWorkIds),
|
|
CNProfessionalNames=BLL.CNProfessionalService.GetCNProfessionalNameByCode(x.CNProfessionalCodes),
|
|
HandleManName = BLL.CQMS_SubPlanApproveService.GetHandleManName(x.SubPlanId),
|
|
FilePath = x.FilePath,
|
|
};
|
|
List<Model.Plan_SubPlan> res = new List<Model.Plan_SubPlan>();
|
|
var list = qres.Skip(startRowIndex).Take(maximumRows).ToList();
|
|
foreach (var item in list)
|
|
{
|
|
Model.Plan_SubPlan cd = new Model.Plan_SubPlan();
|
|
cd.SubPlanId = item.SubPlanId;
|
|
cd.ProjectId = item.ProjectId;
|
|
cd.Code = item.Code;
|
|
cd.UnitId=item.UnitId + "$" + item.UnitName;
|
|
cd.PlanName = item.PlanName;
|
|
cd.UnitWorkIds=item.UnitWorkIds + "$" + item.UnitWorkNames;
|
|
cd.CNProfessionalCodes = item.CNProfessionalCodes + "$" + item.CNProfessionalNames;
|
|
cd.CompileDate = item.CompileDate;
|
|
cd.CompileMan = item.CompileMan + "$" + item.CompileManName;
|
|
cd.State = item.State + "$" + item.StateStr + "$" + item.HandleManName;
|
|
cd.Edition = item.Edition;
|
|
cd.FilePath = item.FilePath;
|
|
res.Add(cd);
|
|
}
|
|
return res;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 根据分包施工质量计划Id获取一个分包施工质量计划信息
|
|
/// </summary>
|
|
/// <param name="SubPlanCode">分包施工质量计划Id</param>
|
|
/// <returns>一个分包施工质量计划实体</returns>
|
|
public static Model.Plan_SubPlan GetSubPlanBySubPlanIdForApi(string SubPlanId)
|
|
{
|
|
var q= Funs.DB.Plan_SubPlan.FirstOrDefault(x => x.SubPlanId == SubPlanId);
|
|
if (q != null)
|
|
{
|
|
q.UnitId = q.UnitId + "$" + BLL.UnitService.GetUnitNameByUnitId(q.UnitId);
|
|
q.UnitWorkIds = q.UnitWorkIds + "$" + BLL.UnitWorkService.GetUnitWorkName(q.UnitWorkIds);
|
|
q.CNProfessionalCodes = q.CNProfessionalCodes + "$" + BLL.CNProfessionalService.GetCNProfessionalNameByCode(q.CNProfessionalCodes);
|
|
q.CompileMan=q.CompileMan + "$" + BLL.Person_PersonsService.GetPersonsNameById(q.CompileMan);
|
|
q.State = q.State + "$" + ConvertState(q.State) + "$" + BLL.CQMS_SubPlanApproveService.GetHandleManName(q.SubPlanId);
|
|
}
|
|
return q;
|
|
}
|
|
}
|
|
}
|