197 lines
7.5 KiB
C#
197 lines
7.5 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using WX.CRM.BLL.Util;
|
|
using WX.CRM.Common;
|
|
using WX.CRM.IBLL.Wx;
|
|
using WX.CRM.Model.Entity;
|
|
|
|
namespace WX.CRM.BLL.Wx
|
|
{
|
|
public class WX_WORKWEIXIN_BL : DbContextRepository<WX_WORKWEIXIN>, IWX_WORKWEIXIN
|
|
{
|
|
|
|
|
|
public int CountByEid(decimal Eid, int? auditStatus, decimal? isValid)
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
var queryData = db.WX_WORKWEIXIN.AsEnumerable();
|
|
queryData = queryData.Where(m => m.EID == Eid);
|
|
if (auditStatus.HasValue)
|
|
{
|
|
queryData = queryData.Where(m => m.AUDITSTATAUS == auditStatus.Value);
|
|
}
|
|
if (isValid.HasValue)
|
|
{
|
|
queryData = queryData.Where(m => m.ISVALID == isValid.Value);
|
|
}
|
|
var res = 0;
|
|
if (queryData != null)
|
|
{
|
|
res = queryData.ToList().Count;
|
|
}
|
|
return res;
|
|
}
|
|
|
|
}
|
|
|
|
public List<WX_WORKWEIXIN> GetList(ref Pager page, string alias, decimal? auditStatus, decimal eid, string resID, decimal? isValid, string stime, string etime)
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
var queryData = db.WX_WORKWEIXIN.AsQueryable();
|
|
if (!string.IsNullOrWhiteSpace(alias))
|
|
{
|
|
alias = alias.Trim();
|
|
queryData = queryData.Where(m => m.ALIAS.Contains(alias));
|
|
}
|
|
if (auditStatus.HasValue)
|
|
{
|
|
queryData = queryData.Where(m => m.AUDITSTATAUS == auditStatus.Value);
|
|
}
|
|
if (eid > 0)
|
|
{
|
|
queryData = queryData.Where(m => m.EID == eid);
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(resID))
|
|
{
|
|
resID = resID.Trim();
|
|
queryData = queryData.Where(m => m.RESID == resID);
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(stime))
|
|
{
|
|
DateTime time1 = Convert.ToDateTime(stime);
|
|
queryData = queryData.Where(m => m.CTIME >= time1);
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(etime))
|
|
{
|
|
DateTime time2 = Convert.ToDateTime(etime).AddDays(1);
|
|
queryData = queryData.Where(m => m.CTIME < time2);
|
|
}
|
|
if (isValid.HasValue)
|
|
{
|
|
queryData = queryData.Where(m => m.ISVALID == isValid);
|
|
}
|
|
|
|
//var returnData = (from a in queryData
|
|
// join c in db.BAS_INNERUSER on a.INNERUSERID equals c.PKID
|
|
// join d in db.BAS_INNERUSERGROUP on c.PKID equals d.INNERUSERID
|
|
// join e in db.BAS_INNERGROUP on d.GID equals e.GID
|
|
// select new WX_WORKACCOUNT_INIT_Extend()
|
|
// {
|
|
// wx_WorkAccount_Init = a,
|
|
// Groupid = d.GID.Value,
|
|
// GroupName = e.GNAME,
|
|
// InneruserName = c.TRUENAME
|
|
// });
|
|
var returnData = queryData;
|
|
returnData = returnData.OrderBy(m => m.EID);
|
|
PagerUtil.SetPager<WX_WORKWEIXIN>(ref returnData, ref page);
|
|
return returnData.ToList();
|
|
}
|
|
}
|
|
|
|
public bool Update(ref ValidationErrors errors, decimal pkid, string alias, string mobile, string qrCodeUrl, decimal auditStatus, decimal qrCodeSize)
|
|
{
|
|
try
|
|
{
|
|
using (crmContext db = new crmContext())
|
|
{
|
|
WX_WORKWEIXIN entry = db.WX_WORKWEIXIN.FirstOrDefault(m => m.PKID == pkid);
|
|
if (entry == null)
|
|
{
|
|
errors.Add("找不到数据!");
|
|
return false;
|
|
}
|
|
if (entry.AUDITSTATAUS == 1)
|
|
{
|
|
errors.Add("审核通过的微信不能再进行修改");
|
|
return false;
|
|
}
|
|
entry.ALIAS = alias;
|
|
entry.MOBILE = mobile;
|
|
entry.AUDITSTATAUS = auditStatus;
|
|
if (!string.IsNullOrWhiteSpace(qrCodeUrl))
|
|
{
|
|
System.IO.File.Delete(System.Web.HttpContext.Current.Server.MapPath(entry.QRCODEURL));// 删除旧图片
|
|
entry.QRCODEURL = qrCodeUrl;
|
|
}
|
|
entry.QRCODESIZE = qrCodeSize;
|
|
return db.SaveChanges().GetResult();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
errors.Add(ex.Message);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public bool UpdateQRCode(ref ValidationErrors errors, decimal pkid, string qrCodeUrl, decimal qrCodeSize)
|
|
{
|
|
try
|
|
{
|
|
using (crmContext db = new crmContext())
|
|
{
|
|
WX_WORKWEIXIN entry = db.WX_WORKWEIXIN.FirstOrDefault(m => m.PKID == pkid);
|
|
if (entry == null)
|
|
{
|
|
errors.Add("找不到数据!");
|
|
return false;
|
|
}
|
|
|
|
if (!string.IsNullOrWhiteSpace(qrCodeUrl))
|
|
{
|
|
System.IO.File.Delete(System.Web.HttpContext.Current.Server.MapPath(entry.QRCODEURL));// 删除旧图片
|
|
entry.QRCODEURL = qrCodeUrl;
|
|
}
|
|
entry.QRCODESIZE = qrCodeSize;
|
|
return db.SaveChanges().GetResult();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
errors.Add(ex.Message);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public bool Audit(ref ValidationErrors errors, decimal pkid, decimal auditStatus, string auditMemo, string auditUser)
|
|
{
|
|
try
|
|
{
|
|
using (crmContext db = new crmContext())
|
|
{
|
|
WX_WORKWEIXIN entry = db.WX_WORKWEIXIN.FirstOrDefault(m => m.PKID == pkid);
|
|
if (entry == null)
|
|
{
|
|
errors.Add("找不到数据!");
|
|
return false;
|
|
}
|
|
if (auditStatus == -1 && string.IsNullOrWhiteSpace(auditMemo))
|
|
{
|
|
errors.Add("审核不通过的必须注明备注信息");
|
|
return false;
|
|
}
|
|
entry.AUDITSTATAUS = auditStatus;
|
|
entry.AUDITTIME = DateTime.Now;
|
|
entry.AUDITUSER = auditUser;
|
|
entry.AUDITMEMO = auditMemo;
|
|
//审核通过
|
|
if (auditStatus == 1)
|
|
{
|
|
entry.ISVALID = 1;
|
|
}
|
|
return db.SaveChanges().GetResult();
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
errors.Add(ex.Message);
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
}
|