227 lines
8.8 KiB
C#
227 lines
8.8 KiB
C#
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 添加
|
|
/// <summary>
|
|
/// 添加
|
|
/// </summary>
|
|
/// <param name="model"></param>
|
|
/// <returns></returns>
|
|
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 修改
|
|
/// <summary>
|
|
/// 数据的修改
|
|
/// </summary>
|
|
/// <param name="model"></param>
|
|
/// <returns></returns>
|
|
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 删除
|
|
/// <summary>
|
|
/// 删除
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
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 获取单条信息
|
|
/// <summary>
|
|
/// 获取实体
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
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;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 获取实体,找不到直接返回第一条
|
|
/// </summary>
|
|
/// <param name="id"></param>
|
|
/// <returns></returns>
|
|
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 按照条件查找信息
|
|
/// <summary>
|
|
/// 按照条件查找信息
|
|
/// </summary>
|
|
/// <param name="name"></param>
|
|
/// <param name="phone"></param>
|
|
/// <param name="gender"></param>
|
|
/// <param name="address"></param>
|
|
/// <param name="borthday1"></param>
|
|
/// <param name="borthday2"></param>
|
|
/// <returns></returns>
|
|
public List<WX.CRM.Model.Entity.BAS_COMPANY> 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<WX.CRM.Model.Entity.BAS_COMPANY> queryData = db.BAS_COMPANY.AsQueryable<WX.CRM.Model.Entity.BAS_COMPANY>();
|
|
//条件
|
|
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<WX.CRM.Model.Entity.BAS_COMPANY>(ref queryData, ref pager);//分页
|
|
return queryData.ToList();
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 获取全部公司信息
|
|
/// <summary>
|
|
/// 获取全部信息
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public List<WX.CRM.Model.Entity.BAS_COMPANY> GetList()
|
|
{
|
|
return new CACHE_BL().GetList_innerCompany();
|
|
}
|
|
#endregion
|
|
}
|
|
}
|