DictService.php 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: ywl
  5. * Date: 2017/4/14
  6. * Time: 11:38
  7. */
  8. namespace App\Web\Services;
  9. use App\Ad\Facades\SysAdFacade;
  10. use App\Common\Facades\UserCenterFacade;
  11. use App\Exceptions\ApiException;
  12. use App\Services\CommonUserBaseService;
  13. use App\Web\Facades\BlogFacade;
  14. use App\Web\Facades\HelpFacade;
  15. use App\Web\Facades\WebFacade;
  16. use App\Web\Models\DictFunctionModel;
  17. use App\Web\Models\DictIndustryModel;
  18. use App\Web\Models\WebSeoModel;
  19. use App\Web\Models\WebStaticPageModel;
  20. use Illuminate\Support\Facades\Cache;
  21. class DictService extends CommonUserBaseService
  22. {
  23. protected $cache = true;
  24. protected $cacheBucket = 'Dict:';
  25. protected $dictIndustryModel;
  26. /**
  27. * WebService construct
  28. * @param DictFunctionModel $model
  29. * @param DictIndustryModel $dictIndustryModel
  30. * */
  31. public function __construct(DictFunctionModel $model,DictIndustryModel $dictIndustryModel)
  32. {
  33. $this->model = $model;
  34. $this->dictIndustryModel = $dictIndustryModel;
  35. }
  36. /**
  37. * 获取功能列表
  38. * */
  39. public function getDictFunctionList($params){
  40. $retData= $this->model->getFunctionList($params);
  41. return $retData;
  42. }
  43. /**
  44. * 功能保存
  45. * */
  46. public function saveDictFunction($params){
  47. $saveData=[];
  48. $nowTime=nowTime();
  49. $saveData['update_time']=$nowTime;
  50. $userId=$this->getAuthUserId();
  51. if(!empty($params['id'])){
  52. $saveData['id']=$params['id'];
  53. if(isset($params['name'])){
  54. $nameUnique =$this->model->checkFunctionNameUnique($params['name'],$params['id']);
  55. if (!$nameUnique) {
  56. throw new ApiException(10018, ['name' => $params['name']]);
  57. }
  58. $saveData['name']=$params['name'];
  59. }
  60. if(isset($params['status'])){
  61. $saveData['status']=$params['status'];
  62. }
  63. if(isset($params['remark'])){
  64. $saveData['remark']=empty($params['remark'])?'':$params['remark'];
  65. }
  66. }else{
  67. $nameUnique =$this->model->checkFunctionNameUnique($params['name']);
  68. if (!$nameUnique) {
  69. throw new ApiException(10018, ['name' => $params['name']]);
  70. }
  71. $saveData['user_id']=$userId;
  72. $saveData['name']=$params['name'];
  73. $saveData['remark']=empty($params['remark'])?'':$params['remark'];
  74. $saveData['create_time']=$nowTime;
  75. }
  76. $id = $this->model->saveFunctionData($saveData);
  77. //更新所有页面缓存
  78. WebFacade::clearPageCache('urla:');
  79. return $id;
  80. }
  81. /**
  82. * 获取行业列表
  83. * */
  84. public function getDictIndustryList($params){
  85. $retData= $this->dictIndustryModel->getIndustryList($params);
  86. return $retData;
  87. }
  88. /**
  89. * 行业保存
  90. * */
  91. public function saveDictIndustry($params){
  92. $saveData=[];
  93. $nowTime=nowTime();
  94. $saveData['update_time']=$nowTime;
  95. $userId=$this->getAuthUserId();
  96. if(!empty($params['id'])){
  97. $saveData['id']=$params['id'];
  98. if(isset($params['name'])){
  99. $nameUnique =$this->dictIndustryModel->checkIndustryNameUnique($params['name'],$params['id']);
  100. if (!$nameUnique) {
  101. throw new ApiException(10018, ['name' => $params['name']]);
  102. }
  103. $saveData['name']=$params['name'];
  104. }
  105. if(isset($params['status'])){
  106. $saveData['status']=$params['status'];
  107. }
  108. if(isset($params['remark'])){
  109. $saveData['remark']=empty($params['remark'])?'':$params['remark'];
  110. }
  111. if(isset($params['pid'])){
  112. $saveData['pid']=empty($params['pid'])?0:$params['pid'];;
  113. }
  114. }else{
  115. $nameUnique =$this->dictIndustryModel->checkIndustryNameUnique($params['name']);
  116. if (!$nameUnique) {
  117. throw new ApiException(10018, ['name' => $params['name']]);
  118. }
  119. $saveData['user_id']=$userId;
  120. $saveData['pid']=empty($params['pid'])?0:$params['pid'];;
  121. $saveData['name']=$params['name'];
  122. $saveData['remark']=empty($params['remark'])?'':$params['remark'];
  123. $saveData['create_time']=$nowTime;
  124. }
  125. $id = $this->dictIndustryModel->saveIndustryData($saveData);
  126. //更新所有页面缓存
  127. WebFacade::clearPageCache('urla:');
  128. return $id;
  129. }
  130. }