using System; using System.Collections.Generic; using System.Linq; using WX.CRM.BLL.Util; using WX.CRM.Common; using WX.CRM.IBLL.Base; namespace WX.CRM.BLL.Base { public class BAS_COMPANY_BL : IBAS_COMPANY_Q, IBAS_COMPANY { #region 添加 /// /// 添加 /// /// /// public bool Create_Company(ref ValidationErrors errors, WX.CRM.Model.Entity.BAS_COMPANY model) { try { using (WX.CRM.Model.Entity.crmContext db = new WX.CRM.Model.Entity.crmContext()) { var entry = db.BAS_COMPANY.FirstOrDefault(m => m.COMPANYCODE == model.COMPANYCODE); if (entry != null) { errors.Add("这个编码已被占用!"); return false; } model.COMPANYID = new SEQUENCES_BL().Seq_base_get(); model.CTIME = DateTime.Now; db.BAS_COMPANY.Add(model); return db.SaveChanges().GetResult(); } } catch (Exception ex) { errors.Add(ex.Message); return false; } } #endregion #region 修改 /// /// 数据的修改 /// /// /// public bool Update_Company(ref ValidationErrors errors, WX.CRM.Model.Entity.BAS_COMPANY model) { try { using (WX.CRM.Model.Entity.crmContext db = new WX.CRM.Model.Entity.crmContext()) { var temp = db.BAS_COMPANY.FirstOrDefault(m => m.COMPANYCODE == model.COMPANYCODE && m.COMPANYID != model.COMPANYID); if (temp != null) { errors.Add("这个编码已被占用!"); return false; } WX.CRM.Model.Entity.BAS_COMPANY entry = db.BAS_COMPANY.FirstOrDefault(m => m.COMPANYID == model.COMPANYID); if (entry == null) return false; entry.BUSINESSVALUE = model.BUSINESSVALUE; entry.COMPANYCODE = model.COMPANYCODE; entry.COMPANYNAME = model.COMPANYNAME; entry.ISOUTERAGENT = model.ISOUTERAGENT; entry.PARENTID = model.PARENTID; entry.UPDATEUSER = model.UPDATEUSER; entry.UTIME = DateTime.Now; entry.COMMENTS = model.COMMENTS; entry.SYSTEMCODE = model.SYSTEMCODE; entry.ORGANNAME = model.ORGANNAME; db.SaveChanges().GetResult(); return true; } } catch (Exception ex) { errors.Add(ex.Message); return false; } } #endregion #region 删除 /// /// 删除 /// /// /// public bool Delete_Company(ref ValidationErrors errors, decimal id) { try { using (WX.CRM.Model.Entity.crmContext db = new WX.CRM.Model.Entity.crmContext()) { WX.CRM.Model.Entity.BAS_COMPANY entry = db.BAS_COMPANY.FirstOrDefault(m => m.COMPANYID == id); if (entry == null) { errors.Add("数据已经被删除!"); return false; } db.BAS_COMPANY.Remove(entry); return db.SaveChanges().GetResult(); } } catch (Exception ex) { errors.Add(ex.Message); return false; } } #endregion #region 获取单条信息 /// /// 获取实体 /// /// /// public WX.CRM.Model.Entity.BAS_COMPANY GetModel_Company(decimal id) { using (WX.CRM.Model.Entity.crmContext db = new WX.CRM.Model.Entity.crmContext()) { WX.CRM.Model.Entity.BAS_COMPANY entry = db.BAS_COMPANY.FirstOrDefault(m => m.COMPANYID == id); return entry; } } /// /// 获取实体,找不到直接返回第一条 /// /// /// public WX.CRM.Model.Entity.BAS_COMPANY GetModelByCode(string companyCode) { using (WX.CRM.Model.Entity.crmContext db = new WX.CRM.Model.Entity.crmContext()) { WX.CRM.Model.Entity.BAS_COMPANY entry = db.BAS_COMPANY.FirstOrDefault(m => m.COMPANYCODE == companyCode); return entry; } } #endregion #region 按照条件查找信息 /// /// 按照条件查找信息 /// /// /// /// /// /// /// /// public List GetList_Company(ref Pager pager, string companyName, string isOutAgent, string companyCode, string cTime1, string cTime2) { using (WX.CRM.Model.Entity.crmContext db = new WX.CRM.Model.Entity.crmContext()) { IQueryable queryData = db.BAS_COMPANY.AsQueryable(); //条件 if (!string.IsNullOrWhiteSpace(companyName)) queryData = queryData.Where(a => a.COMPANYNAME.Contains(companyName)); if (!string.IsNullOrWhiteSpace(isOutAgent)) queryData = queryData.Where(a => a.ISOUTERAGENT == Convert.ToInt32(isOutAgent)); if (!string.IsNullOrWhiteSpace(companyCode)) queryData = queryData.Where(a => a.COMPANYCODE.Contains(companyCode)); DateTime dt; if (!string.IsNullOrWhiteSpace(cTime1) && DateTime.TryParse(cTime1, out dt)) queryData = queryData.Where(a => a.CTIME >= dt); DateTime dt2; if (!string.IsNullOrWhiteSpace(cTime2) && DateTime.TryParse(cTime2, out dt2)) queryData = queryData.Where(a => a.CTIME <= dt2); //排序 if (pager.order == "desc") { switch (pager.sort) { case "companyName": queryData = queryData.OrderByDescending(c => c.COMPANYNAME); break; case "companCode": queryData = queryData.OrderByDescending(c => c.COMPANYCODE); break; case "cTime": queryData = queryData.OrderByDescending(c => c.CTIME); break; default: queryData = queryData.OrderByDescending(c => c.COMPANYID); break; } } else { switch (pager.sort) { case "companyName": queryData = queryData.OrderBy(c => c.COMPANYNAME); break; case "companCode": queryData = queryData.OrderBy(c => c.COMPANYCODE); break; case "cTime": queryData = queryData.OrderBy(c => c.CTIME); break; default: queryData = queryData.OrderBy(c => c.COMPANYID); break; } } PagerUtil.SetPager(ref queryData, ref pager);//分页 return queryData.ToList(); } } #endregion #region 获取全部公司信息 /// /// 获取全部信息 /// /// public List GetList() { return new CACHE_BL().GetList_innerCompany(); } #endregion } }