using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using MyCode.Project.Domain.Message.Response.User;
using MyCode.Project.Infrastructure.Constant;
using MyCode.Project.WebApi.Controllers;
using MyCode.Project.Domain.Config;
using MyCode.Project.Services;
using MyCode.Project.Infrastructure.Common;
using MyCode.Project.Domain.Message.Request.User;
using MyCode.Project.Infrastructure.Enumeration;
using MyCode.Project.Domain.Message.Act.User;
using MyCode.Project.Domain.Message.Response.Goods;
using MyCode.Project.Domain.Model;
using MyCode.Project.Infrastructure.Extensions;
using MyCode.Project.Domain.Message.Response.Common;
using MyCode.Project.Domain.Message.Response.MaterialWarehouse;
using MyCode.Project.Domain.Message.Request.MaterialWarehouse;
using MyCode.Project.Domain.Message.Common;
using MyCode.Project.Infrastructure.Cache;
namespace MyCode.Project.WebApi.Areas.Wechat.Controllers
{
///
/// 素材库相关
///
public class MaterialWarehouseController : BaseWechatController
{
private IMaterialWarehouseService _materialWarehouseService;
private IShopActionLogService _shopActionLogService;
private IMyCodeCacheService _myCodeCacheService;
private IMiniCodeScenceService _miniCodeScenceService;
public MaterialWarehouseController(IMaterialWarehouseService materialWarehouseService
, IShopActionLogService shopActionLogService
, IMyCodeCacheService myCodeCacheService
, IMiniCodeScenceService miniCodeScenceService)
{
_materialWarehouseService = materialWarehouseService;
_shopActionLogService = shopActionLogService;
_myCodeCacheService = myCodeCacheService;
_miniCodeScenceService = miniCodeScenceService;
}
#region GetMaterialThemeList(获取主题列表)
///
/// 获取主题列表
///
///
[HttpGet]
[AllowAnonymous]
public List GetMaterialThemeList()
{
return _materialWarehouseService.GetMaterialThemeList();
}
#endregion
#region GetPageList(获取分页列表)
///
/// 获取分页列表
///
///
///
[HttpPost]
[AllowAnonymous]
public PageResult GetPageList(PagedSearch request)
{
var condition = request.Condition;
if (!string.IsNullOrWhiteSpace(condition.MaterialId) && condition.MaterialId.Length==32)
{
var json2 = _miniCodeScenceService.GetScenceData("materialId" + condition.MaterialId);
string cash = "";
if (string.IsNullOrWhiteSpace(json2))
{
cash = _myCodeCacheService.Get("materialId" + condition.MaterialId);
if (!string.IsNullOrWhiteSpace(cash))
{
try
{
_miniCodeScenceService.SaveDataFromRedis("materialId" + condition.MaterialId, cash, 11);
}
catch
{ }
}
}
else
{
cash = json2;
}
//var cash = _myCodeCacheService.Get("materialId" + condition.MaterialId);
if (!string.IsNullOrWhiteSpace(cash))
{
condition.MaterialId = cash;
}
}
var result = _materialWarehouseService.GetPageList(request);
//try
//{
// if (this.CurrentLogin != null)
// {
// //记录小程序操作
// if (this.CurrentLogin.RoleType == LoginRoleType.Clerk || this.CurrentLogin.RoleType == LoginRoleType.StoreManager)
// _shopActionLogService.SetShopActionLog(this.CurrentLogin.ShopId.SafeValue(), this.CurrentLogin.ClerkId.SafeValue(), 2, 14);
// }
//}
//catch
//{ }
return result;
}
#endregion
#region SetDownLoadTimes(设置下载人数)
///
/// 设置下载人数
///
///
[HttpPost]
[AllowAnonymous]
public void SetDownLoadTimes(IdAct act)
{
MemberLoginInfo memberLoginInfo = new MemberLoginInfo();
memberLoginInfo.UserId = Guid.Empty;
_materialWarehouseService.SetDownLoadTimes(act.Id, memberLoginInfo);
}
#endregion
#region SendAddMaterialWarehouseMesg(调度发送上传素材库通知(接收人是已开通智慧门店的店长、加盟商、加盟商子账号))
///
/// 调度发送上传素材库通知(接收人是已开通智慧门店的店长、加盟商、加盟商子账号)
///
[HttpGet]
[AllowAnonymous]
public void AddSendAddMaterialWarehouseMesgTask(string id)
{
_materialWarehouseService.AddSendAddMaterialWarehouseMesgTask(id);
}
#endregion
#region SendMaterialsStore(素材库)
///
/// 素材库
///
///
[HttpGet]
[AllowAnonymous]
public void SendMaterialsStoreTask(string id)
{
_materialWarehouseService.SendMaterialsStoreTask(id);
}
#endregion
#region GetShareCode(获取素材的小程序码)
///
/// 获取素材的小程序码
///
///
[HttpGet]
[AllowAnonymous]
public string GetShareCode(string id,string key)
{
if (key == "062811FF-F365-4213-809D-82B1274327EA")
return _materialWarehouseService.GetShareCode(id);
else
return "";
}
#endregion
}
}