Commit 0879f88c authored by liudong1993's avatar liudong1993

活动版块

parent 803f2e34
using VT.FW.DB;
using Mall.Common.Enum.User;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.Miai
{
/// <summary>
/// 活动表实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Miai_Activity
{
/// <summary>
/// Id
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 版块id
/// </summary>
public int ForumId { get; set; }
/// <summary>
/// 活动名称
/// </summary>
public string ActivityTitle
{
get;
set;
}
/// <summary>
/// 活动内容
/// </summary>
public string Content { get; set; }
/// <summary>
/// 图片列表
/// </summary>
public string Images { get; set; }
/// <summary>
/// 用户id
/// </summary>
public int UserId { get; set; }
/// <summary>
/// 报名截止日期
/// </summary>
public DateTime Deadline { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public int Status { get; set; }
/// <summary>
/// 商户号id
/// </summary>
public int TenantId
{
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateDate
{
get;
set;
}
/// <summary>
/// 修改时间
/// </summary>
public DateTime UpdateDate
{
get;
set;
}
}
}
using VT.FW.DB;
using Mall.Common.Enum.User;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.Miai
{
/// <summary>
/// 活动评论表实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Miai_ActivityDiscuss
{
/// <summary>
/// Id
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 活动id
/// </summary>
public int ActivityId { get; set; }
/// <summary>
/// 用户id
/// </summary>
public int UserId { get; set; }
/// <summary>
/// 内容
/// </summary>
public string Content { get; set; }
/// <summary>
/// 图片列表
/// </summary>
public string Images { get; set; }
/// <summary>
/// 回复内容id 1级=0
/// </summary>
public int ParentId { get; set; }
/// <summary>
/// 回复用户id
/// </summary>
public int ReplyUserId { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public int Status { get; set; }
/// <summary>
/// 商户号id
/// </summary>
public int TenantId
{
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateDate
{
get;
set;
}
/// <summary>
/// 修改时间
/// </summary>
public DateTime UpdateDate
{
get;
set;
}
}
}
using VT.FW.DB;
using Mall.Common.Enum.User;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Entity.Miai
{
/// <summary>
/// 活动表实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Miai_ActivityEnroll
{
/// <summary>
/// Id
/// </summary>
public int Id
{
get;
set;
}
/// <summary>
/// 活动id
/// </summary>
public int ActivityId { get; set; }
/// <summary>
/// 用户id
/// </summary>
public int UserId { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public int Status { get; set; }
/// <summary>
/// 商户号id
/// </summary>
public int TenantId
{
get;
set;
}
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateDate
{
get;
set;
}
/// <summary>
/// 修改时间
/// </summary>
public DateTime UpdateDate
{
get;
set;
}
}
}
using VT.FW.DB;
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.Miai;
namespace Mall.Model.Extend.Miai
{
/// <summary>
/// 活动评论表扩展实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Miai_ActivityDiscuss_Extend : RB_Miai_ActivityDiscuss
{
/// <summary>
/// 活动ids
/// </summary>
public string ActivityIds { get; set; }
/// <summary>
/// 用户名称
/// </summary>
public string UserName { get; set; }
/// <summary>
/// 用户头像
/// </summary>
public string Photo { get; set; }
/// <summary>
/// 回复某人
/// </summary>
public string ReplyUserName { get; set; }
/// <summary>
/// 回复列表
/// </summary>
public List<RB_Miai_ActivityDiscuss_Extend> ReplyList { get; set; }
/// <summary>
/// 回复数量
/// </summary>
public int ReplyNum { get; set; }
}
}
using VT.FW.DB;
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.Miai;
namespace Mall.Model.Extend.Miai
{
/// <summary>
/// 活动报名表扩展实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Miai_ActivityEnroll_Extend : RB_Miai_ActivityEnroll
{
}
}
using VT.FW.DB;
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.Miai;
namespace Mall.Model.Extend.Miai
{
/// <summary>
/// 活动表扩展实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Miai_Activity_Extend : RB_Miai_Activity
{
/// <summary>
/// 用户名称
/// </summary>
public string UserName { get; set; }
/// <summary>
/// 头像
/// </summary>
public string Photo { get; set; }
/// <summary>
/// 图片列表
/// </summary>
public List<string> ImageList { get; set; }
/// <summary>
/// 回复数量
/// </summary>
public int ReplyNum { get; set; }
}
}
......@@ -19,6 +19,9 @@ namespace Mall.Module.Miai
public class MiaiModule
{
private readonly RB_Miai_ForumRepository miai_ForumRepository = new RB_Miai_ForumRepository();
private readonly RB_Miai_ActivityRepository miai_ActivityRepository = new RB_Miai_ActivityRepository();
private readonly RB_Miai_ActivityEnrollRepository miai_ActivityEnrollRepository = new RB_Miai_ActivityEnrollRepository();
private readonly RB_Miai_ActivityDiscussRepository miai_ActivityDiscussRepository = new RB_Miai_ActivityDiscussRepository();
#region 活动版块
/// <summary>
......@@ -34,6 +37,190 @@ namespace Mall.Module.Miai
return miai_ForumRepository.GetPageList(pageIndex, pageSize, out count, dmodel);
}
/// <summary>
/// 获取活动版块列表
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Miai_Forum_Extend> GetForumList(RB_Miai_Forum_Extend demodel)
{
return miai_ForumRepository.GetList(demodel);
}
/// <summary>
/// 保存活动版块
/// </summary>
/// <param name="demodel"></param>
/// <returns></returns>
public bool SetForumInfo(RB_Miai_Forum_Extend demodel)
{
if (demodel.Id > 0)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_Miai_Forum_Extend.Name),demodel.Name},
{ nameof(RB_Miai_Forum_Extend.Icon),demodel.Icon},
{ nameof(RB_Miai_Forum_Extend.Sort),demodel.Sort},
{ nameof(RB_Miai_Forum_Extend.IsShow),demodel.IsShow},
{ nameof(RB_Miai_Forum_Extend.UpdateDate),demodel.UpdateDate},
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Miai_Forum_Extend.Id),
FiledValue=demodel.Id,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag = miai_ForumRepository.Update(keyValues, wheres);
return flag;
}
else {
bool flag = miai_ForumRepository.Insert(demodel) > 0;
return flag;
}
}
/// <summary>
/// 设置版块状态
/// </summary>
/// <param name="forumId"></param>
/// <param name="type"></param>
/// <returns></returns>
public bool SetForumState(int forumId, int type)
{
if (type == 1)
{
var model = miai_ForumRepository.GetEntity(forumId);
if (model == null) { return false; }
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_Miai_Forum_Extend.IsShow),model.IsShow==1?2:1},
{ nameof(RB_Miai_Forum_Extend.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Miai_Forum_Extend.Id),
FiledValue=forumId,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag = miai_ForumRepository.Update(keyValues, wheres);
return flag;
}
else {
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_Miai_Forum_Extend.Status),1},
{ nameof(RB_Miai_Forum_Extend.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_Miai_Forum_Extend.Id),
FiledValue=forumId,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag = miai_ForumRepository.Update(keyValues, wheres);
return flag;
}
}
/// <summary>
/// 获取活动分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Miai_Activity_Extend> GetActivityPageList(int pageIndex, int pageSize, out long count, RB_Miai_Activity_Extend demodel)
{
var list = miai_ActivityRepository.GetPageList(pageIndex, pageSize, out count, demodel);
if (list.Any())
{
string ActivityIds = string.Join(",", list.Select(x => x.Id));
//查询活动回复数量
var rlist = miai_ActivityDiscussRepository.GetActivityReplyNumList(ActivityIds);
foreach (var item in list)
{
item.ImageList = new List<string>();
if (!string.IsNullOrEmpty(item.Images) && item.Images != "[]")
{
item.ImageList = JsonConvert.DeserializeObject<List<string>>(item.Images);
}
item.ReplyNum = rlist.Where(x => x.ActivityId == item.Id).FirstOrDefault()?.ReplyNum ?? 0;
}
}
return list;
}
/// <summary>
/// 获取活动信息
/// </summary>
/// <param name="activityId"></param>
/// <param name="userInfo"></param>
/// <returns></returns>
public object GetActivityInfo(int activityId, AppletUserInfo userInfo)
{
var model = miai_ActivityRepository.GetEntity(activityId);
if (model == null) { return ""; }
//获取活动报名人数
int PeopleNum = miai_ActivityEnrollRepository.GetActivityEnrollNum(activityId);
//获取当前用户是否已报名
bool IsEnroll = miai_ActivityEnrollRepository.GetList(new RB_Miai_ActivityEnroll_Extend() { TenantId = model.TenantId, ActivityId = activityId, UserId = userInfo.UserId }).Any();
//查询活动回复数量
var rlist = miai_ActivityDiscussRepository.GetActivityReplyNumList(activityId.ToString());
return new
{
model.Id,
model.ActivityTitle,
model.Content,
ImageList = !string.IsNullOrEmpty(model.Images) ? JsonConvert.DeserializeObject<List<string>>(model.Images) : new List<string>() { },
model.UserId,
Deadline = model.Deadline.ToString("yyyy-MM-dd"),
CreateDate = model.CreateDate.ToString("yyyy-MM-dd HH:mm:ss"),
PeopleNum,
IsEnroll,
ReplyNum = rlist.FirstOrDefault()?.ReplyNum ?? 0
};
}
/// <summary>
/// 获取活动评论分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Miai_ActivityDiscuss_Extend> GetActivityDiscussPageList(int pageIndex, int pageSize, out long count, RB_Miai_ActivityDiscuss_Extend demodel)
{
demodel.ParentId = -1;//查询主评论
var list = miai_ActivityDiscussRepository.GetPageList(pageIndex, pageSize, out count, demodel);
if (list.Any()) {
//查询评论下 前几条回复记录
List<int> PidsList = list.Select(x => x.Id).ToList();
var clist = miai_ActivityDiscussRepository.GetActivityDiscussChildList(PidsList, 4);
//查询评论回复数量
var rlist = miai_ActivityDiscussRepository.GetDiscussReplyNumList(string.Join(",", PidsList));
foreach (var item in list) {
item.ReplyList = clist.Where(x => x.ParentId == item.Id).OrderBy(x => x.Id).ToList();
item.ReplyNum = rlist.Where(x => x.ParentId == item.Id).FirstOrDefault()?.ReplyNum ?? 0;
}
}
return list;
}
/// <summary>
/// 获取评论回复分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="demodel"></param>
/// <returns></returns>
public List<RB_Miai_ActivityDiscuss_Extend> GetActivityReplyPageList(int pageIndex, int pageSize, out long count, RB_Miai_ActivityDiscuss_Extend demodel)
{
var list = miai_ActivityDiscussRepository.GetPageList(pageIndex, pageSize, out count, demodel);
return list;
}
#endregion
......
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.Miai;
using Mall.Model.Extend.Miai;
using System.Linq;
namespace Mall.Repository.Miai
{
/// <summary>
/// 活动评论仓储层
/// </summary>
public class RB_Miai_ActivityDiscussRepository : BaseRepository<RB_Miai_ActivityDiscuss>
{
/// <summary>
/// 分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
public List<RB_Miai_ActivityDiscuss_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Miai_ActivityDiscuss_Extend dmodel)
{
string where = $" 1=1 and d.{nameof(RB_Miai_ActivityDiscuss_Extend.Status)}=0 ";
if (dmodel.TenantId > 0) {
where += $@" and d.{nameof(RB_Miai_ActivityDiscuss_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and d.{nameof(RB_Miai_ActivityDiscuss_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.ActivityId > 0) {
where += $@" and d.{nameof(RB_Miai_ActivityDiscuss_Extend.ActivityId)} ={dmodel.ActivityId}";
}
if (dmodel.UserId > 0)
{
where += $@" and d.{nameof(RB_Miai_ActivityDiscuss_Extend.UserId)} ={dmodel.UserId}";
}
if (dmodel.ParentId > 0)
{
where += $@" and d.{nameof(RB_Miai_ActivityDiscuss_Extend.ParentId)} ={dmodel.ParentId}";
}
if (dmodel.ParentId == -1)
{
where += $@" and d.{nameof(RB_Miai_ActivityDiscuss_Extend.ParentId)} =0";
}
string sql = $@"select d.*,u.Name as UserName,u.Photo,u1.Name as ReplyUserName from RB_Miai_ActivityDiscuss d
left join rb_member_user u on d.UserId = u.Id
left join rb_member_user u1 on d.ReplyUserId = u1.Id
where {where} order by d.Id asc";
return GetPage<RB_Miai_ActivityDiscuss_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Miai_ActivityDiscuss_Extend> GetList(RB_Miai_ActivityDiscuss_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Miai_ActivityDiscuss_Extend.Status)}=0 ";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityDiscuss_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityDiscuss_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.ActivityId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityDiscuss_Extend.ActivityId)} ={dmodel.ActivityId}";
}
if (!string.IsNullOrEmpty(dmodel.ActivityIds)) {
where += $@" and {nameof(RB_Miai_ActivityDiscuss_Extend.ActivityId)} in({dmodel.ActivityIds})";
}
if (dmodel.UserId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityDiscuss_Extend.UserId)} ={dmodel.UserId}";
}
if (dmodel.ParentId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityDiscuss_Extend.ParentId)} ={dmodel.ParentId}";
}
string sql = $@"select * from RB_Miai_ActivityDiscuss where {where} order by Id asc";
return Get<RB_Miai_ActivityDiscuss_Extend>(sql).ToList();
}
/// <summary>
/// 获取子集回复 前几条数据
/// </summary>
/// <param name="pidsList"></param>
/// <param name="number"></param>
/// <returns></returns>
public List<RB_Miai_ActivityDiscuss_Extend> GetActivityDiscussChildList(List<int> pidsList, int number)
{
int count = pidsList.Count();
string sql = "";
if (count == 1) {
//只有一条数据
sql = $@"select d.*,u.Name as UserName,u.Photo,u1.Name as ReplyUserName from RB_Miai_ActivityDiscuss d
left join rb_member_user u on d.UserId = u.Id
left join rb_member_user u1 on d.ReplyUserId = u1.Id
where d.Status =0 and d.ParentId ={pidsList.FirstOrDefault()} order by d.Id asc limit {number}";
}
for (var i = 0; i < count; i++) {
if (i == count - 1)
{
//最后一条
sql += $@"(select d.*,u.Name as UserName,u.Photo,u1.Name as ReplyUserName from RB_Miai_ActivityDiscuss d
left join rb_member_user u on d.UserId = u.Id
left join rb_member_user u1 on d.ReplyUserId = u1.Id
where d.Status =0 and d.ParentId ={pidsList[i]} order by d.Id asc limit {number})";
}
else {
sql += $@"(select d.*,u.Name as UserName,u.Photo,u1.Name as ReplyUserName from RB_Miai_ActivityDiscuss d
left join rb_member_user u on d.UserId = u.Id
left join rb_member_user u1 on d.ReplyUserId = u1.Id
where d.Status =0 and d.ParentId ={pidsList[i]} order by d.Id asc limit {number})
union
";
}
}
return Get<RB_Miai_ActivityDiscuss_Extend>(sql).ToList();
}
/// <summary>
/// 获取回复数量
/// </summary>
/// <param name="activityIds"></param>
/// <returns></returns>
public List<RB_Miai_ActivityDiscuss_Extend> GetActivityReplyNumList(string activityIds)
{
string sql = $@"select ActivityId,count(0) as ReplyNum from RB_Miai_ActivityDiscuss where Status =0 and ActivityId in({activityIds}) group by ActivityId";
return Get<RB_Miai_ActivityDiscuss_Extend>(sql).ToList();
}
/// <summary>
/// 获取评论回复数量
/// </summary>
/// <param name="pids"></param>
/// <returns></returns>
public List<RB_Miai_ActivityDiscuss_Extend> GetDiscussReplyNumList(string pids)
{
string sql = $@"select ParentId,count(0) as ReplyNum from RB_Miai_ActivityDiscuss where Status =0 and ParentId in({pids}) group by ParentId";
return Get<RB_Miai_ActivityDiscuss_Extend>(sql).ToList();
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.Miai;
using Mall.Model.Extend.Miai;
using System.Linq;
namespace Mall.Repository.Miai
{
/// <summary>
/// 活动仓储层
/// </summary>
public class RB_Miai_ActivityEnrollRepository : BaseRepository<RB_Miai_ActivityEnroll>
{
/// <summary>
/// 分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
public List<RB_Miai_ActivityEnroll_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Miai_ActivityEnroll_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Miai_ActivityEnroll_Extend.Status)}=0 ";
if (dmodel.TenantId > 0) {
where += $@" and {nameof(RB_Miai_ActivityEnroll_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityEnroll_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.ActivityId > 0) {
where += $@" and {nameof(RB_Miai_ActivityEnroll_Extend.ActivityId)} ={dmodel.ActivityId}";
}
if (dmodel.UserId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityEnroll_Extend.UserId)} ={dmodel.UserId}";
}
string sql = $@"select * from RB_Miai_ActivityEnroll where {where} order by Id desc";
return GetPage<RB_Miai_ActivityEnroll_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Miai_ActivityEnroll_Extend> GetList(RB_Miai_ActivityEnroll_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Miai_ActivityEnroll_Extend.Status)}=0 ";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityEnroll_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityEnroll_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.ActivityId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityEnroll_Extend.ActivityId)} ={dmodel.ActivityId}";
}
if (dmodel.UserId > 0)
{
where += $@" and {nameof(RB_Miai_ActivityEnroll_Extend.UserId)} ={dmodel.UserId}";
}
string sql = $@"select * from RB_Miai_ActivityEnroll where {where} order by Id desc";
return Get<RB_Miai_ActivityEnroll_Extend>(sql).ToList();
}
/// <summary>
/// 获取活动报名人数
/// </summary>
/// <param name="activityId"></param>
/// <returns></returns>
public int GetActivityEnrollNum(int activityId)
{
string sql = $@" select count(0) from RB_Miai_ActivityEnroll where Status =0 and ActivityId ={activityId}";
var obj = ExecuteScalar(sql);
return obj == null ? 0 : Convert.ToInt32(obj);
}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Model.Entity.Miai;
using Mall.Model.Extend.Miai;
using System.Linq;
namespace Mall.Repository.Miai
{
/// <summary>
/// 活动仓储层
/// </summary>
public class RB_Miai_ActivityRepository : BaseRepository<RB_Miai_Activity>
{
/// <summary>
/// 分页列表
/// </summary>
/// <param name="pageIndex">页码</param>
/// <param name="pageSize">每页显示条数</param>
/// <param name="rowCount">总条数</param>
/// <param name="dmodel">查询条件</param>
/// <returns></returns>
public List<RB_Miai_Activity_Extend> GetPageList(int pageIndex, int pageSize, out long rowCount, RB_Miai_Activity_Extend dmodel)
{
string where = $" 1=1 and a.{nameof(RB_Miai_Activity_Extend.Status)}=0 ";
if (dmodel.TenantId > 0) {
where += $@" and a.{nameof(RB_Miai_Activity_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and a.{nameof(RB_Miai_Activity_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (!string.IsNullOrEmpty(dmodel.ActivityTitle)) {
where += $@" and a.{nameof(RB_Miai_Activity_Extend.ActivityTitle)} like '%{dmodel.ActivityTitle}%'";
}
if (dmodel.ForumId > 0) {
where += $@" and a.{nameof(RB_Miai_Activity_Extend.ForumId)} ={dmodel.ForumId}";
}
if (dmodel.UserId > 0)
{
where += $@" and a.{nameof(RB_Miai_Activity_Extend.UserId)} ={dmodel.UserId}";
}
string sql = $@"select a.*,u.Name as UserName,u.Photo from RB_Miai_Activity a
left join rb_member_user u on a.UserId =u.Id
where {where} order by a.Id desc";
return GetPage<RB_Miai_Activity_Extend>(pageIndex, pageSize, out rowCount, sql).ToList();
}
/// <summary>
/// 获取列表
/// </summary>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_Miai_Activity_Extend> GetList(RB_Miai_Activity_Extend dmodel)
{
string where = $" 1=1 and {nameof(RB_Miai_Activity_Extend.Status)}=0 ";
if (dmodel.TenantId > 0)
{
where += $@" and {nameof(RB_Miai_Activity_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and {nameof(RB_Miai_Activity_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (!string.IsNullOrEmpty(dmodel.ActivityTitle))
{
where += $@" and {nameof(RB_Miai_Activity_Extend.ActivityTitle)} like '%{dmodel.ActivityTitle}%'";
}
if (dmodel.ForumId > 0)
{
where += $@" and {nameof(RB_Miai_Activity_Extend.ForumId)} ={dmodel.ForumId}";
}
if (dmodel.UserId > 0)
{
where += $@" and {nameof(RB_Miai_Activity_Extend.UserId)} ={dmodel.UserId}";
}
string sql = $@"select * from RB_Miai_Activity where {where} order by Id desc";
return Get<RB_Miai_Activity_Extend>(sql).ToList();
}
}
}
......@@ -65,7 +65,7 @@ namespace Mall.Repository.Miai
{
where += $@" and {nameof(RB_Miai_Forum_Extend.IsShow)} ={dmodel.IsShow}";
}
string sql = $@"select * from RB_Miai_Forum where {where} order by Id desc";
string sql = $@"select * from RB_Miai_Forum where {where} order by Sort asc,Id desc";
return Get<RB_Miai_Forum_Extend>(sql).ToList();
}
}
......
......@@ -13,6 +13,7 @@ using Newtonsoft.Json.Linq;
using Mall.Common;
using Mall.AOP;
using Mall.Module.Miai;
using Mall.Model.Extend.Miai;
namespace Mall.WebApi.Controllers.MallBase
{
......@@ -25,6 +26,156 @@ namespace Mall.WebApi.Controllers.MallBase
private readonly MiaiModule miaiModule = new MiaiModule();
#region 活动版块
/// <summary>
/// 获取活动版块列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetForumList()
{
var req = base.RequestParm;
var userInfo = AppletUserInfo;
RB_Miai_Forum_Extend demodel = JsonConvert.DeserializeObject<RB_Miai_Forum_Extend>(req.msg.ToString());
demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId;
demodel.IsShow = 1;
var list = miaiModule.GetForumList(demodel);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.Name,
x.Icon,
x.Sort,
x.IsShow,
CreateDate = x.CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
}));
}
/// <summary>
/// 获取活动分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetActivityPageList(){
var parms = RequestParm;
var userInfo = AppletUserInfo;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Miai_Activity_Extend demodel = JsonConvert.DeserializeObject<RB_Miai_Activity_Extend>(parms.msg.ToString());
if (demodel.ForumId <= 0) {
return ApiResult.ParamIsNull("请传递版块id");
}
demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId;
var list = miaiModule.GetActivityPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
x.ActivityTitle,
x.UserId,
x.UserName,
x.Photo,
x.Content,
x.ImageList,
x.ReplyNum,
Deadline = x.Deadline.ToString("yyyy-MM-dd"),
CreateDate = x.CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 获取活动信息(包含报名人数)
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetActivityInfo(){
var userInfo = AppletUserInfo;
var parms = JObject.Parse(RequestParm.msg.ToString());
int ActivityId = parms.GetInt("ActivityId", 0);
if (ActivityId <= 0) {
return ApiResult.ParamIsNull();
}
var obj = miaiModule.GetActivityInfo(ActivityId, userInfo);
return ApiResult.Success("", obj);
}
/// <summary>
/// 获取活动评论分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetActivityDiscussPageList()
{
var parms = RequestParm;
var userInfo = AppletUserInfo;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Miai_ActivityDiscuss_Extend demodel = JsonConvert.DeserializeObject<RB_Miai_ActivityDiscuss_Extend>(parms.msg.ToString());
if (demodel.ActivityId <= 0)
{
return ApiResult.ParamIsNull("请传递活动id");
}
demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId;
var list = miaiModule.GetActivityDiscussPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
x.UserId,
x.UserName,
x.Photo,
x.Content,
ReplyList = x.ReplyList.Select(z=>new {
z.Id,
z.UserId,
z.UserName,
z.Photo,
z.Content,
z.ReplyUserId,
z.ReplyUserName,
CreateDate = z.CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
}),
x.ReplyNum,
CreateDate = x.CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 获取活动回复分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetActivityReplyPageList(){
var parms = RequestParm;
var userInfo = AppletUserInfo;
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
RB_Miai_ActivityDiscuss_Extend demodel = JsonConvert.DeserializeObject<RB_Miai_ActivityDiscuss_Extend>(parms.msg.ToString());
if (demodel.ParentId <= 0)
{
return ApiResult.ParamIsNull("请传递上级id");
}
demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId;
var list = miaiModule.GetActivityReplyPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list.Select(x => new
{
x.Id,
x.UserId,
x.UserName,
x.Photo,
x.Content,
x.ReplyUserId,
x.ReplyUserName,
CreateDate = x.CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
});
return ApiResult.Success("", pagelist);
}
#endregion
}
......
......@@ -41,9 +41,71 @@ namespace Mall.WebApi.Controllers.MallBase
demodel.MallBaseId = req.MallBaseId;
var list = miaiModule.GetForumPageList(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list;
pagelist.pageData = list.Select(x => new
{
x.Id,
x.Name,
x.Icon,
x.Sort,
x.IsShow,
CreateDate = x.CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
});
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 设置版块
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetForumInfo() {
var req = base.RequestParm;
RB_Miai_Forum_Extend demodel = JsonConvert.DeserializeObject<RB_Miai_Forum_Extend>(req.msg.ToString());
if (string.IsNullOrEmpty(demodel.Name))
{
return ApiResult.ParamIsNull("请输入版块名称");
}
if (string.IsNullOrEmpty(demodel.Icon)) {
return ApiResult.ParamIsNull("请选择版块图标");
}
demodel.TenantId = Convert.ToInt32(req.uid);
demodel.MallBaseId = req.MallBaseId;
demodel.IsShow = demodel.IsShow == 0 ? 1 : demodel.IsShow;
demodel.Status = 0;
demodel.CreateDate = DateTime.Now;
demodel.UpdateDate = DateTime.Now;
bool flag = miaiModule.SetForumInfo(demodel);
if (flag)
{
return ApiResult.Success();
}
else {
return ApiResult.Failed();
}
}
/// <summary>
/// 设置版块状态
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetForumState() {
var req = base.RequestParm;
var parms = JObject.Parse(req.msg.ToString());
int ForumId = parms.GetInt("ForumId", 0);
int Type = parms.GetInt("Type", 1);// 类型 1显示/不显示 2删除
bool flag = miaiModule.SetForumState(ForumId, Type);
if (flag)
{
return ApiResult.Success();
}
else
{
return ApiResult.Failed();
}
}
#endregion
......
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