77 lines
3.3 KiB
C#
77 lines
3.3 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Data.OracleClient;
|
|
using System.Linq;
|
|
using WX.CRM.Common;
|
|
using WX.CRM.DAL;
|
|
using WX.CRM.IBLL.Res;
|
|
using WX.CRM.Model.Entity;
|
|
|
|
namespace WX.CRM.BLL.Res
|
|
{
|
|
public class RES_MYALLOCATERES_ACT_BL : DbContextRepository<RES_MYALLOCATERES_ACT>, IRES_MYALLOCATERES_ACT
|
|
{
|
|
public List<RES_MYALLOCATERES_ACT_VIEW> List(int top = 500)
|
|
{
|
|
using (var db = new crmContext())
|
|
{
|
|
var sql = $@"SELECT x.ID,x.RESID,
|
|
x.USERNAME,
|
|
x.UNIONID,
|
|
x.EID ,
|
|
x.CHANNEL,
|
|
x.CTIME,
|
|
x.ACT,
|
|
x.ISEXE,
|
|
x.OLDEID
|
|
FROM (
|
|
SELECT a.ID,a.RESID,a.EID,a.CHANNEL,a.CTIME,a.ACT,a.ISEXE,a.OLDEID,b.USERNAME,b.REGDATE,b.UNIONID
|
|
FROM RES_MYALLOCATERES_ACT a
|
|
LEFT OUTER JOIN SOFT_USER b ON a.RESID = b.RESID
|
|
WHERE a.ISEXE=0 AND a.ACT<>'None'
|
|
ORDER BY a.ID ASC
|
|
)x
|
|
WHERE (ROWNUM <= ({top}))";
|
|
OracleParameter[] p = { };
|
|
var table = OracleHelper.DataQueray(CommandType.Text, sql, p);
|
|
//处理外部联系人关系数据
|
|
List<RES_MYALLOCATERES_ACT_VIEW> res = new List<RES_MYALLOCATERES_ACT_VIEW>();
|
|
foreach (DataRow row in table.Tables[0].Rows)
|
|
{
|
|
var resid = row["RESID"].ToString();
|
|
try
|
|
{
|
|
RES_MYALLOCATERES_ACT_VIEW item = new RES_MYALLOCATERES_ACT_VIEW();
|
|
item.ID = Convert.ToDecimal(row["ID"]);
|
|
item.RESID = row["RESID"].ToString();
|
|
item.SOFTUSERNAME = row["USERNAME"].ToString();
|
|
item.UNIONID = row["UNIONID"].ToString();
|
|
item.EID = Convert.ToDecimal(row["EID"]);
|
|
item.CHANNEL = Convert.ToDecimal(row["CHANNEL"].ToString());
|
|
item.CTIME = Convert.ToDateTime(row["CTIME"].ToString());
|
|
item.ACT = row["ACT"].ToString();
|
|
item.ISEXE = Convert.ToDecimal(row["ISEXE"].ToString());
|
|
if (row["OLDEID"] != DBNull.Value)
|
|
{
|
|
item.OLDEID = Convert.ToDecimal(row["OLDEID"].ToString());
|
|
}
|
|
|
|
res.Add(item);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
LogHelper.Error("更新上传关系记录失败:" + resid + "---" + ex.ToString());
|
|
}
|
|
}
|
|
var resids = res.Select(n => n.RESID).Distinct().ToList();
|
|
var customerList = db.RES_CUSTOMER.Where(n => resids.Contains(n.RESID)).ToList();
|
|
foreach (var item in res.ToList())
|
|
{
|
|
item.UMID = customerList.FirstOrDefault(n => n.RESID == item.RESID)?.UMID;
|
|
}
|
|
return res.ToList();
|
|
}
|
|
}
|
|
}
|
|
} |