666 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			666 lines
		
	
	
		
			31 KiB
		
	
	
	
		
			C#
		
	
	
	
| 
								 | 
							
								using System;
							 | 
						|||
| 
								 | 
							
								using System.Collections;
							 | 
						|||
| 
								 | 
							
								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 DesignService
							 | 
						|||
| 
								 | 
							
								    {
							 | 
						|||
| 
								 | 
							
								        public static Model.SGGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 记录数
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        private static int count
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            get;
							 | 
						|||
| 
								 | 
							
								            set;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 定义变量
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        private static IQueryable<Model.Check_Design> qq = from x in db.Check_Design orderby x.DesignDate descending select x;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        public static string CovBool(bool? b)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string str = string.Empty;
							 | 
						|||
| 
								 | 
							
								            if (b == true)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                str = "是";
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else if (b == false)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                str = "否";
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            return str;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获取列表数
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static int getListCount(string projectId, string userId, string roleId, string designType, string startTime, string endTime, string unitId, string mainItemId, string cNProfessionalCode)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return count;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 根据设计变更信息Id获取一个设计变更信息
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="DesignCode">设计变更信息Id</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns>一个设计变更信息实体</returns>
							 | 
						|||
| 
								 | 
							
								        public static Model.Check_Design GetDesignByDesignId(string DesignId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            return Funs.DB.Check_Design.FirstOrDefault(x => x.DesignId == DesignId);
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        public static Model.Check_Design GetDesignByDesignIdForApi(string DesignId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            using (var db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                Model.Check_Design res = db.Check_Design.FirstOrDefault(x => x.DesignId == DesignId);
							 | 
						|||
| 
								 | 
							
								                res.AttachUrl = AttachFileService.getFileUrl(res.DesignId);
							 | 
						|||
| 
								 | 
							
								                res.CarryUnitIds = res.CarryUnitIds + "$" + UnitService.getUnitNamesUnitIds(res.CarryUnitIds);
							 | 
						|||
| 
								 | 
							
								                var resItem = (from y in db.ProjectData_MainItem where y.MainItemId == res.MainItemId select y.MainItemName).FirstOrDefault();
							 | 
						|||
| 
								 | 
							
								                res.MainItemId = res.MainItemId + "$" + resItem;
							 | 
						|||
| 
								 | 
							
								                res.BuyMaterialUnitIds = res.BuyMaterialUnitIds + "$" + UnitService.getUnitNamesUnitIds(res.BuyMaterialUnitIds);
							 | 
						|||
| 
								 | 
							
								                res.CNProfessionalCode = res.CNProfessionalCode + "$" + DesignProfessionalService.GetDesignProfessional(res.CNProfessionalCode).ProfessionalName;
							 | 
						|||
| 
								 | 
							
								                res.CompileMan = res.CompileMan + "$" + ConvertManAndId(res.DesignId);
							 | 
						|||
| 
								 | 
							
								                return res;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 增加设计变更信息信息
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="Design">设计变更信息实体</param>
							 | 
						|||
| 
								 | 
							
								        public static void AddDesign(Model.Check_Design Design)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.SGGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Check_Design newDesign = new Model.Check_Design();
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignId = Design.DesignId;
							 | 
						|||
| 
								 | 
							
								            newDesign.ProjectId = Design.ProjectId;
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignCode = Design.DesignCode;
							 | 
						|||
| 
								 | 
							
								            newDesign.MainItemId = Design.MainItemId;
							 | 
						|||
| 
								 | 
							
								            newDesign.CNProfessionalCode = Design.CNProfessionalCode;
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignType = Design.DesignType;
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignContents = Design.DesignContents;
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignDate = Design.DesignDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.CarryUnitIds = Design.CarryUnitIds;
							 | 
						|||
| 
								 | 
							
								            newDesign.IsNoChange = Design.IsNoChange;
							 | 
						|||
| 
								 | 
							
								            newDesign.IsNeedMaterial = Design.IsNeedMaterial;
							 | 
						|||
| 
								 | 
							
								            newDesign.BuyMaterialUnitIds = Design.BuyMaterialUnitIds;
							 | 
						|||
| 
								 | 
							
								            newDesign.MaterialPlanReachDate = Design.MaterialPlanReachDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.PlanDay = Design.PlanDay;
							 | 
						|||
| 
								 | 
							
								            newDesign.PlanCompleteDate = Design.PlanCompleteDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.MaterialRealReachDate = Design.MaterialRealReachDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.RealCompleteDate = Design.RealCompleteDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.AttachUrl = Design.AttachUrl;
							 | 
						|||
| 
								 | 
							
								            newDesign.CompileMan = Design.CompileMan;
							 | 
						|||
| 
								 | 
							
								            newDesign.CompileDate = Design.CompileDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.State = Design.State;
							 | 
						|||
| 
								 | 
							
								            newDesign.SaveHandleMan = Design.SaveHandleMan;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            db.Check_Design.InsertOnSubmit(newDesign);
							 | 
						|||
| 
								 | 
							
								            db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        public static void AddDesignForApi(Model.Check_Design Design)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            using (var db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Model.Check_Design newDesign = new Model.Check_Design();
							 | 
						|||
| 
								 | 
							
								                newDesign.DesignId = Design.DesignId;
							 | 
						|||
| 
								 | 
							
								                newDesign.ProjectId = Design.ProjectId;
							 | 
						|||
| 
								 | 
							
								                newDesign.DesignCode = Design.DesignCode;
							 | 
						|||
| 
								 | 
							
								                newDesign.MainItemId = Design.MainItemId;
							 | 
						|||
| 
								 | 
							
								                newDesign.CNProfessionalCode = Design.CNProfessionalCode;
							 | 
						|||
| 
								 | 
							
								                newDesign.DesignType = Design.DesignType;
							 | 
						|||
| 
								 | 
							
								                newDesign.DesignContents = Design.DesignContents;
							 | 
						|||
| 
								 | 
							
								                newDesign.DesignDate = Design.DesignDate;
							 | 
						|||
| 
								 | 
							
								                newDesign.CarryUnitIds = Design.CarryUnitIds;
							 | 
						|||
| 
								 | 
							
								                newDesign.IsNoChange = Design.IsNoChange;
							 | 
						|||
| 
								 | 
							
								                newDesign.IsNeedMaterial = Design.IsNeedMaterial;
							 | 
						|||
| 
								 | 
							
								                newDesign.BuyMaterialUnitIds = Design.BuyMaterialUnitIds;
							 | 
						|||
| 
								 | 
							
								                newDesign.MaterialPlanReachDate = Design.MaterialPlanReachDate;
							 | 
						|||
| 
								 | 
							
								                newDesign.PlanDay = Design.PlanDay;
							 | 
						|||
| 
								 | 
							
								                newDesign.PlanCompleteDate = Design.PlanCompleteDate;
							 | 
						|||
| 
								 | 
							
								                newDesign.MaterialRealReachDate = Design.MaterialRealReachDate;
							 | 
						|||
| 
								 | 
							
								                newDesign.RealCompleteDate = Design.RealCompleteDate;
							 | 
						|||
| 
								 | 
							
								                newDesign.AttachUrl = Design.AttachUrl;
							 | 
						|||
| 
								 | 
							
								                newDesign.CompileMan = Design.CompileMan;
							 | 
						|||
| 
								 | 
							
								                newDesign.CompileDate = Design.CompileDate;
							 | 
						|||
| 
								 | 
							
								                newDesign.State = Design.State;
							 | 
						|||
| 
								 | 
							
								                newDesign.SaveHandleMan = Design.SaveHandleMan;
							 | 
						|||
| 
								 | 
							
								                db.Check_Design.InsertOnSubmit(newDesign);
							 | 
						|||
| 
								 | 
							
								                db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 修改设计变更信息信息
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="Design">设计变更信息实体</param>
							 | 
						|||
| 
								 | 
							
								        public static void UpdateDesign(Model.Check_Design Design)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.SGGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Check_Design newDesign = db.Check_Design.First(e => e.DesignId == Design.DesignId);
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignCode = Design.DesignCode;
							 | 
						|||
| 
								 | 
							
								            newDesign.MainItemId = Design.MainItemId;
							 | 
						|||
| 
								 | 
							
								            newDesign.CNProfessionalCode = Design.CNProfessionalCode;
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignType = Design.DesignType;
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignContents = Design.DesignContents;
							 | 
						|||
| 
								 | 
							
								            newDesign.DesignDate = Design.DesignDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.CarryUnitIds = Design.CarryUnitIds;
							 | 
						|||
| 
								 | 
							
								            newDesign.IsNoChange = Design.IsNoChange;
							 | 
						|||
| 
								 | 
							
								            newDesign.IsNeedMaterial = Design.IsNeedMaterial;
							 | 
						|||
| 
								 | 
							
								            newDesign.BuyMaterialUnitIds = Design.BuyMaterialUnitIds;
							 | 
						|||
| 
								 | 
							
								            newDesign.MaterialPlanReachDate = Design.MaterialPlanReachDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.PlanDay = Design.PlanDay;
							 | 
						|||
| 
								 | 
							
								            newDesign.PlanCompleteDate = Design.PlanCompleteDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.MaterialRealReachDate = Design.MaterialRealReachDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.RealCompleteDate = Design.RealCompleteDate;
							 | 
						|||
| 
								 | 
							
								            newDesign.AttachUrl = Design.AttachUrl;
							 | 
						|||
| 
								 | 
							
								            newDesign.State = Design.State;
							 | 
						|||
| 
								 | 
							
								            newDesign.SaveHandleMan = Design.SaveHandleMan;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 根据设计变更信息Id删除一个设计变更信息信息
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="DesignCode">设计变更信息Id</param>
							 | 
						|||
| 
								 | 
							
								        public static void DeleteDesign(string DesignId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.SGGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            Model.Check_Design Design = db.Check_Design.First(e => e.DesignId == DesignId);
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								            db.Check_Design.DeleteOnSubmit(Design);
							 | 
						|||
| 
								 | 
							
								            db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 根据项目主键获得设计变更信息的数量
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="projectId">项目主键</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static int GetDesignCountByProjectId(string projectId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            var q = (from x in Funs.DB.Check_Design where x.ProjectId == projectId select x).ToList();
							 | 
						|||
| 
								 | 
							
								            return q.Count();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 根据主项主键获得设计变更信息的数量
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="projectId">项目主键</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static int GetDesignCountByMainItemId(string mainItemId)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            var q = (from x in Funs.DB.Check_Design where x.MainItemId == mainItemId select x).ToList();
							 | 
						|||
| 
								 | 
							
								            return q.Count();
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        private static string GetUnitNames(string unitIds)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            string unitNames = string.Empty;
							 | 
						|||
| 
								 | 
							
								            if (!string.IsNullOrEmpty(unitIds))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                string[] ids = unitIds.Split(',');
							 | 
						|||
| 
								 | 
							
								                foreach (var id in ids)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    Model.Base_Unit unit = BLL.UnitService.GetUnitByUnitId(id);
							 | 
						|||
| 
								 | 
							
								                    if (unit != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        unitNames += unit.UnitName + ",";
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(unitNames))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    unitNames = unitNames.Substring(0, unitNames.LastIndexOf(","));
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            return unitNames;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 根据时间段获取设计变更集合
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="startTime">开始时间</param>
							 | 
						|||
| 
								 | 
							
								        /// <param name="endTime">结束时间</param>
							 | 
						|||
| 
								 | 
							
								        public static IEnumerable GetDesignListByTime(string projectId, DateTime startTime, DateTime endTime)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            Model.SGGLDB db = Funs.DB;
							 | 
						|||
| 
								 | 
							
								            return from x in db.Check_Design
							 | 
						|||
| 
								 | 
							
								                   where x.ProjectId == projectId && x.DesignDate >= startTime && x.DesignDate < endTime
							 | 
						|||
| 
								 | 
							
								                   select new
							 | 
						|||
| 
								 | 
							
								                   {
							 | 
						|||
| 
								 | 
							
								                       x.DesignId,
							 | 
						|||
| 
								 | 
							
								                       x.ProjectId,
							 | 
						|||
| 
								 | 
							
								                       x.DesignCode,
							 | 
						|||
| 
								 | 
							
								                       MainItemName = (from y in db.ProjectData_MainItem where y.MainItemId == x.MainItemId select y.MainItemName).First(),
							 | 
						|||
| 
								 | 
							
								                       CNProfessional = (from y in db.Base_DesignProfessional where y.DesignProfessionalId == x.CNProfessionalCode select y.ProfessionalName).First(),
							 | 
						|||
| 
								 | 
							
								                       x.DesignType,
							 | 
						|||
| 
								 | 
							
								                       x.DesignContents,
							 | 
						|||
| 
								 | 
							
								                       x.DesignDate,
							 | 
						|||
| 
								 | 
							
								                       CarryUnit = GetUnitNames(x.CarryUnitIds),
							 | 
						|||
| 
								 | 
							
								                       IsNoChange = x.IsNoChange == true ? "是" : "否",
							 | 
						|||
| 
								 | 
							
								                       IsNeedMaterial = x.IsNeedMaterial == true ? "是" : "否",
							 | 
						|||
| 
								 | 
							
								                       BuyMaterialUnit = GetUnitNames(x.BuyMaterialUnitIds),
							 | 
						|||
| 
								 | 
							
								                       x.MaterialPlanReachDate,
							 | 
						|||
| 
								 | 
							
								                       x.PlanDay,
							 | 
						|||
| 
								 | 
							
								                       x.PlanCompleteDate,
							 | 
						|||
| 
								 | 
							
								                       x.MaterialRealReachDate,
							 | 
						|||
| 
								 | 
							
								                       x.RealCompleteDate,
							 | 
						|||
| 
								 | 
							
								                       x.CompileMan,
							 | 
						|||
| 
								 | 
							
								                       x.CompileDate,
							 | 
						|||
| 
								 | 
							
								                       x.State,
							 | 
						|||
| 
								 | 
							
								                   };
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 获取变更类型项
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="projectId">项目Id</param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static ListItem[] GetDesignTypeList()
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            ListItem[] lis = new ListItem[10];
							 | 
						|||
| 
								 | 
							
								            lis[0] = new ListItem("标准规范升版", "标准规范升版");
							 | 
						|||
| 
								 | 
							
								            lis[1] = new ListItem("设计优化", "设计优化");
							 | 
						|||
| 
								 | 
							
								            lis[2] = new ListItem("设计不当", "设计不当");
							 | 
						|||
| 
								 | 
							
								            lis[3] = new ListItem("设计漏项", "设计漏项");
							 | 
						|||
| 
								 | 
							
								            lis[4] = new ListItem("材料代用", "材料代用");
							 | 
						|||
| 
								 | 
							
								            lis[5] = new ListItem("业主要求", "业主要求");
							 | 
						|||
| 
								 | 
							
								            lis[6] = new ListItem("供货偏离", "供货偏离");
							 | 
						|||
| 
								 | 
							
								            lis[7] = new ListItem("施工偏离", "施工偏离");
							 | 
						|||
| 
								 | 
							
								            lis[8] = new ListItem("外部条件改变", "外部条件改变");
							 | 
						|||
| 
								 | 
							
								            lis[9] = new ListItem("其它", "其它");
							 | 
						|||
| 
								 | 
							
								            return lis;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        /// <summary>
							 | 
						|||
| 
								 | 
							
								        /// 根据状态选择下一步办理类型
							 | 
						|||
| 
								 | 
							
								        /// </summary>
							 | 
						|||
| 
								 | 
							
								        /// <param name="state"></param>
							 | 
						|||
| 
								 | 
							
								        /// <returns></returns>
							 | 
						|||
| 
								 | 
							
								        public static ListItem[] GetDHandleTypeByState(string state)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            if (state == Const.Design_Compile || state == Const.Design_ReCompile)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                ListItem[] lis = new ListItem[1];
							 | 
						|||
| 
								 | 
							
								                lis[0] = new ListItem("变更分析", Const.Design_Audit1);
							 | 
						|||
| 
								 | 
							
								                return lis;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else if (state == Const.Design_Audit1)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                ListItem[] lis = new ListItem[2];
							 | 
						|||
| 
								 | 
							
								                lis[0] = new ListItem("变更分析审核", Const.Design_Audit2);
							 | 
						|||
| 
								 | 
							
								                lis[1] = new ListItem("重新整理", Const.Design_ReCompile);
							 | 
						|||
| 
								 | 
							
								                return lis;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else if (state == Const.Design_Audit2)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                ListItem[] lis = new ListItem[2];
							 | 
						|||
| 
								 | 
							
								                lis[0] = new ListItem("变更实施", Const.Design_Audit3);
							 | 
						|||
| 
								 | 
							
								                lis[1] = new ListItem("变更分析", Const.Design_Audit1);
							 | 
						|||
| 
								 | 
							
								                return lis;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else if (state == Const.Design_Audit3)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                ListItem[] lis = new ListItem[2];
							 | 
						|||
| 
								 | 
							
								                lis[0] = new ListItem("变更实施审核", Const.Design_Audit4);
							 | 
						|||
| 
								 | 
							
								                lis[1] = new ListItem("变更分析审核", Const.Design_Audit2);
							 | 
						|||
| 
								 | 
							
								                return lis;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else if (state == Const.Design_Audit4)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                ListItem[] lis = new ListItem[2];
							 | 
						|||
| 
								 | 
							
								                lis[0] = new ListItem("审批完成", Const.Design_Complete);
							 | 
						|||
| 
								 | 
							
								                lis[1] = new ListItem("变更实施", Const.Design_Audit3);
							 | 
						|||
| 
								 | 
							
								                return lis;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            else
							 | 
						|||
| 
								 | 
							
								                return null;
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        public static List<Model.Check_Design> getListDataForApi(string projectId, string unitName, int startRowIndex, int maximumRows)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            using (var db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                IQueryable<Model.Check_Design> q = db.Check_Design;
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(projectId))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.ProjectId == projectId);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(projectId))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.ProjectId == projectId);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(unitName))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.CarryUnitIds != null);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                var qres = from x in q
							 | 
						|||
| 
								 | 
							
								                           orderby x.DesignCode descending
							 | 
						|||
| 
								 | 
							
								                           select new
							 | 
						|||
| 
								 | 
							
								                           {
							 | 
						|||
| 
								 | 
							
								                               x.DesignId,
							 | 
						|||
| 
								 | 
							
								                               x.ProjectId,
							 | 
						|||
| 
								 | 
							
								                               x.DesignCode,
							 | 
						|||
| 
								 | 
							
								                               x.MainItemId,
							 | 
						|||
| 
								 | 
							
								                               x.CNProfessionalCode,
							 | 
						|||
| 
								 | 
							
								                               MainItemName = (from y in db.ProjectData_MainItem where y.MainItemId == x.MainItemId select y.MainItemName).First(),
							 | 
						|||
| 
								 | 
							
								                               CNProfessional = (from y in db.Base_DesignProfessional where y.DesignProfessionalId == x.CNProfessionalCode select y.ProfessionalName).First(),
							 | 
						|||
| 
								 | 
							
								                               CompileManName = (from y in db.Sys_User where y.UserId == x.CompileMan select y.UserName).First(),
							 | 
						|||
| 
								 | 
							
								                               x.DesignType,
							 | 
						|||
| 
								 | 
							
								                               x.DesignContents,
							 | 
						|||
| 
								 | 
							
								                               x.DesignDate,
							 | 
						|||
| 
								 | 
							
								                               x.CarryUnitIds,
							 | 
						|||
| 
								 | 
							
								                               CarryUnit = GetUnitNames(x.CarryUnitIds),
							 | 
						|||
| 
								 | 
							
								                               x.IsNoChange,
							 | 
						|||
| 
								 | 
							
								                               x.IsNeedMaterial,
							 | 
						|||
| 
								 | 
							
								                               x.BuyMaterialUnitIds,
							 | 
						|||
| 
								 | 
							
								                               BuyMaterialUnit = GetUnitNames(x.BuyMaterialUnitIds),
							 | 
						|||
| 
								 | 
							
								                               x.MaterialPlanReachDate,
							 | 
						|||
| 
								 | 
							
								                               x.PlanDay,
							 | 
						|||
| 
								 | 
							
								                               x.PlanCompleteDate,
							 | 
						|||
| 
								 | 
							
								                               x.MaterialRealReachDate,
							 | 
						|||
| 
								 | 
							
								                               x.RealCompleteDate,
							 | 
						|||
| 
								 | 
							
								                               x.CompileMan,
							 | 
						|||
| 
								 | 
							
								                               x.CompileDate,
							 | 
						|||
| 
								 | 
							
								                               x.State
							 | 
						|||
| 
								 | 
							
								                           };
							 | 
						|||
| 
								 | 
							
								                List<Model.Check_Design> res = new List<Model.Check_Design>();
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(unitName))
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    List<string> ids;
							 | 
						|||
| 
								 | 
							
								                    var qids = from x in Funs.DB.Base_Unit where x.UnitName.Contains(unitName) select x.UnitId;
							 | 
						|||
| 
								 | 
							
								                    ids = qids.ToList();
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    var list = qres.ToList();
							 | 
						|||
| 
								 | 
							
								                    foreach (var item in list)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        string[] carryIds = item.CarryUnitIds.Split(',');
							 | 
						|||
| 
								 | 
							
								                        foreach (string id in carryIds)
							 | 
						|||
| 
								 | 
							
								                        {
							 | 
						|||
| 
								 | 
							
								                            if (ids.Contains(id))
							 | 
						|||
| 
								 | 
							
								                            {
							 | 
						|||
| 
								 | 
							
								                                Model.Check_Design cd = new Model.Check_Design();
							 | 
						|||
| 
								 | 
							
								                                cd.DesignId = item.DesignId;
							 | 
						|||
| 
								 | 
							
								                                cd.ProjectId = item.ProjectId;
							 | 
						|||
| 
								 | 
							
								                                cd.DesignCode = item.DesignCode;
							 | 
						|||
| 
								 | 
							
								                                cd.CNProfessionalCode = item.CNProfessionalCode + "$" + item.CNProfessional;
							 | 
						|||
| 
								 | 
							
								                                cd.DesignType = item.DesignType;
							 | 
						|||
| 
								 | 
							
								                                cd.DesignContents = item.DesignContents;
							 | 
						|||
| 
								 | 
							
								                                cd.DesignDate = item.DesignDate;
							 | 
						|||
| 
								 | 
							
								                                cd.CarryUnitIds = item.CarryUnitIds + "$" + item.CarryUnit;
							 | 
						|||
| 
								 | 
							
								                                cd.IsNoChange = item.IsNoChange;
							 | 
						|||
| 
								 | 
							
								                                cd.IsNeedMaterial = item.IsNeedMaterial;
							 | 
						|||
| 
								 | 
							
								                                cd.MainItemId = item.MainItemId + "$" + item.MainItemName;
							 | 
						|||
| 
								 | 
							
								                                cd.BuyMaterialUnitIds = item.BuyMaterialUnitIds + "$" + item.BuyMaterialUnit;
							 | 
						|||
| 
								 | 
							
								                                cd.MaterialPlanReachDate = item.MaterialPlanReachDate;
							 | 
						|||
| 
								 | 
							
								                                cd.PlanDay = item.PlanDay;
							 | 
						|||
| 
								 | 
							
								                                cd.PlanCompleteDate = item.PlanCompleteDate;
							 | 
						|||
| 
								 | 
							
								                                cd.MaterialRealReachDate = item.MaterialRealReachDate;
							 | 
						|||
| 
								 | 
							
								                                cd.RealCompleteDate = item.RealCompleteDate;
							 | 
						|||
| 
								 | 
							
								                                cd.CompileMan = item.CompileManName + "$" + ConvertMan(item.DesignId);
							 | 
						|||
| 
								 | 
							
								                                cd.CompileDate = item.CompileDate;
							 | 
						|||
| 
								 | 
							
								                                cd.State = item.State;
							 | 
						|||
| 
								 | 
							
								                                cd.AttachUrl = AttachFileService.getFileUrl(item.DesignId);
							 | 
						|||
| 
								 | 
							
								                                res.Add(cd);
							 | 
						|||
| 
								 | 
							
								                                break;
							 | 
						|||
| 
								 | 
							
								                            }
							 | 
						|||
| 
								 | 
							
								                        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    res = res.Skip(startRowIndex).Take(maximumRows).ToList();
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                else
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    var list = qres.Skip(startRowIndex).Take(maximumRows).ToList();
							 | 
						|||
| 
								 | 
							
								                    foreach (var item in list)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        Model.Check_Design cd = new Model.Check_Design();
							 | 
						|||
| 
								 | 
							
								                        cd.DesignId = item.DesignId;
							 | 
						|||
| 
								 | 
							
								                        cd.ProjectId = item.ProjectId;
							 | 
						|||
| 
								 | 
							
								                        cd.DesignCode = item.DesignCode;
							 | 
						|||
| 
								 | 
							
								                        cd.CNProfessionalCode = item.CNProfessionalCode + "$" + item.CNProfessional;
							 | 
						|||
| 
								 | 
							
								                        cd.DesignType = item.DesignType;
							 | 
						|||
| 
								 | 
							
								                        cd.DesignContents = item.DesignContents;
							 | 
						|||
| 
								 | 
							
								                        cd.DesignDate = item.DesignDate;
							 | 
						|||
| 
								 | 
							
								                        cd.CarryUnitIds = item.CarryUnitIds + "$" + item.CarryUnit;
							 | 
						|||
| 
								 | 
							
								                        cd.IsNoChange = item.IsNoChange;
							 | 
						|||
| 
								 | 
							
								                        cd.IsNeedMaterial = item.IsNeedMaterial;
							 | 
						|||
| 
								 | 
							
								                        cd.MainItemId = item.MainItemId + "$" + item.MainItemName;
							 | 
						|||
| 
								 | 
							
								                        cd.BuyMaterialUnitIds = item.BuyMaterialUnitIds + "$" + item.BuyMaterialUnit;
							 | 
						|||
| 
								 | 
							
								                        cd.MaterialPlanReachDate = item.MaterialPlanReachDate;
							 | 
						|||
| 
								 | 
							
								                        cd.PlanDay = item.PlanDay;
							 | 
						|||
| 
								 | 
							
								                        cd.PlanCompleteDate = item.PlanCompleteDate;
							 | 
						|||
| 
								 | 
							
								                        cd.MaterialRealReachDate = item.MaterialRealReachDate;
							 | 
						|||
| 
								 | 
							
								                        cd.RealCompleteDate = item.RealCompleteDate;
							 | 
						|||
| 
								 | 
							
								                        cd.CompileMan = item.CompileManName + "$" + ConvertManAndId(item.DesignId);
							 | 
						|||
| 
								 | 
							
								                        cd.CompileDate = item.CompileDate;
							 | 
						|||
| 
								 | 
							
								                        cd.State = item.State;
							 | 
						|||
| 
								 | 
							
								                        cd.AttachUrl = AttachFileService.getFileUrl(item.DesignId);
							 | 
						|||
| 
								 | 
							
								                        res.Add(cd);
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                return res;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        public static List<Model.Check_Design> getListDataForApi(string carryUnitIds, string state, string mainItemId, string cNProfessionalCode, string designType, string designDateA, string designDateZ, string projectId, int startRowIndex, int maximumRows)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            using (var db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                IQueryable<Model.Check_Design> q = db.Check_Design;
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(projectId) && "undefined" != projectId)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.ProjectId == projectId);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(carryUnitIds) && "undefined" != carryUnitIds)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.CarryUnitIds.Contains(carryUnitIds));
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(state) && "undefined" != state)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if ("已闭合" == state)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        q = q.Where(e => e.State == "6");
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    else
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        q = q.Where(e => e.State != "6");
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(mainItemId) && "undefined" != mainItemId)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.MainItemId == mainItemId);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(cNProfessionalCode) && "undefined" != cNProfessionalCode)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.CNProfessionalCode.Contains(cNProfessionalCode));
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(designType) && "undefined" != designType)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.DesignType == designType);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(designDateA) && "undefined" != designDateA)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    DateTime date = DateTime.ParseExact(designDateA, "yyyy-MM-dd", new CultureInfo("zh-CN", true));
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.DesignDate >= date);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                if (!string.IsNullOrEmpty(designDateZ) && "undefined" != designDateZ)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    DateTime date = DateTime.ParseExact(designDateZ + "23:59:59", "yyyy-MM-ddHH:mm:ss", new CultureInfo("zh-CN", true));
							 | 
						|||
| 
								 | 
							
								                    q = q.Where(e => e.DesignDate <= date);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                var qres = from x in q.Skip(startRowIndex).Take(maximumRows)
							 | 
						|||
| 
								 | 
							
								                           select new
							 | 
						|||
| 
								 | 
							
								                           {
							 | 
						|||
| 
								 | 
							
								                               x.DesignId,
							 | 
						|||
| 
								 | 
							
								                               x.ProjectId,
							 | 
						|||
| 
								 | 
							
								                               x.DesignCode,
							 | 
						|||
| 
								 | 
							
								                               x.MainItemId,
							 | 
						|||
| 
								 | 
							
								                               x.CNProfessionalCode,
							 | 
						|||
| 
								 | 
							
								                               MainItemName = (from y in db.ProjectData_MainItem where y.MainItemId == x.MainItemId select y.MainItemName).First(),
							 | 
						|||
| 
								 | 
							
								                               CNProfessional = (from y in db.Base_DesignProfessional where y.DesignProfessionalId == x.CNProfessionalCode select y.ProfessionalName).First(),
							 | 
						|||
| 
								 | 
							
								                               CompileManName = (from y in db.Sys_User where y.UserId == x.CompileMan select y.UserName).First(),
							 | 
						|||
| 
								 | 
							
								                               x.DesignType,
							 | 
						|||
| 
								 | 
							
								                               x.DesignContents,
							 | 
						|||
| 
								 | 
							
								                               x.DesignDate,
							 | 
						|||
| 
								 | 
							
								                               CarryUnit = GetUnitNames(x.CarryUnitIds),
							 | 
						|||
| 
								 | 
							
								                               x.IsNoChange,
							 | 
						|||
| 
								 | 
							
								                               x.IsNeedMaterial,
							 | 
						|||
| 
								 | 
							
								                               x.BuyMaterialUnitIds,
							 | 
						|||
| 
								 | 
							
								                               BuyMaterialUnit = GetUnitNames(x.BuyMaterialUnitIds),
							 | 
						|||
| 
								 | 
							
								                               x.MaterialPlanReachDate,
							 | 
						|||
| 
								 | 
							
								                               x.PlanDay,
							 | 
						|||
| 
								 | 
							
								                               x.PlanCompleteDate,
							 | 
						|||
| 
								 | 
							
								                               x.MaterialRealReachDate,
							 | 
						|||
| 
								 | 
							
								                               x.RealCompleteDate,
							 | 
						|||
| 
								 | 
							
								                               x.CompileMan,
							 | 
						|||
| 
								 | 
							
								                               x.CompileDate,
							 | 
						|||
| 
								 | 
							
								                               x.State
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                           };
							 | 
						|||
| 
								 | 
							
								                List<Model.Check_Design> res = new List<Model.Check_Design>();
							 | 
						|||
| 
								 | 
							
								                var list = qres.ToList();
							 | 
						|||
| 
								 | 
							
								                foreach (var item in list)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    Model.Check_Design cd = new Model.Check_Design();
							 | 
						|||
| 
								 | 
							
								                    cd.DesignId = item.DesignId;
							 | 
						|||
| 
								 | 
							
								                    cd.ProjectId = item.ProjectId;
							 | 
						|||
| 
								 | 
							
								                    cd.DesignCode = item.DesignCode;
							 | 
						|||
| 
								 | 
							
								                    cd.CNProfessionalCode = cd.CNProfessionalCode + "$" + item.CNProfessional;
							 | 
						|||
| 
								 | 
							
								                    cd.DesignType = item.DesignType;
							 | 
						|||
| 
								 | 
							
								                    cd.DesignContents = item.DesignContents;
							 | 
						|||
| 
								 | 
							
								                    cd.DesignDate = item.DesignDate;
							 | 
						|||
| 
								 | 
							
								                    cd.CarryUnitIds = cd.CarryUnitIds + "$" + item.CarryUnit;
							 | 
						|||
| 
								 | 
							
								                    cd.IsNoChange = item.IsNoChange;
							 | 
						|||
| 
								 | 
							
								                    cd.IsNeedMaterial = item.IsNeedMaterial;
							 | 
						|||
| 
								 | 
							
								                    cd.MainItemId = item.MainItemId + "$" + item.MainItemName;
							 | 
						|||
| 
								 | 
							
								                    cd.BuyMaterialUnitIds = item.BuyMaterialUnitIds + "$" + item.BuyMaterialUnit;
							 | 
						|||
| 
								 | 
							
								                    cd.MaterialPlanReachDate = item.MaterialPlanReachDate;
							 | 
						|||
| 
								 | 
							
								                    cd.PlanDay = item.PlanDay;
							 | 
						|||
| 
								 | 
							
								                    cd.PlanCompleteDate = item.PlanCompleteDate;
							 | 
						|||
| 
								 | 
							
								                    cd.MaterialRealReachDate = item.MaterialRealReachDate;
							 | 
						|||
| 
								 | 
							
								                    cd.RealCompleteDate = item.RealCompleteDate;
							 | 
						|||
| 
								 | 
							
								                    cd.CompileMan = item.CompileManName + "$" + ConvertManAndId(item.DesignId);
							 | 
						|||
| 
								 | 
							
								                    cd.CompileDate = item.CompileDate;
							 | 
						|||
| 
								 | 
							
								                    cd.State = item.State;
							 | 
						|||
| 
								 | 
							
								                    cd.AttachUrl = AttachFileService.getFileUrl(item.DesignId);
							 | 
						|||
| 
								 | 
							
								                    res.Add(cd);
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                return res;
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        public static string ConvertMan(string id)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            if (id != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Model.Check_DesignApprove a = BLL.DesignApproveService.getCurrApproveForApi(id);
							 | 
						|||
| 
								 | 
							
								                if (a != null)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (a.ApproveMan != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        return BLL.UserService.GetUserByUserId(a.ApproveMan).UserName;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                else
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    return "";
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            return "";
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								        public static string ConvertManAndId(string id)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            if (id != null)
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Model.Check_DesignApprove a = BLL.DesignApproveService.getCurrApproveForApi(id);
							 | 
						|||
| 
								 | 
							
								                if (a != null)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (a.ApproveMan != null)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        var user = BLL.UserService.GetUserByUserId(a.ApproveMan);
							 | 
						|||
| 
								 | 
							
								                        return user.UserName + "$" + user.UserId;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								                else
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    return "";
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								            return "";
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								        public static void UpdateDesignForApi(Model.Check_Design Design)
							 | 
						|||
| 
								 | 
							
								        {
							 | 
						|||
| 
								 | 
							
								            using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
							 | 
						|||
| 
								 | 
							
								            {
							 | 
						|||
| 
								 | 
							
								                Model.Check_Design newDesign = db.Check_Design.FirstOrDefault(e => e.DesignId == Design.DesignId);
							 | 
						|||
| 
								 | 
							
								                if (newDesign != null)
							 | 
						|||
| 
								 | 
							
								                {
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.DesignCode))
							 | 
						|||
| 
								 | 
							
								                        newDesign.DesignCode = Design.DesignCode;
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.MainItemId))
							 | 
						|||
| 
								 | 
							
								                        newDesign.MainItemId = Design.MainItemId;
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.CNProfessionalCode))
							 | 
						|||
| 
								 | 
							
								                        newDesign.CNProfessionalCode = Design.CNProfessionalCode;
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.DesignType))
							 | 
						|||
| 
								 | 
							
								                        newDesign.DesignType = Design.DesignType;
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.DesignContents))
							 | 
						|||
| 
								 | 
							
								                        newDesign.DesignContents = Design.DesignContents;
							 | 
						|||
| 
								 | 
							
								                    if (Design.DesignDate.HasValue)
							 | 
						|||
| 
								 | 
							
								                        newDesign.DesignDate = Design.DesignDate;
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.CarryUnitIds))
							 | 
						|||
| 
								 | 
							
								                        newDesign.CarryUnitIds = Design.CarryUnitIds;
							 | 
						|||
| 
								 | 
							
								                    if (Design.IsNoChange.HasValue)
							 | 
						|||
| 
								 | 
							
								                        newDesign.IsNoChange = Design.IsNoChange;
							 | 
						|||
| 
								 | 
							
								                    if (Design.IsNeedMaterial.HasValue)
							 | 
						|||
| 
								 | 
							
								                        newDesign.IsNeedMaterial = Design.IsNeedMaterial;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.BuyMaterialUnitIds))
							 | 
						|||
| 
								 | 
							
								                        newDesign.BuyMaterialUnitIds = Design.BuyMaterialUnitIds;
							 | 
						|||
| 
								 | 
							
								                    if (Design.MaterialPlanReachDate.HasValue)
							 | 
						|||
| 
								 | 
							
								                        newDesign.MaterialPlanReachDate = Design.MaterialPlanReachDate;
							 | 
						|||
| 
								 | 
							
								                    if (newDesign.IsNeedMaterial.HasValue && !newDesign.IsNeedMaterial.Value)
							 | 
						|||
| 
								 | 
							
								                    {
							 | 
						|||
| 
								 | 
							
								                        newDesign.BuyMaterialUnitIds = null;
							 | 
						|||
| 
								 | 
							
								                        newDesign.MaterialPlanReachDate = null;
							 | 
						|||
| 
								 | 
							
								                    }
							 | 
						|||
| 
								 | 
							
								                    if (Design.PlanDay.HasValue)
							 | 
						|||
| 
								 | 
							
								                        newDesign.PlanDay = Design.PlanDay;
							 | 
						|||
| 
								 | 
							
								                    if (Design.PlanCompleteDate.HasValue)
							 | 
						|||
| 
								 | 
							
								                        newDesign.PlanCompleteDate = Design.PlanCompleteDate;
							 | 
						|||
| 
								 | 
							
								                    if (Design.MaterialRealReachDate.HasValue)
							 | 
						|||
| 
								 | 
							
								                        newDesign.MaterialRealReachDate = Design.MaterialRealReachDate;
							 | 
						|||
| 
								 | 
							
								                    if (Design.RealCompleteDate.HasValue)
							 | 
						|||
| 
								 | 
							
								                        newDesign.RealCompleteDate = Design.RealCompleteDate;
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.AttachUrl))
							 | 
						|||
| 
								 | 
							
								                        newDesign.AttachUrl = Design.AttachUrl;
							 | 
						|||
| 
								 | 
							
								                    if (!string.IsNullOrEmpty(Design.State))
							 | 
						|||
| 
								 | 
							
								                        newDesign.State = Design.State;
							 | 
						|||
| 
								 | 
							
								
							 | 
						|||
| 
								 | 
							
								                    db.SubmitChanges();
							 | 
						|||
| 
								 | 
							
								                }
							 | 
						|||
| 
								 | 
							
								            }
							 | 
						|||
| 
								 | 
							
								        }
							 | 
						|||
| 
								 | 
							
								    }
							 | 
						|||
| 
								 | 
							
								}
							 |