WorkAction.php 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace app\bug\model;
  3. use think\model\concern\SoftDelete;
  4. class WorkAction extends Base
  5. {
  6. //设置字段信息
  7. use SoftDelete;
  8. protected $schema = [
  9. 'id' =>'int',//
  10. 'action_name' =>'varchar',//功能名称
  11. 'menu_id' =>'int',//归属菜单页面id
  12. 'belong' =>'tinyint',//系统归属1采销2结算3数据统计
  13. 'belong_action' =>'text',//功能集合
  14. 'belong_process' =>'text',//功能集合
  15. 'apply_id' =>'int',//申请人id
  16. 'apply_name' =>'varchar',//申请人名称
  17. 'createTime' =>'datetime',//
  18. 'updateTime' =>'datetime',//
  19. 'delete_time' =>'datetime',//
  20. ];
  21. protected $updateTime='updateTime';
  22. protected $createTime='createTime';
  23. protected $deleteTime = 'delete_time';
  24. public function GetBelongActionAttr($v){
  25. return json_decode($v,true);
  26. }
  27. public function SetBelongActionAttr($v){
  28. return json_encode($v,JSON_UNESCAPED_UNICODE);
  29. }
  30. public function GetBelongProcessAttr($v){
  31. return json_decode($v,true);
  32. }
  33. public function SetBelongProcessAttr($v){
  34. return json_encode($v,JSON_UNESCAPED_UNICODE);
  35. }
  36. public function GetTreeActionByIdArr($idArr,$belong=0){
  37. $list = $this->whereIn("id",$idArr)->field("id,action_name,menu_id,belong_action")->select();
  38. $temp=[];
  39. foreach ($list as $item){
  40. $meun = $this->GetMenuList($item->menu_id,$belong);
  41. $item->belong_action_info = $this->GetActionList($item->belong_action,$belong);
  42. $temp[]=array_merge($item->toArray(),$meun);
  43. }
  44. return $temp;
  45. }
  46. public function GetMenuList($menuid,$belong){
  47. $menu=[];
  48. switch ($belong){
  49. case 1:
  50. $menu=\app\admin\model\AdminMenu::GetMenu($menuid);
  51. break;
  52. case 2:
  53. $menu=\app\cxinv\model\AdminMenu::GetMenu($menuid);
  54. break;
  55. case 3:
  56. $menu=\app\cxinv\model\AdminMenu::GetMenu($menuid);
  57. break;
  58. }
  59. return$menu;
  60. }
  61. public function GetActionList($action,$belong){
  62. $act=[];
  63. switch ($belong){
  64. case 1:
  65. $act=\app\admin\model\AdminMenu::GetAction($action);
  66. break;
  67. case 2:
  68. $act=\app\cxinv\model\AdminMenu::GetAction($action);
  69. break;
  70. case 3:
  71. $act=\app\cxinv\model\AdminMenu::GetAction($action);
  72. break;
  73. }
  74. return$act;
  75. }
  76. }