xinjiang/SGGL/BLL/SubPackManage/SubPackLaborTeamService.cs

259 lines
13 KiB
C#

using Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
public class SubPackLaborTeamService
{
/// <summary>
/// 分包商名称 下拉框绑定
/// </summary>
public static void DropSelectUnitWork(FineUIPro.DropDownList dropName, string projectid, bool isShowPlease)
{
Model.SGGLDB db = Funs.DB;
var unitWorkList = (from x in db.Base_Unit
join y in db.Project_ProjectUnit on x.UnitId equals y.UnitId
where y.UnitType == "2" && y.ProjectId == projectid
select new
{
UnitName = x.UnitName,
UnitId = x.UnitId,
}).ToList();
dropName.DataValueField = "UnitId";
dropName.DataTextField = "UnitName";
dropName.DataSource = unitWorkList;
dropName.DataBind();
if (isShowPlease)
BLL.Funs.FineUIPleaseSelect(dropName);
}
/// <summary>
/// 分包队伍 下拉框绑定
/// </summary>
public static void DropSelectLaborTeam(FineUIPro.DropDownList dropName, string unitId, string BranchTeamListId, string projectId, bool isShowPlease)
{
Model.SGGLDB db = Funs.DB;
var unitWorkList = (from x in db.SubPack_LaborTeam
where x.ProjectId == projectId && (x.BranchTeamListId == BranchTeamListId || BranchTeamListId == null) && (x.UnitId == unitId || unitId == null) && (x.State == null || x.State == "" || x.State == "0")
select new
{
LaborTeamName = x.LaborTeamName,
LaborTeamId = x.LaborTeamId,
}).ToList();
dropName.DataValueField = "LaborTeamId";
dropName.DataTextField = "LaborTeamName";
dropName.DataSource = unitWorkList;
dropName.DataBind();
if (isShowPlease)
BLL.Funs.FineUIPleaseSelect(dropName);
}
/// <summary>
/// 分包公司 下拉框绑定
/// </summary>
public static void DropSelectLaborTeamUpdate(FineUIPro.DropDownList dropName, string unitId, string BranchTeamListId, string projectId, bool isShowPlease)
{
Model.SGGLDB db = Funs.DB;
var unitWorkList = (from x in db.SubPack_LaborTeam
where x.ProjectId == projectId && (x.UnitId == unitId || unitId == null) && (x.BranchTeamListId == BranchTeamListId || BranchTeamListId == null)
select new
{
LaborTeamName = x.LaborTeamName,
LaborTeamId = x.LaborTeamId,
}).ToList();
dropName.DataValueField = "LaborTeamId";
dropName.DataTextField = "LaborTeamName";
dropName.DataSource = unitWorkList;
dropName.DataBind();
if (isShowPlease)
BLL.Funs.FineUIPleaseSelect(dropName);
}
/// <summary>
/// 新增
/// </summary>
/// <param name="subPackLaborTeam">劳务队伍信息</param>
public static void AddSubPackLaborTeam(Model.SubPack_LaborTeam subPackLaborTeam)
{
Model.SGGLDB db = Funs.DB;
db.SubPack_LaborTeam.InsertOnSubmit(subPackLaborTeam);
var v_subPackTeamList = db.View_SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListDetailID == subPackLaborTeam.BranchTeamListId);
if (v_subPackTeamList != null)
{
var branchTeamList = db.Base_BranchTeamList.FirstOrDefault(p => p.CorporateIDCard == v_subPackTeamList.CorporateIDCard);
if (branchTeamList != null)
{
var baseLaborTeam = db.Base_LaborTeam.FirstOrDefault(p => p.CaptainIDCard == subPackLaborTeam.CaptainIDCard);
if (baseLaborTeam == null)
{
Model.Base_LaborTeam newBase_LaborTeam = new Model.Base_LaborTeam();
newBase_LaborTeam.LaborTeamId = SQLHelper.GetNewID(typeof(Model.SubPack_LaborTeam));
newBase_LaborTeam.UnitId = subPackLaborTeam.UnitId;
newBase_LaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId;
newBase_LaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName;
newBase_LaborTeam.Remark = subPackLaborTeam.Remark;
newBase_LaborTeam.SortIndex = subPackLaborTeam.SortIndex;
newBase_LaborTeam.CaptainName = subPackLaborTeam.CaptainName;
newBase_LaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard;
db.Base_LaborTeam.InsertOnSubmit(newBase_LaborTeam);
}
//else
//{
//baseLaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId;
//baseLaborTeam.UnitId = subPackLaborTeam.UnitId;
//baseLaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard;
//baseLaborTeam.CaptainName = subPackLaborTeam.CaptainName;
//baseLaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName;
//baseLaborTeam.Remark = subPackLaborTeam.Remark;
//}
}
}
db.SubmitChanges();
}
/// <summary>
/// 批量新增
/// </summary>
/// <param name="subPackLaborTeams">劳务队伍信息列表</param>
public static void AddSubPackLaborTeam(List<Model.SubPack_LaborTeam> subPackLaborTeams)
{
Model.SGGLDB db = Funs.DB;
db.SubPack_LaborTeam.InsertAllOnSubmit(subPackLaborTeams);
foreach (var subPackLaborTeam in subPackLaborTeams)
{
var v_subPackTeamList = db.View_SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListDetailID == subPackLaborTeam.BranchTeamListId);
if (v_subPackTeamList != null)
{
var branchTeamList = db.Base_BranchTeamList.FirstOrDefault(p => p.CorporateIDCard == v_subPackTeamList.CorporateIDCard);
if (branchTeamList != null)
{
var baseLaborTeam = db.Base_LaborTeam.FirstOrDefault(p => p.CaptainIDCard == subPackLaborTeam.CaptainIDCard);
if (baseLaborTeam == null)
{
Model.Base_LaborTeam newBase_LaborTeam = new Model.Base_LaborTeam();
newBase_LaborTeam.LaborTeamId = SQLHelper.GetNewID(typeof(Model.SubPack_LaborTeam));
newBase_LaborTeam.UnitId = subPackLaborTeam.UnitId;
newBase_LaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId;
newBase_LaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName;
newBase_LaborTeam.Remark = subPackLaborTeam.Remark;
newBase_LaborTeam.SortIndex = subPackLaborTeam.SortIndex;
newBase_LaborTeam.CaptainName = subPackLaborTeam.CaptainName;
newBase_LaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard;
db.Base_LaborTeam.InsertOnSubmit(newBase_LaborTeam);
}
//else
//{
// baseLaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId;
// baseLaborTeam.UnitId = subPackLaborTeam.UnitId;
// baseLaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard;
// baseLaborTeam.CaptainName = subPackLaborTeam.CaptainName;
// baseLaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName;
// baseLaborTeam.Remark = subPackLaborTeam.Remark;
//}
}
}
}
db.SubmitChanges();
}
/// <summary>
/// 修改
/// </summary>
/// <param name="subPackLaborTeam">劳务队伍信息</param>
public static void UpdateSubPackLaborTeam(Model.SubPack_LaborTeam subPackLaborTeam)
{
Model.SGGLDB db = Funs.DB;
var updateItem = db.SubPack_LaborTeam.FirstOrDefault(p => p.LaborTeamId == subPackLaborTeam.LaborTeamId);
if (updateItem != null)
{
updateItem.ProjectId = subPackLaborTeam.ProjectId;
updateItem.UnitId = subPackLaborTeam.UnitId;
updateItem.BranchTeamListId = subPackLaborTeam.BranchTeamListId;
updateItem.LaborTeamName = subPackLaborTeam.LaborTeamName;
updateItem.Remark = subPackLaborTeam.Remark;
updateItem.SortIndex = subPackLaborTeam.SortIndex;
updateItem.CaptainName = subPackLaborTeam.CaptainName;
updateItem.CaptainIDCard = subPackLaborTeam.CaptainIDCard;
var v_subPackTeamList = db.View_SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListDetailID == subPackLaborTeam.BranchTeamListId);
if (v_subPackTeamList != null)
{
var branchTeamList = db.Base_BranchTeamList.FirstOrDefault(p => p.CorporateIDCard == v_subPackTeamList.CorporateIDCard);
if (branchTeamList != null)
{
var baseLaborTeam = db.Base_LaborTeam.FirstOrDefault(p => p.CaptainIDCard == subPackLaborTeam.CaptainIDCard);
if (baseLaborTeam == null)
{
Model.Base_LaborTeam newBase_LaborTeam = new Model.Base_LaborTeam();
newBase_LaborTeam.LaborTeamId = SQLHelper.GetNewID(typeof(Model.SubPack_LaborTeam));
newBase_LaborTeam.UnitId = subPackLaborTeam.UnitId;
newBase_LaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId;
newBase_LaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName;
newBase_LaborTeam.Remark = subPackLaborTeam.Remark;
newBase_LaborTeam.SortIndex = subPackLaborTeam.SortIndex;
newBase_LaborTeam.CaptainName = subPackLaborTeam.CaptainName;
newBase_LaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard;
db.Base_LaborTeam.InsertOnSubmit(newBase_LaborTeam);
}
//else
//{
// baseLaborTeam.BranchTeamListId = branchTeamList.BranchTeamListId;
// baseLaborTeam.UnitId = subPackLaborTeam.UnitId;
// baseLaborTeam.CaptainIDCard = subPackLaborTeam.CaptainIDCard;
// baseLaborTeam.CaptainName = subPackLaborTeam.CaptainName;
// baseLaborTeam.LaborTeamName = subPackLaborTeam.LaborTeamName;
// baseLaborTeam.Remark = subPackLaborTeam.Remark;
//}
}
}
db.SubmitChanges();
}
}
/// <summary>
/// 删除
/// </summary>
/// <param name="laborTeamId">主表主键</param>
public static void DeleteSubPackLaborTeam(string laborTeamId)
{
Model.SGGLDB db = Funs.DB;
var deleteItem = db.SubPack_LaborTeam.FirstOrDefault(p => p.LaborTeamId == laborTeamId);
if (deleteItem != null)
{
string captainIDCard = deleteItem.CaptainIDCard;
//删除主表
db.SubPack_LaborTeam.DeleteOnSubmit(deleteItem);
db.SubmitChanges();
//删除黑名单
var backItems = db.SubPack_Blacklist.Where(p => p.BlackForeignKey == laborTeamId && p.BlackType == Const.SubPackBlackLaborTeam && p.IDCard == captainIDCard);
if (backItems.Count() > 0)
{
db.SubPack_Blacklist.DeleteAllOnSubmit(backItems);
db.SubmitChanges();
}
//这个队伍再所有项目删除了,那么将删除公司级的队伍
if (db.SubPack_LaborTeam.Where(p => p.CaptainIDCard == captainIDCard).Count() <= 0) {
var deleteBaseItem = db.Base_LaborTeam.Where(p => p.CaptainIDCard == captainIDCard);
if (deleteBaseItem.Count() > 0) {
db.Base_LaborTeam.DeleteAllOnSubmit(deleteBaseItem);
db.SubmitChanges();
}
}
}
}
}
}