Commit 63d56a9c authored by liudong1993's avatar liudong1993

消息中心

parent 75d62059
......@@ -17,5 +17,41 @@ namespace Mall.Model.Extend.Miai
/// 查询类型 1圈子 2拼拼plus 3访客 4系统消息
/// </summary>
public int SelectType { get; set; }
/// <summary>
/// 访客类型 1谁看过我 2我看过谁
/// </summary>
public int VsisitorType { get; set; }
/// <summary>
/// 回复字段
/// </summary>
public object ReplyContent { get; set; }
/// <summary>
/// 总数量
/// </summary>
public int TCount { get; set; }
/// <summary>
/// 人数
/// </summary>
public int PeopleNum { get; set; }
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 真实名称
/// </summary>
public string RealName { get; set; }
/// <summary>
/// 头像
/// </summary>
public string Photo { get; set; }
/// <summary>
/// 性别
/// </summary>
public int Sex { get; set; }
}
}
......@@ -15,6 +15,11 @@ namespace Mall.Model.Extend.TradePavilion
/// </summary>
public string ActivityTypeName { get; set; }
/// <summary>
/// 活动ids
/// </summary>
public string ActivityIds { get; set; }
/// <summary>
/// 开始时间字符串
/// </summary>
......
......@@ -67,6 +67,16 @@ namespace Mall.Module.Miai
return miai_MessageRepository.GetMessageNum(dmodel);
}
/// <summary>
/// 获取最新的一条记录
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public RB_Miai_Message_Extend GetNewMessageInfo(RB_Miai_Message_Extend dmodel)
{
return miai_MessageRepository.GetNewMessageInfo(dmodel);
}
/// <summary>
/// 删除消息
/// </summary>
......@@ -93,10 +103,22 @@ namespace Mall.Module.Miai
/// <param name="type"></param>
/// <param name="userInfo"></param>
/// <returns></returns>
internal bool DelMiaiMessageInfoBatch(int type, AppletUserInfo userInfo)
internal bool DelMiaiMessageInfoBatch(string type, AppletUserInfo userInfo)
{
return miai_MessageRepository.DelMiaiMessageInfoBatch(type, userInfo.UserId);
}
/// <summary>
/// 获取访客统计
/// </summary>
/// <param name="userId"></param>
/// <param name="tenantId"></param>
/// <param name="mallBaseId"></param>
/// <returns></returns>
internal RB_Miai_Message_Extend GetMiaiMessageVisitorStatistics(int userId, int type, int tenantId, int mallBaseId)
{
return miai_MessageRepository.GetMiaiMessageVisitorStatistics(userId, type, tenantId, mallBaseId);
}
#endregion
}
}
This diff is collapsed.
......@@ -39,6 +39,10 @@ namespace Mall.Repository.Miai
{
where += $@" and {nameof(RB_Miai_Message_Extend.UserId)} ={dmodel.UserId}";
}
if (dmodel.CreateBy > 0)
{
where += $@" and {nameof(RB_Miai_Message_Extend.CreateBy)} ={dmodel.CreateBy}";
}
if (dmodel.Type > 0)
{
where += $@" and {nameof(RB_Miai_Message_Extend.Type)} ={(int)dmodel.Type}";
......@@ -105,15 +109,41 @@ namespace Mall.Repository.Miai
/// <param name="type"></param>
/// <param name="userId"></param>
/// <returns></returns>
public bool DelMiaiMessageInfoBatch(int type, int userId)
public bool DelMiaiMessageInfoBatch(string type, int userId)
{
string sql = $@"update RB_Miai_Message set Status =1 where UserId ={userId}";
if (type > 0) {
sql += $@" and Type ={type}";
if (!string.IsNullOrEmpty(type)) {
sql += $@" and Type in({type})";
}
return Execute(sql) > 0;
}
/// <summary>
/// 获取访客统计
/// </summary>
/// <param name="userId"></param>
/// <param name="tenantId"></param>
/// <param name="mallBaseId"></param>
/// <returns></returns>
public RB_Miai_Message_Extend GetMiaiMessageVisitorStatistics(int userId, int type, int tenantId, int mallBaseId)
{
if (type == 1)
{
//谁看过我的
string sql = $@" SELECT
(SELECT COUNT(0) FROM rb_miai_message WHERE `Status` =0 and UserId = {userId} and CreateDate >= '{DateTime.Now.ToString("yyyy-MM-dd")}' and CreateDate <= '{DateTime.Now.ToString("yyyy-MM-dd")} 23:59:59') AS TCount,
(SELECT COUNT(CreateBy) FROM rb_miai_message WHERE `Status` =0 and UserId = {userId} and CreateDate >= '{DateTime.Now.ToString("yyyy-MM-dd")}' and CreateDate <= '{DateTime.Now.ToString("yyyy-MM-dd")} 23:59:59' GROUP BY CreateBy) AS PeopleNum ";
return Get<RB_Miai_Message_Extend>(sql).FirstOrDefault();
}
else {
//我看过谁的
string sql = $@" SELECT
(SELECT COUNT(0) FROM rb_miai_message WHERE `Status` =0 and CreateBy = {userId} and CreateDate >= '{DateTime.Now.ToString("yyyy-MM-dd")}' and CreateDate <= '{DateTime.Now.ToString("yyyy-MM-dd")} 23:59:59') AS TCount,
(SELECT COUNT(UserId) FROM rb_miai_message WHERE `Status` =0 and CreateBy = {userId} and CreateDate >= '{DateTime.Now.ToString("yyyy-MM-dd")}' and CreateDate <= '{DateTime.Now.ToString("yyyy-MM-dd")} 23:59:59' GROUP BY UserId) AS PeopleNum ";
return Get<RB_Miai_Message_Extend>(sql).FirstOrDefault();
}
}
/// <summary>
/// 获取消息数量
/// </summary>
......@@ -165,5 +195,55 @@ namespace Mall.Repository.Miai
var obj = ExecuteScalar(sql);
return obj == null ? 0 : Convert.ToInt32(obj);
}
/// <summary>
/// 获取最新的一条记录
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public RB_Miai_Message_Extend GetNewMessageInfo(RB_Miai_Message_Extend dmodel) {
string where = $" 1=1 ";
if (dmodel.Status >= 0)
{
where += $@" and {nameof(RB_Miai_Message_Extend.Status)}={dmodel.Status}";
}
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Miai_Message_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Miai_Message_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.UserId > 0)
{
where += $@" and {nameof(RB_Miai_Message_Extend.UserId)} ={dmodel.UserId}";
}
if (dmodel.Type > 0)
{
where += $@" and {nameof(RB_Miai_Message_Extend.Type)} ={(int)dmodel.Type}";
}
if (dmodel.SelectType > 0)
{
switch (dmodel.SelectType)
{
case 1:
where += $@" and Type in (1,2)";
break;
case 2:
where += $@" and Type in (3,4,5,6)";
break;
case 3:
where += $@" and Type in (7)";
break;
case 4:
where += $@" and Type in (8,9)";
break;
}
}
string sql = $@"select * from RB_Miai_Message where {where} order by Id desc limit 1";
return Get<RB_Miai_Message_Extend>(sql).FirstOrDefault();
}
}
}
......@@ -114,5 +114,44 @@ WHERE 1=1
builder.AppendFormat(" ORDER BY A.{0} DESC ", nameof(RB_Commerce_Activity_Extend.Id));
return GetPage<RB_Commerce_Activity_Extend>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Commerce_Activity_Extend> GetList(RB_Commerce_Activity_Extend query)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.* FROM rb_commerce_activity AS A
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Commerce_Activity_Extend.Status), (int)DateStateEnum.Normal);
if (query == null)
{
return new List<RB_Commerce_Activity_Extend>();
}
else
{
if (query.TenantId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Commerce_Activity_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Commerce_Activity_Extend.MallBaseId), query.MallBaseId);
}
if (query.ActivityType > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Commerce_Activity_Extend.ActivityType), query.ActivityType);
}
if (!string.IsNullOrEmpty(query.ActivityIds))
{
builder.AppendFormat(" AND A.{0} in({1}) ", nameof(RB_Commerce_Activity_Extend.Id), query.ActivityIds);
}
}
return Get<RB_Commerce_Activity_Extend>(builder.ToString()).ToList();
}
}
}
......@@ -612,6 +612,68 @@ namespace Mall.WebApi.Controllers.MallBase
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 获取消息中心
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMiaiMessageCenter()
{
var userInfo = AppletUserInfo;
var list = miaiModule.GetMiaiMessageCenter(userInfo.UserId, userInfo.TenantId, userInfo.MallBaseId);
return ApiResult.Success("", list);
}
/// <summary>
/// 获取访客统计
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMiaiMessageVisitorStatistics() {
var userInfo = AppletUserInfo;
var parms = JObject.Parse(RequestParm.msg.ToString());
int Type = parms.GetInt("Type", 1);// 类型 1谁看过我 2我看过谁
var list = miaiModule.GetMiaiMessageVisitorStatistics(userInfo.UserId, Type, userInfo.TenantId, userInfo.MallBaseId);
return ApiResult.Success("", list);
}
/// <summary>
/// 获取访客分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetMiaiMessageVisitorPageList() {
var parms = RequestParm;
var userInfo = AppletUserInfo;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Miai_Message_Extend demodel = JsonConvert.DeserializeObject<RB_Miai_Message_Extend>(parms.msg.ToString());
demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId;
demodel.SelectType = 3;
if (demodel.VsisitorType == 1)
{
demodel.UserId = userInfo.UserId;
}
else {
demodel.CreateBy = userInfo.UserId;
}
var list = miaiModule.GetMiaiMessageVisitorPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
UserId = demodel.VsisitorType == 1 ? x.CreateBy : x.UserId,
UserName = x.Name,
x.RealName,
x.Photo,
x.Sex,
x.Status,
CreateDate = x.CreateDate.ToString("yyyy-MM-dd HH:mm")
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 删除单条消息
/// </summary>
......@@ -636,7 +698,8 @@ namespace Mall.WebApi.Controllers.MallBase
{
var userInfo = AppletUserInfo;
JObject parms = JObject.Parse(RequestParm.msg.ToString());
int Type = parms.GetInt("Type", 0);// 0表示 清除所有的
string Type = parms.GetStringValue("TypeIds");// 0表示 清除所有的
if (string.IsNullOrEmpty(Type)) { return ApiResult.ParamIsNull(); }
bool flag = miaiModule.DelMiaiMessageInfoBatch(Type, userInfo);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment