2024-02-19 试车分包管理修改

This commit is contained in:
2024-02-19 10:32:15 +08:00
parent 4d854a854a
commit 1180cda1a6
26 changed files with 1203 additions and 1290 deletions
@@ -1,5 +1,7 @@
using System.Collections.Generic;
using System.Linq;
using FineUIPro;
using Model;
namespace BLL
{
@@ -38,18 +40,11 @@ namespace BLL
newDriverSubContact.DriverSubContactId = DriverSubContact.DriverSubContactId;
newDriverSubContact.ProjectId = DriverSubContact.ProjectId;
newDriverSubContact.Code = DriverSubContact.Code;
newDriverSubContact.SubUnitId = DriverSubContact.SubUnitId;
newDriverSubContact.ContactInfo = DriverSubContact.ContactInfo;
newDriverSubContact.ChargeManInfo = DriverSubContact.ChargeManInfo;
newDriverSubContact.ContactContent = DriverSubContact.ContactContent;
newDriverSubContact.Result = DriverSubContact.Result;
newDriverSubContact.IntTime = DriverSubContact.IntTime;
newDriverSubContact.OutTime = DriverSubContact.OutTime;
newDriverSubContact.AttachUrl = DriverSubContact.AttachUrl;
newDriverSubContact.Remark = DriverSubContact.Remark;
newDriverSubContact.DriverSubPlanId= DriverSubContact.DriverSubPlanId;
newDriverSubContact.DriverSubContractorsId = DriverSubContact.DriverSubContractorsId;
newDriverSubContact.SubcontractingType = DriverSubContact.SubcontractingType;
newDriverSubContact.IsBidirectional = DriverSubContact.IsBidirectional;
Funs.DB.DriverSub_DriverSubContact.InsertOnSubmit(newDriverSubContact);
Funs.DB.SubmitChanges();
}
@@ -64,18 +59,11 @@ namespace BLL
if (newDriverSubContact != null)
{
newDriverSubContact.Code = DriverSubContact.Code;
newDriverSubContact.SubUnitId = DriverSubContact.SubUnitId;
newDriverSubContact.ContactInfo = DriverSubContact.ContactInfo;
newDriverSubContact.ChargeManInfo = DriverSubContact.ChargeManInfo;
newDriverSubContact.ContactContent = DriverSubContact.ContactContent;
newDriverSubContact.Result = DriverSubContact.Result;
newDriverSubContact.IntTime = DriverSubContact.IntTime;
newDriverSubContact.OutTime = DriverSubContact.OutTime;
newDriverSubContact.AttachUrl = DriverSubContact.AttachUrl;
newDriverSubContact.Remark = DriverSubContact.Remark;
newDriverSubContact.DriverSubPlanId = DriverSubContact.DriverSubPlanId;
newDriverSubContact.DriverSubContractorsId = DriverSubContact.DriverSubContractorsId;
newDriverSubContact.SubcontractingType = DriverSubContact.SubcontractingType;
newDriverSubContact.IsBidirectional = DriverSubContact.IsBidirectional;
Funs.DB.SubmitChanges();
}
}
@@ -89,30 +77,87 @@ namespace BLL
Model.DriverSub_DriverSubContact DriverSubContact = Funs.DB.DriverSub_DriverSubContact.FirstOrDefault(e => e.DriverSubContactId == DriverSubContactId);
if (DriverSubContact != null)
{
if (!string.IsNullOrEmpty(DriverSubContact.AttachUrl))
{
BLL.UploadAttachmentService.DeleteFile(Funs.RootPath, DriverSubContact.AttachUrl);//删除附件
}
Funs.DB.DriverSub_DriverSubContact.DeleteOnSubmit(DriverSubContact);
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 根据开车分包计划主键删除开车分包联络
/// </summary>
/// <param name="DriverSubPlanId"></param>
public static void DeleteDriverSubContactByDriverSubPlanId(string DriverSubPlanId)
{
List<Model.DriverSub_DriverSubContact> DriverSubContact = Funs.DB.DriverSub_DriverSubContact.Where(e => e.DriverSubPlanId == DriverSubPlanId).ToList();
if (DriverSubContact != null)
if (DriverSubContact.Count>0)
{
foreach (var item in DriverSubContact)
{
if (!string.IsNullOrEmpty(item.AttachUrl))
{
BLL.UploadAttachmentService.DeleteFile(Funs.RootPath, item.AttachUrl);//删除附件
}
Funs.DB.DriverSub_DriverSubContact.DeleteOnSubmit(item);
Funs.DB.SubmitChanges();
}
Funs.DB.DriverSub_DriverSubContact.DeleteAllOnSubmit(DriverSubContact);
Funs.DB.SubmitChanges();
}
}
public static void InitDropListByDriverSubPlanId(string driverSubPlanId, string type, DropDownList dropDownList)
{
dropDownList.DataSource = from x in Funs.DB.DriverSub_DriverSubContact
join y in Funs.DB.DriverSub_DriverSubContractors on x.DriverSubContractorsId equals y
.DriverSubContractorsId
where x.DriverSubPlanId== driverSubPlanId && x.SubcontractingType == type
select new { x.DriverSubContractorsId, y.SubUnitName };
dropDownList.DataTextField = "SubUnitName";
dropDownList.DataValueField = "DriverSubContractorsId";
dropDownList.DataBind();
}
/// <summary>
/// 根据driverSubPlanId判断是否选标完成
/// </summary>
/// <param name="driverSubPlanId"></param>
/// <returns></returns>
public static bool IsAllBidirectional(string driverSubPlanId)
{
//获取DriverSubPlanId对应的所有数据
var list = Funs.DB.DriverSub_DriverSubContact.Where(e => e.DriverSubPlanId == driverSubPlanId).ToList();
//按SubcontractingType分组,检查每组数据是否都存在一个中标单位
var allExist = list.GroupBy(item => item.SubcontractingType)
.All(g => g.Any(item => item.IsBidirectional == true));
return allExist;
}
public static Model.DriverSub_DriverSubContact GetBidirectional(string driverSubPlanId ,string subcontractingType)
{
return Funs.DB.DriverSub_DriverSubContact.FirstOrDefault(e => e.DriverSubPlanId == driverSubPlanId && e.IsBidirectional == true && e.SubcontractingType== subcontractingType);
}
//根据driverSubPlanId 和DriverSubContractorsId 确定中标单位,使其IsBidirectional为true,且当前SubcontractingType下其他为false
/// <summary>
/// 确定中标单位
/// </summary>
/// <param name="driverSubPlanId"></param>
/// <param name="driverSubContractorsId"></param>
public static void SetBidirectional(string driverSubPlanId, string driverSubContractorsId)
{
//根据driverSubPlanId 和DriverSubContractorsId 获取SubcontractingType
var subcontractingType= Funs.DB.DriverSub_DriverSubContact.FirstOrDefault(e => e.DriverSubContractorsId == driverSubContractorsId &&e.DriverSubPlanId== driverSubPlanId
)?.SubcontractingType;
var list = Funs.DB.DriverSub_DriverSubContact.Where(e => e.DriverSubPlanId == driverSubPlanId && e.SubcontractingType == subcontractingType).ToList();
foreach (var item in list)
{
if (item.DriverSubContractorsId == driverSubContractorsId)
{
item.IsBidirectional = true;
}
else
{
item.IsBidirectional = false;
}
}
Funs.DB.SubmitChanges();
}
}
}
@@ -37,7 +37,7 @@ namespace BLL
(string.IsNullOrEmpty(table.InstallationNames) || x.InstallationNames.Contains(table.InstallationNames)) &&
(string.IsNullOrEmpty(table.AttachUrl) || x.AttachUrl.Contains(table.AttachUrl)) &&
(string.IsNullOrEmpty(table.Remark) || x.Remark.Contains(table.Remark)) &&
(string.IsNullOrEmpty(table.DriverSubNames) || x.DriverSubNames.Contains(table.DriverSubNames))
(string.IsNullOrEmpty(table.SubcontractingTypes) || x.SubcontractingTypes.Contains(table.SubcontractingTypes))
select x
;
@@ -75,8 +75,8 @@ namespace BLL
x.IsInvited,
x.AttachUrl,
x.Remark,
x.DriverSubNames,
x.SubcontractingTypes,
StateName = GetSubStateName(x.State)
};
}
#endregion
@@ -113,7 +113,8 @@ namespace BLL
newDriverSubPlan.IsInvited = DriverSubPlan.IsInvited;
newDriverSubPlan.AttachUrl = DriverSubPlan.AttachUrl;
newDriverSubPlan.Remark = DriverSubPlan.Remark;
newDriverSubPlan.DriverSubNames= DriverSubPlan.DriverSubNames;
newDriverSubPlan.SubcontractingTypes= DriverSubPlan.SubcontractingTypes;
newDriverSubPlan.State = DriverSubPlan.State;
Funs.DB.DriverSub_DriverSubPlan.InsertOnSubmit(newDriverSubPlan);
Funs.DB.SubmitChanges();
}
@@ -137,8 +138,8 @@ namespace BLL
newDriverSubPlan.IsInvited = DriverSubPlan.IsInvited;
newDriverSubPlan.AttachUrl = DriverSubPlan.AttachUrl;
newDriverSubPlan.Remark = DriverSubPlan.Remark;
newDriverSubPlan.DriverSubNames = DriverSubPlan.DriverSubNames;
newDriverSubPlan.SubcontractingTypes = DriverSubPlan.SubcontractingTypes;
newDriverSubPlan.State = DriverSubPlan.State;
Funs.DB.SubmitChanges();
}
}
@@ -171,5 +172,51 @@ namespace BLL
Funs.FineUIPleaseSelect(dropName);
}
}
}
public static string GetSubcontractingTypeNames(object str)
{
string strName = "";
if (str != null)
{
string[] strArr = str.ToString().Split(',');
foreach (string s in strArr)
{
foreach (System.Web.UI.WebControls.ListItem item in DropListService.drpDriverSubNameList())
{
if (item.Value == s)
{
strName += item.Text + ",";
}
}
}
}
return strName.TrimEnd(',');
}
public static string GetSubStateName(int? str)
{
string strName = "";
if (str != null)
{
string[] strArr = str.ToString().Split(',');
foreach (string s in strArr)
{
foreach (System.Web.UI.WebControls.ListItem item in DropListService.drpDriverSubPlanStateList())
{
if (item.Value == s)
{
strName += item.Text + ",";
}
}
}
}
return strName.TrimEnd(',');
}
}
}
+46 -24
View File
@@ -41,14 +41,10 @@ namespace BLL
newDriverSub.DriverSubId = DriverSub.DriverSubId;
newDriverSub.ProjectId = DriverSub.ProjectId;
newDriverSub.Code = DriverSub.Code;
newDriverSub.SubUnitId = DriverSub.SubUnitId;
newDriverSub.Implement = DriverSub.Implement;
newDriverSub.Instruction = DriverSub.Instruction;
newDriverSub.AttachUrl = DriverSub.AttachUrl;
newDriverSub.Remark = DriverSub.Remark;
newDriverSub.DriverSubPlanId= DriverSub.DriverSubPlanId;
newDriverSub.DriverSubContractorsId = DriverSub.DriverSubContractorsId;
newDriverSub.EvaluationData = DriverSub.EvaluationData;
newDriverSub.EvaluationData = DriverSub.EvaluationData;
Funs.DB.DriverSub_DriverSub.InsertOnSubmit(newDriverSub);
Funs.DB.SubmitChanges();
}
@@ -63,10 +59,6 @@ namespace BLL
if (newDriverSub != null)
{
newDriverSub.Code = DriverSub.Code;
newDriverSub.SubUnitId = DriverSub.SubUnitId;
newDriverSub.Implement = DriverSub.Implement;
newDriverSub.Instruction = DriverSub.Instruction;
newDriverSub.AttachUrl = DriverSub.AttachUrl;
newDriverSub.Remark = DriverSub.Remark;
newDriverSub.DriverSubPlanId = DriverSub.DriverSubPlanId;
newDriverSub.DriverSubContractorsId = DriverSub.DriverSubContractorsId;
@@ -84,10 +76,6 @@ namespace BLL
Model.DriverSub_DriverSub DriverSub = Funs.DB.DriverSub_DriverSub.FirstOrDefault(e => e.DriverSubId == DriverSubId);
if (DriverSub != null)
{
if (!string.IsNullOrEmpty(DriverSub.AttachUrl))
{
BLL.UploadAttachmentService.DeleteFile(Funs.RootPath, DriverSub.AttachUrl);//删除附件
}
Funs.DB.DriverSub_DriverSub.DeleteOnSubmit(DriverSub);
Funs.DB.SubmitChanges();
}
@@ -147,19 +135,53 @@ namespace BLL
/// 获取初始化数据List<Model.DriverSubEvaluationData>
/// </summary>
/// <returns></returns>
public static List<Model.DriverSubEvaluationData> GetDriverSubEvaluationData()
public static List<Model.DriverSubEvaluationData> GetDriverSubEvaluationData(string type )
{
List<Model.DriverSubEvaluationData> list = new List<Model.DriverSubEvaluationData>();
list.Add(new Model.DriverSubEvaluationData() { Number = 1, Matter = "业主人员培训", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 2, Matter = "编制技术方案", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 3, Matter = "预试车", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 4, Matter = "联动试车", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 5, Matter = "投料试车", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 6, Matter = "生产试运行", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 7, Matter = "性能考核", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 8, Matter = "生产安全", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 9, Matter = "试车进度", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 10, Matter = "其他", Grade = "" });
switch (type)
{
case "1"://催化剂装填
list.Add(new Model.DriverSubEvaluationData() { Number = 1, Matter = "方案编制", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 2, Matter = "催化剂装填准备", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 3, Matter = "人员配合", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 4, Matter = "催化剂装填实施", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 5, Matter = "装填结果认定", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 6, Matter = "收尾处理", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 7, Matter = "其他", Grade = "" });
break;
case "2"://烘炉
list.Add(new Model.DriverSubEvaluationData() { Number = 1, Matter = "方案编制", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 2, Matter = "烘炉准备", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 3, Matter = "人员配合", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 4, Matter = "烘炉实施", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 5, Matter = "烘炉结果认定", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 6, Matter = "收尾处理", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 7, Matter = "其他", Grade = "" });
break;
case "3"://化学清洗
list.Add(new Model.DriverSubEvaluationData() { Number = 1, Matter = "方案编制", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 2, Matter = "化学清洗准备", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 3, Matter = "人员配合", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 4, Matter = "化学清洗实施", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 5, Matter = "清洗结果认定", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 6, Matter = "收尾处理", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 7, Matter = "其他", Grade = "" });
break;
case "4"://开车队
list.Add(new Model.DriverSubEvaluationData() { Number = 1, Matter = "业主人员培训", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 2, Matter = "编制技术方案", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 3, Matter = "预试车", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 4, Matter = "联动试车", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 5, Matter = "投料试车", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 6, Matter = "生产试运行", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 7, Matter = "性能考核", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 8, Matter = "生产安全", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 9, Matter = "试车进度", Grade = "" });
list.Add(new Model.DriverSubEvaluationData() { Number = 10, Matter = "其他", Grade = "" });
break;
}
return list;
}