Commit d750e9b7 authored by 吴春's avatar 吴春
parents 3f878615 49c883a7
...@@ -30,5 +30,11 @@ namespace Mall.Common.Enum.TradePavilion ...@@ -30,5 +30,11 @@ namespace Mall.Common.Enum.TradePavilion
/// </summary> /// </summary>
[EnumField("首发")] [EnumField("首发")]
SF = 4, SF = 4,
/// <summary>
/// 品牌
/// </summary>
[EnumField("品牌")]
PingPai = 5,
} }
} }
...@@ -29,6 +29,12 @@ namespace Mall.Common.Enum.TradePavilion ...@@ -29,6 +29,12 @@ namespace Mall.Common.Enum.TradePavilion
/// 首展 /// 首展
/// </summary> /// </summary>
[EnumField("首展")] [EnumField("首展")]
FirstExhibit = 4 FirstExhibit = 4,
/// <summary>
/// 创新首店品牌
/// </summary>
[EnumField("创新首店品牌")]
NewFirstShop = 5
} }
} }
...@@ -75,7 +75,7 @@ namespace Mall.Model.Entity.TradePavilion ...@@ -75,7 +75,7 @@ namespace Mall.Model.Entity.TradePavilion
public int PrizeNum { get; set; } public int PrizeNum { get; set; }
/// <summary> /// <summary>
/// 绑定状态 枚举 /// 榜单状态 枚举
/// </summary> /// </summary>
public ListStateEnum ListState { get; set; } public ListStateEnum ListState { get; set; }
......
...@@ -70,7 +70,7 @@ namespace Mall.Model.Entity.TradePavilion ...@@ -70,7 +70,7 @@ namespace Mall.Model.Entity.TradePavilion
public int CandidateState { get; set; } public int CandidateState { get; set; }
/// <summary> /// <summary>
/// 上榜状态 1上榜 2未上榜 /// 上榜状态 1上榜 2未上榜 3暂存
/// </summary> /// </summary>
public int RankListState { get; set; } public int RankListState { get; set; }
......
...@@ -470,6 +470,11 @@ namespace Mall.Model.Entity.User ...@@ -470,6 +470,11 @@ namespace Mall.Model.Entity.User
/// </summary> /// </summary>
public string HatchExamineTpl { get; set; } public string HatchExamineTpl { get; set; }
/// <summary>
/// 孵化项目首店/榜单放榜通知
/// </summary>
public string ListPrizeTpl { get; set; }
/// <summary> /// <summary>
/// 点数0-未开启,1-开启 /// 点数0-未开启,1-开启
/// </summary> /// </summary>
......
...@@ -29,5 +29,10 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -29,5 +29,10 @@ namespace Mall.Model.Extend.TradePavilion
/// 用户头像 /// 用户头像
/// </summary> /// </summary>
public string UserIcon { get; set; } public string UserIcon { get; set; }
/// <summary>
/// 用户ids
/// </summary>
public string UserIds { get; set; }
} }
} }
...@@ -11,6 +11,9 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -11,6 +11,9 @@ namespace Mall.Model.Extend.TradePavilion
/// </summary> /// </summary>
public class RB_Custom_Form_Extend : RB_Custom_Form public class RB_Custom_Form_Extend : RB_Custom_Form
{ {
/// <summary>
/// 表单类型名称
/// </summary>
public string FormTypeStr { get { return this.FormType.GetEnumName(); } } public string FormTypeStr { get { return this.FormType.GetEnumName(); } }
/// <summary> /// <summary>
...@@ -115,7 +118,7 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -115,7 +118,7 @@ namespace Mall.Model.Extend.TradePavilion
/// <summary> /// <summary>
/// 编号 /// 编号
/// </summary> /// </summary>
public string Id { get; set; } public int Id { get; set; }
/// <summary> /// <summary>
/// 名称 /// 名称
......
...@@ -13,11 +13,26 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -13,11 +13,26 @@ namespace Mall.Model.Extend.TradePavilion
[DB(ConnectionName = "DefaultConnection")] [DB(ConnectionName = "DefaultConnection")]
public class RB_FirstShop_ListEnroll_Extend : RB_FirstShop_ListEnroll public class RB_FirstShop_ListEnroll_Extend : RB_FirstShop_ListEnroll
{ {
/// <summary>
/// 查询候选列表 1是
/// </summary>
public int IsSelectCandidate { get; set; }
/// <summary>
/// 查询上榜列表 1是
/// </summary>
public int IsSelectPrize { get; set; }
/// <summary> /// <summary>
/// 用户名称 /// 用户名称
/// </summary> /// </summary>
public string UserName { get; set; } public string UserName { get; set; }
/// <summary>
/// 用户头像
/// </summary>
public string UserIcon { get; set; }
/// <summary> /// <summary>
/// 品牌/载体名称 /// 品牌/载体名称
/// </summary> /// </summary>
...@@ -28,6 +43,20 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -28,6 +43,20 @@ namespace Mall.Model.Extend.TradePavilion
/// </summary> /// </summary>
public string ObjectIcon { get; set; } public string ObjectIcon { get; set; }
/// <summary>
/// 企业名称
/// </summary>
public string CompanyName { get; set; }
/// <summary>
/// 联系人(责任人)
/// </summary>
public string Principal { get; set; }
/// <summary>
/// 联系电话
/// </summary>
public string Mobile { get; set; }
/// <summary> /// <summary>
/// 对象ids /// 对象ids
......
...@@ -38,6 +38,11 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -38,6 +38,11 @@ namespace Mall.Model.Extend.TradePavilion
/// </summary> /// </summary>
public int IsAppletSelectNor { get; set; } public int IsAppletSelectNor { get; set; }
/// <summary>
/// 年份
/// </summary>
public int Year { get; set; }
/// <summary> /// <summary>
/// 报名 /// 报名
/// </summary> /// </summary>
...@@ -47,5 +52,23 @@ namespace Mall.Model.Extend.TradePavilion ...@@ -47,5 +52,23 @@ namespace Mall.Model.Extend.TradePavilion
/// 上榜列表 /// 上榜列表
/// </summary> /// </summary>
public List<RB_FirstShop_ListEnroll_Extend> RankList { get; set; } public List<RB_FirstShop_ListEnroll_Extend> RankList { get; set; }
#region 奖章信息
/// <summary>
/// 排名
/// </summary>
public int Rank { get; set; }
/// <summary>
/// 奖章图标
/// </summary>
public string MedalImage { get; set; }
/// <summary>
/// 上榜状态 1上榜 2未上榜
/// </summary>
public int RankListState { get; set; }
#endregion
} }
} }
using Mall.Model.Extend.TradePavilion; using Mall.Model.Extend.TradePavilion;
using Mall.Repository.TradePavilion; using Mall.Repository.TradePavilion;
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text;
using VT.FW.AOP.CustomerAttribute; using VT.FW.AOP.CustomerAttribute;
using Mall.Common.Enum; using Mall.Common.Enum;
using VT.FW.DB; using VT.FW.DB;
using Newtonsoft.Json.Linq; using Newtonsoft.Json.Linq;
using Mall.Common.Plugin; using Mall.Common.Plugin;
using System.Linq;
namespace Mall.Module.TradePavilion namespace Mall.Module.TradePavilion
{ {
...@@ -44,6 +43,30 @@ namespace Mall.Module.TradePavilion ...@@ -44,6 +43,30 @@ namespace Mall.Module.TradePavilion
return custom_FormRepository.GetCustomFormListRepository(query); return custom_FormRepository.GetCustomFormListRepository(query);
} }
/// <summary>
/// 小程序获取榜单表单
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public object AppGetCustomFormModule(RB_Custom_Form_Extend query)
{
object result = new object();
var model = GetCustomFormListModule(query)?.FirstOrDefault();
if (model != null)
{
var dataList = AnalyzeFormComponent(model.FormData, isGetAnswer: false);
result = new
{
model.Id,
model.FormName,
model.FormType,
model.FormTypeStr,
FormData = dataList
};
}
return result;
}
/// <summary> /// <summary>
/// 检查表单是否存在 /// 检查表单是否存在
/// </summary> /// </summary>
...@@ -134,84 +157,39 @@ namespace Mall.Module.TradePavilion ...@@ -134,84 +157,39 @@ namespace Mall.Module.TradePavilion
}; };
if (!string.IsNullOrEmpty(dataItem.CompKey)) if (!string.IsNullOrEmpty(dataItem.CompKey))
{ {
string compData = jObj.GetStringValue("CompData");
switch (dataItem.CompKey) switch (dataItem.CompKey)
{ {
//单行文本 //单行文本
case "SingleLineText": case "SingleLineText":
JObject singleObj = JObject.Parse(jObj.GetStringValue("CompData")); TextItem txtItem = GetTextItem(compData);
TextItem txtItem = new TextItem() if (!isGetAnswer)
{ {
Name = singleObj.GetStringValue("Name"), txtItem.TextValue = "";
WordsLength = singleObj.GetInt("WordsLength"), }
IsRequire = singleObj.GetBoolValue("IsRequire"),
Remark = singleObj.GetStringValue("Remark"),
TextValue = isGetAnswer ? singleObj.GetStringValue("TextValue") : "",
};
dataItem.CompData = txtItem; dataItem.CompData = txtItem;
break; break;
//多行文本 //多行文本
case "MultiLineText": case "MultiLineText":
JObject multiObj = JObject.Parse(jObj.GetStringValue("CompData")); TextItem multiItem = GetTextItem(compData);
TextItem multiItem = new TextItem() if (!isGetAnswer)
{ {
Name = multiObj.GetStringValue("Name"), multiItem.TextValue = "";
WordsLength = multiObj.GetInt("WordsLength"), }
IsRequire = multiObj.GetBoolValue("IsRequire"),
Remark = multiObj.GetStringValue("Remark"),
TextValue = isGetAnswer ? multiObj.GetStringValue("TextValue") : "",
};
dataItem.CompData = multiItem; dataItem.CompData = multiItem;
break; break;
//下拉框 //下拉框
case "DorpDownList": case "DorpDownList":
JObject dropdownObj = JObject.Parse(jObj.GetStringValue("CompData")); SelectItem selectItem = GetSelectItem(compData);
SelectItem selectItem = new SelectItem() if (!isGetAnswer)
{
Name = dropdownObj.GetStringValue("Name"),
IsMultiple = dropdownObj.GetBoolValue("IsMultiple"),
IsRequire = dropdownObj.GetBoolValue("IsRequire"),
OptionValue = isGetAnswer ? dropdownObj.GetStringValue("OptionValue") : "",
OptionList = new List<SelectOption>(),
Remark=dropdownObj.GetStringValue("Remark"),
};
var optionList = JArray.Parse(dropdownObj.GetStringValue("OptionList"));
if (optionList != null && optionList.Count > 0)
{ {
foreach (var oItem in optionList) selectItem.OptionValue = "";
{
JObject optionObj = JObject.Parse(oItem.ToString());
SelectOption option = new SelectOption()
{
Id= optionObj.GetStringValue("Id"),
Name= optionObj.GetStringValue("Name"),
};
selectItem.OptionList.Add(option);
}
} }
dataItem.CompData = selectItem; dataItem.CompData = selectItem;
break; break;
//图片上传组件 //图片上传组件
case "ImageUploadComp": case "ImageUploadComp":
JObject imgObj = JObject.Parse(jObj.GetStringValue("CompData")); UploadItem imgItem = GetUploadItem(compData);
UploadItem imgItem = new UploadItem()
{
Name = imgObj.GetStringValue("Name"),
FileCount = imgObj.GetInt("FileCount"),
FileSizeLimit = imgObj.GetInt("FileSizeLimit"),
Remark = imgObj.GetStringValue("Remark"),
FileList = new List<string>(),
};
if (!string.IsNullOrEmpty(imgObj.GetStringValue("FileList")))
{
try
{
imgItem.FileList = Common.Plugin.JsonHelper.DeserializeObject<List<string>>(imgObj.GetStringValue("FileList"));
}
catch
{
}
}
if (!isGetAnswer) if (!isGetAnswer)
{ {
imgItem.FileList = new List<string>(); imgItem.FileList = new List<string>();
...@@ -220,23 +198,7 @@ namespace Mall.Module.TradePavilion ...@@ -220,23 +198,7 @@ namespace Mall.Module.TradePavilion
break; break;
//视频上传组件 //视频上传组件
case "VideoUploadComp": case "VideoUploadComp":
JObject videoObj = JObject.Parse(jObj.GetStringValue("CompData")); UploadItem videoItem = GetUploadItem(compData);
UploadItem videoItem = new UploadItem()
{
Name = videoObj.GetStringValue("Name"),
FileCount = videoObj.GetInt("FileCount"),
FileSizeLimit = videoObj.GetInt("FileSizeLimit"),
Remark=videoObj.GetStringValue("Remark"),
FileList = new List<string>(),
};
try
{
videoItem.FileList = Common.Plugin.JsonHelper.DeserializeObject<List<string>>(videoObj.GetStringValue("FileList"));
}
catch
{
}
if (!isGetAnswer) if (!isGetAnswer)
{ {
videoItem.FileList = new List<string>(); videoItem.FileList = new List<string>();
...@@ -252,6 +214,100 @@ namespace Mall.Module.TradePavilion ...@@ -252,6 +214,100 @@ namespace Mall.Module.TradePavilion
return dataList; return dataList;
} }
/// <summary>
/// 获取文本框信息
/// </summary>
/// <param name="CompData"></param>
/// <returns></returns>
private TextItem GetTextItem(string CompData)
{
JObject textObj = JObject.Parse(CompData);
TextItem txtItem = new TextItem()
{
Name = textObj.GetStringValue("Name"),
WordsLength = textObj.GetInt("WordsLength"),
IsRequire = textObj.GetBoolValue("IsRequire"),
Remark = textObj.GetStringValue("Remark"),
TextValue = textObj.GetStringValue("TextValue"),
};
return txtItem;
}
/// <summary>
/// 获取下拉框信息
/// </summary>
/// <param name="CompData"></param>
/// <returns></returns>
private SelectItem GetSelectItem(string CompData)
{
JObject dropdownObj = JObject.Parse(CompData);
SelectItem selectItem = new SelectItem()
{
Name = dropdownObj.GetStringValue("Name"),
IsMultiple = dropdownObj.GetBoolValue("IsMultiple"),
IsRequire = dropdownObj.GetBoolValue("IsRequire"),
OptionList = new List<SelectOption>(),
Remark = dropdownObj.GetStringValue("Remark"),
};
if (selectItem.IsMultiple)
{
List<string> valueList = JsonHelper.DeserializeObject<List<string>>(dropdownObj.GetStringValue("OptionValue"));
if (valueList != null && valueList.Count > 0)
{
selectItem.OptionValue = string.Join(",", valueList);
}
}
else
{
selectItem.OptionValue = dropdownObj.GetStringValue("OptionValue");
}
var optionList = JArray.Parse(dropdownObj.GetStringValue("OptionList"));
if (optionList != null && optionList.Count > 0)
{
foreach (var oItem in optionList)
{
JObject optionObj = JObject.Parse(oItem.ToString());
SelectOption option = new SelectOption()
{
Id = optionObj.GetInt("Id"),
Name = optionObj.GetStringValue("Name"),
};
selectItem.OptionList.Add(option);
}
}
return selectItem;
}
/// <summary>
/// 获取上传配置信息
/// </summary>
/// <param name="CompData"></param>
/// <returns></returns>
private UploadItem GetUploadItem(string CompData)
{
JObject uploadObj = JObject.Parse(CompData);
UploadItem uploadItem = new UploadItem()
{
Name = uploadObj.GetStringValue("Name"),
FileCount = uploadObj.GetInt("FileCount"),
FileSizeLimit = uploadObj.GetInt("FileSizeLimit"),
Remark = uploadObj.GetStringValue("Remark"),
FileList = new List<string>(),
};
if (!string.IsNullOrEmpty(uploadObj.GetStringValue("FileList")))
{
try
{
uploadItem.FileList =JsonHelper.DeserializeObject<List<string>>(uploadObj.GetStringValue("FileList"));
}
catch
{
}
}
return uploadItem;
}
/// <summary> /// <summary>
/// 根据编号删除自定义表单 /// 根据编号删除自定义表单
......
using Mall.Common; using Mall.Common;
using Mall.Common.Plugin; using Mall.Common.Plugin;
using Mall.Model.Extend.TradePavilion; using Mall.Model.Extend.TradePavilion;
using Mall.Module.User;
using Mall.Repository.TradePavilion; using Mall.Repository.TradePavilion;
using Mall.Repository.User; using Mall.Repository.User;
using System; using System;
...@@ -33,6 +34,10 @@ namespace Mall.Module.TradePavilion ...@@ -33,6 +34,10 @@ namespace Mall.Module.TradePavilion
/// </summary> /// </summary>
private readonly RB_CarrierRepository carrierRepository = new RB_CarrierRepository(); private readonly RB_CarrierRepository carrierRepository = new RB_CarrierRepository();
/// <summary> /// <summary>
/// 企业信息
/// </summary>
private readonly RB_CompanyRepository companyRepository = new RB_CompanyRepository();
/// <summary>
/// 用户 /// 用户
/// </summary> /// </summary>
private readonly RB_Member_UserRepository member_UserRepository = new RB_Member_UserRepository(); private readonly RB_Member_UserRepository member_UserRepository = new RB_Member_UserRepository();
...@@ -429,6 +434,322 @@ namespace Mall.Module.TradePavilion ...@@ -429,6 +434,322 @@ namespace Mall.Module.TradePavilion
return list; 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_FirstShop_ListEnroll_Extend> GetFirstShopEnrollPageList(int pageIndex, int pageSize, out long count, RB_FirstShop_ListEnroll_Extend demodel)
{
var list = firstShop_ListEnrollRepository.GetPageList(pageIndex, pageSize, out count, demodel);
if (list.Any()) {
string userIds = string.Join(",", list.Select(x => x.UserId).Distinct());
//企业名称
var companylist = companyRepository.GetCompanyListRepository(new RB_Company_Extend() { MallBaseId = demodel.MallBaseId, UserIds = userIds });
foreach (var item in list) {
var companyModel = companylist.Where(x => x.CreateBy == item.UserId).FirstOrDefault();
item.CompanyName = companyModel.CompanyName;
item.Principal = companyModel.Principal;
item.Mobile = companyModel.Mobile;
}
//查询 品牌/载体 名称 图片
var e1list = list.Where(x => x.ObjectType == Common.Enum.TradePavilion.ListObjectTypeEnum.Brand).ToList();
var e2list = list.Where(x => x.ObjectType == Common.Enum.TradePavilion.ListObjectTypeEnum.Carrier).ToList();
if (e1list.Any())
{
//查询品牌
string bids = string.Join(",", e1list.Select(x => x.ObjectId));
var blist = brandRepository.GetBrandList(new RB_Brand_Extend() { MallBaseId = demodel.MallBaseId, BrandIds = bids });
foreach (var item in e1list)
{
var bmodel = blist.Where(x => x.ID == item.ObjectId).FirstOrDefault();
item.ObjectName = bmodel?.BrandName ?? "";
item.ObjectIcon = bmodel?.Logo ?? "";
}
}
if (e2list.Any())
{
//查询载体
string cids = string.Join(",", e2list.Select(x => x.ObjectId));
var clist = carrierRepository.GetCarrierList(new RB_Carrier_Extend() { MallBaseId = demodel.MallBaseId, CarrierIds = cids });
foreach (var item in e2list)
{
var cmodel = clist.Where(x => x.ID == item.ObjectId).FirstOrDefault();
item.ObjectName = cmodel?.CarrierName ?? "";
item.ObjectIcon = cmodel?.Logo ?? "";
}
}
}
return list;
}
/// <summary>
/// 设置报名状态
/// </summary>
/// <param name="enrollId"></param>
/// <param name="type"></param>
/// <param name="mallBaseId"></param>
/// <param name="empId"></param>
/// <returns></returns>
public string SetFirstShopEnrollState(int enrollId, int type, int mallBaseId, int empId)
{
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_FirstShop_ListEnroll_Extend.UpdateBy),empId},
{ nameof(RB_FirstShop_ListEnroll_Extend.UpdateDate),DateTime.Now}
};
if (type == 1)
{
//淘汰
keyValues.Add(nameof(RB_FirstShop_ListEnroll_Extend.CandidateState), 3);
}
else if (type == 2)
{
//候选
keyValues.Add(nameof(RB_FirstShop_ListEnroll_Extend.CandidateState), 2);
}
else if (type == 3)
{
//重置
keyValues.Add(nameof(RB_FirstShop_ListEnroll_Extend.CandidateState), 1);
}
else {
return "状态有误,请核实后再试";
}
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_FirstShop_ListEnroll_Extend.Id),
FiledValue=enrollId,
OperatorEnum=OperatorEnum.Equal
},
new WhereHelper(){
FiledName = nameof(RB_FirstShop_ListEnroll_Extend.MallBaseId),
FiledValue=mallBaseId,
OperatorEnum=OperatorEnum.Equal
}
};
bool flag = firstShop_ListEnrollRepository.Update(keyValues, wheres);
return flag ? "" : "修改失败,请联系管理员";
}
/// <summary>
/// 获取候选的报名列表
/// </summary>
/// <param name="listId"></param>
/// <param name="mallBaseId"></param>
/// <returns></returns>
public List<RB_FirstShop_ListEnroll_Extend> GetFirstShopEnrollCandidateList(int listId, int mallBaseId)
{
var list = firstShop_ListEnrollRepository.GetList(new RB_FirstShop_ListEnroll_Extend() { MallBaseId = mallBaseId, ListId = listId, IsSelectCandidate = 1 });
if (list.Any())
{
string userIds = string.Join(",", list.Select(x => x.UserId).Distinct());
//企业名称
var companylist = companyRepository.GetCompanyListRepository(new RB_Company_Extend() { MallBaseId = mallBaseId, UserIds = userIds });
foreach (var item in list)
{
var companyModel = companylist.Where(x => x.CreateBy == item.UserId).FirstOrDefault();
item.CompanyName = companyModel.CompanyName;
item.Principal = companyModel.Principal;
item.Mobile = companyModel.Mobile;
}
//查询 品牌/载体 名称 图片
var e1list = list.Where(x => x.ObjectType == Common.Enum.TradePavilion.ListObjectTypeEnum.Brand).ToList();
var e2list = list.Where(x => x.ObjectType == Common.Enum.TradePavilion.ListObjectTypeEnum.Carrier).ToList();
if (e1list.Any())
{
//查询品牌
string bids = string.Join(",", e1list.Select(x => x.ObjectId));
var blist = brandRepository.GetBrandList(new RB_Brand_Extend() { MallBaseId = mallBaseId, BrandIds = bids });
foreach (var item in e1list)
{
var bmodel = blist.Where(x => x.ID == item.ObjectId).FirstOrDefault();
item.ObjectName = bmodel?.BrandName ?? "";
item.ObjectIcon = bmodel?.Logo ?? "";
}
}
if (e2list.Any())
{
//查询载体
string cids = string.Join(",", e2list.Select(x => x.ObjectId));
var clist = carrierRepository.GetCarrierList(new RB_Carrier_Extend() { MallBaseId = mallBaseId, CarrierIds = cids });
foreach (var item in e2list)
{
var cmodel = clist.Where(x => x.ID == item.ObjectId).FirstOrDefault();
item.ObjectName = cmodel?.CarrierName ?? "";
item.ObjectIcon = cmodel?.Logo ?? "";
}
}
}
return list;
}
/// <summary>
/// 设置放榜
/// </summary>
/// <param name="type"></param>
/// <param name="listId"></param>
/// <param name="deList"></param>
/// <param name="mallBaseId"></param>
/// <returns></returns>
public string SetFirstShopConfirmListInfo(int type, int listId, List<RB_FirstShop_ListEnroll_Extend> deList, int mallBaseId, int empId)
{
var listModel = firstShop_ListRepository.GetEntity(listId);
if (listModel == null || listModel.MallBaseId != mallBaseId) { return "榜单不存在"; }
if (listModel.ListState == Common.Enum.TradePavilion.ListStateEnum.Confirmed) { return "已放榜,无法再次修改"; }
if (listModel.PrizeNum != deList.Count()) { return "名单数量不正确"; }
//首先清除历史评比
firstShop_ListEnrollRepository.ClearHostoryAppraisal(listId, mallBaseId);
int RankListState = type == 1 ? 3 : 2;
if (type == 1) {
//设置榜单为已放榜
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_FirstShop_List_Extend.ListState),Common.Enum.TradePavilion.ListStateEnum.Confirmed},
{ nameof(RB_FirstShop_List_Extend.UpdateBy),empId},
{ nameof(RB_FirstShop_List_Extend.UpdateDate),DateTime.Now},
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_FirstShop_List_Extend.Id),
FiledValue=listModel.Id,
OperatorEnum=OperatorEnum.Equal
}
};
firstShop_ListRepository.Update(keyValues, wheres);
}
foreach (var item in deList) {
Dictionary<string, object> keyValues = new Dictionary<string, object>() {
{ nameof(RB_FirstShop_ListEnroll_Extend.Reviews),item.Reviews },
{ nameof(RB_FirstShop_ListEnroll_Extend.Rank),item.Rank },
{ nameof(RB_FirstShop_ListEnroll_Extend.MedalImage),item.MedalImage },
{ nameof(RB_FirstShop_ListEnroll_Extend.MedalImageBig),item.MedalImageBig },
{ nameof(RB_FirstShop_ListEnroll_Extend.RankListState),RankListState },
{ nameof(RB_FirstShop_ListEnroll_Extend.UpdateBy),empId },
{ nameof(RB_FirstShop_ListEnroll_Extend.UpdateDate),item.Reviews }
};
List<WhereHelper> wheres = new List<WhereHelper>() {
new WhereHelper(){
FiledName=nameof(RB_FirstShop_ListEnroll_Extend.Id),
FiledValue=item.Id,
OperatorEnum=OperatorEnum.Equal
}
};
firstShop_ListEnrollRepository.Update(keyValues, wheres);
}
if (type == 2)
{
//推送小程序消息
System.Threading.Tasks.Task.Run(() =>
{
//查询所有的报名记录
var SendList = firstShop_ListEnrollRepository.GetList(new RB_FirstShop_ListEnroll_Extend() { MallBaseId = mallBaseId, ListId = listId });
if (SendList.Any())
{
//查询 品牌/载体 名称 图片
var e1list = SendList.Where(x => x.ObjectType == Common.Enum.TradePavilion.ListObjectTypeEnum.Brand).ToList();
var e2list = SendList.Where(x => x.ObjectType == Common.Enum.TradePavilion.ListObjectTypeEnum.Carrier).ToList();
if (e1list.Any())
{
//查询品牌
string bids = string.Join(",", e1list.Select(x => x.ObjectId));
var blist = brandRepository.GetBrandList(new RB_Brand_Extend() { MallBaseId = mallBaseId, BrandIds = bids });
foreach (var item in e1list)
{
var bmodel = blist.Where(x => x.ID == item.ObjectId).FirstOrDefault();
item.ObjectName = bmodel?.BrandName ?? "";
item.ObjectIcon = bmodel?.Logo ?? "";
}
}
if (e2list.Any())
{
//查询载体
string cids = string.Join(",", e2list.Select(x => x.ObjectId));
var clist = carrierRepository.GetCarrierList(new RB_Carrier_Extend() { MallBaseId = mallBaseId, CarrierIds = cids });
foreach (var item in e2list)
{
var cmodel = clist.Where(x => x.ID == item.ObjectId).FirstOrDefault();
item.ObjectName = cmodel?.CarrierName ?? "";
item.ObjectIcon = cmodel?.Logo ?? "";
}
}
foreach (var item in SendList)
{
var umodel = member_UserRepository.GetEntity(item.UserId);
string ListName = listModel.ListName;
string ObjectName = item.ObjectName;
string Result = "未上榜";
string Remark = "很遗憾通知您未上榜,感谢您的参与";
if (deList.Where(x => x.Id == item.Id).Any())
{
Result = "上榜";
Remark = item.Reviews;
}
new MiniProgramMsgModule().SendFirstShopPrizeMsg(umodel.TenantId, umodel.MallBaseId, umodel.OpenId, ListName, ObjectName, Result, Remark);
}
}
});
}
return "";
}
/// <summary>
/// 获取放榜详情列表
/// </summary>
/// <param name="listId"></param>
/// <param name="mallBaseId"></param>
/// <returns></returns>
public List<RB_FirstShop_ListEnroll_Extend> GetFirstShopConfirmListList(int listId, int mallBaseId)
{
var list = firstShop_ListEnrollRepository.GetList(new RB_FirstShop_ListEnroll_Extend() { MallBaseId = mallBaseId, ListId = listId, IsSelectPrize = 1 });
if (list.Any())
{
string userIds = string.Join(",", list.Select(x => x.UserId).Distinct());
//企业名称
var companylist = companyRepository.GetCompanyListRepository(new RB_Company_Extend() { MallBaseId = mallBaseId, UserIds = userIds });
foreach (var item in list)
{
var companyModel = companylist.Where(x => x.CreateBy == item.UserId).FirstOrDefault();
item.CompanyName = companyModel.CompanyName;
item.Principal = companyModel.Principal;
item.Mobile = companyModel.Mobile;
}
//查询 品牌/载体 名称 图片
var e1list = list.Where(x => x.ObjectType == Common.Enum.TradePavilion.ListObjectTypeEnum.Brand).ToList();
var e2list = list.Where(x => x.ObjectType == Common.Enum.TradePavilion.ListObjectTypeEnum.Carrier).ToList();
if (e1list.Any())
{
//查询品牌
string bids = string.Join(",", e1list.Select(x => x.ObjectId));
var blist = brandRepository.GetBrandList(new RB_Brand_Extend() { MallBaseId = mallBaseId, BrandIds = bids });
foreach (var item in e1list)
{
var bmodel = blist.Where(x => x.ID == item.ObjectId).FirstOrDefault();
item.ObjectName = bmodel?.BrandName ?? "";
item.ObjectIcon = bmodel?.Logo ?? "";
}
}
if (e2list.Any())
{
//查询载体
string cids = string.Join(",", e2list.Select(x => x.ObjectId));
var clist = carrierRepository.GetCarrierList(new RB_Carrier_Extend() { MallBaseId = mallBaseId, CarrierIds = cids });
foreach (var item in e2list)
{
var cmodel = clist.Where(x => x.ID == item.ObjectId).FirstOrDefault();
item.ObjectName = cmodel?.CarrierName ?? "";
item.ObjectIcon = cmodel?.Logo ?? "";
}
}
}
return list;
}
/// <summary> /// <summary>
/// 获取列表 /// 获取列表
...@@ -439,6 +760,5 @@ namespace Mall.Module.TradePavilion ...@@ -439,6 +760,5 @@ namespace Mall.Module.TradePavilion
{ {
return firstShop_ListEnrollRepository.GetList(dmodel); return firstShop_ListEnrollRepository.GetList(dmodel);
} }
} }
} }
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
<ItemGroup> <ItemGroup>
<ProjectReference Include="..\Mall.Model\Mall.Model.csproj" /> <ProjectReference Include="..\Mall.Model\Mall.Model.csproj" />
<ProjectReference Include="..\Mall.Module.User\Mall.Module.User.csproj" />
<ProjectReference Include="..\Mall.Repository\Mall.Repository.csproj" /> <ProjectReference Include="..\Mall.Repository\Mall.Repository.csproj" />
</ItemGroup> </ItemGroup>
......
...@@ -1095,6 +1095,76 @@ namespace Mall.Module.User ...@@ -1095,6 +1095,76 @@ namespace Mall.Module.User
return false; return false;
} }
/// <summary>
/// 首店放榜发送订阅消息
/// </summary>
/// <param name="TenantId"></param>
/// <param name="MallBaseId"></param>
/// <param name="OpenId"></param>
/// <param name="listName"></param>
/// <param name="objectName"></param>
/// <param name="result"></param>
/// <param name="remark"></param>
/// <returns></returns>
public bool SendFirstShopPrizeMsg(int TenantId, int MallBaseId, string OpenId, string listName, string objectName, string result, string remark)
{
var appletWeChatModel = programRepository.GetListRepository(new RB_MiniProgram_Extend { TenantId = TenantId, MallBaseId = MallBaseId }).FirstOrDefault();
string token = WeiXinReidsCache.Get(appletWeChatModel.MiniAppId);
if (string.IsNullOrEmpty(token))
{
token = Mall.Common.Pay.WeChatPat.TokenHelper.GetLXYToken(token, appletWeChatModel.MiniAppId, appletWeChatModel.MiniAppSecret);
System.Threading.Tasks.Task.Run(() => WeiXinReidsCache.Set(appletWeChatModel.MiniAppId, token));
}
if (string.IsNullOrEmpty(token))
{
return false;
}
string wenXinResult = string.Empty;
if (!string.IsNullOrWhiteSpace(token))
{
string Url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" + token;
var postdata = new
{
touser = OpenId,
template_id = appletWeChatModel.ListPrizeTpl,
page = "pages/user-center/user-center",
data = new
{
thing1 = new
{
value = listName
},
thing2 = new
{
value = objectName
},
thing6 = new
{
value = result
},
thing4 = new
{
value = remark
}
}
};
wenXinResult = HttpHelper.HttpPost(Url, JsonHelper.Serialize(postdata), "");
JObject jo = (JObject)JsonConvert.DeserializeObject(wenXinResult);
int errcode = Convert.ToInt32(jo["errcode"].ToString());
if (errcode == 0)
{
//成功
return true;
}
else
{
LogHelper.Write(string.Format("SendFirstShopPrizeMsg:wenXinResult:{0}", wenXinResult));
}
}
return false;
}
#endregion #endregion
#region 评论违规检测 #region 评论违规检测
......
...@@ -106,5 +106,52 @@ WHERE 1=1 ...@@ -106,5 +106,52 @@ WHERE 1=1
} }
return Get<RB_Company_Extend>(builder.ToString(), parameters).FirstOrDefault(); return Get<RB_Company_Extend>(builder.ToString(), parameters).FirstOrDefault();
} }
/// <summary>
/// 获取列表
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<RB_Company_Extend> GetCompanyListRepository(RB_Company_Extend query)
{
DynamicParameters parameters = new DynamicParameters();
StringBuilder builder = new StringBuilder();
builder.AppendFormat(@"
SELECT *
FROM RB_Company
WHERE 1=1
");
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Company_Extend.Status), (int)DateStateEnum.Normal);
if (query == null)
{
return new List<RB_Company_Extend>();
}
else
{
if (query.TenantId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Company_Extend.TenantId), query.TenantId);
}
if (query.MallBaseId > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Company_Extend.MallBaseId), query.MallBaseId);
}
if (!string.IsNullOrEmpty(query.CompanyName))
{
builder.AppendFormat(" AND {0} LIKE @Name ", nameof(RB_Company_Extend.CompanyName));
parameters.Add("Name", "%" + query.CompanyName.Trim() + "%");
}
if (query.CreateBy > 0)
{
builder.AppendFormat(" AND {0}={1} ", nameof(RB_Company_Extend.CreateBy), query.CreateBy);
}
if (!string.IsNullOrEmpty(query.UserIds))
{
builder.AppendFormat(" AND {0} in({1}) ", nameof(RB_Company_Extend.CreateBy), query.UserIds);
}
}
return Get<RB_Company_Extend>(builder.ToString(), parameters).ToList();
}
} }
} }
...@@ -34,6 +34,10 @@ namespace Mall.Repository.TradePavilion ...@@ -34,6 +34,10 @@ namespace Mall.Repository.TradePavilion
{ {
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}";
...@@ -51,7 +55,7 @@ namespace Mall.Repository.TradePavilion ...@@ -51,7 +55,7 @@ namespace Mall.Repository.TradePavilion
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.RankListState)}={dmodel.RankListState}"; where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.RankListState)}={dmodel.RankListState}";
} }
string sql = $@"select w.*,u.Name as UserName from RB_FirstShop_ListEnroll w string sql = $@"select w.*,u.Name as UserName,u.Photo as UserIcon from RB_FirstShop_ListEnroll w
left join rb_member_user u on w.UserId = u.Id left join rb_member_user u on w.UserId = u.Id
where {where} order by w.Id desc where {where} order by w.Id desc
"; ";
...@@ -91,6 +95,14 @@ where {where} order by w.Id desc ...@@ -91,6 +95,14 @@ where {where} order by w.Id desc
{ {
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.CandidateState)}={dmodel.CandidateState}"; where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.CandidateState)}={dmodel.CandidateState}";
} }
if (dmodel.IsSelectCandidate == 1)
{
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.CandidateState)} <>3";
}
if (dmodel.IsSelectPrize == 1)
{
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.RankListState)} <>2";
}
if (!string.IsNullOrWhiteSpace(dmodel.ObjectIds)) if (!string.IsNullOrWhiteSpace(dmodel.ObjectIds))
{ {
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.ObjectId)} in ({dmodel.ObjectIds})"; where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.ObjectId)} in ({dmodel.ObjectIds})";
...@@ -107,5 +119,16 @@ where {where} order by w.Id desc ...@@ -107,5 +119,16 @@ where {where} order by w.Id desc
return Get<RB_FirstShop_ListEnroll_Extend>(sql, parameters).ToList(); return Get<RB_FirstShop_ListEnroll_Extend>(sql, parameters).ToList();
} }
/// <summary>
/// 清除历史评比
/// </summary>
/// <param name="listId"></param>
/// <param name="mallBaseId"></param>
/// <returns></returns>
public bool ClearHostoryAppraisal(int listId, int mallBaseId)
{
string sql = $@"UPDATE rb_firstshop_listenroll SET Reviews='',Rank=0,MedalImage='',MedalImageBig='',RankListState=2 WHERE ListId ={listId} and MallBaseId ={mallBaseId}";
return Execute(sql) > 0;
}
} }
} }
\ No newline at end of file
...@@ -74,6 +74,10 @@ namespace Mall.Repository.TradePavilion ...@@ -74,6 +74,10 @@ namespace Mall.Repository.TradePavilion
where += $@" and w.{nameof(RB_FirstShop_List_Extend.ListState)} <>{(int)Common.Enum.TradePavilion.ListStateEnum.Cancel}"; 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")}'"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.StartDate)} <='{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}'";
} }
if (dmodel.Year > 0)
{
where += $@" and (YEAR(w.{nameof(RB_FirstShop_List_Extend.StartDate)})={dmodel.Year} or YEAR(w.{nameof(RB_FirstShop_List_Extend.EndDate)})={dmodel.Year})";
}
string orderBy = " order by w.Id desc"; string orderBy = " order by w.Id desc";
if (dmodel.OrderBy == 1) { if (dmodel.OrderBy == 1) {
...@@ -167,14 +171,18 @@ where {where} order by w.Id desc ...@@ -167,14 +171,18 @@ where {where} order by w.Id desc
{ {
where += $@" and w.{nameof(RB_FirstShop_List_Extend.MallBaseId)}={dmodel.MallBaseId}"; where += $@" and w.{nameof(RB_FirstShop_List_Extend.MallBaseId)}={dmodel.MallBaseId}";
} }
if (dmodel.Year > 0)
{
where += $@" and YEAR(e.{nameof(RB_FirstShop_ListEnroll_Extend.CreateDate)})={dmodel.Year}";
}
if (dmodel.CreateBy > 0) if (dmodel.CreateBy > 0)
{ {
where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.UserId)}={dmodel.CreateBy}"; where += $@" and w.{nameof(RB_FirstShop_ListEnroll_Extend.UserId)}={dmodel.CreateBy}";
} }
string sql = $@"select w.* from RB_FirstShop_List w string sql = $@"select w.*,e.ObjectType,e.ObjectId,e.Rank,e.MedalImage,e.RankListState from RB_FirstShop_List w
left join rb_firstshop_listenroll e on w.Id = e.ListId left join rb_firstshop_listenroll e on w.Id = e.ListId
where {where} group by w.Id order by w.EndDate desc where {where} group by w.Id,e.ObjectType,e.ObjectId order by w.EndDate desc
"; ";
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();
} }
......
...@@ -89,7 +89,7 @@ namespace Mall.WebApi.Controllers.MallBase ...@@ -89,7 +89,7 @@ namespace Mall.WebApi.Controllers.MallBase
FormType = (Common.Enum.TradePavilion.CustomFormTypeEnum)parms.GetInt("FormType") FormType = (Common.Enum.TradePavilion.CustomFormTypeEnum)parms.GetInt("FormType")
}; };
var formData = parms.GetStringValue("FormData"); var formData = parms.GetStringValue("FormData");
List<FormDataItem> dataList = customFormModule.AnalyzeFormComponent(formData); List<FormDataItem> dataList = customFormModule.AnalyzeFormComponent(formData,isGetAnswer:true);
if (dataList != null && dataList.Count > 0) if (dataList != null && dataList.Count > 0)
{ {
model.FormData = Common.Plugin.JsonHelper.Serialize(dataList); model.FormData = Common.Plugin.JsonHelper.Serialize(dataList);
......
...@@ -1997,7 +1997,8 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -1997,7 +1997,8 @@ namespace Mall.WebApi.Controllers.TradePavilion
demodel.OrderBy = 1; demodel.OrderBy = 1;
var list = firstShopListModule.GetAppletFirstShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel); var list = firstShopListModule.GetAppletFirstShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel);
return ApiResult.Success("", list.Select(x => new pageModel.count = Convert.ToInt32(count);
pageModel.pageData = list.Select(x => new
{ {
x.Id, x.Id,
x.ListType, x.ListType,
...@@ -2011,7 +2012,8 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -2011,7 +2012,8 @@ namespace Mall.WebApi.Controllers.TradePavilion
FinishDate = x.FinishDate.ToString("yyyy-MM-dd HH:mm"), FinishDate = x.FinishDate.ToString("yyyy-MM-dd HH:mm"),
x.PrizeNum, x.PrizeNum,
x.State x.State
})); });
return ApiResult.Success("", pageModel);
} }
/// <summary> /// <summary>
...@@ -2032,6 +2034,16 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -2032,6 +2034,16 @@ namespace Mall.WebApi.Controllers.TradePavilion
var model = firstShopListModule.GetAppletFirstShopListInfo(ListId, userInfo); var model = firstShopListModule.GetAppletFirstShopListInfo(ListId, userInfo);
if (model == null) { return ApiResult.Failed("榜单不存在"); } if (model == null) { return ApiResult.Failed("榜单不存在"); }
//获取订阅消息
var miniModel = programModule.GetMiniProgramModule(new Model.Extend.User.RB_MiniProgram_Extend { TenantId = userInfo.TenantId, MallBaseId = userInfo.MallBaseId });
List<string> template_message_list = new List<string>();
if (miniModel != null)
{
if (!string.IsNullOrWhiteSpace(miniModel.ListPrizeTpl))
{
template_message_list.Add(miniModel.ListPrizeTpl);
}
}
return ApiResult.Success("", new return ApiResult.Success("", new
{ {
model.Id, model.Id,
...@@ -2059,7 +2071,7 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -2059,7 +2071,7 @@ namespace Mall.WebApi.Controllers.TradePavilion
x.ObjectIcon, x.ObjectIcon,
x.Content x.Content
}), }),
RankList = model.RankList?.Select(x => new RankList = model.RankList?.OrderBy(x => x.Rank).Select(x => new
{ {
x.Id, x.Id,
x.UserId, x.UserId,
...@@ -2073,7 +2085,8 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -2073,7 +2085,8 @@ namespace Mall.WebApi.Controllers.TradePavilion
x.Rank, x.Rank,
x.MedalImage, x.MedalImage,
x.MedalImageBig x.MedalImageBig
}) }),
template_message_list
}); });
} }
...@@ -2199,7 +2212,8 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -2199,7 +2212,8 @@ namespace Mall.WebApi.Controllers.TradePavilion
demodel.MallBaseId = userInfo.MallBaseId; demodel.MallBaseId = userInfo.MallBaseId;
var list = firstShopListModule.GetAppletMyEnrollFistShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel); var list = firstShopListModule.GetAppletMyEnrollFistShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel);
return ApiResult.Success("", list.Select(x => new pageModel.count = Convert.ToInt32(count);
pageModel.pageData = list.Select(x => new
{ {
x.Id, x.Id,
x.ListType, x.ListType,
...@@ -2210,8 +2224,13 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -2210,8 +2224,13 @@ namespace Mall.WebApi.Controllers.TradePavilion
EndDate = x.EndDate.ToString("yyyy-MM-dd"), EndDate = x.EndDate.ToString("yyyy-MM-dd"),
StartDate = x.StartDate.ToString("yyyy-MM-dd"), StartDate = x.StartDate.ToString("yyyy-MM-dd"),
FinishDate = x.FinishDate.ToString("yyyy-MM-dd HH:mm"), FinishDate = x.FinishDate.ToString("yyyy-MM-dd HH:mm"),
x.PrizeNum x.PrizeNum,
})); x.EnableRank,
x.Rank,
x.MedalImage,
x.RankListState
});
return ApiResult.Success("", pageModel);
} }
#endregion #endregion
......
...@@ -1873,7 +1873,8 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -1873,7 +1873,8 @@ namespace Mall.WebApi.Controllers.TradePavilion
demodel.MallBaseId = req.MallBaseId; demodel.MallBaseId = req.MallBaseId;
var list = firstShopListModule.GetFirstShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel); var list = firstShopListModule.GetFirstShopListPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel);
return ApiResult.Success("", list.Select(x => new pageModel.count = Convert.ToInt32(count);
pageModel.pageData = list.Select(x => new
{ {
x.Id, x.Id,
x.ListType, x.ListType,
...@@ -1892,7 +1893,8 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -1892,7 +1893,8 @@ namespace Mall.WebApi.Controllers.TradePavilion
x.ListState, x.ListState,
ListStateName = x.ListState.GetEnumName(), ListStateName = x.ListState.GetEnumName(),
UpdateDate = x.UpdateDate.ToString("yyyy-MM-dd HH:mm:ss") UpdateDate = x.UpdateDate.ToString("yyyy-MM-dd HH:mm:ss")
})); });
return ApiResult.Success("", pageModel);
} }
/// <summary> /// <summary>
...@@ -2045,6 +2047,183 @@ namespace Mall.WebApi.Controllers.TradePavilion ...@@ -2045,6 +2047,183 @@ namespace Mall.WebApi.Controllers.TradePavilion
} }
#endregion #endregion
#region 榜单放榜
/// <summary>
/// 获取报名列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFirstShopEnrollPageList()
{
var req = base.RequestParm;
ResultPageModel pageModel = JsonHelper.DeserializeObject<ResultPageModel>(req.msg.ToString());
RB_FirstShop_ListEnroll_Extend demodel = JsonHelper.DeserializeObject<RB_FirstShop_ListEnroll_Extend>(req.msg.ToString());
demodel.TenantId = req.TenantId;
demodel.MallBaseId = req.MallBaseId;
var list = firstShopListModule.GetFirstShopEnrollPageList(pageModel.pageIndex, pageModel.pageSize, out long count, demodel);
pageModel.count = Convert.ToInt32(count);
pageModel.pageData = list.Select(x => new
{
x.Id,
x.ListId,
x.UserId,
x.UserName,
x.UserIcon,
x.Content,
x.Reviews,
x.Rank,
x.MedalImage,
x.MedalImageBig,
x.CandidateState,
x.RankListState,
x.CompanyName,
x.ObjectName,
x.ObjectIcon,
CreateDate = x.CreateDate.ToString("yyyy-MM-dd HH:mm:ss")
});
return ApiResult.Success("", pageModel);
}
/// <summary>
/// 设置报名状态
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetFirstShopEnrollState() {
var req = base.RequestParm;
JObject parms = JObject.Parse(req.msg.ToString());
int EnrollId = parms.GetInt("EnrollId", 0);//报名Id
int Type = parms.GetInt("Type", 1);//类型 1淘汰 2候选 3重置
if (EnrollId <= 0) {
return ApiResult.ParamIsNull("请传递报名ID");
}
string msg = firstShopListModule.SetFirstShopEnrollState(EnrollId, Type, req.MallBaseId, req.EmpId);
if (msg == "")
{
return ApiResult.Success();
}
else {
return ApiResult.Failed();
}
}
/// <summary>
/// 报名候选列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFirstShopEnrollCandidateList() {
var req = base.RequestParm;
JObject parms = JObject.Parse(req.msg.ToString());
int ListId = parms.GetInt("ListId", 0);//榜单Id
if (ListId <= 0)
{
return ApiResult.ParamIsNull("请传递榜单ID");
}
var list = firstShopListModule.GetFirstShopEnrollCandidateList(ListId, req.MallBaseId);
return ApiResult.Success("", list.Select(x => new
{
x.Id,
x.ListId,
x.UserId,
x.UserName,
x.UserIcon,
x.CompanyName,
x.ObjectName,
x.ObjectIcon
}));
}
/// <summary>
/// 设置放榜
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult SetFirstShopConfirmListInfo() {
var req = base.RequestParm;
JObject parms = JObject.Parse(req.msg.ToString());
int Type = parms.GetInt("Type", 1);//类型 1暂存 2放榜
int ListId = parms.GetInt("ListId", 0);
string List = parms.GetStringValue("List");
if (ListId <= 0) {
return ApiResult.ParamIsNull("请传递榜单id");
}
List<RB_FirstShop_ListEnroll_Extend> deList = JsonHelper.DeserializeObject<List<RB_FirstShop_ListEnroll_Extend>>(List);
if (deList == null || !deList.Any()) {
return ApiResult.ParamIsNull("请传递名单列表");
}
if (deList.Count() != deList.Select(x => x.Id).Distinct().Count()) {
return ApiResult.Failed("有重复数据,请核实后再试");
}
foreach (var item in deList) {
if (item.Id <= 0) {
return ApiResult.ParamIsNull("请传递报名ID");
}
if (item.UserId <= 0) {
return ApiResult.ParamIsNull("请传递用户Id");
}
if (string.IsNullOrEmpty(item.Reviews)) {
return ApiResult.ParamIsNull("请输入评语");
}
if (string.IsNullOrEmpty(item.MedalImage)) {
return ApiResult.ParamIsNull("请传递奖章");
}
if (string.IsNullOrEmpty(item.MedalImageBig))
{
return ApiResult.ParamIsNull("请传递奖章");
}
}
string msg = firstShopListModule.SetFirstShopConfirmListInfo(Type, ListId, deList, req.MallBaseId, req.EmpId);
if (msg == "")
{
return ApiResult.Success();
}
else {
return ApiResult.Failed(msg);
}
}
/// <summary>
/// 获取榜单上榜列表
/// </summary>
/// <returns></returns>
[HttpPost]
public ApiResult GetFirstShopConfirmListList() {
var req = base.RequestParm;
JObject parms = JObject.Parse(req.msg.ToString());
int ListId = parms.GetInt("ListId", 0);//榜单Id
if (ListId <= 0)
{
return ApiResult.ParamIsNull("请传递榜单ID");
}
var list = firstShopListModule.GetFirstShopConfirmListList(ListId, req.MallBaseId);
return ApiResult.Success("", list.OrderBy(x => x.Rank).Select(x => new
{
x.Id,
x.ListId,
x.UserId,
x.UserName,
x.UserIcon,
x.Reviews,
x.Rank,
x.MedalImage,
x.MedalImageBig,
x.CompanyName,
x.ObjectName,
x.ObjectIcon,
}));
}
#endregion
#region 心愿单列表 #region 心愿单列表
/// <summary> /// <summary>
......
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