using System; using System.Collections.Generic; using System.Text; using zhengcaioa.Models; using IServices; using AutoMapper; using DTO; using System.Linq; namespace Services { public class AskService: IAskService { private readonly zhengcaioaContext _context; private readonly IMapper _mapper; public AskService(zhengcaioaContext context, IMapper mapper) { _context = context; _mapper = mapper; } #region 费用申请 public ResultEntity SaveAskcost(AdmAskcostDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskcost ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskcosts.Add(ask); } else { var entity = _context.AdmAskcosts.Find(admAsk.Id); entity.Cost = admAsk.Cost; entity.Remark = admAsk.Remark; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskcostDTO GetAskcost(string Id) { var entity = _context.AdmAskcosts.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskcost(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } #endregion #region 物品申领 public ResultEntity SaveAskGood(AdmAskGoodDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskGood ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskGoods.Add(ask); } else { var entity = _context.AdmAskGoods.Find(admAsk.Id); entity.Shuliang = admAsk.Shuliang; entity.GoodsId = admAsk.GoodsId; entity.Remark = admAsk.Remark; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskGoodDTO GetAskGood(string Id) { var entity = _context.AdmAskGoods.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskGood(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } #endregion #region 加班申请 public ResultEntity SaveAskovertime(AdmAskovertimeDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskovertime ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskovertimes.Add(ask); } else { var entity = _context.AdmAskovertimes.Find(admAsk.Id); entity.Overtime = admAsk.Overtime; entity.Jiabantime = admAsk.Jiabantime; entity.Remark = admAsk.Remark; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskovertimeDTO GetAskovertime(string Id) { var entity = _context.AdmAskovertimes.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskovertime(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } public AdmAskovertimeDTO GetAskovertimeByUeridAndjiabantime(string Creater, DateTime Jiabantime) { var entity = _context.AdmAskovertimes.Where(e => e.RecStatus == "A" && e.ShenpiStatus == "A" && e.Creater == Creater && e.Jiabantime == Jiabantime).OrderByDescending(x=>x.Createtime).FirstOrDefault(); if (entity == null) { entity = new AdmAskovertime(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } #endregion #region 用车申请 public ResultEntity SaveAskCar(AdmAskCarDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskCar ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskCars.Add(ask); } else { var entity = _context.AdmAskCars.Find(admAsk.Id); entity.CarLaiyuan = admAsk.CarLaiyuan; entity.Feiyong = admAsk.Feiyong; entity.Remark = admAsk.Remark; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskCarDTO GetAskCar(string Id) { var entity = _context.AdmAskCars.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskCar(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } #endregion #region 销售费用申请 public ResultEntity SaveAskMarketingCost(AdmAskMarketingCostDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskMarketingCost ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskMarketingCosts.Add(ask); } else { var entity = _context.AdmAskMarketingCosts.Find(admAsk.Id); entity.Feiyong = admAsk.Feiyong; entity.Remark = admAsk.Remark; entity.ToUserId = admAsk.ToUserId; entity.BreakPrecedentId = admAsk.BreakPrecedentId; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskMarketingCostDTO GetAskMarketingCost(string Id) { var entity = _context.AdmAskMarketingCosts.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskMarketingCost(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } #endregion #region 优惠申请 public ResultEntity SaveAskYouHui(AdmAskYouHuiDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskYouHui ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskYouHuis.Add(ask); } else { var entity = _context.AdmAskYouHuis.Find(admAsk.Id); entity.CustomerId = admAsk.CustomerId; entity.OrderType = admAsk.OrderType; entity.Youhuistandard = admAsk.Youhuistandard; entity.YouHui = admAsk.YouHui; entity.Remark = admAsk.Remark; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskYouHuiDTO GetAskYouHui(string Id) { var entity = _context.AdmAskYouHuis.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskYouHui(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } public List GetAskYouHuiList(string CustomerId, string OrderType) { var entity = _context.AdmAskYouHuis.Where(e => e.RecStatus == "A" && e.ShenpiStatus == "A" && e.CustomerId == CustomerId && e.OrderType == OrderType && e.Createtime >= DateTime.Now.Date.AddDays(-8)).OrderByDescending(x=>x.Createtime).ToList(); var leaveDTO = _mapper.Map>(entity); return leaveDTO; } #endregion #region 访问请示 public ResultEntity SaveAskBaiFang(AdmAskBaiFangDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskBaiFang ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskBaiFangs.Add(ask); } else { var entity = _context.AdmAskBaiFangs.Find(admAsk.Id); entity.CustomerId = admAsk.CustomerId; entity.VisType = admAsk.VisType; entity.Jtype = admAsk.Jtype; entity.BaiFangtime = admAsk.BaiFangtime; entity.Remark = admAsk.Remark; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskBaiFangDTO GetAskBaiFang(string Id) { var entity = _context.AdmAskBaiFangs.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskBaiFang(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } #endregion #region 会员提现申请 public ResultEntity SaveCustomerWithdrawal(AdmCustomerWithdrawalDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmCustomerWithdrawal ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmCustomerWithdrawals.Add(ask); } else { var entity = _context.AdmCustomerWithdrawals.Find(admAsk.Id); entity.OrderNo = admAsk.OrderNo; entity.Jine = admAsk.Jine; entity.HuiyuanName = admAsk.HuiyuanName; entity.HuiyuanId = admAsk.HuiyuanId; entity.HuiyuanPhone = admAsk.HuiyuanPhone; entity.Shenqingtime = admAsk.Shenqingtime; entity.BankAcount = admAsk.BankAcount; entity.BankName = admAsk.BankName; entity.Username = admAsk.Username; entity.Remark = admAsk.Remark; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmCustomerWithdrawalDTO GetCustomerWithdrawal(string Id) { var entity = _context.AdmCustomerWithdrawals.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmCustomerWithdrawal(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } public List GetCustomerWithdrawalList(string OrderNo) { var entity = _context.AdmCustomerWithdrawals.Where(e => e.RecStatus == "A" && e.OrderNo == OrderNo).ToList(); var leaveDTO = _mapper.Map>(entity); return leaveDTO; } #endregion #region 辞职申请 public ResultEntity SaveAskCiZhi(AdmAskCiZhiDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskCiZhi ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskCiZhis.Add(ask); } else { var entity = _context.AdmAskCiZhis.Find(admAsk.Id); entity.Remark = admAsk.Remark; entity.DeptName = admAsk.DeptName; entity.PostName = admAsk.PostName; entity.CreatetimeName = admAsk.CreatetimeName; entity.RuzhitimeName = admAsk.RuzhitimeName; entity.Outtime = admAsk.Outtime; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.JiaojieUser = admAsk.JiaojieUser; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskCiZhiDTO GetAskCiZhi(string Id) { var entity = _context.AdmAskCiZhis.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskCiZhi(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } #endregion #region 工作交接 public ResultEntity SaveAskJiaojie(AdmAskJiaojieDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskJiaojie ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskJiaojies.Add(ask); } else { var entity = _context.AdmAskJiaojies.Find(admAsk.Id); entity.Remark = admAsk.Remark; entity.CiZhiId = admAsk.CiZhiId; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = admAsk.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskJiaojieDTO GetAskJiaojie(string Id) { var entity = _context.AdmAskJiaojies.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskJiaojie(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } public ResultEntity SaveAskJiaojieDtl(AdmAskJiaojieDtlDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskJiaojieDtl ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskJiaojieDtls.Add(ask); } else { var entity = _context.AdmAskJiaojieDtls.Find(admAsk.Id); entity.JiaojieId = admAsk.JiaojieId; entity.Jiaojietime = admAsk.Jiaojietime; entity.JiaojieType = admAsk.JiaojieType; entity.Kehudanwei = admAsk.Kehudanwei; entity.JiaojieNeirong = admAsk.JiaojieNeirong; entity.JiaojieUserId = admAsk.JiaojieUserId; entity.JieShoutime = admAsk.JieShoutime; entity.JiaojieStatus = admAsk.JiaojieStatus; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public List GetAskJiaojieDtls(string JiaojieId) { var entity = _context.AdmAskJiaojieDtls.Where(e => e.RecStatus == "A" && e.JiaojieId == JiaojieId).OrderBy(x=>x.JiaojieType).ToList(); var leaveDTOs = _mapper.Map>(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" && b.CodeTable == "ADM_AskJiaojieDtl" && b.CodeField == "JiaojieType" 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 pltUsers = _context.PltUsers.Where(e => e.RecStatus == "A" && e.Zhiwustatus == "A").ToList(); foreach (var leaveDTO in leaveDTOs) { leaveDTO.JiaojietimeName = leaveDTO.Jiaojietime.HasValue ? leaveDTO.Jiaojietime.Value.ToString("yyyy-MM-dd") : ""; leaveDTO.JieShoutimeName = leaveDTO.JieShoutime.HasValue ? leaveDTO.JieShoutime.Value.ToString("yyyy-MM-dd") : ""; var codeDataEntity = listCode.Where(x => x.CodeSn == leaveDTO.JiaojieType).FirstOrDefault(); if (codeDataEntity != null) { leaveDTO.JiaojieTypeName = codeDataEntity.Comments; } var pltUser = pltUsers.Where(x => x.Id == leaveDTO.JiaojieUserId).FirstOrDefault(); if (pltUser != null) { leaveDTO.JiaojieUserName = pltUser.UserName; } } return leaveDTOs; } public AdmAskJiaojieDtlDTO GetAskJiaojieDtl(string Id) { var entity = _context.AdmAskJiaojieDtls.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskJiaojieDtl(); } var leaveDTO = _mapper.Map(entity); return leaveDTO; } #endregion #region 招标信息网的试用申请 public ResultEntity SaveAskZBXXW(AdmAskzczbwsyDTO admAsk) { ResultEntity resultEntity = new ResultEntity(); try { AdmAskzczbwsy ask = _mapper.Map(admAsk); if (string.IsNullOrEmpty(admAsk.Id)) { ask.Id = Guid.NewGuid().ToString(); admAsk.Id = ask.Id; _context.AdmAskzczbwsies.Add(ask); } else { var entity = _context.AdmAskzczbwsies.Find(admAsk.Id); entity.Shiyongstandard = admAsk.Shiyongstandard; entity.Remark = admAsk.Remark; entity.ShenpiStatus = admAsk.ShenpiStatus; entity.CreaterName = admAsk.CreaterName; entity.Tittle = admAsk.Tittle; entity.Modifier = admAsk.Modifier; entity.Modifytime = DateTime.Now; var admAskzczbwsydtlsmove = _context.AdmAskzczbwsydtls.Where(x => x.AskzczbwsyId == admAsk.Id).ToList(); if (admAskzczbwsydtlsmove != null && admAskzczbwsydtlsmove.Count > 0) { foreach (var admAskzczbwsydtl in admAskzczbwsydtlsmove) { _context.AdmAskzczbwsydtls.Remove(admAskzczbwsydtl); } } } var CustomerId = admAsk.CustomerId; if (CustomerId != null && CustomerId.Length > 0) { for (int i = 0; i < CustomerId.Length; i++) { AdmAskzczbwsydtl admAskzczbwsydtl = new AdmAskzczbwsydtl(); admAskzczbwsydtl.Id = Guid.NewGuid().ToString(); admAskzczbwsydtl.CustomerId = admAsk.CustomerId[i]; admAskzczbwsydtl.Customername = admAsk.Customername[i]; admAskzczbwsydtl.AskzczbwsyId = admAsk.Id; admAskzczbwsydtl.Phone = admAsk.Phone[i]; admAskzczbwsydtl.Customertype = admAsk.Customertype[i]; _context.AdmAskzczbwsydtls.Add(admAskzczbwsydtl); } } _context.SaveChanges(); resultEntity.ReturnID = ask.Id; resultEntity.Result = true; } catch (Exception ex) { resultEntity.Result = false; resultEntity.Message = "保存失败,请联系管理员"; ex.Message.ToString(); } return resultEntity; } public AdmAskzczbwsyDTO GetAskZBXXW(string Id) { var entity = _context.AdmAskzczbwsies.Where(e => e.RecStatus == "A" && e.Id == Id).FirstOrDefault(); if (entity == null) { entity = new AdmAskzczbwsy(); } var leaveDTO = _mapper.Map(entity); var entitys = _context.AdmAskzczbwsydtls.Where(e => e.AskzczbwsyId == Id).ToList(); var leaveDTOs = _mapper.Map>(entitys); leaveDTO.admAskzczbwsydtlDTOs = leaveDTOs; return leaveDTO; } #endregion } }