Commit 96f0a75b authored by 黄奎's avatar 黄奎

新增留言接口

parent 6922109e
using Mall.Common.Enum;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Mall.Model.Entity.Product
{
/// <summary>
/// 商品留言表实体
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Goods_Leavemessage
{
/// <summary>
/// 主键编号
/// </summary>
public int Id { get; set; }
/// <summary>
/// 商品编号
/// </summary>
public int GoodsId { get; set; }
/// <summary>
/// 用户编号
/// </summary>
public int UserId { get; set; }
/// <summary>
/// 用户名称
/// </summary>
public string UserName { get; set; }
/// <summary>
/// 用户头像
/// </summary>
public string UserPhoto { get; set; }
/// <summary>
/// 留言内容
/// </summary>
public string Content { get; set; }
/// <summary>
/// 商户号id
/// </summary>
public int TenantId { get; set; }
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 报名时间
/// </summary>
public DateTime CreateTime { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public DateStateEnum Status { get; set; }
}
}
using Mall.Model.Entity.Product;
using System;
using System.Collections.Generic;
using System.Text;
namespace Mall.Model.Extend.Product
{
/// <summary>
/// 商品留言表扩展实体
/// </summary>
public class RB_Goods_Leavemessage_Extend: RB_Goods_Leavemessage
{
}
}
using Mall.Common.Enum;
using Mall.Model.Extend.Product;
using Mall.Repository.Product;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Mall.Module.Product
{
/// <summary>
/// 商品留言处理类
/// </summary>
public class GoodsLeavemessageModule
{
/// <summary>
/// 商品留言仓储层对象
/// </summary>
private readonly RB_Goods_LeavemessageRepository goods_LeavemessageRepository = new RB_Goods_LeavemessageRepository();
/// <summary>
/// 获取商品留言分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Goods_Leavemessage_Extend> GetGoodsLeavemessagePageModule(int pageIndex, int pageSize, out long rowsCount, RB_Goods_Leavemessage_Extend query)
{
return goods_LeavemessageRepository.GetGoodsLeavemessagePageRepository(pageIndex, pageSize, out rowsCount, query);
}
/// <summary>
/// 新增商品留言
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public bool SetGoodsLeavemessageModule(RB_Goods_Leavemessage_Extend model)
{
var newId = goods_LeavemessageRepository.Insert(model);
model.Id = newId;
return newId > 0;
}
/// <summary>
/// 删除商品留言
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public bool RemoveGoodsLeavemessageModule(int Id)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Goods_Leavemessage_Extend.Status),(int)DateStateEnum.Delete}
};
return goods_LeavemessageRepository.Update(fileds, new WhereHelper(nameof(RB_Goods_Leavemessage_Extend.Id), Id));
}
}
}
using Mall.Common.Enum;
using Mall.Model.Entity.Product;
using Mall.Model.Extend.Product;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB.Dapper;
namespace Mall.Repository.Product
{
/// <summary>
/// 商品留言表仓储层
/// </summary>
public class RB_Goods_LeavemessageRepository:BaseRepository<RB_Goods_Leavemessage>
{
/// <summary>
/// 获取商品留言分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Goods_Leavemessage_Extend> GetGoodsLeavemessagePageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Goods_Leavemessage_Extend query)
{
rowsCount = 0;
DynamicParameters parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Goods_Leavemessage AS A
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Goods_Leavemessage_Extend.Status), (int)DateStateEnum.Normal);
if (query == null)
{
return new List<RB_Goods_Leavemessage_Extend>();
}
else
{
if (query.TenantId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Goods_Leavemessage_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Goods_Leavemessage_Extend.MallBaseId), query.MallBaseId);
}
if (!string.IsNullOrEmpty(query.Content))
{
builder.AppendFormat(" AND A.{0} LIKE @Name ", nameof(RB_Goods_Leavemessage_Extend.Content));
parameters.Add("Name", "%" + query.Content.Trim() + "%");
}
if (query.GoodsId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Goods_Leavemessage_Extend.GoodsId), query.GoodsId);
}
}
return GetPage<RB_Goods_Leavemessage_Extend>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
}
}
...@@ -30,6 +30,11 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -30,6 +30,11 @@ namespace Mall.WebApi.Controllers.MallBase
private readonly ProductModule productModule = new ProductModule(); private readonly ProductModule productModule = new ProductModule();
private readonly OrderModule_V2 orderModule = new OrderModule_V2(); private readonly OrderModule_V2 orderModule = new OrderModule_V2();
/// <summary>
/// 商品留言处理类对象
/// </summary>
private readonly GoodsLeavemessageModule goodsLeavemessage = new GoodsLeavemessageModule();
#region 商品分类 #region 商品分类
/// <summary> /// <summary>
...@@ -226,11 +231,12 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -226,11 +231,12 @@ namespace Mall.WebApi.Controllers.MallBase
{ {
memberGrade = productModule.GetMemberGradeList(new RB_Member_Grade_Extend() { Id = userModel.MemberGrade ?? 0, Enabled = 1, TenantId = demodel.TenantId, MallBaseId = demodel.MallBaseId }).FirstOrDefault(); memberGrade = productModule.GetMemberGradeList(new RB_Member_Grade_Extend() { Id = userModel.MemberGrade ?? 0, Enabled = 1, TenantId = demodel.TenantId, MallBaseId = demodel.MallBaseId }).FirstOrDefault();
} }
if (demodel.SmallShopsId == 0) { if (demodel.SmallShopsId == 0)
{
demodel.SmallShopsId = userModel.SmallShopId; demodel.SmallShopsId = userModel.SmallShopId;
} }
} }
var list = productModule.GetAppletGoodsPageListForZY(pagelist.pageIndex, pagelist.pageSize, out long count, demodel,IsGetShare:IsGetShare,GoodsClassify: GoodsClassify); var list = productModule.GetAppletGoodsPageListForZY(pagelist.pageIndex, pagelist.pageSize, out long count, demodel, IsGetShare: IsGetShare, GoodsClassify: GoodsClassify);
List<object> RList = new List<object>(); List<object> RList = new List<object>();
if (list.Any()) if (list.Any())
{ {
...@@ -361,7 +367,7 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -361,7 +367,7 @@ namespace Mall.WebApi.Controllers.MallBase
id = model.Id, id = model.Id,
sign = "", sign = "",
name = model.Name, name = model.Name,
subName= model.SubName, subName = model.SubName,
cover_pic = model.CoverImage, cover_pic = model.CoverImage,
video_url = model.VideoAddress, video_url = model.VideoAddress,
original_price = model.OriginalPrice, original_price = model.OriginalPrice,
...@@ -391,12 +397,12 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -391,12 +397,12 @@ namespace Mall.WebApi.Controllers.MallBase
attr = priceList, attr = priceList,
goods_stock = model.InventoryNum, goods_stock = model.InventoryNum,
goods_num = model.InventoryNum, goods_num = model.InventoryNum,
marketingLogo= model.MarketingLogo, marketingLogo = model.MarketingLogo,
video_type=model.VideoType, video_type = model.VideoType,
erpgoodobj=model.ERPGoodObj, erpgoodobj = model.ERPGoodObj,
isChooseServicePerson= model.IsChooseServicePerson, isChooseServicePerson = model.IsChooseServicePerson,
depositMoney= model.DepositMoney, depositMoney = model.DepositMoney,
goodsclassify= model.GoodsClassify goodsclassify = model.GoodsClassify
}); });
} }
} }
...@@ -449,12 +455,12 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -449,12 +455,12 @@ namespace Mall.WebApi.Controllers.MallBase
int servicePersionId = prams.GetInt("servicePersionId", 0); int servicePersionId = prams.GetInt("servicePersionId", 0);
//选择的日期 //选择的日期
string chooseDate = prams.GetStringValue("chooseDate"); string chooseDate = prams.GetStringValue("chooseDate");
if (StoreId<=0 || GoodsId<=0) if (StoreId <= 0 || GoodsId <= 0)
{ {
return ApiResult.ParamIsNull(message:"请选择门店"); return ApiResult.ParamIsNull(message: "请选择门店");
} }
int UserId = req.UserId; int UserId = req.UserId;
object Robj = productModule.GetAppletOfflineGoodsInfoModule(GoodsId, UserId, req.SmallShopsId, req.TenantId, req.MallBaseId, storeId: StoreId,servicePersionId:servicePersionId,chooseDate:chooseDate); object Robj = productModule.GetAppletOfflineGoodsInfoModule(GoodsId, UserId, req.SmallShopsId, req.TenantId, req.MallBaseId, storeId: StoreId, servicePersionId: servicePersionId, chooseDate: chooseDate);
return ApiResult.Success("", Robj); return ApiResult.Success("", Robj);
} }
...@@ -542,7 +548,7 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -542,7 +548,7 @@ namespace Mall.WebApi.Controllers.MallBase
} }
JObject prams = JObject.Parse(req.msg.ToString()); JObject prams = JObject.Parse(req.msg.ToString());
int StoreId = prams.GetInt("StoreId", 0); int StoreId = prams.GetInt("StoreId", 0);
string categoryIds= prams.GetStringValue("categoryIds"); string categoryIds = prams.GetStringValue("categoryIds");
if (StoreId <= 0) if (StoreId <= 0)
{ {
return ApiResult.ParamIsNull(message: "请选择门店"); return ApiResult.ParamIsNull(message: "请选择门店");
...@@ -1146,7 +1152,8 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -1146,7 +1152,8 @@ namespace Mall.WebApi.Controllers.MallBase
{ {
memberGrade = productModule.GetMemberGradeList(new RB_Member_Grade_Extend() { Id = userModel.MemberGrade ?? 0, Enabled = 1, TenantId = demodel.TenantId, MallBaseId = demodel.MallBaseId }).FirstOrDefault(); memberGrade = productModule.GetMemberGradeList(new RB_Member_Grade_Extend() { Id = userModel.MemberGrade ?? 0, Enabled = 1, TenantId = demodel.TenantId, MallBaseId = demodel.MallBaseId }).FirstOrDefault();
} }
if (demodel.SmallShopsId == 0) { if (demodel.SmallShopsId == 0)
{
demodel.SmallShopsId = userModel.SmallShopId; demodel.SmallShopsId = userModel.SmallShopId;
} }
} }
...@@ -1376,5 +1383,75 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -1376,5 +1383,75 @@ namespace Mall.WebApi.Controllers.MallBase
return orderModule.GetAppletMyOrderAgentInfo(OrderId); return orderModule.GetAppletMyOrderAgentInfo(OrderId);
} }
#endregion #endregion
#region 商品留言管理
/// <summary>
/// 获取商品留言分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetGoodsLeaveMessagePage(object requestMsg)
{
var parms = JsonConvert.DeserializeObject<RequestParm>(requestMsg.ToString());
if (parms.MallBaseId <= 0)
{
return ApiResult.ParamIsNull();
}
ResultPageModel pagelist = JsonConvert.DeserializeObject<ResultPageModel>(parms.msg.ToString());
var demodel = JsonConvert.DeserializeObject<RB_Goods_Leavemessage_Extend>(parms.msg.ToString());
demodel.TenantId = parms.TenantId;
demodel.MallBaseId = parms.MallBaseId;
var list = goodsLeavemessage.GetGoodsLeavemessagePageModule(pagelist.pageIndex, pagelist.pageSize, out long count, demodel);
pagelist.count = Convert.ToInt32(count);
pagelist.pageData = list;
return ApiResult.Success("", pagelist);
}
/// <summary>
/// 新增商品留言
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetGoodsLeavemessage(object requestMsg)
{
var parms = JsonConvert.DeserializeObject<RequestParm>(requestMsg.ToString());
if (parms.MallBaseId <= 0)
{
return ApiResult.ParamIsNull();
}
var userModel = productModule.GetMemberUserInfo(parms.UserId);
var demodel = JsonConvert.DeserializeObject<RB_Goods_Leavemessage_Extend>(parms.msg.ToString());
demodel.TenantId = parms.TenantId;
demodel.MallBaseId = parms.MallBaseId;
demodel.CreateTime = DateTime.Now;
demodel.UserId = parms.UserId;
demodel.UserName = userModel?.Name ?? "";
demodel.UserPhoto = userModel?.Photo ?? "";
var flag = goodsLeavemessage.SetGoodsLeavemessageModule(demodel);
return flag ? ApiResult.Success("") : ApiResult.Failed();
}
/// <summary>
/// 删除商品评论
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult RemoveGoodsLeavemessage(object requestMsg)
{
var req = JsonConvert.DeserializeObject<RequestParm>(requestMsg.ToString());
if (req.MallBaseId <= 0)
{
return ApiResult.ParamIsNull();
}
JObject parms = JObject.Parse(req.msg.ToString());
int Id = parms.GetInt("Id", 0);
if (Id <= 0)
{
return ApiResult.ParamIsNull();
}
var flag = goodsLeavemessage.RemoveGoodsLeavemessageModule(Id);
return flag ? ApiResult.Success("") : ApiResult.Failed();
}
#endregion
} }
} }
\ No newline at end of file
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