557 lines
		
	
	
		
			25 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			557 lines
		
	
	
		
			25 KiB
		
	
	
	
		
			C#
		
	
	
	
| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.Globalization;
 | |
| using System.Linq;
 | |
| using System.Text;
 | |
| using System.Threading.Tasks;
 | |
| using System.Web.UI.WebControls;
 | |
| 
 | |
| namespace BLL
 | |
| {
 | |
|     public class WorkContactService
 | |
|     {
 | |
|         #region 把状态转换代号为文字形式
 | |
|         /// <summary>
 | |
|         /// 把状态转换代号为文字形式
 | |
|         /// </summary>
 | |
|         /// <param name="state"></param>
 | |
|         /// <returns></returns>
 | |
|         public static string ConvertState(object state)
 | |
|         {
 | |
|             if (state != null)
 | |
|             {
 | |
|                 if (state.ToString() == BLL.Const.WorkContact_ReCompile)
 | |
|                 {
 | |
|                     return "重新编制";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.WorkContact_Compile)
 | |
|                 {
 | |
|                     return "编制";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.WorkContact_Audit1)
 | |
|                 {
 | |
|                     return "分包负责人审核";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.WorkContact_Audit2)
 | |
|                 {
 | |
|                     return "总包专工回复";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.WorkContact_Audit3)
 | |
|                 {
 | |
|                     return "总包负责人审核";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.WorkContact_Complete)
 | |
|                 {
 | |
|                     return "审批完成";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.WorkContact_Audit1R)
 | |
|                 {
 | |
|                     return "分包专工重新回复";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.WorkContact_Audit2R)
 | |
|                 {
 | |
|                     return "总包专工重新回复";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.WorkContact_Audit4)
 | |
|                 {
 | |
|                     return "分包专工回复";
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     return "";
 | |
|                 }
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 return "";
 | |
|             }
 | |
|         }
 | |
|         #endregion
 | |
|         /// <summary>
 | |
|         /// 根据工作联系单信息Id删除一个工作联系单信息信息
 | |
|         /// </summary>
 | |
|         /// <param name="workContactId">工作联系单信息Id</param>
 | |
|         public static void DeleteWorkContact(string workContactId)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.Unqualified_WorkContact workContact = db.Unqualified_WorkContact.First(e => e.WorkContactId == workContactId);
 | |
| 
 | |
|             db.Unqualified_WorkContact.DeleteOnSubmit(workContact);
 | |
|             db.SubmitChanges();
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// 根据状态选择下一步办理类型
 | |
|         /// </summary>
 | |
|         /// <param name="state"></param>
 | |
|         /// <returns></returns>
 | |
|         public static ListItem[] GetDHandleTypeByState(string state, string unitType, string isReply)
 | |
|         {
 | |
|             ListItem[] lis = null;
 | |
|             if (state == Const.WorkContact_Compile || state == Const.WorkContact_ReCompile)
 | |
|             {
 | |
|                 if (unitType == Const.ProjectUnitType_2)   //分包商
 | |
|                 {
 | |
|                     lis = new ListItem[1];
 | |
|                     lis[0] = new ListItem("分包负责人审核", Const.WorkContact_Audit1);
 | |
|                     //lis[1] = new ListItem("审核完结", Const.WorkContact_Complete);
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     lis = new ListItem[1];
 | |
|                     lis[0] = new ListItem("总包负责人审核", Const.WorkContact_Audit3);
 | |
|                     //lis[1] = new ListItem("审核完结", Const.WorkContact_Complete);
 | |
|                 }
 | |
|             }
 | |
|             else if (state == Const.WorkContact_Audit1)
 | |
|             {
 | |
|                 if (unitType == Const.ProjectUnitType_2)   //分包商
 | |
|                 {
 | |
|                     if (isReply == "1")  //需要回复
 | |
|                     {
 | |
|                         lis = new ListItem[2];
 | |
|                         lis[0] = new ListItem("总包专工回复", Const.WorkContact_Audit2);
 | |
|                         lis[1] = new ListItem("重新编制", Const.WorkContact_ReCompile);
 | |
|                     }
 | |
|                     else   //不需回复
 | |
|                     {
 | |
|                         lis = new ListItem[2];
 | |
|                         lis[0] = new ListItem("审批完成", Const.WorkContact_Complete);
 | |
|                         lis[1] = new ListItem("重新编制", Const.WorkContact_ReCompile);
 | |
|                     }
 | |
|                 }
 | |
|                 else  //总包
 | |
|                 {
 | |
|                     if (isReply == "1")  //需要回复
 | |
|                     {
 | |
|                         lis = new ListItem[2];
 | |
|                         lis[0] = new ListItem("审批完成", Const.WorkContact_Complete);
 | |
|                         lis[1] = new ListItem("分包专工重新回复", Const.WorkContact_Audit1R);
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|             else if (state == Const.WorkContact_Audit2 || state == Const.WorkContact_Audit2R)
 | |
|             {
 | |
|                 lis = new ListItem[2];
 | |
|                 lis[0] = new ListItem("总包负责人审核", Const.WorkContact_Audit3);
 | |
|                 lis[1] = new ListItem("重新编制", Const.WorkContact_ReCompile);
 | |
|             }
 | |
|             else if (state == Const.WorkContact_Audit3)
 | |
|             {
 | |
|                 if (unitType == Const.ProjectUnitType_2)   //分包商
 | |
|                 {
 | |
|                     lis = new ListItem[3];
 | |
|                     lis[0] = new ListItem("审批完成", Const.WorkContact_Complete);
 | |
|                     lis[1] = new ListItem("重新编制", Const.WorkContact_ReCompile);
 | |
|                     lis[2] = new ListItem("总包专工重新回复", Const.WorkContact_Audit2R);
 | |
|                 }
 | |
|                 else    //总包
 | |
|                 {
 | |
|                     if (isReply == "1")   //需要回复
 | |
|                     {
 | |
|                         lis = new ListItem[2];
 | |
|                         lis[0] = new ListItem("分包专工回复", Const.WorkContact_Audit4);
 | |
|                         lis[1] = new ListItem("重新编制", Const.WorkContact_ReCompile);
 | |
|                     }
 | |
|                     else
 | |
|                     {
 | |
|                         lis = new ListItem[2];
 | |
|                         lis[0] = new ListItem("审批完成", Const.WorkContact_Complete);
 | |
|                         lis[1] = new ListItem("重新编制", Const.WorkContact_ReCompile);
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|             else if (state == Const.WorkContact_Audit4 || state == Const.WorkContact_Audit1R)
 | |
|             {
 | |
|                 if (isReply == "1")   //需要回复
 | |
|                 {
 | |
|                     lis = new ListItem[1];
 | |
|                     lis[0] = new ListItem("分包负责人审核", Const.WorkContact_Audit1);
 | |
|                     //lis[1] = new ListItem("重新编制", Const.WorkContact_ReCompile);
 | |
|                 }
 | |
|             }
 | |
|             return lis;
 | |
|         }
 | |
|         public static void InitHandleType(FineUIPro.DropDownList dropName, bool isShowPlease, string state, string unitType, string isReply)
 | |
|         {
 | |
|             dropName.DataValueField = "Value";
 | |
|             dropName.DataTextField = "Text";
 | |
|             dropName.DataSource = GetDHandleTypeByState(state, unitType, isReply);
 | |
|             dropName.DataBind();
 | |
|             if (isShowPlease)
 | |
|             {
 | |
|                 Funs.FineUIPleaseSelect(dropName);
 | |
|             }
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// 根据工作联系单信息Id获取一个工作联系单信息信息
 | |
|         /// </summary>
 | |
|         /// <param name="workContactId">工作联系单信息Id</param>
 | |
|         /// <returns>一个工作联系单信息实体</returns>
 | |
|         public static Model.Unqualified_WorkContact GetWorkContactByWorkContactId(string workContactId)
 | |
|         {
 | |
|             return Funs.DB.Unqualified_WorkContact.FirstOrDefault(x => x.WorkContactId == workContactId);
 | |
| 
 | |
|         }
 | |
|         public static Model.Unqualified_WorkContact GetWorkContactByWorkContactIdForApi(string workContactId)
 | |
|         {
 | |
|             using (var db = new Model.SGGLDB(Funs.ConnString))
 | |
|             {
 | |
|                 var res = db.Unqualified_WorkContact.FirstOrDefault(x => x.WorkContactId == workContactId);
 | |
|                 //Model.Base_Unit unit = db.Base_Unit.FirstOrDefault(e => e.UnitId == res.ProposedUnitId);
 | |
|                 var unit = db.Project_ProjectUnit.FirstOrDefault(e => e.UnitId == res.ProposedUnitId && e.ProjectId == res.ProjectId);
 | |
|                 if (unit != null)
 | |
|                 {
 | |
|                     res.ProposedUnitId = res.ProposedUnitId + "$" + unit.Base_Unit.UnitName + "$" + unit.UnitType;
 | |
|                 }
 | |
|                 res.MainSendUnitIds = res.MainSendUnitIds + "$" + UnitService.getUnitNamesUnitIds(res.MainSendUnitIds);
 | |
|                 res.CCUnitIds = res.CCUnitIds + "$" + UnitService.getUnitNamesUnitIds(res.CCUnitIds);
 | |
|                 res.AttachUrl = AttachFileService.getFileUrl(res.WorkContactId);
 | |
|                 res.ReturnAttachUrl = AttachFileService.getFileUrl(res.WorkContactId + "r");
 | |
|                 return res;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         #region 获取办理人姓名
 | |
|         //<summary>
 | |
|         //获取办理人姓名
 | |
|         //</summary>
 | |
|         //<param name="state"></param>
 | |
|         //<returns></returns>
 | |
|         public static string ConvertMan(object WorkContactId)
 | |
|         {
 | |
|             if (WorkContactId != null)
 | |
|             {
 | |
|                 Model.Unqualified_WorkContactApprove a = WorkContactApproveService.GetWorkContactApproveByWorkContactId(WorkContactId.ToString());
 | |
|                 if (a != null)
 | |
|                 {
 | |
|                     if (a.ApproveMan != null)
 | |
|                     {
 | |
|                         return UserService.GetUserByUserId(a.ApproveMan).UserName;
 | |
|                     }
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     return "";
 | |
|                 }
 | |
|             }
 | |
|             return "";
 | |
|         }
 | |
|         public static string ConvertManAndId(object WorkContactId)
 | |
|         {
 | |
|             if (WorkContactId != null)
 | |
|             {
 | |
|                 Model.Unqualified_WorkContactApprove a = WorkContactApproveService.GetWorkContactApproveByWorkContactId(WorkContactId.ToString());
 | |
|                 if (a != null)
 | |
|                 {
 | |
|                     if (a.ApproveMan != null)
 | |
|                     {
 | |
|                         var user = UserService.GetUserByUserId(a.ApproveMan);
 | |
|                         return user.UserName + "$" + user.UserId;
 | |
|                     }
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     return "";
 | |
|                 }
 | |
|             }
 | |
|             return "";
 | |
|         }
 | |
|         #endregion
 | |
|         /// <summary>
 | |
|         /// 增加工作联系单信息信息
 | |
|         /// </summary>
 | |
|         /// <param name="workContact">工作联系单信息实体</param>
 | |
|         public static void AddWorkContact(Model.Unqualified_WorkContact workContact)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.Unqualified_WorkContact newWorkContact = new Model.Unqualified_WorkContact();
 | |
|             newWorkContact.WorkContactId = workContact.WorkContactId;
 | |
|             newWorkContact.ProjectId = workContact.ProjectId;
 | |
|             newWorkContact.Code = workContact.Code;
 | |
|             newWorkContact.ProposedUnitId = workContact.ProposedUnitId;
 | |
|             newWorkContact.MainSendUnitIds = workContact.MainSendUnitIds;
 | |
|             newWorkContact.CCUnitIds = workContact.CCUnitIds;
 | |
|             newWorkContact.Cause = workContact.Cause;
 | |
|             newWorkContact.Contents = workContact.Contents;
 | |
|             newWorkContact.IsReply = workContact.IsReply;
 | |
|             newWorkContact.AttachUrl = workContact.AttachUrl;
 | |
|             newWorkContact.CompileMan = workContact.CompileMan;
 | |
|             newWorkContact.CompileDate = workContact.CompileDate;
 | |
|             newWorkContact.State = workContact.State;
 | |
|             newWorkContact.IsFinal = workContact.IsFinal;
 | |
|             newWorkContact.ReOpinion = workContact.ReOpinion;
 | |
|             newWorkContact.SaveHandleMan = workContact.SaveHandleMan;
 | |
|             db.Unqualified_WorkContact.InsertOnSubmit(newWorkContact);
 | |
|             db.SubmitChanges();
 | |
|         }
 | |
|         public static void AddWorkContactForApi(Model.Unqualified_WorkContact workContact)
 | |
|         {
 | |
|             using (var db = new Model.SGGLDB(Funs.ConnString))
 | |
|             {
 | |
|                 Model.Unqualified_WorkContact newWorkContact = new Model.Unqualified_WorkContact();
 | |
|                 newWorkContact.WorkContactId = workContact.WorkContactId;
 | |
|                 newWorkContact.ProjectId = workContact.ProjectId;
 | |
|                 newWorkContact.Code = workContact.Code;
 | |
|                 newWorkContact.ProposedUnitId = workContact.ProposedUnitId;
 | |
|                 newWorkContact.MainSendUnitIds = workContact.MainSendUnitIds;
 | |
|                 newWorkContact.CCUnitIds = workContact.CCUnitIds;
 | |
|                 newWorkContact.Cause = workContact.Cause;
 | |
|                 newWorkContact.Contents = workContact.Contents;
 | |
|                 newWorkContact.IsReply = workContact.IsReply;
 | |
|                 newWorkContact.AttachUrl = workContact.AttachUrl;
 | |
|                 newWorkContact.CompileMan = workContact.CompileMan;
 | |
|                 newWorkContact.CompileDate = workContact.CompileDate;
 | |
|                 newWorkContact.State = workContact.State;
 | |
|                 newWorkContact.IsFinal = workContact.IsFinal;
 | |
|                 newWorkContact.ReOpinion = workContact.ReOpinion;
 | |
|                 newWorkContact.SaveHandleMan = workContact.SaveHandleMan;
 | |
|                 db.Unqualified_WorkContact.InsertOnSubmit(newWorkContact);
 | |
|                 db.SubmitChanges();
 | |
|             }
 | |
|         }
 | |
|         /// <summary>
 | |
|         /// 修改工作联系单信息信息
 | |
|         /// </summary>
 | |
|         /// <param name="workContact">工作联系单信息实体</param>
 | |
|         public static void UpdateWorkContact(Model.Unqualified_WorkContact workContact)
 | |
|         {
 | |
|             Model.SGGLDB db = Funs.DB;
 | |
|             Model.Unqualified_WorkContact newWorkContact = db.Unqualified_WorkContact.First(e => e.WorkContactId == workContact.WorkContactId);
 | |
|             newWorkContact.Code = workContact.Code;
 | |
|             newWorkContact.ProposedUnitId = workContact.ProposedUnitId;
 | |
|             newWorkContact.MainSendUnitIds = workContact.MainSendUnitIds;
 | |
|             newWorkContact.CCUnitIds = workContact.CCUnitIds;
 | |
|             newWorkContact.Cause = workContact.Cause;
 | |
|             newWorkContact.Contents = workContact.Contents;
 | |
|             newWorkContact.IsReply = workContact.IsReply;
 | |
|             newWorkContact.AttachUrl = workContact.AttachUrl;
 | |
|             newWorkContact.State = workContact.State;
 | |
|             newWorkContact.ReOpinion = workContact.ReOpinion;
 | |
|             newWorkContact.SaveHandleMan = workContact.SaveHandleMan;
 | |
|             db.SubmitChanges();
 | |
|         }
 | |
|         public static List<Model.Unqualified_WorkContact> getListDataForApi(string projectId, string name, int startRowIndex, int maximumRows)
 | |
|         {
 | |
|             using (var db = new Model.SGGLDB(Funs.ConnString))
 | |
|             {
 | |
|                 IQueryable<Model.Unqualified_WorkContact> q = db.Unqualified_WorkContact;
 | |
|                 if (!string.IsNullOrEmpty(projectId))
 | |
|                 {
 | |
|                     q = q.Where(e => e.ProjectId == projectId);
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(name))
 | |
|                 {
 | |
|                     List<string> ids = new List<string>();
 | |
|                     var qunit = from u in Funs.DB.Base_Unit
 | |
|                                 where u.UnitName.Contains(name)
 | |
|                                 select u.UnitId;
 | |
|                     ids = qunit.ToList();
 | |
|                     q = q.Where(e => ids.Contains(e.ProposedUnitId));
 | |
|                 }
 | |
| 
 | |
|                 var qres = from x in q
 | |
|                            orderby x.Code descending
 | |
|                            select new
 | |
|                            {
 | |
|                                x.WorkContactId,
 | |
|                                x.Code,
 | |
|                                x.ProjectId,
 | |
|                                x.CompileMan,
 | |
|                                x.CompileDate,
 | |
|                                x.Cause,
 | |
|                                x.ProposedUnitId,
 | |
|                                x.State,
 | |
|                                x.Contents,
 | |
|                                MainSendUnitName = UnitService.getUnitNamesUnitIds(x.MainSendUnitIds),
 | |
|                                CCUnitName = UnitService.getUnitNamesUnitIds(x.CCUnitIds),
 | |
|                                x.IsReply
 | |
|                            };
 | |
| 
 | |
|                 List<Model.Unqualified_WorkContact> res = new List<Model.Unqualified_WorkContact>();
 | |
|                 var list = qres.Skip(startRowIndex * maximumRows).Take(maximumRows).ToList();
 | |
|                 foreach (var item in list)
 | |
|                 {
 | |
|                     Model.Unqualified_WorkContact wc = new Model.Unqualified_WorkContact();
 | |
|                     wc.WorkContactId = item.WorkContactId;
 | |
|                     wc.Code = item.Code;
 | |
|                     wc.ProjectId = item.ProjectId;
 | |
|                     wc.CompileMan = item.CompileMan;
 | |
|                     wc.CompileDate = item.CompileDate;
 | |
|                     wc.Cause = item.Cause;
 | |
|                     wc.State = item.State;
 | |
|                     var unit = db.Project_ProjectUnit.FirstOrDefault(u => u.ProjectId == wc.ProjectId && u.UnitId == item.ProposedUnitId);
 | |
|                     if (unit != null)
 | |
|                     {
 | |
|                         wc.ProposedUnitId = item.ProposedUnitId + "$" + unit.Base_Unit.UnitName + "$" + unit.UnitType;
 | |
|                     }
 | |
|                     else
 | |
|                     {
 | |
|                         wc.ProposedUnitId = item.ProposedUnitId + "$$";
 | |
|                     }
 | |
|                     wc.MainSendUnitIds = item.MainSendUnitName;
 | |
|                     wc.CCUnitIds = item.CCUnitName;
 | |
|                     wc.CompileMan = ConvertManAndId(item.WorkContactId);
 | |
|                     wc.IsReply = item.IsReply;
 | |
|                     wc.Contents = item.Contents;
 | |
|                     wc.AttachUrl = AttachFileService.getFileUrl(item.WorkContactId);
 | |
|                     wc.ReturnAttachUrl = AttachFileService.getFileUrl(item.WorkContactId + "r");
 | |
|                     res.Add(wc);
 | |
| 
 | |
|                 }
 | |
|                 return res;
 | |
|             }
 | |
|         }
 | |
| 
 | |
| 
 | |
|         public static List<Model.Unqualified_WorkContact> getListDataForApi(string code, string proposedUnitId, string mainSendUnitId, string cCUnitId, string cause, string contents, string dateA, string dateZ, string projectId, int startRowIndex, int maximumRows)
 | |
|         {
 | |
|             using (var db = new Model.SGGLDB(Funs.ConnString))
 | |
|             {
 | |
|                 IQueryable<Model.Unqualified_WorkContact> q = db.Unqualified_WorkContact;
 | |
|                 if (!string.IsNullOrEmpty(code) && "undefined" != code)
 | |
|                 {
 | |
|                     q = q.Where(e => e.Code.Contains(code));
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(proposedUnitId) && "undefined" != proposedUnitId)
 | |
|                 {
 | |
|                     q = q.Where(e => e.ProposedUnitId.Contains(proposedUnitId));
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(mainSendUnitId) && "undefined" != mainSendUnitId)
 | |
|                 {
 | |
|                     q = q.Where(e => e.MainSendUnitIds.Contains(mainSendUnitId));
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(cCUnitId) && "undefined" != cCUnitId)
 | |
|                 {
 | |
|                     q = q.Where(e => e.CCUnitIds.Contains(cCUnitId));
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(cause) && "undefined" != cause)
 | |
|                 {
 | |
|                     q = q.Where(e => e.Cause.Contains(cause));
 | |
|                 }
 | |
| 
 | |
|                 if (!string.IsNullOrEmpty(contents) && "undefined" != contents)
 | |
|                 {
 | |
|                     q = q.Where(e => e.Contents.Contains(contents));
 | |
|                 }
 | |
| 
 | |
|                 if (!string.IsNullOrEmpty(dateA) && "undefined" != dateA)
 | |
|                 {
 | |
|                     DateTime date = DateTime.ParseExact(dateA, "yyyy-MM-dd", new CultureInfo("zh-CN", true));
 | |
|                     q = q.Where(e => e.CompileDate >= date);
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(dateZ) && "undefined" != dateZ)
 | |
|                 {
 | |
|                     DateTime date = DateTime.ParseExact(dateZ + "23:59:59", "yyyy-MM-ddHH:mm:ss", new CultureInfo("zh-CN", true));
 | |
|                     q = q.Where(e => e.CompileDate <= date);
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(projectId) && "undefined" != projectId)
 | |
|                 {
 | |
|                     q = q.Where(e => e.ProjectId == projectId);
 | |
|                 }
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|                 var qres = from x in q
 | |
|                            orderby x.Code descending
 | |
|                            select new
 | |
|                            {
 | |
|                                x.WorkContactId,
 | |
|                                x.Code,
 | |
|                                x.ProjectId,
 | |
|                                x.CompileMan,
 | |
|                                x.CompileDate,
 | |
|                                x.Cause,
 | |
|                                x.ProposedUnitId,
 | |
|                                x.State,
 | |
|                                x.Contents,
 | |
|                                x.AttachUrl,
 | |
|                                MainSendUnitName = UnitService.getUnitNamesUnitIds(x.MainSendUnitIds),
 | |
|                                CCUnitName = UnitService.getUnitNamesUnitIds(x.CCUnitIds),
 | |
|                                x.IsReply
 | |
|                            };
 | |
| 
 | |
|                 List<Model.Unqualified_WorkContact> res = new List<Model.Unqualified_WorkContact>();
 | |
|                 var list = qres.Skip(startRowIndex * maximumRows).Take(maximumRows).ToList();
 | |
|                 foreach (var item in list)
 | |
|                 {
 | |
|                     Model.Unqualified_WorkContact wc = new Model.Unqualified_WorkContact();
 | |
|                     wc.WorkContactId = item.WorkContactId;
 | |
|                     wc.Code = item.Code;
 | |
|                     wc.ProjectId = item.ProjectId;
 | |
|                     wc.CompileMan = item.CompileMan;
 | |
|                     wc.CompileDate = item.CompileDate;
 | |
|                     wc.Cause = item.Cause;
 | |
|                     wc.State = item.State;
 | |
|                     var unit = db.Project_ProjectUnit.FirstOrDefault(u => u.ProjectId == wc.ProjectId && u.UnitId == item.ProposedUnitId);
 | |
|                     if (unit != null)
 | |
|                     {
 | |
|                         wc.ProposedUnitId = item.ProposedUnitId + "$" + unit.Base_Unit.UnitName + "$" + unit.UnitType;
 | |
|                     }
 | |
|                     else
 | |
|                     {
 | |
|                         wc.ProposedUnitId = item.ProposedUnitId + "$$";
 | |
|                     }
 | |
|                     wc.MainSendUnitIds = item.MainSendUnitName;
 | |
|                     wc.CCUnitIds = item.CCUnitName;
 | |
|                     wc.CompileMan = ConvertManAndId(item.WorkContactId);
 | |
|                     wc.IsReply = item.IsReply;
 | |
|                     wc.Contents = item.Contents;
 | |
|                     wc.AttachUrl = item.AttachUrl;
 | |
|                     wc.IsReply = item.IsReply;
 | |
|                     wc.AttachUrl = AttachFileService.getFileUrl(item.WorkContactId);
 | |
|                     wc.ReturnAttachUrl = AttachFileService.getFileUrl(item.WorkContactId + "r");
 | |
|                     res.Add(wc);
 | |
| 
 | |
|                 }
 | |
|                 return res;
 | |
|             }
 | |
|         }
 | |
|         public static void UpdateWorkContactForApi(Model.Unqualified_WorkContact workContact)
 | |
|         {
 | |
|             using (var db = new Model.SGGLDB(Funs.ConnString))
 | |
|             {
 | |
|                 Model.Unqualified_WorkContact newWorkContact = db.Unqualified_WorkContact.FirstOrDefault(e => e.WorkContactId == workContact.WorkContactId);
 | |
|                 if (newWorkContact != null)
 | |
|                 {
 | |
|                     if (!string.IsNullOrEmpty(workContact.Code))
 | |
|                         newWorkContact.Code = workContact.Code;
 | |
|                     if (!string.IsNullOrEmpty(workContact.ProposedUnitId))
 | |
|                         newWorkContact.ProposedUnitId = workContact.ProposedUnitId;
 | |
|                     if (!string.IsNullOrEmpty(workContact.MainSendUnitIds))
 | |
|                         newWorkContact.MainSendUnitIds = workContact.MainSendUnitIds;
 | |
|                     if (!string.IsNullOrEmpty(workContact.CCUnitIds))
 | |
|                         newWorkContact.CCUnitIds = workContact.CCUnitIds;
 | |
|                     if (!string.IsNullOrEmpty(workContact.Cause))
 | |
|                         newWorkContact.Cause = workContact.Cause;
 | |
|                     if (!string.IsNullOrEmpty(workContact.Contents))
 | |
|                         newWorkContact.Contents = workContact.Contents;
 | |
|                     if (!string.IsNullOrEmpty(workContact.IsReply))
 | |
|                         newWorkContact.IsReply = workContact.IsReply;
 | |
|                     if (!string.IsNullOrEmpty(workContact.AttachUrl))
 | |
|                         newWorkContact.AttachUrl = workContact.AttachUrl;
 | |
|                     if (workContact.CompileDate.HasValue)
 | |
|                         newWorkContact.CompileDate = workContact.CompileDate;
 | |
|                     if (!string.IsNullOrEmpty(workContact.State))
 | |
|                         newWorkContact.State = workContact.State;
 | |
|                     if (!string.IsNullOrEmpty(workContact.ReOpinion))
 | |
|                         newWorkContact.ReOpinion = workContact.ReOpinion;
 | |
|                     db.SubmitChanges();
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|         public static int getListCount(string projectId)
 | |
|         {
 | |
|             using (var db = new Model.SGGLDB(Funs.ConnString))
 | |
|             {
 | |
|                 IQueryable<Model.Unqualified_WorkContact> q = db.Unqualified_WorkContact;
 | |
|                 if (!string.IsNullOrEmpty(projectId))
 | |
|                 {
 | |
|                     q = q.Where(e => e.ProjectId == projectId);
 | |
|                 }
 | |
|                 return q.Count();
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |