249 lines
10 KiB
C#
249 lines
10 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;
|
|
using WX.CRM.Model.Entity;
|
|
|
|
namespace WX.CRM.BLL.Base
|
|
{
|
|
public class BAS_PARAMETER_BL : IBAS_PARAMETER_Q, IBAS_PARAMETER
|
|
{
|
|
public bool Create_Parameter(ref ValidationErrors errors, BAS_PARAMETER model)
|
|
{
|
|
try
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
model.PKID = new SEQUENCES_BL().Seq_base_get();
|
|
db.BAS_PARAMETER.Add(model);
|
|
return db.SaveChanges().GetResult();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
errors.Add(ex.Message);
|
|
return false;
|
|
}
|
|
}
|
|
public bool Update_Parameter(ref ValidationErrors errors, BAS_PARAMETER model)
|
|
{
|
|
try
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
BAS_PARAMETER entity = db.BAS_PARAMETER.FirstOrDefault(m => m.PARAKEY == model.PARAKEY);
|
|
if (entity != null)
|
|
{
|
|
entity.PARAKEY = model.PARAKEY;
|
|
entity.GROUPID = model.GROUPID;
|
|
entity.PARATYPE = model.PARATYPE;
|
|
entity.PARAVALUE = model.PARAVALUE;
|
|
entity.REMARK = model.REMARK;
|
|
entity.UTIME = DateTime.Now;
|
|
entity.UPDATEUSER = model.UPDATEUSER;
|
|
entity.EDITFORM = model.EDITFORM;
|
|
entity.PARANAME = model.PARANAME;
|
|
entity.DEPTCDOE = model.DEPTCDOE;
|
|
db.SaveChanges();
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
errors.Add("更新的参数名不存在!");
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
errors.Add(ex.Message);
|
|
return false;
|
|
}
|
|
}
|
|
public bool Delete_Parameter(ref ValidationErrors errors, decimal pkid)
|
|
{
|
|
try
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
BAS_PARAMETER entity = db.BAS_PARAMETER.FirstOrDefault(m => m.PKID == pkid);
|
|
if (entity == null)
|
|
{
|
|
errors.Add("数据不存在!");
|
|
return false;
|
|
}
|
|
db.BAS_PARAMETER.Remove(entity);
|
|
return db.SaveChanges().GetResult();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
errors.Add(ex.Message);
|
|
return false;
|
|
}
|
|
}
|
|
public List<BAS_PARAMETER> GetList(ref Pager page)
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
var data = db.BAS_PARAMETER.AsQueryable<BAS_PARAMETER>();
|
|
PagerUtil.SetPager<BAS_PARAMETER>(ref data, ref page);
|
|
return db.BAS_PARAMETER.ToList<BAS_PARAMETER>();
|
|
}
|
|
}
|
|
public BAS_PARAMETER GetModel_Patameter(string paraKey)
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
return db.BAS_PARAMETER.FirstOrDefault(m => m.PARAKEY == paraKey);
|
|
}
|
|
}
|
|
public BAS_PARAMETER GetModelByPkid(decimal pkid)
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
return db.BAS_PARAMETER.FirstOrDefault(m => m.PKID == pkid);
|
|
}
|
|
}
|
|
public List<BAS_PARAMETER_Extend> GetList_Patameter(ref Pager pg, string paraKey, string paraName, string paraValue, string paraType, string groupId, string stime, string etime)
|
|
{
|
|
using (crmContext db = new crmContext())
|
|
{
|
|
IQueryable<BAS_PARAMETER> data = db.BAS_PARAMETER.AsQueryable<BAS_PARAMETER>();
|
|
if (!string.IsNullOrEmpty(groupId.ToString()) && groupId.ToString() != "0")
|
|
data = data.Where(m => m.GROUPID == groupId);
|
|
if (!string.IsNullOrEmpty(paraKey))
|
|
data = data.Where(m => m.PARAKEY.Contains(paraKey));
|
|
if (!string.IsNullOrEmpty(paraName))
|
|
data = data.Where(m => m.PARANAME.Contains(paraName));
|
|
if (!string.IsNullOrEmpty(paraValue))
|
|
data = data.Where(m => m.PARAVALUE.Contains(paraValue));
|
|
if (!string.IsNullOrEmpty(paraType))
|
|
data = data.Where(m => m.PARATYPE.Contains(paraType));
|
|
|
|
DateTime _stime;
|
|
DateTime _etime;
|
|
if (!string.IsNullOrEmpty(stime) && DateTime.TryParse(stime, out _stime))
|
|
data = data.Where(m => m.CTIME >= _stime);
|
|
if (!string.IsNullOrEmpty(etime) && DateTime.TryParse(etime, out _etime))
|
|
{
|
|
_etime = _etime.AddDays(1);
|
|
data = data.Where(m => m.CTIME < _etime);
|
|
}
|
|
|
|
IQueryable<BAS_PARAMETER_Extend> datList = (from model in data
|
|
join paremeterGroup in db.BAS_PARAMETERGROUP on model.GROUPID equals paremeterGroup.GROUPID into jiontemp
|
|
from paremeterGroup in jiontemp.DefaultIfEmpty()
|
|
|
|
select new WX.CRM.Model.Entity.BAS_PARAMETER_Extend()
|
|
{
|
|
parameter = model,
|
|
GroupName = paremeterGroup.GROUPNAME
|
|
});
|
|
if (pg.order == "desc")
|
|
{
|
|
switch (pg.sort)
|
|
{
|
|
case "paraKey":
|
|
datList = datList.OrderByDescending(c => c.parameter.PARAKEY);
|
|
break;
|
|
case "paraName":
|
|
datList = datList.OrderByDescending(c => c.parameter.PARANAME);
|
|
break;
|
|
case "groupName":
|
|
datList = datList.OrderByDescending(c => c.parameter.GROUPID);
|
|
break;
|
|
case "paraValue":
|
|
datList = datList.OrderByDescending(c => c.parameter.PARAVALUE);
|
|
break;
|
|
case "paraType":
|
|
datList = datList.OrderByDescending(c => c.parameter.PARATYPE);
|
|
break;
|
|
case "ctime":
|
|
datList = datList.OrderByDescending(c => c.parameter.CTIME);
|
|
break;
|
|
case "utime":
|
|
datList = datList.OrderByDescending(c => c.parameter.UTIME);
|
|
break;
|
|
default:
|
|
datList = datList.OrderByDescending(c => c.parameter.GROUPID);
|
|
break;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
switch (pg.sort)
|
|
{
|
|
case "paraKey":
|
|
datList = datList.OrderBy(c => c.parameter.PARAKEY);
|
|
break;
|
|
case "paraName":
|
|
datList = datList.OrderBy(c => c.parameter.PARANAME);
|
|
break;
|
|
case "groupName":
|
|
datList = datList.OrderBy(c => c.parameter.GROUPID);
|
|
break;
|
|
case "paraValue":
|
|
datList = datList.OrderBy(c => c.parameter.PARAVALUE);
|
|
break;
|
|
case "paraType":
|
|
datList = datList.OrderBy(c => c.parameter.PARATYPE);
|
|
break;
|
|
case "ctime":
|
|
datList = datList.OrderBy(c => c.parameter.CTIME);
|
|
break;
|
|
case "utime":
|
|
datList = datList.OrderBy(c => c.parameter.UTIME);
|
|
break;
|
|
default:
|
|
datList = datList.OrderBy(c => c.parameter.GROUPID);
|
|
break;
|
|
}
|
|
}
|
|
PagerUtil.SetPager<WX.CRM.Model.Entity.BAS_PARAMETER_Extend>(ref datList, ref pg);//分页
|
|
return datList.ToList();
|
|
}
|
|
}
|
|
|
|
#region 获取扩展类数据
|
|
private List<WX.CRM.Model.Entity.BAS_PARAMETER_Extend> CreateModelList(IQueryable<BAS_PARAMETER> Data, crmContext db)
|
|
{
|
|
|
|
List<WX.CRM.Model.Entity.BAS_PARAMETER_Extend> modelList = (from model in Data
|
|
|
|
join paremeterGroup in db.BAS_PARAMETERGROUP on model.GROUPID equals paremeterGroup.GROUPID into jiontemp
|
|
from paremeterGroup in jiontemp.DefaultIfEmpty()
|
|
|
|
select new WX.CRM.Model.Entity.BAS_PARAMETER_Extend()
|
|
{
|
|
parameter = model,
|
|
GroupName = paremeterGroup.GROUPNAME
|
|
}).ToList();
|
|
|
|
|
|
return modelList;
|
|
}
|
|
#endregion
|
|
|
|
public void Update_ParameterValueByKey(string key, string value)
|
|
{
|
|
|
|
using (var db = new crmContext())
|
|
{
|
|
BAS_PARAMETER entity = db.BAS_PARAMETER.FirstOrDefault(m => m.PARAKEY == key);
|
|
if (entity != null)
|
|
{
|
|
|
|
entity.PARAVALUE = value;
|
|
db.SaveChanges();
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
}
|