using System; using System.Collections.Generic; using System.Linq; using System.Text; using AutoMapper; using DTO; using IServices; using Microsoft.AspNetCore.Mvc.Rendering; using Microsoft.EntityFrameworkCore; using zhengcaioa.Models; namespace Services { public class CooperOrderService: ICooperOrderService { private readonly zhengcaioaContext _context; private readonly IMapper _mapper; public CooperOrderService(zhengcaioaContext context, IMapper mapper) { _context = context; _mapper = mapper; } public ResultEntity save(CooperOrderDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var entity = _mapper.Map(dto); if (String.IsNullOrEmpty(entity.Id)) { entity.Id = Guid.NewGuid().ToString(); dto.Id = entity.Id; var datestreing = DateTime.Now.ToString("yyyyMMdd"); var OrderNo = _context.CooperOrders.Where(x => x.OrderNo.Contains(datestreing)).Max(x=>x.OrderNo); if (string.IsNullOrEmpty(OrderNo)) { entity.OrderNo = datestreing+ 1.ToString().PadLeft(3, '0'); } else { entity.OrderNo = datestreing + (int.Parse(OrderNo.Substring(OrderNo.Length - 3))+1).ToString().PadLeft(3, '0'); } //entity.ShouliStatus = ""; //entity.ChedanStatus = ""; //entity.HuifangStatus = ""; //entity.PingjiaStatus = ""; _context.CooperOrders.Add(entity); } else { var updateproject = _context.CooperOrders.Find(entity.Id); //updateproject.XdTime = entity.XdTime; updateproject.OrderNo = entity.OrderNo; updateproject.Khdw = entity.Khdw; updateproject.OrderType = entity.OrderType; updateproject.OrderPro = entity.OrderPro; updateproject.OrderNum = entity.OrderNum; updateproject.Price = entity.Price; updateproject.Money = entity.Money; updateproject.Shr = entity.Shr; updateproject.ShrAddress = entity.ShrAddress; updateproject.ShrTel = entity.ShrTel; updateproject.Remark = entity.Remark; updateproject.OrderType1 = entity.OrderType1; updateproject.OrderType2 = entity.OrderType2; updateproject.ShouliStatus = entity.ShouliStatus; updateproject.Shoulier = entity.Shoulier; updateproject.Shoulitime = entity.Shoulitime; updateproject.Songhuoer = entity.Songhuoer; updateproject.Songhuotime = entity.Songhuotime; updateproject.Wangonger = entity.Wangonger; updateproject.Wangongtime = entity.Wangongtime; updateproject.RecStatus = entity.RecStatus; updateproject.Modifier = entity.Modifier; updateproject.Modifytime = entity.Modifytime; updateproject.SonghuoGongsi = entity.SonghuoGongsi; updateproject.SonghuoDanhao = entity.SonghuoDanhao; updateproject.SonghuoTime1 = entity.SonghuoTime1; updateproject.HuifangJdr = entity.HuifangJdr; updateproject.HuifangKehuyijian = entity.HuifangKehuyijian; } _context.SaveChanges(); resultEntity.ReturnID = entity.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public string GetOrderNo() { string OrderNoback = ""; var datestreing = DateTime.Now.ToString("yyyyMMdd"); var OrderNo = _context.CooperOrders.Where(x => x.OrderNo.Contains(datestreing)).Max(x => x.OrderNo); if (string.IsNullOrEmpty(OrderNo)) { OrderNoback = datestreing + 1.ToString().PadLeft(3, '0'); } else { OrderNoback = datestreing + (int.Parse(OrderNo.Substring(OrderNo.Length - 3)) + 1).ToString().PadLeft(3, '0'); } return OrderNoback; } public CooperOrderDTO Get(string id) { var entity = _context.CooperOrders.Find(id); if (entity.RecStatus != "A") { entity = new CooperOrder(); } var result = _mapper.Map(entity); return result; } public ResultDataEntity SearchByPaging(CooperOrderDTOSearch searchEntity) { ResultDataEntity data = new ResultDataEntity(); List list = new List(); 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 query = (from a in _context.CooperOrders join b in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "shouli_status") on a.ShouliStatus equals b.CodeSn into bsss from bbb in bsss.DefaultIfEmpty() join c in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "huifang_status") on a.HuifangStatus equals c.CodeSn into csss from ccc in csss.DefaultIfEmpty() join d in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "pingjia_status") on a.PingjiaStatus equals d.CodeSn into dsss from ddd in dsss.DefaultIfEmpty() join e in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.ChedanStatus equals e.CodeSn into esssss from eee in esssss.DefaultIfEmpty() join f in listCode.Where(x => x.CodeTable == "CooperVisit" && x.CodeField == "jtype") on a.OrderType equals f.CodeSn into fsssss from fff in fsssss.DefaultIfEmpty() join g in _context.CooperatecustomCustomers.Where(x => x.RecStatus == "A" ) on a.Khdw equals g.Id into gsss from ggg in gsss.DefaultIfEmpty() join h in _context.Projects.Where(x => x.RecStatus == "A") on a.OrderPro equals h.Id into hsss from hhh in hsss.DefaultIfEmpty() join i in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.WangongStatus equals i.CodeSn into isssss from iii in isssss.DefaultIfEmpty() join j in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.SonghuoStatus equals j.CodeSn into jsssss from jjj in jsssss.DefaultIfEmpty() join k in _context.Oayouhuis.Where(x => x.Recstatus == "A") on a.Id equals k.CooperOrderId into ksssss from kkk in ksssss.DefaultIfEmpty() join l in _context.FiBooks on a.OrderType1 equals l.Id into lsssss from lll in lsssss.DefaultIfEmpty() join m in _context.FiMembers on a.OrderType1 equals m.Id into msssss from mmm in msssss.DefaultIfEmpty() where a.RecStatus == "A" && (string.IsNullOrWhiteSpace(searchEntity.XdTime) || (a.XdTime >= XdTimestart && a.XdTime <= XdTimeend)) && (string.IsNullOrWhiteSpace(searchEntity.Ywjl) || ggg.Ywjl == searchEntity.Ywjl.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.OrderType) || a.OrderType == searchEntity.OrderType.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.OrderNo) || a.OrderNo.Contains(searchEntity.OrderNo.Trim())) && (string.IsNullOrWhiteSpace(searchEntity.KhdwName) || ggg.Name.Contains(searchEntity.KhdwName.Trim())) && (string.IsNullOrWhiteSpace(searchEntity.Khlx) || ggg.Khlx == searchEntity.Khlx.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.HuifangStatus) || a.HuifangStatus.Contains(searchEntity.HuifangStatus.Trim())) && (string.IsNullOrWhiteSpace(searchEntity.PingjiaStatus) || a.PingjiaStatus.Contains(searchEntity.PingjiaStatus.Trim())) && (string.IsNullOrWhiteSpace(searchEntity.Creater) || a.Creater == searchEntity.Creater.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.ShouliStatus) || a.ShouliStatus == searchEntity.ShouliStatus.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.ChedanStatus) || a.ChedanStatus == searchEntity.ChedanStatus.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.WangongStatus) || a.WangongStatus == searchEntity.WangongStatus.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.SonghuoStatus) || a.SonghuoStatus == searchEntity.SonghuoStatus.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.HuifangStatussss) || a.HuifangStatus == searchEntity.HuifangStatussss.Trim()) && (string.IsNullOrWhiteSpace(searchEntity.HuiyuanId) || ggg.HuiyuanId == searchEntity.HuiyuanId.Trim()) select new CooperOrderDTO { Id = a.Id, XdTime = a.XdTime, XdTimeName = a.XdTime.ToString("yyyy-MM-dd"), OrderNo = a.OrderNo, Khdw = a.Khdw, KhdwName = ggg.Name, OrderType = a.OrderType, OrderTypeName = fff.Comments, OrderPro = a.OrderPro, OrderProName = hhh.Name, OrderNum = a.OrderNum, Price = a.Price, Money = a.Money, Shr = a.Shr, ShrAddress = a.ShrAddress, ShrTel = a.ShrTel, Remark = a.Remark, Creater = a.Creater, Createtime = a.Createtime, RecStatus = a.RecStatus, Modifier = a.Modifier, Modifytime = a.Modifytime, ShouliStatus = a.ShouliStatus, ShouliStatusName = bbb.Comments, Shoulier = a.Shoulier, Shoulitime = a.Shoulitime, ChedanStatus = a.ChedanStatus, ChedanStatusName = eee.Comments, Chedaner = a.Chedaner, Chedantime = a.Chedantime, Chedan = a.Chedan, HuifangStatus = a.HuifangStatus, HuifangStatusName = ccc.Comments, Huifanger = a.Huifanger, Huifangtime = a.Huifangtime, Huifangremark = a.Huifangremark, PingjiaStatus = a.PingjiaStatus, PingjiaStatusName = ddd.Comments, Pingjiaer = a.Pingjiaer, Pingjiatime =a.Pingjiatime, Youhui = a.Youhui, Youhuier = a.Youhuier, Youhuitime = a.Youhuitime, SonghuoStatusName = jjj.Comments, SonghuoStatus = a.SonghuoStatus, Songhuoer = a.Songhuoer, Songhuotime = a.Songhuotime, WangongStatusName = iii.Comments, WangongStatus = a.WangongStatus, Wangonger = a.Wangonger, Wangongtime = a.Wangongtime, YouhuiStatus = kkk.Id, OrderType1 = a.OrderType1, OrderType2 = a.OrderType2, OrderType1Name = string.IsNullOrEmpty(lll.BookName)? string.IsNullOrEmpty(mmm.MemberType)? a.OrderType1 : mmm.MemberType : lll.BookName, SonghuoGongsi = a.SonghuoGongsi, SonghuoDanhao = a.SonghuoDanhao, SonghuoTime1 = a.SonghuoTime1, HuifangJdr = a.HuifangJdr, HuifangKehuyijian = a.HuifangKehuyijian, } ).OrderByDescending(x => x.OrderNo).ToList(); //if (searchEntity.totalrows == 0) searchEntity.totalrows = query.Count(); var lianlist = query.Skip((searchEntity.page - 1) * searchEntity.rows).Take(searchEntity.rows).ToList(); data.LoadData(searchEntity, lianlist); return data; } /// /// 修改主表状态 /// /// 主id /// 用户 /// public ResultEntity ModifyStatus(string id, string userid) { ResultEntity result = new ResultEntity(); result.Result = true; var model = _context.CooperOrders.Find(id); if (model != null) { model.RecStatus = "D"; model.Modifier = userid; model.Modifytime = DateTime.Now; _context.SaveChanges(); } return result; } public ResultEntity shouli(CooperOrderDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var updateproject = _context.CooperOrders.Find(dto.Id); updateproject.ShouliStatus = dto.ShouliStatus; updateproject.Shoulier = dto.Shoulier; updateproject.Shoulitime = dto.Shoulitime; _context.SaveChanges(); resultEntity.ReturnID = dto.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "受理失败,请联系管理员"; } return resultEntity; } public ResultEntity Wangong(CooperOrderDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var updateproject = _context.CooperOrders.Find(dto.Id); updateproject.WangongStatus = dto.WangongStatus; updateproject.Wangonger = dto.Wangonger; updateproject.Wangongtime = dto.Wangongtime; _context.SaveChanges(); resultEntity.ReturnID = dto.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "完工失败,请联系管理员"; } return resultEntity; } public ResultEntity Songhuo(CooperOrderDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var updateproject = _context.CooperOrders.Find(dto.Id); updateproject.SonghuoStatus = dto.SonghuoStatus; updateproject.Songhuoer = dto.Songhuoer; updateproject.Songhuotime = dto.Songhuotime; updateproject.ShouliStatus = dto.ShouliStatus; updateproject.SonghuoTime1 = dto.SonghuoTime1; updateproject.SonghuoDanhao = dto.SonghuoDanhao; updateproject.SonghuoGongsi = dto.SonghuoGongsi; _context.SaveChanges(); resultEntity.ReturnID = dto.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "送货失败,请联系管理员"; } return resultEntity; } public ResultEntity chedan(CooperOrderDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var updateproject = _context.CooperOrders.Find(dto.Id); updateproject.Chedaner = dto.Chedaner; updateproject.Chedantime = dto.Chedantime; updateproject.ChedanStatus = dto.ChedanStatus; updateproject.Chedan = dto.Chedan; updateproject.ShouliStatus = dto.ShouliStatus; _context.SaveChanges(); resultEntity.ReturnID = dto.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "撤单失败,请联系管理员"; } return resultEntity; } public ResultEntity huifang(CooperOrderDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var updateproject = _context.CooperOrders.Find(dto.Id); updateproject.HuifangKehuyijian = dto.HuifangKehuyijian; updateproject.HuifangJdr = dto.HuifangJdr; updateproject.Huifanger = dto.Huifanger; updateproject.Huifangtime = dto.Huifangtime; updateproject.HuifangStatus = dto.HuifangStatus; updateproject.Huifangremark = dto.Huifangremark; updateproject.PingjiaStatus = dto.PingjiaStatus; _context.SaveChanges(); resultEntity.ReturnID = dto.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "撤单失败,请联系管理员"; } return resultEntity; } public ResultEntity pingjia(CooperOrderDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var updateproject = _context.CooperOrders.Find(dto.Id); updateproject.Pingjiaer = dto.Pingjiaer; updateproject.Pingjiatime = dto.Pingjiatime; updateproject.PingjiaStatus = dto.PingjiaStatus; _context.SaveChanges(); resultEntity.ReturnID = dto.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "撤单失败,请联系管理员"; } return resultEntity; } public CooperOrderDTO Getprint(string id) { 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 } ); var query = (from a in _context.CooperOrders join b in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "shouli_status") on a.ShouliStatus equals b.CodeSn into bsss from bbb in bsss.DefaultIfEmpty() join c in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "huifang_status") on a.HuifangStatus equals c.CodeSn into csss from ccc in csss.DefaultIfEmpty() join d in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "pingjia_status") on a.PingjiaStatus equals d.CodeSn into dsss from ddd in dsss.DefaultIfEmpty() join e in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.ChedanStatus equals e.CodeSn into esssss from eee in esssss.DefaultIfEmpty() join f in listCode.Where(x => x.CodeTable == "CooperVisit" && x.CodeField == "jtype") on a.OrderType equals f.CodeSn into fsssss from fff in fsssss.DefaultIfEmpty() join g in _context.CooperatecustomCustomers.Where(x => x.RecStatus == "A") on a.Khdw equals g.Id into gsss from ggg in gsss.DefaultIfEmpty() join h in _context.Projects.Where(x => x.RecStatus == "A") on a.OrderPro equals h.Id into hsss from hhh in hsss.DefaultIfEmpty() join i in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.WangongStatus equals i.CodeSn into isssss from iii in isssss.DefaultIfEmpty() join j in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.SonghuoStatus equals j.CodeSn into jsssss from jjj in jsssss.DefaultIfEmpty() join k in _context.Oayouhuis.Where(x => x.Recstatus == "A") on a.Id equals k.CooperOrderId into ksssss from kkk in ksssss.DefaultIfEmpty() where a.RecStatus == "A" && a.Id == id select new CooperOrderDTO { Id = a.Id, XdTime = a.XdTime, XdTimeName = a.XdTime.ToString("yyyy-MM-dd"), OrderNo = a.OrderNo, Khdw = a.Khdw, KhdwName = ggg.Name, OrderType = a.OrderType, OrderTypeName = fff.Comments, OrderPro = a.OrderPro, OrderProName = hhh.Name, OrderNum = a.OrderNum, Price = a.Price, Money = a.Money, Shr = a.Shr, ShrAddress = a.ShrAddress, ShrTel = a.ShrTel, Remark = a.Remark, Creater = a.Creater, Createtime = a.Createtime, RecStatus = a.RecStatus, Modifier = a.Modifier, Modifytime = a.Modifytime, ShouliStatus = a.ShouliStatus, ShouliStatusName = bbb.Comments, Shoulier = a.Shoulier, Shoulitime = a.Shoulitime, ChedanStatus = a.ChedanStatus, ChedanStatusName = eee.Comments, Chedaner = a.Chedaner, Chedantime = a.Chedantime, Chedan = a.Chedan, HuifangStatus = a.HuifangStatus, HuifangStatusName = ccc.Comments, Huifanger = a.Huifanger, Huifangtime = a.Huifangtime, Huifangremark = a.Huifangremark, PingjiaStatus = a.PingjiaStatus, PingjiaStatusName = ddd.Comments, Pingjiaer = a.Pingjiaer, Pingjiatime = a.Pingjiatime, Youhui = a.Youhui, Youhuier = a.Youhuier, Youhuitime = a.Youhuitime, SonghuoStatusName = jjj.Comments, SonghuoStatus = a.SonghuoStatus, Songhuoer = a.Songhuoer, Songhuotime = a.Songhuotime, WangongStatusName = iii.Comments, WangongStatus = a.WangongStatus, Wangonger = a.Wangonger, Wangongtime = a.Wangongtime, YouhuiStatus = kkk.Id, OrderType1 = a.OrderType1, OrderType2 = a.OrderType2, } ).FirstOrDefault(); if (query==null|| query.RecStatus != "A") { query = new CooperOrderDTO(); } return query; } public List GetList(string userid, DateTime datemin, DateTime datemax) { var entity = _context.CooperOrders.Where(x => x.RecStatus == "A" && x.ShouliStatus != "0" && x.Creater == userid && x.Createtime >= datemin && x.Createtime < datemax).ToList(); var result = _mapper.Map>(entity); return result; } public List GetListtongji(string userid, DateTime datemin, DateTime datemax) { 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 }); var entity = (from a in _context.CooperOrders.Where(x => x.RecStatus == "A" && x.ShouliStatus != "0" && x.Creater == userid && x.Createtime >= datemin && x.Createtime < datemax) join b in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "shouli_status") on a.ShouliStatus equals b.CodeSn into bsss from bbb in bsss.DefaultIfEmpty() join c in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "huifang_status") on a.HuifangStatus equals c.CodeSn into csss from ccc in csss.DefaultIfEmpty() join d in listCode.Where(x => x.CodeTable == "CooperOrder" && x.CodeField == "pingjia_status") on a.PingjiaStatus equals d.CodeSn into dsss from ddd in dsss.DefaultIfEmpty() join e in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.ChedanStatus equals e.CodeSn into esssss from eee in esssss.DefaultIfEmpty() join f in listCode.Where(x => x.CodeTable == "CooperVisit" && x.CodeField == "jtype") on a.OrderType equals f.CodeSn into fsssss from fff in fsssss.DefaultIfEmpty() join g in _context.CooperatecustomCustomers.Where(x => x.RecStatus == "A") on a.Khdw equals g.Id into gsss from ggg in gsss.DefaultIfEmpty() join h in _context.Projects.Where(x => x.RecStatus == "A") on a.OrderPro equals h.Id into hsss from hhh in hsss.DefaultIfEmpty() join i in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.WangongStatus equals i.CodeSn into isssss from iii in isssss.DefaultIfEmpty() join j in listCode.Where(x => x.CodeTable == "system" && x.CodeField == "shifou") on a.SonghuoStatus equals j.CodeSn into jsssss from jjj in jsssss.DefaultIfEmpty() join k in _context.Oayouhuis.Where(x => x.Recstatus == "A") on a.Id equals k.CooperOrderId into ksssss from kkk in ksssss.DefaultIfEmpty() join l in _context.FiBooks on a.OrderType1 equals l.Id into lsssss from lll in lsssss.DefaultIfEmpty() join m in _context.FiMembers on a.OrderType1 equals m.Id into msssss from mmm in msssss.DefaultIfEmpty() select new CooperOrderDTO { Id = a.Id, XdTime = a.XdTime, XdTimeName = a.XdTime.ToString("yyyy-MM-dd"), OrderNo = a.OrderNo, Khdw = a.Khdw, KhdwName = ggg.Name, OrderType = a.OrderType, OrderTypeName = fff.Comments, OrderPro = a.OrderPro, OrderProName = hhh.Name, OrderNum = a.OrderNum, Price = a.Price, Money = a.Money, Shr = a.Shr, ShrAddress = a.ShrAddress, ShrTel = a.ShrTel, Remark = a.Remark, Creater = a.Creater, Createtime = a.Createtime, RecStatus = a.RecStatus, Modifier = a.Modifier, Modifytime = a.Modifytime, ShouliStatus = a.ShouliStatus, ShouliStatusName = bbb.Comments, Shoulier = a.Shoulier, Shoulitime = a.Shoulitime, ChedanStatus = a.ChedanStatus, ChedanStatusName = eee.Comments, Chedaner = a.Chedaner, Chedantime = a.Chedantime, Chedan = a.Chedan, HuifangStatus = a.HuifangStatus, HuifangStatusName = ccc.Comments, Huifanger = a.Huifanger, Huifangtime = a.Huifangtime, Huifangremark = a.Huifangremark, PingjiaStatus = a.PingjiaStatus, PingjiaStatusName = ddd.Comments, Pingjiaer = a.Pingjiaer, Pingjiatime = a.Pingjiatime, Youhui = a.Youhui, Youhuier = a.Youhuier, Youhuitime = a.Youhuitime, SonghuoStatusName = jjj.Comments, SonghuoStatus = a.SonghuoStatus, Songhuoer = a.Songhuoer, Songhuotime = a.Songhuotime, WangongStatusName = iii.Comments, WangongStatus = a.WangongStatus, Wangonger = a.Wangonger, Wangongtime = a.Wangongtime, YouhuiStatus = kkk.Id, OrderType1 = a.OrderType1, OrderType2 = a.OrderType2, OrderType1Name = string.IsNullOrEmpty(lll.BookName) ? string.IsNullOrEmpty(mmm.MemberType) ? a.OrderType1 : mmm.MemberType : lll.BookName, SonghuoGongsi = a.SonghuoGongsi, SonghuoDanhao = a.SonghuoDanhao, SonghuoTime1 = a.SonghuoTime1, HuifangJdr = a.HuifangJdr, HuifangKehuyijian = a.HuifangKehuyijian, } ).OrderByDescending(x => x.OrderNo).ToList(); return entity; } public List GetListChallengeletter(string OrderId) { var entity = _context.TChallengeletters.Where(x => x.Status == 1 && x.OrderId == OrderId).ToList(); var result = _mapper.Map>(entity); return result; } public ResultEntity saveChallengeletter(TChallengeletterDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var entity = _mapper.Map(dto); if (String.IsNullOrEmpty(entity.Id)) { entity.Id = Guid.NewGuid().ToString(); dto.Id = entity.Id; _context.TChallengeletters.Add(entity); } else { var updateproject = _context.TChallengeletters.Find(entity.Id); updateproject.PrintNum = entity.PrintNum; updateproject.OrderId = entity.OrderId; updateproject.GysId = entity.GysId; updateproject.GysName = entity.GysName; updateproject.GysAddress = entity.GysAddress; updateproject.GysPostcode = entity.GysPostcode; updateproject.GysContacts = entity.GysContacts; updateproject.GysPhone = entity.GysPhone; updateproject.SqdbId = entity.SqdbId; updateproject.SqdbName = entity.SqdbName; updateproject.SqdbPhone = entity.SqdbPhone; updateproject.SqdbAddress = entity.SqdbAddress; updateproject.SqdbPostcode = entity.SqdbPostcode; updateproject.XmId = entity.XmId; updateproject.XmName = entity.XmName; updateproject.XmCode = entity.XmCode; updateproject.XmPackage = entity.XmPackage; updateproject.PurchaserName = entity.PurchaserName; updateproject.DocumentsDate = entity.DocumentsDate; updateproject.RequestInfo = entity.RequestInfo; updateproject.IsReply = entity.IsReply; updateproject.Respondent = entity.Respondent; updateproject.RespondDate = entity.RespondDate; updateproject.RespondInfo = entity.RespondInfo; updateproject.Modifier = entity.Modifier; updateproject.Modifytime = entity.Modifytime; } _context.SaveChanges(); resultEntity.ReturnID = entity.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public List GetListChallengeItem(string ChallengeId) { var entity = _context.TChallengeItems.Where(x => x.ChallengeId == ChallengeId).OrderBy(x => x.Sort).ToList(); var result = _mapper.Map>(entity); return result; } public ResultEntity saveChallengeItem(TChallengeItemDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var entity = _mapper.Map(dto); if (entity.Id<=0) { _context.TChallengeItems.Add(entity); } else { var updateproject = _context.TChallengeItems.Find(entity.Id); updateproject.ChallengeId = entity.ChallengeId; updateproject.Question = entity.Question; updateproject.Evidential = entity.Evidential; updateproject.Law = entity.Law; updateproject.Sort = entity.Sort; updateproject.Lawcoment = entity.Lawcoment; } _context.SaveChanges(); resultEntity.ReturnID = entity.Id.ToString(); resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public List GetListComplaintletter(string OrderId) { var entity = _context.TComplaintletters.Where(x => x.Status == 1 && x.OrderId == OrderId).ToList(); var result = _mapper.Map>(entity); return result; } public ResultEntity saveComplaintletter(TComplaintletterDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var entity = _mapper.Map(dto); if (String.IsNullOrEmpty(entity.Id)) { entity.Id = Guid.NewGuid().ToString(); dto.Id = entity.Id; _context.TComplaintletters.Add(entity); } else { var updateproject = _context.TComplaintletters.Find(entity.Id); updateproject.PrintNum = entity.PrintNum; updateproject.OrderId = entity.OrderId; updateproject.TsrId = entity.TsrId; updateproject.TsrName = entity.TsrName; updateproject.TsrAddress = entity.TsrAddress; updateproject.TsrPostcode = entity.TsrPostcode; updateproject.TsrCorporation = entity.TsrCorporation; updateproject.TsrPhone = entity.TsrPhone; updateproject.SqdbId = entity.SqdbId; updateproject.SqdbName = entity.SqdbName; updateproject.SqdbPhone = entity.SqdbPhone; updateproject.SqdbAddress = entity.SqdbAddress; updateproject.SqdbPostcode = entity.SqdbPostcode; updateproject.GysId = entity.GysId; updateproject.GysName = entity.GysName; updateproject.GysAddress = entity.GysAddress; updateproject.GysPostcode = entity.GysPostcode; updateproject.GysContacts = entity.GysContacts; updateproject.GysPhone = entity.GysPhone; updateproject.XmId = entity.XmId; updateproject.XmName = entity.XmName; updateproject.XmCode = entity.XmCode; updateproject.XmPackage = entity.XmPackage; updateproject.PurchaserName = entity.PurchaserName; updateproject.Agency = entity.Agency; updateproject.IsNotice = entity.IsNotice; updateproject.NoticeDate = entity.NoticeDate; updateproject.ChallengeDate = entity.ChallengeDate; updateproject.Questioned = entity.Questioned; updateproject.Respondent = entity.Respondent; updateproject.RespondDate = entity.RespondDate; updateproject.IsResultnotice = entity.IsResultnotice; updateproject.ResultnoticeDate = entity.ResultnoticeDate; updateproject.DocumentsDate = entity.DocumentsDate; updateproject.RequestInfo = entity.RequestInfo; updateproject.Modifier = entity.Modifier; updateproject.Modifytime = entity.Modifytime; } _context.SaveChanges(); resultEntity.ReturnID = entity.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public List GetListComplaintItem(string ComplaintId) { var entity = _context.TComplaintItems.Where(x => x.ComplaintId == ComplaintId).OrderBy(x => x.Sort).ToList(); var result = _mapper.Map>(entity); return result; } public ResultEntity saveComplaintItem(TComplaintItemDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var entity = _mapper.Map(dto); if (entity.Id <= 0) { _context.TComplaintItems.Add(entity); } else { var updateproject = _context.TComplaintItems.Find(entity.Id); updateproject.ComplaintId = entity.ComplaintId; updateproject.Question = entity.Question; updateproject.Evidential = entity.Evidential; updateproject.Law = entity.Law; updateproject.Sort = entity.Sort; updateproject.Lawcoment = entity.Lawcoment; } _context.SaveChanges(); resultEntity.ReturnID = entity.Id.ToString(); resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public List GetListComplaintRespondent(string ComplaintId) { var entity = _context.TComplaintRespondents.Where(x => x.ComplaintId == ComplaintId).OrderBy(x => x.Sort).ToList(); var result = _mapper.Map>(entity); return result; } public ResultEntity saveComplaintRespondent(TComplaintRespondentDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var entity = _mapper.Map(dto); if (entity.Id <= 0) { _context.TComplaintRespondents.Add(entity); } else { var updateproject = _context.TComplaintRespondents.Find(entity.Id); updateproject.ComplaintId = entity.ComplaintId; updateproject.Respondent = entity.Respondent; updateproject.Address = entity.Address; updateproject.Postcode = entity.Postcode; updateproject.Contacts = entity.Contacts; updateproject.Phone = entity.Phone; updateproject.Sort = entity.Sort; } _context.SaveChanges(); resultEntity.ReturnID = entity.Id.ToString(); resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public List GetListComplaintGongyingshang(string ComplaintId) { var entity = _context.TComplaintGongyingshangs.Where(x => x.ComplaintId == ComplaintId).OrderBy(x => x.Sort).ToList(); var result = _mapper.Map>(entity); return result; } public ResultEntity saveComplaintGongyingshang(TComplaintGongyingshangDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var entity = _mapper.Map(dto); if (entity.Id <= 0) { _context.TComplaintGongyingshangs.Add(entity); } else { var updateproject = _context.TComplaintGongyingshangs.Find(entity.Id); updateproject.ComplaintId = entity.ComplaintId; updateproject.Gongytingshang = entity.Gongytingshang; updateproject.Dizhi = entity.Dizhi; updateproject.Youbian = entity.Youbian; updateproject.Lianxiren = entity.Lianxiren; updateproject.Lianxidianhua = entity.Lianxidianhua; updateproject.Sort = entity.Sort; } _context.SaveChanges(); resultEntity.ReturnID = entity.Id.ToString(); resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } public List GetListComplaintShouquandaibiao(string ComplaintId) { var entity = _context.TComplaintShouquandaibiaos.Where(x => x.ComplaintId == ComplaintId).OrderBy(x=>x.Sort).ToList(); var result = _mapper.Map>(entity); return result; } public ResultEntity saveComplaintShouquandaibiao(TComplaintShouquandaibiaoDTO dto) { ResultEntity resultEntity = new ResultEntity(); try { var entity = _mapper.Map(dto); if (entity.Id <= 0) { _context.TComplaintShouquandaibiaos.Add(entity); } else { var updateproject = _context.TComplaintShouquandaibiaos.Find(entity.Id); updateproject.ComplaintId = entity.ComplaintId; updateproject.Shouquandaibiao = entity.Shouquandaibiao; updateproject.Dizhi = entity.Dizhi; updateproject.Youbian = entity.Youbian; updateproject.Lianxidianhua = entity.Lianxidianhua; updateproject.Sort = entity.Sort; } _context.SaveChanges(); resultEntity.ReturnID = entity.Id.ToString(); resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; } return resultEntity; } /// /// 删除质疑函子表 /// /// public ResultEntity deleteChallengeItem(string ChallengeId) { ResultEntity result = new ResultEntity(); result.Result = true; var models = _context.TChallengeItems.Where(x => x.ChallengeId == ChallengeId).ToList(); ; foreach(var challengeItem in models) { _context.TChallengeItems.Remove(challengeItem); } _context.SaveChanges(); return result; } /// /// 删除投诉书子表 /// /// public ResultEntity deleteComplaintItem(string ComplaintId) { ResultEntity result = new ResultEntity(); result.Result = true; var models = _context.TComplaintItems.Where(x => x.ComplaintId == ComplaintId).ToList(); ; foreach (var complaintItem in models) { _context.TComplaintItems.Remove(complaintItem); } _context.SaveChanges(); return result; } /// /// 删除被投诉人子表 /// /// public ResultEntity deleteComplaintRespondent(string ComplaintId) { ResultEntity result = new ResultEntity(); result.Result = true; var models = _context.TComplaintRespondents.Where(x => x.ComplaintId == ComplaintId).ToList(); ; foreach (var complaintRespondent in models) { _context.TComplaintRespondents.Remove(complaintRespondent); } _context.SaveChanges(); return result; } /// /// 删除相关供应商子表 /// /// public ResultEntity deleteComplaintGongyingshang(string ComplaintId) { ResultEntity result = new ResultEntity(); result.Result = true; var models = _context.TComplaintGongyingshangs.Where(x => x.ComplaintId == ComplaintId).ToList(); ; foreach (var complaintGongyingshang in models) { _context.TComplaintGongyingshangs.Remove(complaintGongyingshang); } _context.SaveChanges(); return result; } /// /// 删除相关供应商子表 /// /// public ResultEntity deleteComplaintShouquandaibiao(string ComplaintId) { ResultEntity result = new ResultEntity(); result.Result = true; var models = _context.TComplaintShouquandaibiaos.Where(x => x.ComplaintId == ComplaintId).ToList(); ; foreach (var complaintShouquandaibiao in models) { _context.TComplaintShouquandaibiaos.Remove(complaintShouquandaibiao); } _context.SaveChanges(); return result; } } }