From 2b177eea6ca44785a6116e91dbadbf7cf5ed2e15 Mon Sep 17 00:00:00 2001 From: username@email.com <yzy2002yzy@163.com> Date: 星期一, 24 一月 2022 12:22:31 +0800 Subject: [PATCH] 提交 --- zhengcaioa/Services/CooperOrderService.cs | 497 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 489 insertions(+), 8 deletions(-) diff --git a/zhengcaioa/Services/CooperOrderService.cs b/zhengcaioa/Services/CooperOrderService.cs index 7bf10c7..99e418d 100644 --- a/zhengcaioa/Services/CooperOrderService.cs +++ b/zhengcaioa/Services/CooperOrderService.cs @@ -14,11 +14,13 @@ public class CooperOrderService: ICooperOrderService { private readonly zhengcaioaContext _context; + private readonly zcUserInfoN_dbContext _zcUserInfoN_dbContext; private readonly IMapper _mapper; - public CooperOrderService(zhengcaioaContext context, IMapper mapper) + public CooperOrderService(zhengcaioaContext context, IMapper mapper, zcUserInfoN_dbContext zcUserInfoN_dbContext) { _context = context; _mapper = mapper; + _zcUserInfoN_dbContext = zcUserInfoN_dbContext; } @@ -923,14 +925,64 @@ public List<TChallengeletterDTO> GetListChallengeletter(string OrderId) { - var entity = _context.TChallengeletters.Where(x => x.Status == 1 && x.OrderId == OrderId).ToList(); + var entity = _context.TChallengeletters.Where(x =>/* x.Status == 1 && */x.OrderId == OrderId).ToList(); var result = _mapper.Map<List<TChallengeletterDTO>>(entity); + var listCode = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ).Where(x => x.CodeTable == "t_challengeletter" && x.CodeField == "request_info").ToList(); + foreach(var challengeletterDTO in result) + { + var codeDataEntity = listCode.Where(x => x.CodeSn == challengeletterDTO.RequestInfo).FirstOrDefault(); + if (codeDataEntity != null) + { + challengeletterDTO.RequestInfoName = codeDataEntity.Comments; + } + + } + + return result; + } + + + public List<TChallengeletterDTO> GetListChallengeletterChosen() + { + var query = (from a in _context.TChallengeletters + join b in _context.CooperOrders.Where(x => x.RecStatus == "A") + on a.OrderId equals b.Id + + select new TChallengeletterDTO + { + Id = b.Id, + OrderId = b.OrderNo, + khid = b.Khdw, + Createtime = b.Createtime, + } + ).OrderByDescending(x=>x.Createtime).ToList(); + + + + + return query; } @@ -978,7 +1030,7 @@ updateproject.RequestInfo = entity.RequestInfo; updateproject.IsReply = entity.IsReply; - + updateproject.Status = entity.Status; updateproject.Respondent = entity.Respondent; updateproject.RespondDate = entity.RespondDate; @@ -1012,6 +1064,84 @@ var result = _mapper.Map<List<TChallengeItemDTO>>(entity); + + + var question = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ).Where(x => x.CodeTable == "t_challenge_items" && x.CodeField == "question").ToList(); + + + var law = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ).Where(x => x.CodeTable == "t_complaint_items" && x.CodeField == "law").ToList(); + + var falv = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ).Where(x => x.CodeTable == "expert_test_topicjiexi" && x.CodeField == "falv").ToList(); + + foreach (var challengeItemDTO in result) + { + var codeDataEntity = question.Where(x => x.CodeSn == challengeItemDTO.Question).FirstOrDefault(); + if (codeDataEntity != null) + { + challengeItemDTO.QuestionName = codeDataEntity.Comments; + } + + codeDataEntity = law.Where(x => x.CodeSn == challengeItemDTO.Law).FirstOrDefault(); + if (codeDataEntity != null) + { + challengeItemDTO.LawName = codeDataEntity.Comments; + challengeItemDTO.Lawcoment = codeDataEntity.Contents; + + codeDataEntity = falv.Where(x => x.CodeSn == challengeItemDTO.LawName).FirstOrDefault(); + if (codeDataEntity != null) + { + challengeItemDTO.LawName = codeDataEntity.Comments; + } + } + } return result; @@ -1065,12 +1195,51 @@ public List<TComplaintletterDTO> GetListComplaintletter(string OrderId) { - var entity = _context.TComplaintletters.Where(x => x.Status == 1 && x.OrderId == OrderId).ToList(); + var entity = _context.TComplaintletters.Where(x => /*x.Status == 1 &&*/ x.OrderId == OrderId).ToList(); var result = _mapper.Map<List<TComplaintletterDTO>>(entity); + var listCode = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ).ToList(); + + var request_info = listCode.Where(x => x.CodeTable == "t_challengeletter" && x.CodeField == "request_info").ToList(); + var shifou = listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou").ToList(); + foreach (var complaintletterDTO in result) + { + var codeDataEntity = request_info.Where(x => x.CodeSn == complaintletterDTO.RequestInfo).FirstOrDefault(); + if (codeDataEntity != null) + { + complaintletterDTO.RequestInfoName = codeDataEntity.Comments; + } + + codeDataEntity = shifou.Where(x => x.CodeSn == complaintletterDTO.IsNotice).FirstOrDefault(); + if (codeDataEntity != null) + { + complaintletterDTO.IsNoticeName = codeDataEntity.Comments; + } + codeDataEntity = shifou.Where(x => x.CodeSn == complaintletterDTO.IsResultnotice).FirstOrDefault(); + if (codeDataEntity != null) + { + complaintletterDTO.IsResultnoticeName = codeDataEntity.Comments; + } + } return result; } @@ -1143,12 +1312,13 @@ updateproject.DocumentsDate = entity.DocumentsDate; updateproject.RequestInfo = entity.RequestInfo; - - + updateproject.Status = entity.Status; - - + + + + updateproject.Modifier = entity.Modifier; @@ -1179,6 +1349,82 @@ var result = _mapper.Map<List<TComplaintItemDTO>>(entity); + var question = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ).Where(x => x.CodeTable == "t_challenge_items" && x.CodeField == "question").ToList(); + + + var law = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ).Where(x => x.CodeTable == "t_complaint_items" && x.CodeField == "law").ToList(); + + var falv = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ).Where(x => x.CodeTable == "expert_test_topicjiexi" && x.CodeField == "falv").ToList(); + + foreach (var complaintItemDTO in result) + { + var codeDataEntity = question.Where(x => x.CodeSn == complaintItemDTO.Question).FirstOrDefault(); + if (codeDataEntity != null) + { + complaintItemDTO.QuestionName = codeDataEntity.Comments; + } + + codeDataEntity = law.Where(x => x.CodeSn == complaintItemDTO.Law).FirstOrDefault(); + if (codeDataEntity != null) + { + complaintItemDTO.LawName = codeDataEntity.Comments; + complaintItemDTO.Lawcoment = codeDataEntity.Contents; + + codeDataEntity = falv.Where(x => x.CodeSn == complaintItemDTO.LawName).FirstOrDefault(); + if (codeDataEntity != null) + { + complaintItemDTO.LawName = codeDataEntity.Comments; + } + } + } return result; } @@ -1504,5 +1750,240 @@ _context.SaveChanges(); return result; } + + + + public ResultDataEntity<CooperOrderDTO> SearchByPagingWenshu(CooperOrderDTOSearch searchEntity) + { + + + + ResultDataEntity<CooperOrderDTO> data = new ResultDataEntity<CooperOrderDTO>(); + List<CooperOrderDTO> list = new List<CooperOrderDTO>(); + + + + + var listCode = (from a in _context.SysCodeDtls + join b in _context.SysCodes + on a.CodeId equals b.Id + where a.RecStatus == "A" + && b.RecStatus == "A" + select new CodeDataEntity() + { + CodeId = b.Id, + CodeTable = b.CodeTable, + CodeField = b.CodeField, + CodeSn = a.CodeSn, + Comments = a.Comments, + Contents = a.Contents, + RecStatus = a.RecStatus, + Sort = a.Sort + } + ); + DateTime XdTimestart = DateTime.Now; + DateTime XdTimeend = DateTime.Now; + if (!string.IsNullOrWhiteSpace(searchEntity.XdTime)) + { + string[] XdTimes = searchEntity.XdTime.Split("|"); + DateTime.TryParse(XdTimes[0], out XdTimestart); + DateTime.TryParse(XdTimes[1], out XdTimeend); + XdTimeend = XdTimeend.AddDays(1); + } + + + var query2 = (from a in _context.CooperOrders + + join b in _context.TChallengeletters + on a.Id equals b.OrderId + + + + join g in _context.CooperatecustomCustomers.Where(x => x.RecStatus == "A") + on a.Khdw equals g.Id + into gsss + from ggg in gsss.DefaultIfEmpty() + + join l in _context.FiOrderrecievemoneys.Where(x => x.RecStatus == "A").GroupBy(q => new { q.OrderId }).Select(q => new + { + OrderId = q.Key.OrderId, + YishouMoney = q.Sum(x => x.Recievemoney), + } + ) + on a.Id equals l.OrderId + into lsss + from lll in lsss.DefaultIfEmpty() + + + // join d in listCode.Where(x => x.CodeTable == "t_challengeletter" && x.CodeField == "status") + //on b.Status equals int.Parse(d.CodeSn) + //into dsss + // from ddd in dsss.DefaultIfEmpty() + + + where a.RecStatus == "A" && a.OrderType1 == "浠f嫙璐ㄧ枒鍑�" + && (string.IsNullOrWhiteSpace(searchEntity.XdTime) || (b.Createtime >= XdTimestart && b.Createtime <= XdTimeend)) + && (string.IsNullOrWhiteSpace(searchEntity.Wenshuleixing) || a.OrderType1 == searchEntity.Wenshuleixing.Trim()) + && (string.IsNullOrWhiteSpace(searchEntity.XmName) || b.XmName.Contains(searchEntity.XmName.Trim())) + && (string.IsNullOrWhiteSpace(searchEntity.XmCode) || b.XmCode.Contains(searchEntity.XmCode.Trim())) + && (string.IsNullOrWhiteSpace(searchEntity.PurchaserName) || b.PurchaserName.Contains(searchEntity.PurchaserName.Trim())) + //&& (string.IsNullOrWhiteSpace(searchEntity.Agency) || b.Agency.Contains(searchEntity.Agency.Trim())) + && (string.IsNullOrWhiteSpace(searchEntity.KhdwName) || ggg.Name.Contains(searchEntity.KhdwName.Trim())) + && (searchEntity.Status <= 0 || b.Status == searchEntity.Status) + + + + + + select new CooperOrderDTO + { + Id = a.Id, + + XmCode = b.XmCode, + XmName = b.XmName, + PurchaserName = b.PurchaserName, + Agency = "", + KhdwName = ggg.Name, + XdTime = a.Createtime, + XdTimeName = a.Createtime.ToString("yyyy-MM-dd"), + YishouMoney = lll.YishouMoney ?? 0, + WeishouMoney = (a.Money ?? 0) /*- (a.Youhui ?? 0)*/ - (lll.YishouMoney ?? 0), + OrderType1 = a.OrderType1, + Status = b.Status.ToString(), + Modifytime = b.Modifytime.Value, + //StatusName = ddd.Comments + } + ).ToList(); + + + var query1 =(from a in _context.CooperOrders + join b in _context.TComplaintletters + on a.Id equals b.OrderId + + + join g in _context.CooperatecustomCustomers.Where(x => x.RecStatus == "A") + on a.Khdw equals g.Id + into gsss + from ggg in gsss.DefaultIfEmpty() + + join l in _context.FiOrderrecievemoneys.Where(x => x.RecStatus == "A").GroupBy(q => new { q.OrderId }).Select(q => new + { + OrderId = q.Key.OrderId, + YishouMoney = q.Sum(x => x.Recievemoney), + } + ) + on a.Id equals l.OrderId + into lsss + from lll in lsss.DefaultIfEmpty() + + where a.RecStatus == "A" && a.OrderType1 == "浠f嫙鎶曡瘔涔�" + && (string.IsNullOrWhiteSpace(searchEntity.XdTime) || (b.Createtime >= XdTimestart && b.Createtime <= XdTimeend)) + && (string.IsNullOrWhiteSpace(searchEntity.Wenshuleixing) || a.OrderType1 == searchEntity.Wenshuleixing.Trim()) + && (string.IsNullOrWhiteSpace(searchEntity.XmCode) || b.XmCode.Contains(searchEntity.XmCode.Trim())) + && (string.IsNullOrWhiteSpace(searchEntity.XmName) || b.XmName.Contains(searchEntity.XmName.Trim())) + && (string.IsNullOrWhiteSpace(searchEntity.PurchaserName) || b.PurchaserName.Contains(searchEntity.PurchaserName.Trim())) + && (string.IsNullOrWhiteSpace(searchEntity.Agency) || b.Agency.Contains(searchEntity.Agency.Trim())) + && (string.IsNullOrWhiteSpace(searchEntity.KhdwName) || ggg.Name.Contains(searchEntity.KhdwName.Trim())) + && (searchEntity.Status <= 0 || b.Status == searchEntity.Status) + + + + + + select new CooperOrderDTO + { + Id = a.Id, + + XmCode = b.XmCode, + XmName = b.XmName, + PurchaserName = b.PurchaserName, + Agency = b.Agency, + KhdwName = ggg.Name, + XdTime = b.Createtime.Value, + XdTimeName = b.Createtime.Value.ToString("yyyy-MM-dd"), + YishouMoney = lll.YishouMoney ?? 0, + WeishouMoney = (a.Money ?? 0) /*- (a.Youhui ?? 0)*/ - (lll.YishouMoney ?? 0), + OrderType1 = a.OrderType1, + Status = b.Status.ToString(), + Modifytime = b.Modifytime.Value, + } + ).ToList(); + + query2.AddRange(query1); + var query = query2.Where(x => x.WeishouMoney <= 0).OrderByDescending(x => x.Modifytime).ToList(); + + + + + + + + + + + + + + + //if (searchEntity.totalrows == 0) + searchEntity.totalrows = query.Count(); + var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList(); + foreach (var cooperOrderDTO in lianlist) + { + var codeDataEntity = listCode.Where(x => x.CodeTable == "t_challengeletter" && x.CodeField == "status" && x.CodeSn == cooperOrderDTO.Status.ToString()).FirstOrDefault(); + if (codeDataEntity != null) { + cooperOrderDTO.StatusName = codeDataEntity.Comments; + } + } + + + data.LoadData(searchEntity, lianlist); + return data; + } + + + + + public List<CooperOrderDTO> GetListComplaintsDisputeCount(string huiyuanid) + { + var query = (from a in _zcUserInfoN_dbContext.UsergGadeRoles + join b in _zcUserInfoN_dbContext.GadeRoles + on a.UserGadeRolesId equals b.Id + where a.UserId == Guid.Parse(huiyuanid) + select new CooperOrderDTO + { + Id = a.UserId.ToString(), + AnswerRoles = b.AnswerRoles, + XiaocaiKeTang = b.XiaocaiKeTang, + XiaoCaiQandA = b.XiaoCaiQandA, + Discount = b.Discount, + BiddingDocumentsCount = b.BiddingDocumentsCount, + ComplaintsDisputeCount = b.ComplaintsDisputeCount, + PerformanceDisputeCount = b.PerformanceDisputeCount, + BiddingDocumentsCountused = a.BiddingDocumentsCount, + ComplaintsDisputeCountused = a.ComplaintsDisputeCount, + PerformanceDisputeCountused = a.PerformanceDisputeCount, + + } + ).ToList(); + + + + + return query; + } + + + public FrameworkUser GetFrameworkUsers(string ID) + { + + + + var entity = _zcUserInfoN_dbContext.FrameworkUsers.Find(new Guid(ID)); + + + + return entity; + } } } -- Gitblit v1.9.1