20220315 代码初始化上传

This commit is contained in:
2022-03-15 17:36:38 +08:00
commit 9dc8a7e05d
9501 changed files with 2066431 additions and 0 deletions
@@ -0,0 +1,174 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.UI.WebControls;
namespace BLL
{
public class MainItemService
{
public static Model.SGGLDB db = Funs.DB;
/// <summary>
/// 记录数
/// </summary>
private static int count
{
get;
set;
}
/// <summary>
/// 定义变量
/// </summary>
private static IQueryable<Model.ProjectData_MainItem> qq = from x in db.ProjectData_MainItem select x;
/// <summary>
/// 获取列表数
/// </summary>
/// <returns></returns>
public static int getListCount(string searchItem, string searchValue, string projectId)
{
return count;
}
/// <summary>
/// 根据主项和单位工程对应关系Id获取一个主项和单位工程对应关系信息
/// </summary>
/// <param name="mainItemId">主项和单位工程对应关系Id</param>
/// <returns>一个主项和单位工程对应关系实体</returns>
public static Model.ProjectData_MainItem GetMainItemByMainItemId(string mainItemId)
{
return Funs.DB.ProjectData_MainItem.First(x => x.MainItemId == mainItemId);
}
/// <summary>
/// 是否存在主项和单位工程对应关系
/// </summary>
/// <param name="postName"></param>
/// <returns>true-存在,false-不存在</returns>
public static bool IsExistMainItem(string mainItemCode, string projectId)
{
var q = from x in Funs.DB.ProjectData_MainItem where x.MainItemCode == mainItemCode && x.ProjectId == projectId select x;
if (q.Count() > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 增加主项和单位工程对应关系信息
/// </summary>
/// <param name="mainItemToUnitWork">主项和单位工程对应关系实体</param>
public static void AddMainItem(Model.ProjectData_MainItem mainItemToUnitWork)
{
Model.SGGLDB db = Funs.DB;
string newKeyID = SQLHelper.GetNewID(typeof(Model.ProjectData_MainItem));
Model.ProjectData_MainItem newMainItem = new Model.ProjectData_MainItem();
newMainItem.MainItemId = newKeyID;
newMainItem.ProjectId = mainItemToUnitWork.ProjectId;
newMainItem.MainItemCode = mainItemToUnitWork.MainItemCode;
newMainItem.MainItemName = mainItemToUnitWork.MainItemName;
newMainItem.DesignProfessionalIds = mainItemToUnitWork.DesignProfessionalIds;
newMainItem.Remark = mainItemToUnitWork.Remark;
db.ProjectData_MainItem.InsertOnSubmit(newMainItem);
db.SubmitChanges();
}
/// <summary>
/// 修改主项和单位工程对应关系信息
/// </summary>
/// <param name="mainItemToUnitWork">主项和单位工程对应关系实体</param>
public static void UpdateMainItem(Model.ProjectData_MainItem mainItemToUnitWork)
{
Model.SGGLDB db = Funs.DB;
Model.ProjectData_MainItem newMainItem = db.ProjectData_MainItem.First(e => e.MainItemId == mainItemToUnitWork.MainItemId);
newMainItem.MainItemCode = mainItemToUnitWork.MainItemCode;
newMainItem.MainItemName = mainItemToUnitWork.MainItemName;
newMainItem.DesignProfessionalIds = mainItemToUnitWork.DesignProfessionalIds;
newMainItem.Remark = mainItemToUnitWork.Remark;
db.SubmitChanges();
}
/// <summary>
/// 根据主项和单位工程对应关系Id删除一个主项和单位工程对应关系信息
/// </summary>
/// <param name="mainItemId">主项和单位工程对应关系Id</param>
public static void DeleteMainItemByMainItemId(string mainItemId)
{
Model.SGGLDB db = Funs.DB;
Model.ProjectData_MainItem mainItemToUnitWork = db.ProjectData_MainItem.First(e => e.MainItemId == mainItemId);
db.ProjectData_MainItem.DeleteOnSubmit(mainItemToUnitWork);
db.SubmitChanges();
}
/// <summary>
/// 获取主项名称项
/// </summary>
/// <param name="projectId">项目Id</param>
/// <returns></returns>
public static ListItem[] GetMainItemList(string projectId)
{
var q = (from x in Funs.DB.ProjectData_MainItem where x.ProjectId == projectId orderby x.MainItemCode select x).ToList();
ListItem[] item = new ListItem[q.Count()];
for (int i = 0; i < q.Count(); i++)
{
item[i] = new ListItem((q[i].MainItemCode + "-" + q[i].MainItemName) ?? "", q[i].MainItemId.ToString());
}
return item;
}
/// <summary>
/// 主项名称下拉框
/// </summary>
/// <param name="dropName"></param>
/// <param name="projectId"></param>
/// <param name="isShowPlease"></param>
public static void InitMainItemDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
{
dropName.DataValueField = "Value";
dropName.DataTextField = "Text";
dropName.DataSource = GetMainItemList(projectId);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
/// 根据项目id 获取
/// </summary>
/// <param name="projectId"></param>
/// <param name="name"></param>
/// <param name="unitWorks"></param>
/// <returns></returns>
public static List<Model.ProjectData_MainItem> GetMainItemList(string projectId, string name, string unitWorks)
{
var q = (from x in Funs.DB.ProjectData_MainItem
where x.ProjectId == projectId && (name == "" || x.MainItemName.Contains(name)) && (unitWorks == "" || x.DesignProfessionalIds == unitWorks)
orderby x.MainItemCode
select x).ToList();
List<Model.ProjectData_MainItem> res = new List<Model.ProjectData_MainItem>();
for (int i = 0; i < q.Count(); i++)
{
Model.ProjectData_MainItem w = new Model.ProjectData_MainItem();
w.MainItemCode = q[i].MainItemCode;
w.MainItemId = q[i].MainItemId;
w.MainItemName = q[i].MainItemName;
res.Add(w);
}
return res;
}
}
}
@@ -0,0 +1,121 @@
namespace BLL
{
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
public static class ProjectData_CodeTemplateRuleService
{
#region
/// <summary>
/// 项目获取菜单编码模板信息 根据MenuId
/// </summary>
/// <param name="menuId"></param>
/// <returns></returns>
public static Model.ProjectData_CodeTemplateRule GetProjectData_CodeTemplateRuleByMenuIdProjectId(string menuId, string projectId)
{
return Funs.DB.ProjectData_CodeTemplateRule.FirstOrDefault(x => x.MenuId == menuId && x.ProjectId == projectId);
}
/// <summary>
/// 项目菜单编码模板信息
/// </summary>
/// <param name="codeTemplateRule"></param>
public static void AddProjectData_CodeTemplateRule(Model.ProjectData_CodeTemplateRule codeTemplateRule)
{
Model.SGGLDB db = Funs.DB;
Model.ProjectData_CodeTemplateRule newCodeTemplateRule = new Model.ProjectData_CodeTemplateRule
{
CodeTemplateRuleId = SQLHelper.GetNewID(typeof(Model.ProjectData_CodeTemplateRule)),
MenuId = codeTemplateRule.MenuId,
ProjectId = codeTemplateRule.ProjectId,
Template = codeTemplateRule.Template,
Symbol = codeTemplateRule.Symbol,
IsProjectCode = codeTemplateRule.IsProjectCode,
Prefix = codeTemplateRule.Prefix,
IsUnitCode = codeTemplateRule.IsUnitCode,
Digit = codeTemplateRule.Digit,
OwerSymbol = codeTemplateRule.OwerSymbol,
OwerIsProjectCode = codeTemplateRule.OwerIsProjectCode,
OwerPrefix = codeTemplateRule.OwerPrefix,
OwerIsUnitCode = codeTemplateRule.OwerIsUnitCode,
OwerDigit = codeTemplateRule.OwerDigit
};
db.ProjectData_CodeTemplateRule.InsertOnSubmit(newCodeTemplateRule);
db.SubmitChanges();
}
/// <summary>
/// 修改项目菜单编码模板信息
/// </summary>
/// <param name="codeTemplateRule"></param>
public static void UpdateProjectData_CodeTemplateRule(Model.ProjectData_CodeTemplateRule codeTemplateRule)
{
Model.SGGLDB db = Funs.DB;
Model.ProjectData_CodeTemplateRule updateCodeTemplateRule = db.ProjectData_CodeTemplateRule.FirstOrDefault(e => e.MenuId == codeTemplateRule.MenuId && e.ProjectId == codeTemplateRule.ProjectId);
if (updateCodeTemplateRule != null)
{
updateCodeTemplateRule.Template = codeTemplateRule.Template;
updateCodeTemplateRule.Symbol = codeTemplateRule.Symbol;
updateCodeTemplateRule.IsProjectCode = codeTemplateRule.IsProjectCode;
updateCodeTemplateRule.Prefix = codeTemplateRule.Prefix;
updateCodeTemplateRule.IsUnitCode = codeTemplateRule.IsUnitCode;
updateCodeTemplateRule.Digit = codeTemplateRule.Digit;
updateCodeTemplateRule.OwerSymbol = codeTemplateRule.OwerSymbol;
updateCodeTemplateRule.OwerIsProjectCode = codeTemplateRule.OwerIsProjectCode;
updateCodeTemplateRule.OwerPrefix = codeTemplateRule.OwerPrefix;
updateCodeTemplateRule.OwerIsUnitCode = codeTemplateRule.OwerIsUnitCode;
updateCodeTemplateRule.OwerDigit = codeTemplateRule.OwerDigit;
db.SubmitChanges();
}
}
/// <summary>
/// 删除项目菜单编码模板信息
/// </summary>
/// <param name="codeTemplateRule"></param>
public static void DeleteProjectData_CodeTemplateRule(string projectId)
{
var deleteCodeTemplateRule = from x in Funs.DB.ProjectData_CodeTemplateRule where x.ProjectId == projectId select x;
if (deleteCodeTemplateRule.Count() >0 )
{
Funs.DB.ProjectData_CodeTemplateRule.DeleteAllOnSubmit(deleteCodeTemplateRule);
}
}
/// <summary>
/// 根据项目Id 将编码/模板写入到项目菜单编码模板表中
/// </summary>
/// <param name="codeTemplateRule"></param>
public static void InertProjectData_CodeTemplateRuleByProjectId(string projectId)
{
var sysCodeTemplateRule = from x in Funs.DB.Sys_CodeTemplateRule select x;
if (sysCodeTemplateRule.Count() > 0)
{
foreach (var item in sysCodeTemplateRule)
{
Model.ProjectData_CodeTemplateRule newCodeTemplateRule = new Model.ProjectData_CodeTemplateRule
{
MenuId = item.MenuId,
ProjectId = projectId,
Template = item.Template,
Symbol = item.Symbol,
IsProjectCode = item.IsProjectCode,
Prefix = item.Prefix,
IsUnitCode = item.IsUnitCode,
Digit = item.Digit,
OwerSymbol = item.Symbol,
OwerIsProjectCode = item.IsProjectCode,
OwerPrefix = item.Prefix,
OwerIsUnitCode = item.IsUnitCode,
OwerDigit = item.Digit
};
AddProjectData_CodeTemplateRule(newCodeTemplateRule);
}
}
}
#endregion
}
}
@@ -0,0 +1,81 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
/// <summary>
/// 项目状态及软件关闭
/// </summary>
public static class ProjectSateService
{
public static Model.SGGLDB db = Funs.DB;
/// <summary>
/// 根据主键获取项目状态及软件关闭信息
/// </summary>
/// <param name="projectStateId"></param>
/// <returns></returns>
public static Model.Base_ProjectSate GetProjectSateById(string projectStateId)
{
return Funs.DB.Base_ProjectSate.FirstOrDefault(e => e.ProjectStateId == projectStateId);
}
/// <summary>
/// 添加项目状态及软件关闭信息
/// </summary>
/// <param name="ProjectSate"></param>
public static void AddProjectSate(Model.Base_ProjectSate ProjectSate)
{
Model.SGGLDB db = Funs.DB;
Model.Base_ProjectSate newProjectSate = new Model.Base_ProjectSate
{
ProjectStateId = ProjectSate.ProjectStateId,
ProjectId = ProjectSate.ProjectId,
ProjectState = ProjectSate.ProjectState,
OldProjectState = ProjectSate.OldProjectState,
CompileMan = ProjectSate.CompileMan,
CompileDate = ProjectSate.CompileDate,
ShutdownDate = ProjectSate.ShutdownDate,
States = ProjectSate.States
};
db.Base_ProjectSate.InsertOnSubmit(newProjectSate);
db.SubmitChanges();
}
/// <summary>
/// 修改项目状态及软件关闭信息
/// </summary>
/// <param name="ProjectSate"></param>
public static void UpdateProjectSate(Model.Base_ProjectSate ProjectSate)
{
Model.SGGLDB db = Funs.DB;
Model.Base_ProjectSate newProjectSate = db.Base_ProjectSate.FirstOrDefault(e => e.ProjectStateId == ProjectSate.ProjectStateId);
if (newProjectSate != null)
{
newProjectSate.ProjectState = ProjectSate.ProjectState;
newProjectSate.ShutdownDate = ProjectSate.ShutdownDate;
newProjectSate.States = ProjectSate.States;
db.SubmitChanges();
}
}
/// <summary>
/// 根据主键删除项目状态及软件关闭信息
/// </summary>
/// <param name="projectStateId"></param>
public static void DeleteProjectSateById(string projectStateId)
{
Model.SGGLDB db = Funs.DB;
Model.Base_ProjectSate ProjectSate = db.Base_ProjectSate.FirstOrDefault(e => e.ProjectStateId == projectStateId);
if (ProjectSate != null)
{
////删除审核流程表
BLL.CommonService.DeleteFlowOperateByID(ProjectSate.ProjectStateId);
db.Base_ProjectSate.DeleteOnSubmit(ProjectSate);
db.SubmitChanges();
}
}
}
}
@@ -0,0 +1,456 @@
namespace BLL
{
using System.Collections.Generic;
using System.Linq;
using Model;
using System;
public static class ProjectService
{
public static SGGLDB db = Funs.DB;
/// <summary>
///获取项目信息
/// </summary>
/// <returns></returns>
public static Model.Base_Project GetProjectByProjectId(string projectId)
{
return Funs.DB.Base_Project.FirstOrDefault(e => e.ProjectId == projectId);
}
/// <summary>
///根据ID获取项目名称
/// </summary>
/// <returns></returns>
public static string GetProjectNameByProjectId(string projectId)
{
string name = string.Empty;
var project = Funs.DB.Base_Project.FirstOrDefault(e => e.ProjectId == projectId);
if (project != null)
{
name = project.ProjectName;
}
return name;
}
/// <summary>
///根据ID获取项目编号
/// </summary>
/// <returns></returns>
public static string GetProjectCodeByProjectId(string projectId)
{
string name = string.Empty;
var project = Funs.DB.Base_Project.FirstOrDefault(e => e.ProjectId == projectId);
if (project != null)
{
name = project.ProjectCode;
}
return name;
}
public static Model.Base_Project GetProjectByProjectShortName(string name)
{
return Funs.DB.Base_Project.FirstOrDefault(e => e.ShortName == name);
}
public static Model.Base_Project GetProjectByProjectName(string name)
{
return Funs.DB.Base_Project.FirstOrDefault(e => e.ProjectName == name);
}
/// <summary>
///获取项目简称
/// </summary>
/// <returns></returns>
public static string GetShortNameByProjectId(string projectId)
{
string name = string.Empty;
var project = Funs.DB.Base_Project.FirstOrDefault(e => e.ProjectId == projectId);
if (project != null)
{
name = project.ShortName;
}
return name;
}
/// <summary>
/// 增加项目信息
/// </summary>
/// <returns></returns>
public static void AddProject(Model.Base_Project project)
{
Model.SGGLDB db = Funs.DB;
Model.Base_Project newProject = new Base_Project
{
ProjectId = project.ProjectId,
ProjectCode = project.ProjectCode,
ProjectName = project.ProjectName,
StartDate = project.StartDate,
EndDate = project.EndDate,
ProjectAddress = project.ProjectAddress,
ContractNo = project.ContractNo,
WorkRange = project.WorkRange,
Duration = project.Duration,
ShortName = project.ShortName,
ProjectType = project.ProjectType,
PostCode = project.PostCode,
Remark = project.Remark,
ProjectState = project.ProjectState,
ProjectState2 = project.ProjectState2,
IsUpTotalMonth = project.IsUpTotalMonth,
UnitId = project.UnitId,
ProjectMainPerson = project.ProjectMainPerson,
ProjectLiaisonPerson = project.ProjectLiaisonPerson,
IsForeign = project.IsForeign,
FromProjectId = project.FromProjectId,
MapCoordinates = project.MapCoordinates,
ProjectMoney = project.ProjectMoney,
ConstructionMoney = project.ConstructionMoney,
Telephone = project.Telephone,
Country = project.Country,
Province = project.Province,
City = project.City,
EnglishRemark = project.EnglishRemark,
Progress = project.Progress,
};
db.Base_Project.InsertOnSubmit(newProject);
db.SubmitChanges();
HSEDataCollectService.ProjectHSEDataCollectSubmission(newProject);
}
/// <summary>
///修改项目信息
/// </summary>
/// <param name="project"></param>
public static void UpdateProject(Model.Base_Project project)
{
SGGLDB db = Funs.DB;
Base_Project newProject = db.Base_Project.FirstOrDefault(e => e.ProjectId == project.ProjectId);
if (newProject != null)
{
newProject.ProjectCode = project.ProjectCode;
newProject.ProjectName = project.ProjectName;
newProject.StartDate = project.StartDate;
newProject.EndDate = project.EndDate;
newProject.ProjectAddress = project.ProjectAddress;
newProject.ShortName = project.ShortName;
newProject.ContractNo = project.ContractNo;
newProject.WorkRange = project.WorkRange;
newProject.Duration = project.Duration;
newProject.ProjectType = project.ProjectType;
newProject.PostCode = project.PostCode;
newProject.Remark = project.Remark;
newProject.ProjectState = project.ProjectState;
newProject.ProjectState2 = project.ProjectState2;
newProject.IsUpTotalMonth = project.IsUpTotalMonth;
newProject.UnitId = project.UnitId;
newProject.ProjectMainPerson = project.ProjectMainPerson;
newProject.ProjectLiaisonPerson = project.ProjectLiaisonPerson;
newProject.IsForeign = project.IsForeign;
newProject.FromProjectId = project.FromProjectId;
newProject.MapCoordinates = project.MapCoordinates;
newProject.ProjectMoney = project.ProjectMoney;
newProject.ConstructionMoney = project.ConstructionMoney;
newProject.Telephone = project.Telephone;
newProject.Country = project.Country;
newProject.Province = project.Province;
newProject.City = project.City;
newProject.EnglishRemark = project.EnglishRemark;
newProject.Progress = project.Progress;
db.SubmitChanges();
HSEDataCollectService.ProjectHSEDataCollectSubmission(newProject);
}
}
/// <summary>
/// 根据项目Id删除一个项目信息
/// </summary>
/// <param name="projectId"></param>
public static void DeleteProject(string projectId)
{
SGGLDB db = Funs.DB;
Base_Project project = db.Base_Project.FirstOrDefault(e => e.ProjectId == projectId);
if (project != null)
{
db.Base_Project.DeleteOnSubmit(project);
db.SubmitChanges();
}
}
/// <summary>
/// 获取施工中项目集合
/// </summary>
/// <returns></returns>
public static List<Model.Base_Project> GetProjectWorkList()
{
var list = (from x in Funs.DB.Base_Project
where x.ProjectState == null || x.ProjectState == BLL.Const.ProjectState_1
orderby x.ProjectCode descending
select x).ToList();
return list;
}
/// <summary>
/// 获取项目下拉选项
/// </summary>
/// <returns></returns>
public static List<Model.Base_Project> GetProjectDropDownListByState(string state)
{
if (state == BLL.Const.ProjectState_1) //施工
{
var list = (from x in Funs.DB.Base_Project
where x.ProjectState == state || x.ProjectState == null
orderby x.ProjectCode descending
select x).ToList();
return list;
}
else
{
var list = (from x in Funs.DB.Base_Project
where x.ProjectState == state
orderby x.ProjectCode descending
select x).ToList();
return list;
}
}
/// <summary>
/// 获取项目下拉选项
/// </summary>
/// <returns></returns>
public static List<Model.Base_Project> GetAllProjectDropDownList()
{
var list = (from x in Funs.DB.Base_Project
orderby x.ProjectCode descending
select x).ToList();
return list;
}
/// <summary>
/// 获取某类型下项目下拉选项
/// </summary>
/// <returns></returns>
public static List<Model.Base_Project> GetProjectByProjectTypeDropDownList(string projectType)
{
var list = (from x in Funs.DB.Base_Project
where x.ProjectType == projectType
orderby x.ProjectCode descending
select x).ToList();
return list;
}
/// <summary>
/// 获取userId参与项目下拉框
/// </summary>
/// <returns></returns>
public static List<Model.Base_Project> GetProjectByUserIdDropDownList(string userId)
{
if (userId == Const.sysglyId || userId == Const.hfnbdId || userId == Const.sedinId)
{
return (from x in Funs.DB.Base_Project
orderby x.ProjectCode descending
select x).ToList();
}
var getUser = UserService.GetUserByUserId(userId);
if (getUser != null)
{
/// 获取角色类型
var getRoleP = Funs.DB.Sys_RolePower.FirstOrDefault(x => x.RoleId == getUser.RoleId && x.IsOffice == false);
if (getRoleP != null)
{
return (from x in Funs.DB.Base_Project
orderby x.ProjectCode descending
select x).ToList();
}
else
{
return (from x in Funs.DB.Base_Project
join y in Funs.DB.Project_ProjectUser on x.ProjectId equals y.ProjectId
where y.UserId == userId
orderby x.ProjectCode descending
select x).Distinct().ToList();
}
}
else
{
return null;
}
}
#region
/// <summary>
/// 项目表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitProjectDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease)
{
dropName.DataValueField = "ProjectId";
dropName.DataTextField = "ProjectName";
dropName.DataSource = BLL.ProjectService.GetProjectWorkList();
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
/// 项目表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitAllProjectDropDownList(FineUIPro.DropDownList dropName, bool isShowPlease)
{
dropName.DataValueField = "ProjectId";
dropName.DataTextField = "ProjectName";
var projectlist = BLL.ProjectService.GetAllProjectDropDownList();
dropName.DataSource = projectlist;
dropName.DataBind();
if (projectlist.Count() == 0)
{
isShowPlease = true;
}
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
///
/// </summary>
/// <param name="dropName"></param>
/// <param name="userId"></param>
/// <param name="isShowPlease"></param>
public static void InitAllProjectShortNameDropDownList(FineUIPro.DropDownList dropName, string userId, bool isShowPlease)
{
dropName.DataValueField = "ProjectId";
dropName.DataTextField = "ProjectName";
var projectlist = GetProjectByUserIdDropDownList(userId);
dropName.DataSource = projectlist;
dropName.DataBind();
if (projectlist.Count() == 0)
{
isShowPlease = true;
}
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
/// 某类型下项目表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitProjectByProjectTypeDropDownList(FineUIPro.DropDownList dropName, string projectType, bool isShowPlease)
{
dropName.DataValueField = "ProjectId";
dropName.DataTextField = "ProjectName";
var projectlist = BLL.ProjectService.GetProjectByProjectTypeDropDownList(projectType);
dropName.DataSource = projectlist;
dropName.DataBind();
if (projectlist.Count() == 0)
{
isShowPlease = true;
}
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
#endregion
#region
/// <summary>
/// 项目经理
/// </summary>
/// <param name="unitId"></param>
/// <returns></returns>
public static string GetProjectManagerName(string projectId)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
string name = string.Empty;
if (projectId != null)
{
name = (from x in db.Base_Project
join y in db.Project_ProjectUser on x.ProjectId equals y.ProjectId
join z in db.Sys_User on y.UserId equals z.UserId
where x.ProjectId == projectId && y.RoleId.Contains(BLL.Const.ProjectManager)
select z.UserName).FirstOrDefault();
}
return name;
}
}
/// <summary>
/// 施工经理
/// </summary>
/// <param name="unitId"></param>
/// <returns></returns>
public static string GetConstructionManagerName(string projectId)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
string name = string.Empty;
if (projectId != null)
{
name = (from x in db.Base_Project
join y in db.Project_ProjectUser on x.ProjectId equals y.ProjectId
join z in db.Sys_User on y.UserId equals z.UserId
where x.ProjectId == projectId && y.RoleId.Contains(BLL.Const.ConstructionManager)
select z.UserName).FirstOrDefault();
}
return name;
}
}
/// <summary>
/// 安全经理
/// </summary>
/// <param name="unitId"></param>
/// <returns></returns>
public static string GetHSSEManagerName(string projectId)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
string name = string.Empty;
if (projectId != null)
{
name = (from x in db.Base_Project
join y in db.Project_ProjectUser on x.ProjectId equals y.ProjectId
join z in db.Sys_User on y.UserId equals z.UserId
where x.ProjectId == projectId && y.RoleId.Contains(BLL.Const.HSSEManager)
select z.UserName).FirstOrDefault();
}
return name;
}
}
#endregion
/// <summary>
/// 获取项目各单位类型单位名称
/// </summary>
/// <param name="projectId"></param>
/// <param name="unitType"></param>
/// <returns></returns>
public static string getProjectUnitNameByUnitType(string projectId, string unitType)
{
string unitName = string.Empty;
if (!string.IsNullOrEmpty(projectId))
{
var getUnitName = from x in Funs.DB.Project_ProjectUnit
join y in Funs.DB.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == projectId.ToString() && x.UnitType == unitType
select y.UnitName;
if (getUnitName.Count() > 0)
{
unitName = Funs.GetStringByArray(getUnitName.ToArray());
}
}
return unitName;
}
}
}
@@ -0,0 +1,75 @@
namespace BLL
{
using System.Collections.Generic;
using System.Linq;
using Model;
public static class ProjectSetMapService
{
public static Model.SGGLDB db = Funs.DB;
/// <summary>
///获取项目坐标点
/// </summary>
/// <returns></returns>
public static List<string> GetProjectGpsPointByProjectId(string projectId)
{
return Funs.DB.WxProjectGpsPoint.Where(x => x.ProjectId == projectId).OrderBy(x => x.Orders).Select(x => x.Point).ToList();
}
/// <summary>
/// 保存项目坐标范围
/// </summary>
public static void SaveProjectGpsPoint(string projectId, string projectPointResult)
{
SGGLDB db = Funs.DB;
string strGpsAreId = SQLHelper.GetNewID();
var getGpsAre = db.WxProjectGpsAre.FirstOrDefault(x => x.ProjectId == projectId);
if (getGpsAre != null)
{
strGpsAreId = getGpsAre.GpsAreId;
}
else
{
WxProjectGpsAre newAre = new WxProjectGpsAre
{
GpsAreId = strGpsAreId,
GpsAreName = ProjectService.GetProjectNameByProjectId(projectId),
ProjectId = projectId,
Enabled = "Y",
};
db.WxProjectGpsAre.InsertOnSubmit(newAre);
db.SubmitChanges();
}
var getPoints = db.WxProjectGpsPoint.Where(x => x.ProjectId == projectId && x.GpsAreId == strGpsAreId);
if (getPoints.Count() > 0)
{
db.WxProjectGpsPoint.DeleteAllOnSubmit(getPoints);
db.SubmitChanges();
}
var listPoints = Funs.GetStrListByStr(projectPointResult, '|');
if (listPoints.Count() > 0)
{
int intOrders = 1;
foreach (var item in listPoints)
{
if (!string.IsNullOrEmpty(item))
{
WxProjectGpsPoint newPoint = new WxProjectGpsPoint
{
LocationId = SQLHelper.GetNewID(),
Point = item,
ProjectId = projectId,
GpsAreId = strGpsAreId,
Orders = intOrders,
};
db.WxProjectGpsPoint.InsertOnSubmit(newPoint);
db.SubmitChanges();
intOrders++;
}
}
}
}
}
}
@@ -0,0 +1,199 @@
namespace BLL
{
using System.Collections.Generic;
using System.Linq;
using Model;
public static class ProjectUnitService
{
public static Model.SGGLDB db = Funs.DB;
/// <summary>
///获取项目单位信息
/// </summary>
/// <returns></returns>
public static Model.Project_ProjectUnit GetProjectUnitById(string projectUnitId)
{
return Funs.DB.Project_ProjectUnit.FirstOrDefault(e => e.ProjectUnitId == projectUnitId);
}
/// <summary>
///获取项目单位信息
/// </summary>
/// <returns></returns>
public static Model.Project_ProjectUnit GetProjectUnitByUnitIdProjectId(string projectId, string unitId)
{
return Funs.DB.Project_ProjectUnit.FirstOrDefault(e => e.ProjectId == projectId && e.UnitId == unitId);
}
/// <summary>
///获取项目单位信息
/// </summary>
/// <returns></returns>
public static List<Model.Project_ProjectUnit> GetProjectUnitListByProjectId(string projectId)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
return (from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == projectId
orderby x.UnitType, y.UnitCode
descending
select x).ToList();
}
}
/// <summary>
/// 根据项目及单位类型获取单位信息
/// </summary>
/// <returns></returns>
public static List<Model.Project_ProjectUnit> GetProjectUnitListByProjectIdUnitType(string projectId, string unitType)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
return (from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == projectId && x.UnitType == unitType
orderby x.UnitType, y.UnitCode descending
select x).ToList();
}
}
/// <summary>
/// 增加项目单位信息
/// </summary>
/// <returns></returns>
public static void AddProjectUnit(Project_ProjectUnit projectUnit)
{
SGGLDB db = Funs.DB;
Project_ProjectUnit newProjectUnit = new Project_ProjectUnit
{
ProjectUnitId = SQLHelper.GetNewID(typeof(Model.Project_ProjectUnit)),
ProjectId = projectUnit.ProjectId,
UnitId = projectUnit.UnitId,
UnitType = projectUnit.UnitType,
InTime = projectUnit.InTime,
OutTime = projectUnit.OutTime,
PlanCostA = projectUnit.PlanCostA,
PlanCostB = projectUnit.PlanCostB,
ContractRange = projectUnit.ContractRange,
RealNamePushTime= projectUnit.RealNamePushTime,
};
db.Project_ProjectUnit.InsertOnSubmit(newProjectUnit);
db.SubmitChanges();
}
/// <summary>
///修改项目单位信息
/// </summary>
/// <param name="projectUnit"></param>
public static void UpdateProjectUnit(Model.Project_ProjectUnit projectUnit)
{
Model.SGGLDB db = Funs.DB;
Model.Project_ProjectUnit newProjectUnit = db.Project_ProjectUnit.FirstOrDefault(e => e.ProjectUnitId == projectUnit.ProjectUnitId);
if (newProjectUnit != null)
{
newProjectUnit.UnitType = projectUnit.UnitType;
newProjectUnit.InTime = projectUnit.InTime;
newProjectUnit.OutTime = projectUnit.OutTime;
newProjectUnit.PlanCostA = projectUnit.PlanCostA;
newProjectUnit.PlanCostB = projectUnit.PlanCostB;
newProjectUnit.ContractRange = projectUnit.ContractRange;
newProjectUnit.RealNamePushTime = projectUnit.RealNamePushTime;
db.SubmitChanges();
}
}
/// <summary>
/// 根据项目单位Id删除一个项目单位信息
/// </summary>
/// <param name="projectUnitId"></param>
public static void DeleteProjectProjectUnitById(string projectUnitId)
{
Model.SGGLDB db = Funs.DB;
Model.Project_ProjectUnit delProjectUnit = db.Project_ProjectUnit.FirstOrDefault(e => e.ProjectUnitId == projectUnitId);
if (delProjectUnit != null)
{
db.Project_ProjectUnit.DeleteOnSubmit(delProjectUnit);
db.SubmitChanges();
}
}
/// <summary>
///获取当前人单位是否 施工工分包单位且非本单位
/// </summary>
/// <returns></returns>
public static bool GetProjectUnitTypeByProjectIdUnitId(string projectId, string unitId)
{
bool isShow = false;
if (unitId != Const.UnitId_TCC)
{
var pUnit = Funs.DB.Project_ProjectUnit.FirstOrDefault(e => e.ProjectId == projectId && e.UnitId == unitId);
if (pUnit != null)
{
if (pUnit.UnitType == Const.ProjectUnitType_2 || pUnit.UnitType == Const.ProjectUnitType_0)
{
isShow = true;
}
}
}
return isShow;
}
#region
/// <summary>
/// 项目类型单位表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitUnitDropDownList(FineUIPro.DropDownList dropName, string projectId, string unitType, bool isShowPlease)
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
var pUnit = (from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == projectId && x.UnitType == unitType
orderby y.UnitCode
select y).ToList();
dropName.DataValueField = "UnitId";
dropName.DataTextField = "UnitName";
dropName.DataSource = pUnit;
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
}
#endregion
/// <summary>
/// 根据项目Id删除项目单位
/// </summary>
/// <param name="projectId"></param>
public static void DeleteProjectUnitByProjectId(string projectId)
{
var q = (from x in db.Project_ProjectUnit where x.ProjectId == projectId select x).ToList();
if (q != null)
{
db.Project_ProjectUnit.DeleteAllOnSubmit(q);
db.SubmitChanges();
}
}
public static List<Model.Project_ProjectUnit> GetProjectUnitListByProjectIdForApi(string projectId, string unitType, string name)
{
Model.SGGLDB db = Funs.DB;
string[] types = unitType.Split(',');
return (from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == projectId
where unitType == "" || types.Contains(x.UnitType)
where name == "" || y.UnitName.Contains(name)
orderby x.UnitType, y.UnitCode
select x).ToList();
}
}
}
@@ -0,0 +1,154 @@
namespace BLL
{
using System.Collections.Generic;
using System.Linq;
using Model;
public static class ProjectUserService
{
public static SGGLDB db = Funs.DB;
/// <summary>
///获取项目用户信息
/// </summary>
/// <returns></returns>
public static Project_ProjectUser GetProjectUserById(string projectUserId)
{
return Funs.DB.Project_ProjectUser.FirstOrDefault(e => e.ProjectUserId == projectUserId);
}
/// <summary>
///获取项目用户信息
/// </summary>
/// <returns></returns>
public static Project_ProjectUser GetProjectUserByUserIdProjectId(string projectId, string userId)
{
return Funs.DB.Project_ProjectUser.FirstOrDefault(e => e.ProjectId == projectId && e.UserId == userId);
}
/// <summary>
///获取项目用户信息 根据用户ID
/// </summary>
/// <returns></returns>
public static List<Project_ProjectUser> GetProjectUserByUserId(string userId)
{
return (from x in Funs.DB.Project_ProjectUser where x.UserId == userId select x).ToList();
}
/// <summary>
///获取当前项目用户信息根据用户ID
/// </summary>
/// <returns></returns>
public static Project_ProjectUser GetCurrProjectUserByUserId(string userId)
{
return (from x in Funs.DB.Project_ProjectUser where x.UserId == userId && x.IsPost == true select x).FirstOrDefault();
}
/// <summary>
/// 增加项目用户信息
/// </summary>
/// <returns></returns>
public static void AddProjectUser(Project_ProjectUser projectUser)
{
SGGLDB db = Funs.DB;
Project_ProjectUser newProjectUser = new Project_ProjectUser
{
ProjectUserId = SQLHelper.GetNewID(typeof(Project_ProjectUser)),
ProjectId = projectUser.ProjectId,
UserId = projectUser.UserId,
UnitId = projectUser.UnitId,
RoleId = projectUser.RoleId,
IsPost = projectUser.IsPost,
MainCNProfessionalId=projectUser.MainCNProfessionalId,
ViceCNProfessionalId=projectUser.ViceCNProfessionalId
};
//newProjectUser.RoleName = projectUser.RoleName;
db.Project_ProjectUser.InsertOnSubmit(newProjectUser);
db.SubmitChanges();
}
/// <summary>
///修改项目用户信息
/// </summary>
/// <param name="projectUser"></param>
public static void UpdateProjectUser(Project_ProjectUser projectUser)
{
SGGLDB db = Funs.DB;
Project_ProjectUser newProjectUser = db.Project_ProjectUser.FirstOrDefault(e => e.ProjectUserId == projectUser.ProjectUserId);
if (newProjectUser != null)
{
newProjectUser.ProjectId = projectUser.ProjectId;
newProjectUser.UserId = projectUser.UserId;
newProjectUser.UnitId = projectUser.UnitId;
newProjectUser.RoleId = projectUser.RoleId;
newProjectUser.IsPost = projectUser.IsPost;
newProjectUser.WorkAreaId = projectUser.WorkAreaId;
newProjectUser.MainCNProfessionalId = projectUser.MainCNProfessionalId;
newProjectUser.ViceCNProfessionalId = projectUser.ViceCNProfessionalId;
//newProjectUser.RoleName = projectUser.RoleName;
db.SubmitChanges();
}
}
/// <summary>
/// 根据项目Id删除一个项目用户信息
/// </summary>
/// <param name="projectUserId"></param>
public static void DeleteProjectUserById(string projectUserId)
{
SGGLDB db = Funs.DB;
Project_ProjectUser delProjectUser = db.Project_ProjectUser.FirstOrDefault(e => e.ProjectUserId == projectUserId);
if (delProjectUser != null)
{
db.Project_ProjectUser.DeleteOnSubmit(delProjectUser);
db.SubmitChanges();
}
}
/// <summary>
/// 根据项目用户Id删除一个项目用户信息
/// </summary>
/// <param name="projectUserId"></param>
public static void DeleteProjectUserByProjectIdUserId(string projectId, string userId)
{
SGGLDB db = Funs.DB;
var delProjectUser = from x in db.Project_ProjectUser where x.ProjectId == projectId && x.UserId == userId select x;
if (delProjectUser.Count() > 0)
{
db.Project_ProjectUser.DeleteAllOnSubmit(delProjectUser);
db.SubmitChanges();
}
}
/// <summary>
///根据项目id集合获取对应项目的所有项目用户
/// </summary>
/// <returns></returns>
public static List<Project_ProjectUser> GetProjectUsersByProjectIds(List<string> ProjectIds)
{
return (from x in Funs.DB.Project_ProjectUser where ProjectIds.Contains(x.ProjectId) && x.RoleId != null select x).ToList();
}
/// <summary>
///获取项目用户信息 根据ProjectId
/// </summary>
/// <returns></returns>
public static Project_ProjectUser GetProjectUserByProjectId(string ProjectId, string RoleId)
{
return Funs.DB.Project_ProjectUser.FirstOrDefault(e => e.ProjectId == ProjectId && e.RoleId.Contains(RoleId));
}
/// <summary>
///获取项目用户信息 根据ProjectId
/// </summary>
/// <returns></returns>
public static Project_ProjectUser GetProjectUserByProjectIdAndIdentityCard(string ProjectId, string IdentityCard)
{
return (from x in Funs.DB.Project_ProjectUser
join y in Funs.DB.Sys_User
on x.UserId equals y.UserId
where x.ProjectId == ProjectId && y.IdentityCard == IdentityCard
select x).FirstOrDefault();
}
}
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,103 @@
using System;
using System.Collections;
using System.Diagnostics.CodeAnalysis;
using System.Globalization;
using System.Linq;
using System.Data.Linq;
using System.Web.Security;
using System.Web.UI.WebControls;
using Model;
using BLL;
namespace BLL
{
public static class Project_SysSetService
{
public static bool? IsAuto(string setId, string projectId)
{
var q = from x in Funs.DB.Project_Sys_Set where x.SetId == setId && x.ProjectId == projectId select x;
return q.First().IsAuto;
}
public static Model.Project_Sys_Set GetSysSetBySetId(string setId, string projectId)
{
return Funs.DB.Project_Sys_Set.Where(x => x.SetId == setId && x.ProjectId == projectId).FirstOrDefault();
}
public static Model.Project_Sys_Set GetSysSetBySetName(string setName, string projectId)
{
return Funs.DB.Project_Sys_Set.Where(x => x.SetName == setName && x.ProjectId == projectId).FirstOrDefault();
}
/// <summary>
/// 增加系统变量
/// </summary>
/// <param name="user">系统变量</param>
public static void AddSet(Model.Project_Sys_Set set)
{
Model.SGGLDB db = Funs.DB;
Model.Project_Sys_Set newSet = new Model.Project_Sys_Set();
newSet.SetId = set.SetId;
newSet.ProjectId = set.ProjectId;
newSet.SetName = set.SetName;
newSet.IsAuto = set.IsAuto;
newSet.SetValue = set.SetValue;
db.Project_Sys_Set.InsertOnSubmit(newSet);
db.SubmitChanges();
}
/// <summary>
/// 修改系统变量
/// </summary>
/// <param name="user">系统变量</param>
public static void UpdateSet(Model.Project_Sys_Set set)
{
Model.SGGLDB db = Funs.DB;
Model.Project_Sys_Set newSet = db.Project_Sys_Set.FirstOrDefault(e => e.SetId == set.SetId && e.ProjectId == set.ProjectId);
if (newSet != null)
{
newSet.IsAuto = set.IsAuto;
newSet.SetValue = set.SetValue;
db.SubmitChanges();
}
}
public static void InsertHjglInit(string projectId)
{
for (int i = 1; i <= 5; i++)
{
Model.Project_Sys_Set newSet = new Model.Project_Sys_Set();
newSet.SetId = i.ToString();
newSet.ProjectId = projectId;
if (i == 1)
{
newSet.SetName = "焊接日报编号";
newSet.IsAuto = true;
}
if (i == 2)
{
newSet.SetName = "点口编号";
newSet.IsAuto = true;
}
if (i == 3)
{
newSet.SetName = "无损检测委托单";
newSet.IsAuto = true;
}
if (i == 4)
{
newSet.SetName = "引用PDMS导出模板";
newSet.IsAuto = false;
}
if (i == 5)
{
newSet.SetName = "组批条件设置";
newSet.SetValue = "1";
newSet.SetValue = "1|2|3|4|5";
}
AddSet(newSet);
}
}
}
}
@@ -0,0 +1,192 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
/// <summary>
/// 班组
/// </summary>
public static class TeamGroupService
{
public static Model.SGGLDB db = Funs.DB;
/// <summary>
/// 根据主键获取班组信息
/// </summary>
/// <param name="teamGroupId"></param>
/// <returns></returns>
public static Model.ProjectData_TeamGroup GetTeamGroupById(string teamGroupId)
{
return Funs.DB.ProjectData_TeamGroup.FirstOrDefault(e => e.TeamGroupId == teamGroupId);
}
/// <summary>
/// 添加班组信息
/// </summary>
/// <param name="teamGroup"></param>
public static void AddTeamGroup(Model.ProjectData_TeamGroup teamGroup)
{
Model.SGGLDB db = Funs.DB;
Model.ProjectData_TeamGroup newTeamGroup = new Model.ProjectData_TeamGroup
{
TeamGroupId = teamGroup.TeamGroupId,
ProjectId = teamGroup.ProjectId,
UnitId = teamGroup.UnitId,
TeamGroupCode = teamGroup.TeamGroupCode,
TeamGroupName = teamGroup.TeamGroupName,
Remark = teamGroup.Remark,
TeamTypeId = teamGroup.TeamTypeId,
ThirdTeamCode = teamGroup.ThirdTeamCode,
EntryTime = teamGroup.EntryTime,
ExitTime = teamGroup.ExitTime,
GroupLeaderId = teamGroup.GroupLeaderId,
RealNamePushTime= null,
};
db.ProjectData_TeamGroup.InsertOnSubmit(newTeamGroup);
db.SubmitChanges();
}
/// <summary>
/// 修改班组信息
/// </summary>
/// <param name="teamGroup"></param>
public static void UpdateTeamGroup(Model.ProjectData_TeamGroup teamGroup)
{
Model.SGGLDB db = Funs.DB;
Model.ProjectData_TeamGroup newTeamGroup = db.ProjectData_TeamGroup.FirstOrDefault(e => e.TeamGroupId == teamGroup.TeamGroupId);
if (newTeamGroup != null)
{
newTeamGroup.ProjectId = teamGroup.ProjectId;
newTeamGroup.UnitId = teamGroup.UnitId;
newTeamGroup.TeamGroupCode = teamGroup.TeamGroupCode;
newTeamGroup.TeamGroupName = teamGroup.TeamGroupName;
newTeamGroup.GroupLeaderId = teamGroup.GroupLeaderId;
newTeamGroup.TeamTypeId = teamGroup.TeamTypeId;
newTeamGroup.ThirdTeamCode = teamGroup.ThirdTeamCode;
newTeamGroup.EntryTime = teamGroup.EntryTime;
newTeamGroup.ExitTime = teamGroup.ExitTime;
newTeamGroup.Remark = teamGroup.Remark;
newTeamGroup.RealNamePushTime = null;
db.SubmitChanges();
}
}
/// <summary>
/// 根据主键删除班组信息
/// </summary>
/// <param name="teamGroupId"></param>
public static void DeleteTeamGroupById(string teamGroupId)
{
Model.SGGLDB db = Funs.DB;
Model.ProjectData_TeamGroup teamGroup = db.ProjectData_TeamGroup.FirstOrDefault(e => e.TeamGroupId == teamGroupId);
if (teamGroup != null)
{
db.ProjectData_TeamGroup.DeleteOnSubmit(teamGroup);
db.SubmitChanges();
}
}
/// <summary>
/// 获取班组人数
/// </summary>
/// <param name="teamGroupId"></param>
/// <returns></returns>
public static int getTeamGroupPersonNum(string teamGroupId)
{
Model.SGGLDB db = Funs.DB;
return (from x in Funs.DB.SitePerson_Person
where x.TeamGroupId == teamGroupId && x.IsUsed == true && (!x.OutTime.HasValue || x.OutTime > DateTime.Now)
select x).Count();
}
/// <summary>
/// 根据项目Id获取班组下拉选择项
/// </summary>
/// <param name="projectId"></param>
/// <returns></returns>
public static List<Model.ProjectData_TeamGroup> GetTeamGroupList(string projectId)
{
return (from x in Funs.DB.ProjectData_TeamGroup where x.ProjectId == projectId orderby x.TeamGroupCode select x).ToList();
}
/// <summary>
/// 根据项目ID、单位ID获取班组下拉选择项
/// </summary>
/// <param name="p"></param>
/// <param name="p_2"></param>
/// <returns></returns>
public static object GetTeamGroupListByUnitId(string projectId, string unitId)
{
return (from x in Funs.DB.ProjectData_TeamGroup
where x.ProjectId == projectId && x.UnitId == unitId
orderby x.TeamGroupCode select x).ToList();
}
#region
/// <summary>
/// 表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitTeamGroupProjectUnitDropDownList(FineUIPro.DropDownList dropName, string projectId, string unitId, bool isShowPlease)
{
dropName.DataValueField = "TeamGroupId";
dropName.DataTextField = "TeamGroupName";
dropName.DataSource = GetTeamGroupListByUnitId(projectId, unitId);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
#endregion
#region
/// <summary>
/// 表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitTeamGroupProjectUnitsDropDownList(FineUIPro.DropDownList dropName, string projectId, string unitId, bool isShowPlease)
{
List<string> units = Funs.GetStrListByStr(unitId, ',');
dropName.DataValueField = "TeamGroupId";
dropName.DataTextField = "TeamGroupName";
if (units.Count() > 0)
{
dropName.DataSource = (from x in Funs.DB.ProjectData_TeamGroup
where x.ProjectId == projectId && units.Contains(x.UnitId)
orderby x.TeamGroupCode
select x).ToList();
}
else
{
dropName.DataSource = null;
}
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
#endregion
/// <summary>
/// 获取班组名称
/// </summary>
/// <param name="UnitId"></param>
/// <returns></returns>
public static string GetTeamGroupNameByTeamGroupId(string TeamGroupId)
{
string name = string.Empty;
var TeamGroup = Funs.DB.ProjectData_TeamGroup.FirstOrDefault(x => x.TeamGroupId == TeamGroupId);
if (TeamGroup != null)
{
name = TeamGroup.TeamGroupName;
}
return name;
}
}
}
@@ -0,0 +1,612 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Caching;
using System.Web.UI.WebControls;
namespace BLL
{
public class UnitWorkService
{
public static Model.SGGLDB db = Funs.DB;
/// <summary>
/// 添加单位工程信息
/// </summary>
/// <param name="WPQ"></param>
public static void AddUnitWork(Model.WBS_UnitWork UnitWork)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_UnitWork newUnitWork = new Model.WBS_UnitWork();
newUnitWork.UnitWorkId = UnitWork.UnitWorkId;
newUnitWork.UnitWorkCode = UnitWork.UnitWorkCode;
newUnitWork.UnitWorkName = UnitWork.UnitWorkName;
newUnitWork.SuperUnitWork = UnitWork.SuperUnitWork;
newUnitWork.IsChild = UnitWork.IsChild;
newUnitWork.ProjectId = UnitWork.ProjectId;
newUnitWork.ProjectType = UnitWork.ProjectType;
newUnitWork.UnitId = UnitWork.UnitId;
newUnitWork.SupervisorUnitId = UnitWork.SupervisorUnitId;
newUnitWork.NDEUnit = UnitWork.NDEUnit;
newUnitWork.Costs = UnitWork.Costs;
newUnitWork.InstallationId = UnitWork.InstallationId;
newUnitWork.MainItemAndDesignProfessionalIds = UnitWork.MainItemAndDesignProfessionalIds;
db.WBS_UnitWork.InsertOnSubmit(newUnitWork);
db.SubmitChanges();
//GetWeights(UnitWork.ProjectId);
}
/// <summary>
/// 修改单位工程信息
/// </summary>
/// <param name="WPQ"></param>
public static void UpdateUnitWork(Model.WBS_UnitWork UnitWork)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_UnitWork newUnitWork = db.WBS_UnitWork.FirstOrDefault(e => e.UnitWorkId == UnitWork.UnitWorkId);
if (newUnitWork != null)
{
newUnitWork.UnitWorkId = UnitWork.UnitWorkId;
newUnitWork.UnitWorkCode = UnitWork.UnitWorkCode;
newUnitWork.UnitWorkName = UnitWork.UnitWorkName;
newUnitWork.SuperUnitWork = UnitWork.SuperUnitWork;
newUnitWork.IsChild = UnitWork.IsChild;
newUnitWork.ProjectId = UnitWork.ProjectId;
newUnitWork.ProjectType = UnitWork.ProjectType;
newUnitWork.UnitId = UnitWork.UnitId;
newUnitWork.SupervisorUnitId = UnitWork.SupervisorUnitId;
newUnitWork.NDEUnit = UnitWork.NDEUnit;
newUnitWork.Costs = UnitWork.Costs;
newUnitWork.InstallationId = UnitWork.InstallationId;
newUnitWork.MainItemAndDesignProfessionalIds = UnitWork.MainItemAndDesignProfessionalIds;
db.SubmitChanges();
}
//GetWeights(UnitWork.ProjectId);
//if (UnitWork.Costs != null)
//{
// UpdateWBSCosts(UnitWork.UnitWorkId, Convert.ToDecimal(UnitWork.Costs));
//}
}
private static void GetWeights(string projectId)
{
Model.SGGLDB db = Funs.DB;
decimal totalCosts = 0;
var unitWorks = from x in db.WBS_UnitWork where x.ProjectId == projectId && x.Costs != null select x;
foreach (var unitWork in unitWorks)
{
totalCosts += Convert.ToDecimal(unitWork.Costs);
}
foreach (var unitWork in unitWorks)
{
unitWork.Weights = unitWork.Costs / totalCosts * 100;
db.SubmitChanges();
}
var noCostUnitWorks = from x in db.WBS_UnitWork where x.ProjectId == projectId && x.Costs == null select x;
foreach (var noCostUnitWork in noCostUnitWorks)
{
noCostUnitWork.Weights = null;
db.SubmitChanges();
}
}
#region WBS项的建安工程费
/// <summary>
/// 更新计算单位工程WBS项的建安工程费
/// </summary>
/// <param name="unitWorkId"></param>
/// <param name="costs"></param>
private static void UpdateWBSCosts(string unitWorkId, decimal costs)
{
Model.SGGLDB db = Funs.DB;
var workPackages = from x in db.WBS_WorkPackage where x.UnitWorkId == unitWorkId && x.SuperWorkPackageId == null && x.IsApprove == true select x;
foreach (var item in workPackages)
{
if (item.Weights != null)
{
item.Costs = item.Weights / 100 * costs;
db.SubmitChanges();
UpdateWorkPackageCosts(item.WorkPackageId, Convert.ToDecimal(item.Costs));
}
}
}
private static void UpdateWorkPackageCosts(string workPackageId, decimal costs)
{
Model.SGGLDB db = Funs.DB;
var childWorkPackages = from x in db.WBS_WorkPackage where x.SuperWorkPackageId == workPackageId && x.IsApprove == true select x;
if (childWorkPackages.Count() > 0) //存在子级
{
foreach (var item in childWorkPackages)
{
if (item.Weights != null)
{
item.Costs = item.Weights / 100 * costs;
db.SubmitChanges();
UpdateWorkPackageCosts(item.WorkPackageId, Convert.ToDecimal(item.Costs));
}
}
}
else
{
//var controlItemAndCycles = from x in db.WBS_ControlItemAndCycle where x.WorkPackageId == workPackageId && x.IsApprove == true select x;
//foreach (var item in controlItemAndCycles)
//{
// if (item.Weights != null)
// {
// item.Costs = item.Weights / 100 * costs;
// db.SubmitChanges();
// }
//}
}
}
#endregion
/// <summary>
/// 根据主键删除单位工程信息
/// </summary>
/// <param name="checkerId"></param>
public static void DeleteUnitWorkById(string UnitWorkId)
{
Model.SGGLDB db = Funs.DB;
Model.WBS_UnitWork Unitwork = db.WBS_UnitWork.FirstOrDefault(e => e.UnitWorkId == UnitWorkId);
if (Unitwork != null)
{
db.WBS_UnitWork.DeleteOnSubmit(Unitwork);
db.SubmitChanges();
GetWeights(Unitwork.ProjectId);
}
}
/// <summary>
/// 获取单位工程信息
/// </summary>
/// <param name="UnitWorkId"></param>
/// <returns></returns>
public static Model.WBS_UnitWork GetUnitWorkByUnitWorkId(string UnitWorkId)
{
return Funs.DB.WBS_UnitWork.FirstOrDefault(e => e.UnitWorkId == UnitWorkId);
}
/// <summary>
/// 获取单位工程信息
/// </summary>
/// <param name="UnitWorkId"></param>
/// <returns></returns>
public static Model.WBS_UnitWork GetUnitWorkByMainItemAndDesignProfessionalIds(string mainItemAndDesignProfessionalIds)
{
return Funs.DB.WBS_UnitWork.FirstOrDefault(e => e.MainItemAndDesignProfessionalIds.Contains(mainItemAndDesignProfessionalIds));
}
/// <summary>
/// 根据单位工程编号获取单位工程信息
/// </summary>
/// <param name="UnitWorkCode"></param>
/// <returns></returns>
public static List<Model.WBS_UnitWork> GetUnitWorkByUnitWorkCode(string UnitWorkCode)
{
return (from x in Funs.DB.WBS_UnitWork where x.UnitWorkCode == UnitWorkCode select x).ToList();
}
/// <summary>
/// 下拉框选择(获取 text value)
/// </summary>
/// <param name="text"></param>
/// <returns></returns>
public static string GetTextOrVal(string text, string val, string projectId)
{
string str = null;
ListItem[] listitem = null;
Cache cache = new Cache();
if (cache.Get("UnitWorkList") == null)
{
listitem = GetUnitWork(projectId);
if (listitem.Count() > 0)
{
cache.Insert("UnitWorkList", listitem, null, DateTime.UtcNow.AddMinutes(10), TimeSpan.Zero, CacheItemPriority.Normal, null);
}
}
else
{
listitem = (ListItem[])cache.Get("UnitWorkList");
}
if (!string.IsNullOrWhiteSpace(text))
{
foreach (var item in listitem)
{
if (text.Equals(item.Text))
{
str = item.Value;
}
}
}
if (!string.IsNullOrWhiteSpace(val))
{
foreach (var item in listitem)
{
if (val.Equals(item.Value))
{
str = item.Text;
}
}
}
return str;
}
/// <summary>
/// 获取单位工程名称项
/// </summary>
/// <param name="projectId">项目Id</param>
/// <returns></returns>
public static ListItem[] GetUnitWorkList(string projectId)
{
List<Model.WBS_UnitWork> q = (from x in Funs.DB.WBS_UnitWork where x.ProjectId == projectId && x.SuperUnitWork == null orderby x.UnitWorkCode select x).ToList();
ListItem[] item = new ListItem[q.Count()];
for (int i = 0; i < q.Count(); i++)
{
item[i] = new ListItem((q[i].UnitWorkCode + "-" + q[i].UnitWorkName + GetProjectType(q[i].ProjectType)) ?? "", q[i].UnitWorkId.ToString());
}
return item;
}
/// <summary>
/// 根据工程类型获取名称
/// </summary>
/// <param name="projectType"></param>
/// <returns></returns>
public static string GetProjectType(string projectType)
{
string name = string.Empty;
if (projectType == "1")
{
name = "(建筑)";
}
else if (projectType == "2")
{
name = "(安装)";
}
return name;
}
/// <summary>
/// 获取单位工程名称项
/// </summary>
/// <param name="projectId">项目Id</param>
/// <returns></returns>
public static List<Model.WBS_UnitWork> GetUnitWorkLists(string projectId)
{
return (from x in Funs.DB.WBS_UnitWork where x.ProjectId == projectId && x.SuperUnitWork == null orderby x.UnitWorkCode select x).ToList();
}
public static ListItem[] GetUnitWork(string projectId)
{
List<Model.WBS_UnitWork> q = (from x in Funs.DB.WBS_UnitWork where x.ProjectId == projectId && x.SuperUnitWork == null orderby x.UnitWorkCode select x).ToList();
ListItem[] item = new ListItem[q.Count()];
for (int i = 0; i < q.Count(); i++)
{
item[i] = new ListItem((q[i].UnitWorkCode + "-" + q[i].UnitWorkName + GetProjectType(q[i].ProjectType)) ?? "", q[i].UnitWorkId.ToString());
}
return item;
}
public static ListItem[] GetUnitWork(string projectId,string installationId)
{
List<Model.WBS_UnitWork> q = (from x in Funs.DB.WBS_UnitWork where x.InstallationId==installationId && x.ProjectId == projectId && x.SuperUnitWork == null orderby x.UnitWorkCode select x).ToList();
ListItem[] item = new ListItem[q.Count()];
for (int i = 0; i < q.Count(); i++)
{
item[i] = new ListItem((q[i].UnitWorkCode + "-" + q[i].UnitWorkName + GetProjectType(q[i].ProjectType)) ?? "", q[i].UnitWorkId.ToString());
}
return item;
}
/// <summary>
/// 获取单位名称
/// </summary>
/// <param name="UnitId"></param>
/// <returns></returns>
public static string GetNameById(string id)
{
string name = string.Empty;
var UnitWork = Funs.DB.WBS_UnitWork.FirstOrDefault(x => x.UnitWorkId == id);
if (UnitWork != null)
{
name = UnitWork.UnitWorkName + GetProjectType(UnitWork.ProjectType);
}
return name;
}
/// <summary>
/// 单位工程表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitUnitWorkDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
{
dropName.DataValueField = "Value";
dropName.DataTextField = "Text";
dropName.DataSource = BLL.UnitWorkService.GetUnitWorkList(projectId);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
public static void InitUnitWorkDownList(FineUIPro.DropDownList dropName, string projectId,string unitId, bool isShowPlease)
{
dropName.DataValueField = "Value";
dropName.DataTextField = "Text";
dropName.DataSource = BLL.UnitWorkService.GetUnitWorkList(projectId);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
/// 单位工程表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitUnitWorkDownListByProjectType(FineUIPro.DropDownList dropName, string projectId, string projectType, bool isShowPlease)
{
dropName.DataValueField = "Value";
dropName.DataTextField = "Text";
dropName.DataSource = BLL.UnitWorkService.GetUnitWorkListByProjectType(projectId, projectType);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
/// 单位工程表下拉框
/// </summary>
/// <param name="dropName">下拉框名字</param>
/// <param name="isShowPlease">是否显示请选择</param>
public static void InitUnitWorkList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
{
dropName.DataValueField = "Text";
dropName.DataTextField = "Text";
dropName.DataSource = GetUnitWork(projectId);
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
/// 根据项目id 获取单位工程
/// </summary>
/// <param name="projectId"></param>
/// <returns></returns>
public static List<Model.WBS_UnitWork> GetUnitWorkListByPid(string projectId)
{
Model.SGGLDB db = Funs.DB;
List<Model.WBS_UnitWork> q = (from x in db.WBS_UnitWork where x.ProjectId == projectId && x.SuperUnitWork == null orderby x.UnitWorkCode select x).ToList();
return q;
}
public static Model.WBS_UnitWork getUnitWorkByUnitWorkId(string UnitWorkId)
{
return Funs.DB.WBS_UnitWork.FirstOrDefault(e => e.UnitWorkId.ToString() == UnitWorkId);
}
public static List<Model.WBS_UnitWork> GetUnitWorkListByPidForApi(string projectId, string projectType)
{
string[] type = null;
if (!string.IsNullOrEmpty(projectType))
type = projectType.Split(',');
var unitWorks = from x in Funs.DB.WBS_UnitWork where x.ProjectId == projectId && (type == null || type.Contains(x.ProjectType)) orderby x.UnitWorkCode select x;
return unitWorks.ToList();
}
/// <summary>
/// 获取单位工程名称项
/// </summary>
/// <param name="projectId">项目Id</param>
/// <returns></returns>
public static ListItem[] GetUnitWorkListByProjectType(string projectId, string projectType)
{
List<Model.WBS_UnitWork> q = (from x in Funs.DB.WBS_UnitWork where x.ProjectId == projectId && x.SuperUnitWork == null && x.ProjectType == projectType orderby x.UnitWorkCode select x).ToList();
ListItem[] item = new ListItem[q.Count()];
for (int i = 0; i < q.Count(); i++)
{
item[i] = new ListItem((q[i].UnitWorkCode + "-" + q[i].UnitWorkName + GetProjectType(q[i].ProjectType)) ?? "", q[i].UnitWorkId.ToString());
}
return item;
}
/// <summary>
/// 根据单位工程Id获取对应code的所有单位工程Id集合
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static string GetUnitWorkIdsByUnitWorkId(string unitWorkId)
{
string unitWorkIds = string.Empty;
Model.WBS_UnitWork unitWork = GetUnitWorkByUnitWorkId(unitWorkId);
if (unitWork != null)
{
var q = from x in Funs.DB.WBS_UnitWork where x.UnitWorkCode == unitWork.UnitWorkCode select x;
foreach (var item in q)
{
unitWorkIds += item.UnitWorkId + ",";
}
}
if (!string.IsNullOrEmpty(unitWorkIds))
{
unitWorkIds = unitWorkIds.Substring(0, unitWorkIds.LastIndexOf(","));
}
return unitWorkIds;
}
/// <summary>
/// 根据单位工程类别获取单位工程
/// </summary>
/// <param name="state"></param>
/// <returns></returns>
public static List<Model.WBS_UnitWork> GetUnitWorkDownList(string ProjectType, string ProjectId)
{
if (ProjectType == "1")
{
List<Model.WBS_UnitWork> lis = (from x in Funs.DB.WBS_UnitWork where x.ProjectType == "1" && x.ProjectId == ProjectId orderby x.UnitWorkCode select x).ToList();
return lis;
}
else if (ProjectType == "2")
{
List<Model.WBS_UnitWork> lis = (from x in Funs.DB.WBS_UnitWork where x.ProjectType == "2" && x.ProjectId == ProjectId orderby x.UnitWorkCode select x).ToList();
return lis;
}
else
return null;
}
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 + GetProjectType(un.ProjectType) + ",";
}
}
if (!string.IsNullOrEmpty(unitWorkName))
{
unitWorkName = unitWorkName.Substring(0, unitWorkName.LastIndexOf(","));
}
}
return unitWorkName;
}
/// <summary>
/// 获取单位工程下拉列表
/// </summary>
/// <param name="dropName"></param>
/// <param name="projectId"></param>
/// <param name="isShowPlease"></param>
public static void InitUnitWorkDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
{
var unitWorks = from x in Funs.DB.WBS_UnitWork
where x.ProjectId == projectId && x.SuperUnitWork == null
orderby x.UnitWorkCode
select new
{
x.UnitWorkId,
UnitWorkName = GetUnitWorkALLName(x.UnitWorkId)
};
dropName.DataValueField = "UnitWorkId";
dropName.DataTextField = "UnitWorkName";
dropName.DataSource = unitWorks;
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
/// 获取单位工程下拉列表
/// </summary>
/// <param name="dropName"></param>
/// <param name="projectId"></param>
/// <param name="isShowPlease"></param>
public static void InitUnitWorkNameDropDownList(FineUIPro.DropDownList dropName, string projectId, bool isShowPlease)
{
var unitWorks = from x in Funs.DB.WBS_UnitWork
where x.ProjectId == projectId && x.SuperUnitWork == null
orderby x.UnitWorkCode
select new
{
x.UnitWorkId,
UnitWorkName = GetUnitWorkALLName(x.UnitWorkId)
};
dropName.DataValueField = "UnitWorkName";
dropName.DataTextField = "UnitWorkName";
dropName.DataSource = unitWorks;
dropName.DataBind();
if (isShowPlease)
{
Funs.FineUIPleaseSelect(dropName);
}
}
/// <summary>
/// 获取单位工程名称
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static string GetUnitWorkALLName(string unitWorkId)
{
string name = string.Empty;
var getu = Funs.DB.WBS_UnitWork.FirstOrDefault(x => x.UnitWorkId == unitWorkId && x.SuperUnitWork == null);
if (getu != null)
{
if (!string.IsNullOrEmpty(getu.ProjectType))
{
name = getu.UnitWorkName + "(" + Funs.GetUnitWorkType(getu.ProjectType) + ")";
}
else
{
name = getu.UnitWorkName;
}
}
return name;
}
/// <summary>
/// 获取主项及设计专业名称
/// </summary>
/// <param name="unitWorkId"></param>
/// <returns></returns>
public static string GetMainItemAndDesignProfessionalName(string str, string projectId)
{
string name = string.Empty;
Model.SGGLDB db = Funs.DB;
var mainItems = from x in db.ProjectData_MainItem where x.ProjectId == projectId select x;
var designProfessionals = from x in db.Base_DesignProfessional select x;
if (!string.IsNullOrEmpty(str))
{
string[] ids = str.Split(',');
string mainItemId = string.Empty;
foreach (var id in ids)
{
string[] strs = id.Split('|');
if (mainItemId != strs[0]) //新的主项内容
{
if (!string.IsNullOrEmpty(name))
{
name = name.Substring(0, name.Length - 1) + "),";
}
var mainItem = mainItems.FirstOrDefault(x => x.MainItemId == strs[0]);
if (mainItem != null)
{
name += mainItem.MainItemName + "(";
}
var designProfessional = designProfessionals.FirstOrDefault(x => x.DesignProfessionalId == strs[1]);
if (designProfessional != null)
{
name += designProfessional.ProfessionalName + ",";
}
}
else
{
var designProfessional = designProfessionals.FirstOrDefault(x => x.DesignProfessionalId == strs[1]);
if (designProfessional != null)
{
name += designProfessional.ProfessionalName + ",";
}
}
mainItemId = strs[0];
}
if (!string.IsNullOrEmpty(name))
{
name = name.Substring(0, name.Length - 1) + ")";
}
}
return name;
}
}
}