AppBottomNavsService.cs 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. using Attribute;
  2. using Dto;
  3. using Vo;
  4. using Model;
  5. using Model.Base;
  6. using Repository;
  7. using Service;
  8. using Microsoft.AspNetCore.Mvc;
  9. using Common;
  10. namespace Services
  11. {
  12. /// <summary>
  13. /// app底部导航Service业务层处理
  14. /// </summary>
  15. [AppService(ServiceType = typeof(IAppBottomNavsService), ServiceLifetime = LifeTime.Transient)]
  16. public class AppBottomNavsService : BaseService<AppBottomNavs>, IAppBottomNavsService
  17. {
  18. /// <summary>
  19. /// app底部导航-列表
  20. /// </summary>
  21. /// <param name="parm">请求参数</param>
  22. /// <returns>app底部导航列表</returns>
  23. public PagedInfo<AppBottomNavsListVo> List([FromQuery] AppBottomNavsListDto parm)
  24. {
  25. //开始拼装查询条件
  26. var predicate = Expressionable.Create<AppBottomNavs>();
  27. predicate = predicate.And(m => m.appVersion == parm.appVersion);
  28. predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.kind), m => m.kind.Contains(parm.kind));
  29. var response = Queryable()
  30. .Where(predicate.ToExpression())
  31. .OrderByDescending(m => m.id)
  32. .ToPage<AppBottomNavs, AppBottomNavsListVo>(new PagerInfo());
  33. return response;
  34. }
  35. /// <summary>
  36. /// 生成APP配置文件
  37. /// </summary>
  38. /// <param name="parm">请求参数</param>
  39. /// <returns>生成APP配置文件</returns>
  40. public string makeAppInitData(string kind, string appVersion = "")
  41. {
  42. var obj = GetList(m => m.kind == kind && m.appVersion == appVersion);
  43. string str = Newtonsoft.Json.JsonConvert.SerializeObject(obj);
  44. // string str = "[{\"title\":\"首页\",\"selectIcon\":\"/static/images/tab-icon1-active1@3x.png\",\"normalIcon\":\"/static/images/tab-icon1-no@3x.png\",\"selectTextColor\":\"333333\",\"normalTextColor\":\"999999\",\"pageName\":\"index1\",\"noPageHint\":\"\",\"backgroudColor\":\"\",\"style\":\"\",\"scrollerAnimationImages\":\"\",\"pagPath\":\"\",\"showTitle\":true,\"iconSize\":34,\"statusBarColor\":\"true\",\"id\":13,\"status\":0,\"sort\":0,\"version\":0,\"createDate\":\"2024-07-11T23:38:05\",\"updateDate\":\"2024-07-19T15:19:26\",\"kind\":\"creater\",\"appVersion\":\"4.2.0\"},{\"title\":\"消息\",\"selectIcon\":\"/static/images/tab-icon3-active1@3x.png\",\"normalIcon\":\"/static/images/tab-icon3-no@3x.png\",\"selectTextColor\":\"333333\",\"normalTextColor\":\"999999\",\"pageName\":\"notice-center1\",\"noPageHint\":\"\",\"backgroudColor\":\"\",\"style\":\"\",\"scrollerAnimationImages\":\"\",\"pagPath\":\"\",\"showTitle\":false,\"iconSize\":34,\"statusBarColor\":\"true\",\"id\":14,\"status\":0,\"sort\":0,\"version\":0,\"createDate\":\"2024-07-11T23:38:05\",\"updateDate\":\"2024-11-28T17:53:32\",\"kind\":\"creater\",\"appVersion\":\"4.2.0\"},{\"title\":\"我的\",\"selectIcon\":\"/static/images/tab-icon4-active1@3x.png\",\"normalIcon\":\"/static/images/tab-icon4-no@3x.png\",\"selectTextColor\":\"333333\",\"normalTextColor\":\"999999\",\"pageName\":\"user-center1\",\"noPageHint\":\"\",\"backgroudColor\":\"\",\"style\":\"\",\"scrollerAnimationImages\":\"\",\"pagPath\":\"\",\"showTitle\":true,\"iconSize\":34,\"statusBarColor\":\"true\",\"id\":16,\"status\":0,\"sort\":0,\"version\":0,\"createDate\":\"2024-07-11T23:38:05\",\"updateDate\":\"2024-07-19T15:18:43\",\"kind\":\"creater\",\"appVersion\":\"4.2.0\"}]";
  45. return Dbconn.Encrypt3DES(str, "*ga34|^7");
  46. // return Dbconn.AesEncrypt(str, "CBTU1dD4Kd5pyiGWTsI10jRQ3SvKusSV", "DYgjCEIMVrj2W9xN");
  47. }
  48. /// <summary>
  49. /// 复制
  50. /// </summary>
  51. /// <param name="parm">请求参数</param>
  52. /// <returns>复制</returns>
  53. public void Copy([FromQuery] CopyDto parm)
  54. {
  55. var predicate = Expressionable.Create<AppBottomNavs>();
  56. predicate = predicate.And(m => m.appVersion == parm.sourceVersion);
  57. var list = Queryable()
  58. .Where(predicate.ToExpression())
  59. .OrderBy(m => m.id)
  60. .ToList();
  61. foreach(var sub in list)
  62. {
  63. sub.appVersion = parm.addVersion;
  64. Add(sub);
  65. }
  66. }
  67. /// <summary>
  68. /// 复制前删除
  69. /// </summary>
  70. /// <param name="parm">请求参数</param>
  71. /// <returns>复制前删除</returns>
  72. public void DeleteForCopy([FromQuery] CopyDto parm)
  73. {
  74. var predicate = Expressionable.Create<AppBottomNavs>();
  75. predicate = predicate.And(m => m.appVersion == parm.addVersion);
  76. var list = Queryable()
  77. .Where(predicate.ToExpression())
  78. .OrderBy(m => m.id)
  79. .ToList();
  80. foreach(var sub in list)
  81. {
  82. Delete(sub);
  83. }
  84. }
  85. }
  86. }