Commit 1a6d7471 authored by 吴春's avatar 吴春

解决冲突

parents 80bbcca5 de76161c
using Mall.Common.Plugin;
namespace Mall.Common.Enum.TradePavilion
{
/// <summary>
///自定义表单枚举
/// </summary>
public enum CustomFormTypeEnum
{
/// <summary>
/// 招引贡献
/// </summary>
[EnumField("招引贡献")]
ZYGX = 1,
/// <summary>
/// 首展
/// </summary>
[EnumField("首展")]
SZ = 2,
/// <summary>
/// 首秀
/// </summary>
[EnumField("首秀")]
SX = 3,
/// <summary>
/// 首发
/// </summary>
[EnumField("首发")]
SF = 4,
}
}
using Mall.Common.Enum;
using Mall.Common.Enum.TradePavilion;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.DB;
namespace Mall.Model.Entity.TradePavilion
{
/// <summary>
/// 自定义表单实体类
/// </summary>
[Serializable]
[DB(ConnectionName = "DefaultConnection")]
public class RB_Custom_Form
{
/// <summary>
/// 主键
/// </summary>
public int Id { get; set; }
/// <summary>
/// 表单名称
/// </summary>
public string FormName { get; set; }
/// <summary>
/// 表单类型(见枚举)
/// </summary>
public CustomFormTypeEnum FormType { get; set; }
/// <summary>
/// 表单内容
/// </summary>
public string FormData { get; set; }
/// <summary>
/// 商户号id
/// </summary>
public int TenantId { get; set; }
/// <summary>
/// 小程序id
/// </summary>
public int MallBaseId { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime CreateDate { get; set; }
/// <summary>
/// 修改人
/// </summary>
public int UpdateBy { get; set; }
/// <summary>
/// 修改时间
/// </summary>
public DateTime UpdateDate { get; set; }
/// <summary>
/// 删除状态
/// </summary>
public DateStateEnum Status { get; set; }
}
}
...@@ -25,7 +25,7 @@ namespace Mall.Model.Entity.TradePavilion ...@@ -25,7 +25,7 @@ namespace Mall.Model.Entity.TradePavilion
public ListTypeEnum ListType { get; set; } public ListTypeEnum ListType { get; set; }
/// <summary> /// <summary>
/// 面向群体 枚举 /// 面向群体 多选,英文逗号分隔 枚举
/// </summary> /// </summary>
public string ObjectTypeIds { get; set; } public string ObjectTypeIds { get; set; }
...@@ -47,13 +47,18 @@ namespace Mall.Model.Entity.TradePavilion ...@@ -47,13 +47,18 @@ namespace Mall.Model.Entity.TradePavilion
/// <summary> /// <summary>
/// 报名截止日期 /// 报名截止日期
/// </summary> /// </summary>
public DateTime DeadlineDate { get; set; } public DateTime EndDate { get; set; }
/// <summary> /// <summary>
/// 公示日期 /// 报名开始日期
/// </summary> /// </summary>
public DateTime StartDate { get; set; } public DateTime StartDate { get; set; }
/// <summary>
/// 放榜日期
/// </summary>
public DateTime FinishDate { get; set; }
/// <summary> /// <summary>
/// 详细内容 /// 详细内容
/// </summary> /// </summary>
......
...@@ -19,6 +19,11 @@ namespace Mall.Model.Entity.TradePavilion ...@@ -19,6 +19,11 @@ namespace Mall.Model.Entity.TradePavilion
/// </summary> /// </summary>
public int Id { get; set; } public int Id { get; set; }
/// <summary>
/// 榜单Id
/// </summary>
public int ListId { get; set; }
/// <summary> /// <summary>
/// 用户id /// 用户id
/// </summary> /// </summary>
...@@ -29,6 +34,11 @@ namespace Mall.Model.Entity.TradePavilion ...@@ -29,6 +34,11 @@ namespace Mall.Model.Entity.TradePavilion
/// </summary> /// </summary>
public ListObjectTypeEnum ObjectType { get; set; } public ListObjectTypeEnum ObjectType { get; set; }
/// <summary>
/// 品牌/载体id
/// </summary>
public int ObjectId { get; set; }
/// <summary> /// <summary>
/// 表单内容 /// 表单内容
/// </summary> /// </summary>
...@@ -79,18 +89,13 @@ namespace Mall.Model.Entity.TradePavilion ...@@ -79,18 +89,13 @@ namespace Mall.Model.Entity.TradePavilion
/// </summary> /// </summary>
public int MallBaseId { get; set; } public int MallBaseId { get; set; }
/// <summary>
/// 创建人
/// </summary>
public int CreateBy { get; set; }
/// <summary> /// <summary>
/// 创建时间 /// 创建时间
/// </summary> /// </summary>
public DateTime CreateDate { get; set; } public DateTime CreateDate { get; set; }
/// <summary> /// <summary>
/// 修改人 /// 操作人 - 后台empId
/// </summary> /// </summary>
public int UpdateBy { get; set; } public int UpdateBy { get; set; }
......
...@@ -23,7 +23,7 @@ namespace Mall.Model.Entity.User ...@@ -23,7 +23,7 @@ namespace Mall.Model.Entity.User
} }
/// <summary> /// <summary>
/// 插件类型(1-基础组件,2-营销组件,3-其他组件) /// 插件类型(1-基础组件,2-营销组件,3-其他组件,4-表单组件)
/// </summary> /// </summary>
public int PlugType public int PlugType
{ {
...@@ -61,7 +61,7 @@ namespace Mall.Model.Entity.User ...@@ -61,7 +61,7 @@ namespace Mall.Model.Entity.User
/// <summary> /// <summary>
/// 状态 /// 状态
/// </summary> /// </summary>
public int? Status public int Status
{ {
get; get;
set; set;
......
...@@ -12,6 +12,11 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -12,6 +12,11 @@ namespace Mall.Model.Extend.TradePavilion
/// </summary> /// </summary>
public string ClassName { get; set; } public string ClassName { get; set; }
/// <summary>
/// 品牌ids查询
/// </summary>
public string BrandIds { get; set; }
/// <summary> /// <summary>
......
...@@ -13,6 +13,11 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -13,6 +13,11 @@ namespace Mall.Model.Extend.TradePavilion
/// </summary> /// </summary>
public List<RB_CarrierMetro_Extend> CarrierMetroList { get; set; } public List<RB_CarrierMetro_Extend> CarrierMetroList { get; set; }
/// <summary>
/// 载体ids查询
/// </summary>
public string CarrierIds { get; set; }
/// <summary> /// <summary>
/// 介绍图 /// 介绍图
/// </summary> /// </summary>
......
using Mall.Model.Entity.TradePavilion;
using System;
using System.Collections.Generic;
using System.Text;
using Mall.Common.Plugin;
namespace Mall.Model.Extend.TradePavilion
{
/// <summary>
/// 自定义表单扩展实体类
/// </summary>
public class RB_Custom_Form_Extend : RB_Custom_Form
{
public string FormTypeStr { get { return this.FormType.GetEnumName(); } }
/// <summary>
/// 表单内容
/// </summary>
public List<FormDataItem> FormDataList { get; set; }
}
/// <summary>
/// 组件对象
/// </summary>
public class FormDataItem
{
/// <summary>
///组件Key
/// </summary>
public string CompKey { get; set; }
/// <summary>
/// 是否选中
/// </summary>
public bool isCked { get; set; }
/// <summary>
/// 组件对象
/// </summary>
public object CompData { get; set; }
}
/// <summary>
/// 文本对象
/// </summary>
public class TextItem
{
/// <summary>
/// 名字
/// </summary>
public string Name { get; set; }
/// <summary>
/// 字数(0-不限)
/// </summary>
public int WordsLength { get; set; }
/// <summary>
/// 是否必填
/// </summary>
public bool IsRequire { get; set; }
}
/// <summary>
/// 下拉框对象
/// </summary>
public class SelectItem
{
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 是否多选
/// </summary>
public bool IsMultiple { get; set; }
/// <summary>
/// 选项值(以英文逗号相隔)
/// </summary>
public string OptionValue { get; set; }
/// <summary>
/// 是否必填
/// </summary>
public bool IsRequire { get; set; }
}
/// <summary>
/// 上传组件
/// </summary>
public class UploadItem
{
/// <summary>
/// 名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 上传文件数量
/// </summary>
public int FileCount { get; set; }
/// <summary>
/// 上传文件大小M
/// </summary>
public int FileSizeLimit { get; set; }
}
}
...@@ -17,5 +17,15 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -17,5 +17,15 @@ namespace Mall.Model.Extend.TradePavilion
/// 用户名称 /// 用户名称
/// </summary> /// </summary>
public string UserName { get; set; } public string UserName { get; set; }
/// <summary>
/// 品牌/载体名称
/// </summary>
public string ObjectName { get; set; }
/// <summary>
/// 品牌/载体图标
/// </summary>
public string ObjectIcon { get; set; }
} }
} }
...@@ -13,10 +13,39 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -13,10 +13,39 @@ namespace Mall.Model.Extend.TradePavilion
[DB(ConnectionName = "DefaultConnection")] [DB(ConnectionName = "DefaultConnection")]
public class RB_FirstShop_List_Extend : RB_FirstShop_List public class RB_FirstShop_List_Extend : RB_FirstShop_List
{ {
/// <summary>
/// 面向群体
/// </summary>
public List<string> ObjectTypeList { get; set; }
/// <summary> /// <summary>
/// 面向群里id /// 面向群里id
/// </summary> /// </summary>
public int ObjectTypeId { get; set; } public int ObjectTypeId { get; set; }
/// <summary>
/// 小程序端状态 1进行中 , 2报名已截止 , 3已放榜
/// </summary>
public int State { get; set; }
/// <summary>
/// 排序 1根据报名截止日期
/// </summary>
public int OrderBy { get; set; }
/// <summary>
/// 是否查询正常的 1是
/// </summary>
public int IsAppletSelectNor { get; set; }
/// <summary>
/// 报名
/// </summary>
public List<RB_FirstShop_ListEnroll_Extend> EnrollList { get; set; }
/// <summary>
/// 上榜列表
/// </summary>
public List<RB_FirstShop_ListEnroll_Extend> RankList { get; set; }
} }
} }
...@@ -10,7 +10,7 @@ namespace Mall.Model.Extend.User ...@@ -10,7 +10,7 @@ namespace Mall.Model.Extend.User
/// </summary> /// </summary>
[Serializable] [Serializable]
[DB(ConnectionName = "DefaultConnection")] [DB(ConnectionName = "DefaultConnection")]
public class RB_PlugIn_Extend : Model.Entity.User.RB_PlugIn public class RB_PlugIn_Extend : Entity.User.RB_PlugIn
{ {
/// <summary> /// <summary>
/// 组件分类名称 /// 组件分类名称
...@@ -22,11 +22,12 @@ namespace Mall.Model.Extend.User ...@@ -22,11 +22,12 @@ namespace Mall.Model.Extend.User
string str = ""; string str = "";
switch (this.PlugType) switch (this.PlugType)
{ {
case 1: str = "基础组件";break; case 1: str = "基础组件"; break;
case 2: str = "营销组件"; break; case 2: str = "营销组件"; break;
case 3: str = "其他组件"; break; case 3: str = "其它组件"; break;
case 4: str = "表单组件"; break;
} }
return str; return str;
} }
} }
...@@ -34,5 +35,10 @@ namespace Mall.Model.Extend.User ...@@ -34,5 +35,10 @@ namespace Mall.Model.Extend.User
/// 商城编号 /// 商城编号
/// </summary> /// </summary>
public int TenantId { get; set; } public int TenantId { get; set; }
/// <summary>
/// 查询插件类型【查询使用】
/// </summary>
public string QPlugTypeStr { get; set; }
} }
} }
...@@ -10,5 +10,9 @@ namespace Mall.Model.Extend.User ...@@ -10,5 +10,9 @@ namespace Mall.Model.Extend.User
/// </summary> /// </summary>
public class RB_Tenant_Plug_Extend: RB_Tenant_Plug public class RB_Tenant_Plug_Extend: RB_Tenant_Plug
{ {
/// <summary>
/// 插件类型
/// </summary>
public string QPlugTypeStr { get; set; }
} }
} }
using Mall.Model.Extend.TradePavilion;
using Mall.Repository.TradePavilion;
using System;
using System.Collections.Generic;
using System.Text;
using VT.FW.AOP.CustomerAttribute;
using Mall.Common.Enum;
using VT.FW.DB;
using Newtonsoft.Json.Linq;
using Mall.Common.Plugin;
namespace Mall.Module.TradePavilion
{
/// <summary>
/// 自定义表单处理类
/// </summary>
public class CustomFormModule
{
/// <summary>
/// 自定义表单仓储层对象
/// </summary>
private readonly RB_Custom_FormRepository custom_FormRepository = new RB_Custom_FormRepository();
/// <summary>
/// 获取自定义表单分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Custom_Form_Extend> GetCustomFormPageModule(int pageIndex, int pageSize, out long rowsCount, RB_Custom_Form_Extend query)
{
return custom_FormRepository.GetCustomFormPageRepository(pageIndex, pageSize, out rowsCount, query);
}
/// <summary>
/// 获取自定义表单列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Custom_Form_Extend> GetCustomFormListModule(RB_Custom_Form_Extend query)
{
return custom_FormRepository.GetCustomFormListRepository(query);
}
/// <summary>
/// 检查表单是否存在
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public bool CheckExistsCustomFormModule(RB_Custom_Form_Extend model)
{
IList<WhereHelper> list = new List<WhereHelper>
{
new WhereHelper(nameof(RB_Custom_Form_Extend.FormType), model.FormType),
new WhereHelper(nameof(RB_Custom_Form_Extend.Status), (int)DateStateEnum.Normal),
new WhereHelper(nameof(RB_Custom_Form_Extend.TenantId), model.TenantId)
};
if (model.Id > 0)
{
list.Add(new WhereHelper(nameof(RB_Custom_Form_Extend.Id), model.Id, OperatorEnum.NotEqual));
}
return custom_FormRepository.Exists(list);
}
/// <summary>
/// 新增修改自定义表单
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
[TransactionCallHandler]
public virtual bool SetCustomFormModule(RB_Custom_Form_Extend model)
{
bool flag = false;
if (model.Id > 0)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Custom_Form_Extend.FormName),model.FormName.Trim()},
{ nameof(RB_Custom_Form_Extend.FormType),model.FormType},
{ nameof(RB_Custom_Form_Extend.FormData),model.FormData},
{ nameof(RB_Custom_Form_Extend.UpdateBy),model.UpdateBy},
{ nameof(RB_Custom_Form_Extend.UpdateDate),model.UpdateDate},
};
flag= custom_FormRepository.Update(fileds, new WhereHelper(nameof(RB_Custom_Form_Extend.Id), model.Id));
}
else
{
var newId = custom_FormRepository.Insert(model);
model.Id = newId;
flag = newId > 0;
}
return flag;
}
/// <summary>
/// 根据编号获取自定义表单
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public RB_Custom_Form_Extend GetCustomFormModule(object Id)
{
var extModel = custom_FormRepository.GetEntity<RB_Custom_Form_Extend>(Id);
if (extModel != null)
{
extModel.FormDataList = AnalyzeFormComponent(extModel.FormData);
}
return extModel;
}
/// <summary>
/// 解析表单组件
/// </summary>
/// <param name="formData"></param>
/// <returns></returns>
public List<FormDataItem> AnalyzeFormComponent(string formData)
{
List<FormDataItem> dataList = new List<FormDataItem>();
if (!string.IsNullOrEmpty(formData))
{
JArray jArray = JArray.Parse(formData);
if (jArray != null && jArray.Count > 0)
{
foreach (var jItem in jArray)
{
JObject jObj = JObject.Parse(jItem.ToString());
FormDataItem dataItem = new FormDataItem()
{
CompKey = jObj.GetStringValue("CompKey"),
CompData = new object(),
isCked=false,
};
if (!string.IsNullOrEmpty(dataItem.CompKey))
{
switch (dataItem.CompKey)
{
//单行文本
case "SingleLineText":
JObject singleObj = JObject.Parse(jObj.GetStringValue("CompData"));
TextItem txtItem = new TextItem()
{
Name = singleObj.GetStringValue("Name"),
WordsLength = singleObj.GetInt("WordsLength"),
IsRequire = singleObj.GetBoolValue("IsRequire"),
};
dataItem.CompData = txtItem;
break;
//多行文本
case "MultiLineText":
JObject multiObj = JObject.Parse(jObj.GetStringValue("CompData"));
TextItem multiItem = new TextItem()
{
Name = multiObj.GetStringValue("Name"),
WordsLength = multiObj.GetInt("WordsLength"),
IsRequire = multiObj.GetBoolValue("IsRequire"),
};
dataItem.CompData = multiItem;
break;
//下拉框
case "DorpDownList":
JObject dropdownObj = JObject.Parse(jObj.GetStringValue("CompData"));
SelectItem selectItem = new SelectItem()
{
Name = dropdownObj.GetStringValue("Name"),
IsMultiple = dropdownObj.GetBoolValue("IsMultiple"),
IsRequire = dropdownObj.GetBoolValue("IsRequire"),
OptionValue = "",
};
dataItem.CompData = selectItem;
break;
//图片上传组件
case "ImageUploadComp":
JObject imgObj = JObject.Parse(jObj.GetStringValue("CompData"));
UploadItem imgItem = new UploadItem()
{
Name = imgObj.GetStringValue("Name"),
FileCount = imgObj.GetInt("FileCount"),
FileSizeLimit = imgObj.GetInt("FileSizeLimit"),
};
dataItem.CompData = imgItem;
break;
//视频上传组件
case "VideoUploadComp":
JObject videoObj = JObject.Parse(jObj.GetStringValue("CompData"));
UploadItem videoItem = new UploadItem()
{
Name = videoObj.GetStringValue("Name"),
FileCount = videoObj.GetInt("FileCount"),
FileSizeLimit = videoObj.GetInt("FileSizeLimit"),
};
dataItem.CompData = videoItem;
break;
}
dataList.Add(dataItem);
}
}
}
}
return dataList;
}
/// <summary>
/// 根据编号删除自定义表单
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public bool RemoveCustomFormModule(int Id)
{
Dictionary<string, object> fileds = new Dictionary<string, object>()
{
{ nameof(RB_Custom_Form_Extend.Status),(int)DateStateEnum.Delete}
};
return custom_FormRepository.Update(fileds, new WhereHelper(nameof(RB_Custom_Form_Extend.Id),Id));
}
}
}
This diff is collapsed.
...@@ -39,7 +39,7 @@ namespace Mall.Module.User ...@@ -39,7 +39,7 @@ namespace Mall.Module.User
bool flag = false; bool flag = false;
if (list != null && list.Count > 0) if (list != null && list.Count > 0)
{ {
tenant_PlugRepository.DeleteOne(new WhereHelper(nameof(RB_Tenant_Menu_Extend.TenantId), list[0].TenantId)); tenant_PlugRepository.DeleteTenantPlugRepository(list[0].TenantId, list[0].QPlugTypeStr);
foreach (var item in list) foreach (var item in list)
{ {
flag = tenant_PlugRepository.Insert(item) > 0; flag = tenant_PlugRepository.Insert(item) > 0;
......
using Mall.Common.Enum;
using Mall.Model.Entity.TradePavilion;
using Mall.Model.Extend.TradePavilion;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using VT.FW.DB.Dapper;
namespace Mall.Repository.TradePavilion
{
/// <summary>
/// 自定义表单仓储层
/// </summary>
public class RB_Custom_FormRepository : BaseRepository<RB_Custom_Form>
{
/// <summary>
/// 获取自定义表单分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="rowsCount"></param>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Custom_Form_Extend> GetCustomFormPageRepository(int pageIndex, int pageSize, out long rowsCount, RB_Custom_Form_Extend query)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Custom_Form AS A
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.Status), (int)DateStateEnum.Normal);
if (query != null)
{
if (query.TenantId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.MallBaseId), query.MallBaseId);
}
if (!string.IsNullOrEmpty(query.FormName))
{
builder.AppendFormat(" AND A.{0} LIKE @FormName ", nameof(RB_Custom_Form_Extend.FormName));
parameters.Add("FormName", "%" + query.FormName.Trim() + "%");
}
if (query.Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.Id), query.Id);
}
}
return GetPage<RB_Custom_Form_Extend>(pageIndex, pageSize, out rowsCount, builder.ToString(), parameters).ToList();
}
/// <summary>
/// 获取自定义表单列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Custom_Form_Extend> GetCustomFormListRepository(RB_Custom_Form_Extend query)
{
var parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT A.*
FROM RB_Custom_Form AS A
WHERE 1=1
");
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.Status), (int)DateStateEnum.Normal);
if (query != null)
{
if (query.TenantId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.MallBaseId), query.MallBaseId);
}
if (!string.IsNullOrEmpty(query.FormName))
{
builder.AppendFormat(" AND A.{0} LIKE @FormName ", nameof(RB_Custom_Form_Extend.FormName));
parameters.Add("FormName", "%" + query.FormName.Trim() + "%");
}
if (query.Id > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.Id), query.Id);
}
if (query.FormType > 0)
{
builder.AppendFormat(" AND A.{0}={1} ", nameof(RB_Custom_Form_Extend.FormType), (int)query.FormType);
}
}
return Get<RB_Custom_Form_Extend>(builder.ToString(), parameters).ToList();
}
}
}
...@@ -75,13 +75,17 @@ where {where} order by w.Id desc ...@@ -75,13 +75,17 @@ where {where} order by w.Id desc
{ {
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.MallBaseId)}={dmodel.MallBaseId}"; where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.MallBaseId)}={dmodel.MallBaseId}";
} }
if (dmodel.ListId > 0)
{
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.ListId)}={dmodel.ListId}";
}
if (dmodel.UserId > 0) if (dmodel.UserId > 0)
{ {
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.UserId)}={dmodel.UserId}"; where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.UserId)}={dmodel.UserId}";
} }
if (dmodel.ObjectType > 0) if (dmodel.ObjectType > 0)
{ {
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.ObjectType)}={dmodel.ObjectType}"; where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.ObjectType)}={(int)dmodel.ObjectType}";
} }
if (dmodel.CandidateState > 0) if (dmodel.CandidateState > 0)
{ {
......
...@@ -47,12 +47,13 @@ namespace Mall.Repository.TradePavilion ...@@ -47,12 +47,13 @@ namespace Mall.Repository.TradePavilion
if (dmodel.ListState == Common.Enum.TradePavilion.ListStateEnum.Enroll) if (dmodel.ListState == Common.Enum.TradePavilion.ListStateEnum.Enroll)
{ {
where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)Common.Enum.TradePavilion.ListStateEnum.Enroll}"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)Common.Enum.TradePavilion.ListStateEnum.Enroll}";
where += $@" and w.{nameof(RB_FirstShop_List_Extend.DeadlineDate)} >='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.StartDate)} <='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
where += $@" and w.{nameof(RB_FirstShop_List_Extend.EndDate)} >='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
} }
else if (dmodel.ListState == Common.Enum.TradePavilion.ListStateEnum.Rating) else if (dmodel.ListState == Common.Enum.TradePavilion.ListStateEnum.Rating)
{ {
where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)Common.Enum.TradePavilion.ListStateEnum.Enroll}"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)Common.Enum.TradePavilion.ListStateEnum.Enroll}";
where += $@" and w.{nameof(RB_FirstShop_List_Extend.DeadlineDate)} <'{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.EndDate)} <'{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
} }
else { else {
where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)dmodel.ListState}"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)dmodel.ListState}";
...@@ -68,10 +69,19 @@ namespace Mall.Repository.TradePavilion ...@@ -68,10 +69,19 @@ namespace Mall.Repository.TradePavilion
where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListName)} @ListName"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListName)} @ListName";
parameters.Add("ListName", "%" + dmodel.ListName + "%"); parameters.Add("ListName", "%" + dmodel.ListName + "%");
} }
if (dmodel.IsAppletSelectNor == 1) {
//小程序端查询
where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)} <>{(int)Common.Enum.TradePavilion.ListStateEnum.Cancel}";
where += $@" and w.{nameof(RB_FirstShop_List_Extend.StartDate)} <='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
}
string orderBy = " order by w.Id desc";
if (dmodel.OrderBy == 1) {
orderBy = " order by w.EndDate desc";//根据报名截止日期
}
string sql = $@"select w.* from RB_FirstShop_List w string sql = $@"select w.* from RB_FirstShop_List w
where {where} order by w.Id desc where {where} {orderBy}
"; ";
return GetPage<RB_FirstShop_List_Extend>(pageIndex, pageSize, out count, sql, parameters).ToList(); return GetPage<RB_FirstShop_List_Extend>(pageIndex, pageSize, out count, sql, parameters).ToList();
} }
...@@ -106,12 +116,13 @@ where {where} order by w.Id desc ...@@ -106,12 +116,13 @@ where {where} order by w.Id desc
if (dmodel.ListState == Common.Enum.TradePavilion.ListStateEnum.Enroll) if (dmodel.ListState == Common.Enum.TradePavilion.ListStateEnum.Enroll)
{ {
where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)Common.Enum.TradePavilion.ListStateEnum.Enroll}"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)Common.Enum.TradePavilion.ListStateEnum.Enroll}";
where += $@" and w.{nameof(RB_FirstShop_List_Extend.DeadlineDate)} >='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.StartDate)} >='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
where += $@" and w.{nameof(RB_FirstShop_List_Extend.EndDate)} <='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
} }
else if (dmodel.ListState == Common.Enum.TradePavilion.ListStateEnum.Rating) else if (dmodel.ListState == Common.Enum.TradePavilion.ListStateEnum.Rating)
{ {
where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)Common.Enum.TradePavilion.ListStateEnum.Enroll}"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)}={(int)Common.Enum.TradePavilion.ListStateEnum.Enroll}";
where += $@" and w.{nameof(RB_FirstShop_List_Extend.DeadlineDate)} <'{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.EndDate)} <'{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
} }
else else
{ {
...@@ -136,5 +147,36 @@ where {where} order by w.Id desc ...@@ -136,5 +147,36 @@ where {where} order by w.Id desc
return Get<RB_FirstShop_List_Extend>(sql, parameters).ToList(); return Get<RB_FirstShop_List_Extend>(sql, parameters).ToList();
} }
/// <summary>
/// 获取小程序 我的报名榜单分页列表
/// </summary>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="count"></param>
/// <param name="dmodel"></param>
/// <returns></returns>
public List<RB_FirstShop_List_Extend> GetAppletMyEnrollFistShopListPageList(int pageIndex, int pageSize, out long count, RB_FirstShop_List_Extend dmodel)
{
var parameters = new DynamicParameters();
string where = $" 1=1 and w.Status =0 and e.Status =0 and w.ListState <>{(int)Common.Enum.TradePavilion.ListStateEnum.Cancel}";
if (dmodel.TenantId > 0)
{
where += $@" and w.{nameof(RB_FirstShop_List_Extend.TenantId)}={dmodel.TenantId}";
}
if (dmodel.MallBaseId > 0)
{
where += $@" and w.{nameof(RB_FirstShop_List_Extend.MallBaseId)}={dmodel.MallBaseId}";
}
if (dmodel.CreateBy > 0)
{
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.UserId)}={dmodel.CreateBy}";
}
string sql = $@"select w.* from RB_FirstShop_List w
left join rb_firstshop_listenroll e on w.Id = e.ListId
where {where} group by w.Id order by w.EndDate desc
";
return GetPage<RB_FirstShop_List_Extend>(pageIndex, pageSize, out count, sql, parameters).ToList();
}
} }
} }
\ No newline at end of file
...@@ -31,6 +31,10 @@ WHERE 1=1 AND A.Status=0 "); ...@@ -31,6 +31,10 @@ WHERE 1=1 AND A.Status=0 ");
{ {
builder.AppendFormat(@" AND A.PlugId IN(SELECT PlugId FROM rb_tenant_plug WHERE TenantId={0}) ", query.TenantId); builder.AppendFormat(@" AND A.PlugId IN(SELECT PlugId FROM rb_tenant_plug WHERE TenantId={0}) ", query.TenantId);
} }
if (!string.IsNullOrEmpty(query.QPlugTypeStr))
{
builder.AppendFormat(@" AND A.{0} IN({1}) ", nameof(RB_PlugIn_Extend.PlugType), query.QPlugTypeStr);
}
} }
return Get<RB_PlugIn_Extend>(builder.ToString()).ToList(); return Get<RB_PlugIn_Extend>(builder.ToString()).ToList();
} }
...@@ -67,6 +71,10 @@ WHERE 1=1 AND A.Status=0 "); ...@@ -67,6 +71,10 @@ WHERE 1=1 AND A.Status=0 ");
{ {
builder.AppendFormat(@" AND {0}={1} ", nameof(RB_PlugIn_Extend.PlugId), query.PlugId); builder.AppendFormat(@" AND {0}={1} ", nameof(RB_PlugIn_Extend.PlugId), query.PlugId);
} }
if (!string.IsNullOrEmpty(query.QPlugTypeStr))
{
builder.AppendFormat(@" AND {0} IN({1}) ", nameof(RB_PlugIn_Extend.PlugType), query.QPlugTypeStr);
}
} }
return GetPage<RB_PlugIn_Extend>(pageIndex,pageSize,out rowsCount,builder.ToString(),parameters).ToList(); return GetPage<RB_PlugIn_Extend>(pageIndex,pageSize,out rowsCount,builder.ToString(),parameters).ToList();
} }
......
...@@ -49,5 +49,18 @@ WHERE 1=1 ...@@ -49,5 +49,18 @@ WHERE 1=1
} }
return Get<RB_Tenant_Plug_Extend>(builder.ToString(), parameters).ToList(); return Get<RB_Tenant_Plug_Extend>(builder.ToString(), parameters).ToList();
} }
/// <summary>
/// 根据类型和商户号删除插件
/// </summary>
/// <param name="TenantId"></param>
/// <param name="QPlugTypeStr"></param>
/// <returns></returns>
public bool DeleteTenantPlugRepository(int TenantId, string QPlugTypeStr)
{
StringBuilder builder = new StringBuilder();
builder.AppendFormat(" DELETE FROM RB_Tenant_Plug WHERE TenantId={0} AND PlugId IN (SELECT PlugId FROM rb_plugin WHERE PlugType IN({1})) ", TenantId, QPlugTypeStr);
return base.Execute(builder.ToString()) > 0;
}
} }
} }
using Mall.Common.API;
using Mall.Common.Plugin;
using Mall.Model.Extend.TradePavilion;
using Mall.Module.TradePavilion;
using Mall.WebApi.Filter;
using Microsoft.AspNetCore.Cors;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Mall.WebApi.Controllers.MallBase
{
[Route("api/[controller]/[action]")]
[ApiExceptionFilter]
[ApiController]
[EnableCors("AllowCors")]
public class CustomFormController : BaseController
{
/// <summary>
/// 自定义表单处理类对象
/// </summary>
private readonly CustomFormModule customFormModule = new CustomFormModule();
/// <summary>
/// 获取自定义表单分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetCustomFormPage()
{
ResultPageModel pageModel = JsonConvert.DeserializeObject<ResultPageModel>(RequestParm.msg.ToString());
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var query = new RB_Custom_Form_Extend()
{
FormName = parms.GetStringValue("FormName"),
FormType = (Common.Enum.TradePavilion.CustomFormTypeEnum)parms.GetInt("FormType")
};
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = customFormModule.GetCustomFormPageModule(pageModel.pageIndex, pageModel.pageSize, out long rowsCount, query);
pageModel.count = Convert.ToInt32(rowsCount);
pageModel.pageData = list.Select(qitem => new
{
qitem.Id,
qitem.FormType,
qitem.FormTypeStr,
qitem.FormName,
qitem.FormDataList,
CreateDate = Common.ConvertHelper.FormatTime(qitem.CreateDate),
});
return ApiResult.Success(data: pageModel);
}
/// <summary>
/// 获取自定义表单列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetCustomFormList()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var query = new RB_Custom_Form_Extend()
{
FormName = parms.GetStringValue("FormName"),
FormType = (Common.Enum.TradePavilion.CustomFormTypeEnum)parms.GetInt("FormType")
};
query.MallBaseId = RequestParm.MallBaseId;
query.TenantId = RequestParm.TenantId;
var list = customFormModule.GetCustomFormListModule( query);
return ApiResult.Success(data: list);
}
/// <summary>
/// 新增修改自定义表单
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetCustomForm()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var model = new RB_Custom_Form_Extend()
{
Id=parms.GetInt("Id"),
FormName = parms.GetStringValue("FormName"),
FormType = (Common.Enum.TradePavilion.CustomFormTypeEnum)parms.GetInt("FormType")
};
var formData = parms.GetStringValue("FormData");
List<FormDataItem> dataList = customFormModule.AnalyzeFormComponent(formData);
if (dataList != null && dataList.Count > 0)
{
model.FormData = Common.Plugin.JsonHelper.Serialize(dataList);
}
else
{
model.FormData = "";
}
model.MallBaseId = RequestParm.MallBaseId;
model.TenantId = RequestParm.TenantId;
model.CreateBy = base.UserInfo.TenantId;
model.UpdateBy = base.UserInfo.TenantId;
model.CreateDate = DateTime.Now;
model.UpdateDate = DateTime.Now;
model.Status = Common.Enum.DateStateEnum.Normal;
if (customFormModule.CheckExistsCustomFormModule(model))
{
return ApiResult.Failed(message: "已存在此类型的表单!");
};
var flag = customFormModule.SetCustomFormModule(model);
return flag ? ApiResult.Success(data:model) : ApiResult.Failed();
}
/// <summary>
/// 根据编号编号获取自定义表单
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetCustomForm()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id");
var extModel = customFormModule.GetCustomFormModule(Id);
return ApiResult.Success(data: extModel);
}
/// <summary>
/// 根据编号删除自定义表单
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult RemoveCustomeForm()
{
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var Id = parms.GetInt("Id");
var flag = customFormModule.RemoveCustomFormModule(Id);
return flag ? ApiResult.Success() : ApiResult.Failed();
}
/// <summary>
/// 获取自定义表单类型
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetCustomType()
{
var list = EnumHelper.EnumToList(typeof(Common.Enum.TradePavilion.CustomFormTypeEnum));
return ApiResult.Success(data:list);
}
}
}
...@@ -84,6 +84,10 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -84,6 +84,10 @@ namespace Mall.WebApi.Controllers.TradePavilion
/// </summary> /// </summary>
private readonly Module.User.MiniProgramModule programModule = new Module.User.MiniProgramModule(); private readonly Module.User.MiniProgramModule programModule = new Module.User.MiniProgramModule();
/// <summary> /// <summary>
/// 榜单
/// </summary>
private readonly FirstShopListModule firstShopListModule = new FirstShopListModule();
/// <summary>
/// 心愿单 /// 心愿单
/// </summary> /// </summary>
private readonly FirstShopWishModule firstShopWishModule = new FirstShopWishModule(); private readonly FirstShopWishModule firstShopWishModule = new FirstShopWishModule();
...@@ -1847,6 +1851,230 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -1847,6 +1851,230 @@ namespace Mall.WebApi.Controllers.TradePavilion
} }
#endregion #endregion
#region 榜单管理
/// <summary>
/// 获取榜单分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetAppletFirstShopListPageList()
{
var userInfo = base.AppletUserInfo;
var req = base.RequestParm;
ResultPageModel pageModel = JsonHelper.DeserializeObject<ResultPageModel>(req.msg.ToString());
RB_FirstShop_List_Extend demodel = JsonHelper.DeserializeObject<RB_FirstShop_List_Extend>(req.msg.ToString());
demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId;
demodel.IsAppletSelectNor = 1;
demodel.OrderBy = 1;
var list = firstShopListModule.GetAppletFirstShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.ListType,
ListTypeName = x.ListType.GetEnumName(),
x.ObjectTypeList,
x.Sponsor,
x.ListName,
x.CoverImage,
EndDate = x.EndDate.ToString("yyyy-MM-dd"),
StartDate = x.StartDate.ToString("yyyy-MM-dd"),
FinishDate = x.FinishDate.ToString("yyyy-MM-dd HH:mm"),
x.PrizeNum,
x.State
}));
}
/// <summary>
/// 获取榜单详情
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetAppletFistShopListInfo()
{
var userInfo = base.AppletUserInfo;
var req = base.RequestParm;
JObject parms = JObject.Parse(req.msg.ToString());
int ListId = parms.GetInt("ListId", 0);//榜单id
if (ListId <= 0)
{
return ApiResult.ParamIsNull();
}
var model = firstShopListModule.GetAppletFirstShopListInfo(ListId, userInfo);
if (model == null) { return ApiResult.Failed("榜单不存在"); }
return ApiResult.Success("", new
{
model.Id,
model.ListType,
model.ObjectTypeIds,
model.Sponsor,
model.ListName,
model.CoverImage,
EndDate = model.EndDate.ToString("yyyy-MM-dd"),
StartDate = model.StartDate.ToString("yyyy-MM-dd"),
FinishDate = model.FinishDate.ToString("yyyy-MM-dd HH:mm"),
model.Content,
model.EnableRank,
model.PrizeNum,
model.ListState,
EnrollList = model.EnrollList?.Select(x=>new {
x.Id,
x.UserId,
x.UserName,
x.ObjectType,
ObjectTypeName = x.ObjectType.GetEnumName(),
x.ObjectId,
x.ObjectName,
x.ObjectIcon,
x.Content
}),
RankList = model.RankList?.Select(x=>new {
x.Id,
x.UserId,
x.UserName,
x.ObjectId,
x.ObjectType,
ObjectTypeName = x.ObjectType.GetEnumName(),
x.ObjectName,
x.ObjectIcon,
x.Reviews,
x.Rank,
x.MedalImage,
x.MedalImageBig
})
});
}
/// <summary>
/// 获取我的可报名的品牌载体
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetAppletMyBrandCarrierList() {
var userInfo = base.AppletUserInfo;
JObject parms = JObject.Parse(base.RequestParm.msg.ToString());
int ListId = parms.GetInt("ListId", 0);//榜单id
int EnrollId = parms.GetInt("EnrollId", 0);//报名Id
if (ListId <= 0) {
return ApiResult.ParamIsNull();
}
var list = firstShopListModule.GetAppletMyBrandCarrierList(ListId, EnrollId, userInfo);
return ApiResult.Success("", list);
}
/// <summary>
/// 榜单报名
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetAppletFirstShopListInfo() {
var userInfo = base.AppletUserInfo;
RB_FirstShop_ListEnroll_Extend demodel = JsonHelper.DeserializeObject<RB_FirstShop_ListEnroll_Extend>(base.RequestParm.msg.ToString());
if (demodel.ListId <= 0) {
return ApiResult.ParamIsNull("请传递榜单id");
}
if (demodel.ObjectType <= 0) {
return ApiResult.ParamIsNull("请传递类型");
}
if (demodel.ObjectId <= 0) {
return ApiResult.ParamIsNull("请传递品牌载体id");
}
if (string.IsNullOrEmpty(demodel.Content)) {
return ApiResult.ParamIsNull("请传递表单内容");
}
demodel.UserId = userInfo.UserId;
demodel.CandidateState = 1;
demodel.RankListState = 2;
demodel.Status = 0;
demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId;
demodel.CreateDate = DateTime.Now;
demodel.UpdateDate = DateTime.Now;
string msg = firstShopListModule.SetAppletFirstShopListInfo(demodel);
if (msg == "")
{
return ApiResult.Success();
}
else {
return ApiResult.Failed(msg);
}
}
/// <summary>
/// 取消报名
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult CancelAppletFirstShopListInfo() {
var userInfo = base.AppletUserInfo;
JObject parms = JObject.Parse(base.RequestParm.msg.ToString());
int EnrollId = parms.GetInt("EnrollId", 0);//报名Id
if (EnrollId <= 0)
{
return ApiResult.ParamIsNull();
}
string msg = firstShopListModule.CancelAppletFirstShopListInfo(EnrollId, userInfo);
if (msg == "")
{
return ApiResult.Success();
}
else {
return ApiResult.Failed(msg);
}
}
/// <summary>
/// 获取榜单类型枚举列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetListTypeEnumList()
{
var list = EnumHelper.GetEnumList(typeof(Common.Enum.TradePavilion.ListTypeEnum));
return ApiResult.Success("", list.Select(x => new
{
Name = x.Key,
Id = Convert.ToInt32(x.Value)
}));
}
/// <summary>
/// 获取我报名的榜单分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetAppletMyEnrollFistShopListPageList() {
var userInfo = base.AppletUserInfo;
var req = base.RequestParm;
ResultPageModel pageModel = JsonHelper.DeserializeObject<ResultPageModel>(req.msg.ToString());
RB_FirstShop_List_Extend demodel = JsonHelper.DeserializeObject<RB_FirstShop_List_Extend>(req.msg.ToString());
demodel.TenantId = userInfo.TenantId;
demodel.MallBaseId = userInfo.MallBaseId;
var list = firstShopListModule.GetAppletMyEnrollFistShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.ListType,
ListTypeName = x.ListType.GetEnumName(),
x.Sponsor,
x.ListName,
x.CoverImage,
EndDate = x.EndDate.ToString("yyyy-MM-dd"),
StartDate = x.StartDate.ToString("yyyy-MM-dd"),
FinishDate = x.FinishDate.ToString("yyyy-MM-dd HH:mm"),
x.PrizeNum
}));
}
#endregion
#region 公司信息(管理端) #region 公司信息(管理端)
/// <summary> /// <summary>
......
...@@ -69,7 +69,10 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -69,7 +69,10 @@ namespace Mall.WebApi.Controllers.TradePavilion
/// 会员信息 /// 会员信息
/// </summary> /// </summary>
private readonly Module.User.UserModule userModule = new Module.User.UserModule(); private readonly Module.User.UserModule userModule = new Module.User.UserModule();
/// <summary>
/// 榜单
/// </summary>
private readonly FirstShopListModule firstShopListModule = new FirstShopListModule();
/// <summary> /// <summary>
/// 心愿单 /// 心愿单
/// </summary> /// </summary>
...@@ -1831,6 +1834,193 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -1831,6 +1834,193 @@ namespace Mall.WebApi.Controllers.TradePavilion
#endregion #endregion
#region 榜单管理
/// <summary>
/// 获取榜单分页列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFirstShopPrizeListPageList()
{
var req = base.RequestParm;
ResultPageModel pageModel = JsonHelper.DeserializeObject<ResultPageModel>(req.msg.ToString());
RB_FirstShop_List_Extend demodel = JsonHelper.DeserializeObject<RB_FirstShop_List_Extend>(req.msg.ToString());
demodel.TenantId = req.TenantId;
demodel.MallBaseId = req.MallBaseId;
var list = firstShopListModule.GetFirstShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.ListType,
ListTypeName = x.ListType.GetEnumName(),
x.ObjectTypeIds,
x.ObjectTypeList,
x.Sponsor,
x.ListName,
x.CoverImage,
EndDate = x.EndDate.ToString("yyyy-MM-dd"),
StartDate = x.StartDate.ToString("yyyy-MM-dd"),
FinishDate = x.FinishDate.ToString("yyyy-MM-dd HH:mm"),
x.Content,
x.EnableRank,
x.PrizeNum,
x.ListState,
ListStateName = x.ListState.GetEnumName(),
UpdateDate = x.UpdateDate.ToString("yyyy-MM-dd HH:mm:ss")
}));
}
/// <summary>
/// 获取榜单详情
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFistShopPrizeListInfo() {
var req = base.RequestParm;
JObject parms = JObject.Parse(req.msg.ToString());
int ListId = parms.GetInt("ListId", 0);//榜单id
if (ListId <= 0) {
return ApiResult.ParamIsNull();
}
var model = firstShopListModule.GetFirstShopListInfo(ListId);
if (model == null) { return ApiResult.Failed("榜单不存在"); }
return ApiResult.Success("", new
{
model.Id,
model.ListType,
model.ObjectTypeIds,
model.Sponsor,
model.ListName,
model.CoverImage,
EndDate = model.EndDate.ToString("yyyy-MM-dd"),
StartDate = model.StartDate.ToString("yyyy-MM-dd"),
FinishDate = model.FinishDate.ToString("yyyy-MM-dd HH:mm"),
model.Content,
model.EnableRank,
model.PrizeNum,
model.ListState
});
}
/// <summary>
/// 设置榜单
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetFistShopPrizeListInfo() {
var req = base.RequestParm;
RB_FirstShop_List_Extend demodel = JsonHelper.DeserializeObject<RB_FirstShop_List_Extend>(req.msg.ToString());
if (string.IsNullOrEmpty(demodel.Sponsor)) {
return ApiResult.ParamIsNull("请输入主办方名称");
}
if (string.IsNullOrEmpty(demodel.ListName)) {
return ApiResult.ParamIsNull("请输入榜单名称");
}
if (string.IsNullOrEmpty(demodel.ObjectTypeIds)) {
return ApiResult.ParamIsNull("请选择面向群体");
}
if (string.IsNullOrEmpty(demodel.CoverImage)) {
return ApiResult.ParamIsNull("请上传封面图");
}
if (string.IsNullOrEmpty(demodel.Content)) {
return ApiResult.ParamIsNull("请输入详情内容");
}
if (demodel.PrizeNum <= 0) {
return ApiResult.ParamIsNull("请输入入围名额");
}
demodel.EndDate = Convert.ToDateTime(demodel.EndDate.ToString("yyyy-MM-dd") + " 23:59:59");
demodel.ListState = Common.Enum.TradePavilion.ListStateEnum.Enroll;
demodel.TenantId = req.TenantId;
demodel.MallBaseId = req.MallBaseId;
demodel.Status = 0;
demodel.CreateBy = req.EmpId;
demodel.CreateDate = DateTime.Now;
demodel.UpdateBy = req.EmpId;
demodel.UpdateDate = DateTime.Now;
string msg = firstShopListModule.SetFirstShopListInfo(demodel);
if (msg == "")
{
return ApiResult.Success();
}
else {
return ApiResult.Failed(msg);
}
}
/// <summary>
/// 取消榜单
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult DelFistShopPrizeListInfo() {
var req = base.RequestParm;
JObject parms = JObject.Parse(req.msg.ToString());
int ListId = parms.GetInt("ListId", 0);//榜单id
if (ListId <= 0)
{
return ApiResult.ParamIsNull();
}
string msg = firstShopListModule.DelFirstShopListInfo(ListId, req.MallBaseId);
if (msg == "")
{
return ApiResult.Success();
}
else {
return ApiResult.Failed(msg);
}
}
/// <summary>
/// 获取榜单面向群体枚举列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetListObjectTypeEnumList()
{
var list = EnumHelper.GetEnumList(typeof(Common.Enum.TradePavilion.ListObjectTypeEnum));
return ApiResult.Success("", list.Select(x => new
{
Name = x.Key,
Id = Convert.ToInt32(x.Value)
}));
}
/// <summary>
/// 获取榜单状态枚举列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetListStateEnumList()
{
var list = EnumHelper.GetEnumList(typeof(Common.Enum.TradePavilion.ListStateEnum));
return ApiResult.Success("", list.Select(x => new
{
Name = x.Key,
Id = Convert.ToInt32(x.Value)
}));
}
/// <summary>
/// 获取榜单类型枚举列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetListTypeEnumList()
{
var list = EnumHelper.GetEnumList(typeof(Common.Enum.TradePavilion.ListTypeEnum));
return ApiResult.Success("", list.Select(x => new
{
Name = x.Key,
Id = Convert.ToInt32(x.Value)
}));
}
#endregion
#region 心愿单列表 #region 心愿单列表
......
...@@ -682,7 +682,9 @@ namespace Mall.WebApi.Controllers.User ...@@ -682,7 +682,9 @@ namespace Mall.WebApi.Controllers.User
public ApiResult GetTenantPlugList() public ApiResult GetTenantPlugList()
{ {
List<object> result = new List<object>(); List<object> result = new List<object>();
var plugList = plugInModule.GetPlugInListModule(new RB_PlugIn_Extend()); JObject parms = JObject.Parse(RequestParm.msg.ToString());
var QPlugTypeStr = parms.GetStringValue("QPlugTypeStr");
var plugList = plugInModule.GetPlugInListModule(new RB_PlugIn_Extend() { QPlugTypeStr= QPlugTypeStr });
if (plugList != null && plugList.Count > 0) if (plugList != null && plugList.Count > 0)
{ {
var tenantPlugList = tenantPlugModule.GetTenantPlugListModule( new RB_Tenant_Plug_Extend { TenantId = RequestParm.TenantId }); var tenantPlugList = tenantPlugModule.GetTenantPlugListModule( new RB_Tenant_Plug_Extend { TenantId = RequestParm.TenantId });
...@@ -716,6 +718,10 @@ namespace Mall.WebApi.Controllers.User ...@@ -716,6 +718,10 @@ namespace Mall.WebApi.Controllers.User
{ {
PlugTypeName = "其他组件"; PlugTypeName = "其他组件";
} }
else if (item.Key == 4)
{
PlugTypeName = "表单组件";
}
result.Add(new result.Add(new
{ {
Id="", Id="",
...@@ -751,7 +757,16 @@ namespace Mall.WebApi.Controllers.User ...@@ -751,7 +757,16 @@ namespace Mall.WebApi.Controllers.User
/// <returns></returns> /// <returns></returns>
public ApiResult SetPlugIn() public ApiResult SetPlugIn()
{ {
var extModel = JsonConvert.DeserializeObject<RB_PlugIn_Extend>(RequestParm.msg.ToString()); JObject jobj = JObject.Parse(RequestParm.msg.ToString());
var extModel = new RB_PlugIn_Extend()
{
PlugId = jobj.GetInt("PlugId"),
PlugType = jobj.GetInt("PlugType"),
Id = jobj.GetStringValue("Id"),
Name = jobj.GetStringValue("Name"),
Icon = jobj.GetStringValue("Icon"),
QPlugTypeStr = "",
};
extModel.Status = 0; extModel.Status = 0;
extModel.TenantId = RequestParm.TenantId; extModel.TenantId = RequestParm.TenantId;
var flag = plugInModule.SetPlugInModule(extModel); var flag = plugInModule.SetPlugInModule(extModel);
......
...@@ -1825,9 +1825,11 @@ namespace Mall.WebApi.Controllers.User ...@@ -1825,9 +1825,11 @@ namespace Mall.WebApi.Controllers.User
/// <returns></returns> /// <returns></returns>
public ApiResult GetPlugInList() public ApiResult GetPlugInList()
{ {
JObject parms = JObject.Parse(RequestParm.msg.ToString());
var extModel = new RB_PlugIn_Extend() var extModel = new RB_PlugIn_Extend()
{ {
TenantId = RequestParm.TenantId TenantId = RequestParm.TenantId,
QPlugTypeStr= parms.GetStringValue("QPlugTypeStr"),
}; };
var list = plugInModule.GetPlugInListModule(extModel); var list = plugInModule.GetPlugInListModule(extModel);
var distinctList = list.GroupBy(qitem => new { qitem.PlugType, qitem.GroupName }).Select(qitem => new { qitem.Key.PlugType, qitem.Key.GroupName }); var distinctList = list.GroupBy(qitem => new { qitem.PlugType, qitem.GroupName }).Select(qitem => new { qitem.Key.PlugType, qitem.Key.GroupName });
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<Controller_SelectedScaffolderID>ApiControllerEmptyScaffolder</Controller_SelectedScaffolderID> <Controller_SelectedScaffolderID>MvcControllerEmptyScaffolder</Controller_SelectedScaffolderID>
<Controller_SelectedScaffolderCategoryPath>root/Controller</Controller_SelectedScaffolderCategoryPath> <Controller_SelectedScaffolderCategoryPath>root/Common/MVC/Controller</Controller_SelectedScaffolderCategoryPath>
<WebStackScaffolding_ControllerDialogWidth>600</WebStackScaffolding_ControllerDialogWidth> <WebStackScaffolding_ControllerDialogWidth>600</WebStackScaffolding_ControllerDialogWidth>
<WebStackScaffolding_IsLayoutPageSelected>True</WebStackScaffolding_IsLayoutPageSelected> <WebStackScaffolding_IsLayoutPageSelected>True</WebStackScaffolding_IsLayoutPageSelected>
<WebStackScaffolding_IsPartialViewSelected>False</WebStackScaffolding_IsPartialViewSelected> <WebStackScaffolding_IsPartialViewSelected>False</WebStackScaffolding_IsPartialViewSelected>
<WebStackScaffolding_IsReferencingScriptLibrariesSelected>True</WebStackScaffolding_IsReferencingScriptLibrariesSelected> <WebStackScaffolding_IsReferencingScriptLibrariesSelected>True</WebStackScaffolding_IsReferencingScriptLibrariesSelected>
<WebStackScaffolding_LayoutPageFile /> <WebStackScaffolding_LayoutPageFile />
<WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected> <WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected>
<NameOfLastUsedPublishProfile>FolderProfile</NameOfLastUsedPublishProfile> <NameOfLastUsedPublishProfile>E:\Work\Git_Project\Mall_Api\Mall.WebApi\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
<ShowAllFiles>true</ShowAllFiles> <ShowAllFiles>false</ShowAllFiles>
</PropertyGroup> </PropertyGroup>
</Project> </Project>
\ 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