Maintenance.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | ThinkAdmin
  4. // +----------------------------------------------------------------------
  5. // | 版权所有 2014~2022 广州楚才信息科技有限公司 [ http://www.cuci.cc ]
  6. // +----------------------------------------------------------------------
  7. // | 官方网站: https://thinkadmin.top
  8. // +----------------------------------------------------------------------
  9. // | 开源协议 ( https://mit-license.org )
  10. // | 免费声明 ( https://thinkadmin.top/disclaimer )
  11. // +----------------------------------------------------------------------
  12. // | gitee 代码仓库:https://gitee.com/zoujingli/ThinkAdmin
  13. // | github 代码仓库:https://github.com/zoujingli/ThinkAdmin
  14. // +----------------------------------------------------------------------
  15. namespace app\admin\controller;
  16. use app\data\model\DataMaintenance;
  17. use app\data\model\DataPoolTalent;
  18. use app\data\model\DataTeachingKnowledge;
  19. use app\data\model\DataUser;
  20. use app\data\model\DataZhicheng;
  21. use Carbon\Carbon;
  22. use think\admin\Controller;
  23. use app\data\model\SystemUser;
  24. use think\Db;
  25. use think\db\Query;
  26. /**
  27. * 维修工列表
  28. * Class Maintenance
  29. * @package app\admin\controller
  30. */
  31. class Maintenance extends Controller
  32. {
  33. /**
  34. * 维修工申请管理
  35. * @auth true
  36. * @menu true
  37. */
  38. public function index(){
  39. $this->assign('audit',DataMaintenance::$audit);
  40. $this->title='维修工列表';
  41. $name=input('name');
  42. DataMaintenance::mQuery()
  43. ->when($name,function (Query $query) use ($name) {
  44. $query->hasWhere('user',function (Query $query) use ($name) {
  45. $query->whereLike('nickname',"%{$name}%");
  46. });
  47. })
  48. ->equal('audit')
  49. ->like('title')
  50. ->with(['user'])
  51. ->order('id','desc')
  52. ->layTable();
  53. }
  54. protected function _index_page_filter(&$data)
  55. {
  56. }
  57. /**
  58. * 维修工申请审核
  59. * @auth true
  60. * @menu true
  61. */
  62. public function audit($id){
  63. $this->title='维修工申请审核';
  64. $row=DataMaintenance::mk()->findOrFail($id);
  65. if($this->request->isGet()){
  66. $this->assign('row',$row);
  67. $this->fetch();
  68. }else{
  69. if($row['audit']>1){
  70. $this->error('该记录已审核');
  71. }
  72. $data=$this->_vali([
  73. 'audit.require'=>'结果必须',
  74. 'audit.in:2,3'=>'结果有误',
  75. 'why.requireIf:audit,3'=>'原因必须',
  76. 'why.max:200'=>'原因有误',
  77. ]);
  78. $row['audit']=$data['audit'];
  79. $row['why']=$data['why']??'';
  80. $row['audit_at']=Carbon::now();
  81. $row->save();
  82. if ($data['audit']==2){
  83. DataUser::mk()->where('id',$row['uuid'])->update(['is_maintenance'=>1]);
  84. //极光推送
  85. $content = '您申请的维修工信息已通过申请,请及时查看';
  86. }elseif ($data['audit']==3){
  87. //极光推送
  88. $content = '您申请的维修工信息未通过申请,请及时查看';
  89. }
  90. $alias = DataUser::mk()->where('id',$row['uuid'])->value('jgalias');
  91. if(!empty(getAliasDevices($alias)['body']['registration_ids'])){
  92. $alias ? jgpush($content,$alias) : '';
  93. }
  94. setusermessage($row['uuid'],'审核通知',$content);
  95. $this->success('审核成功');
  96. }
  97. }
  98. }