IssueWork.php 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | likeadmin快速开发前后端分离管理后台(PHP版)
  4. // +----------------------------------------------------------------------
  5. // | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
  6. // | 开源版本可自由商用,可去除界面版权logo
  7. // | gitee下载:https://gitee.com/likeshop_gitee/likeadmin
  8. // | github下载:https://github.com/likeshop-github/likeadmin
  9. // | 访问官网:https://www.likeadmin.cn
  10. // | likeadmin团队 版权所有 拥有最终解释权
  11. // +----------------------------------------------------------------------
  12. // | author: likeadminTeam
  13. // +----------------------------------------------------------------------
  14. namespace app\common\model\works;
  15. use app\common\model\auth\Admin;
  16. use app\common\model\BaseModel;
  17. use app\common\model\master_worker\MasterWorker;
  18. use app\common\model\user\User;
  19. /**
  20. * IssueWork模型
  21. * Class IssueWork
  22. * @package app\common\model\works
  23. */
  24. class IssueWork extends BaseModel
  25. {
  26. protected $name = 'issue_work';
  27. public function masterWorker()
  28. {
  29. return $this->hasOne(MasterWorker::class,'id','master_worker_id');
  30. }
  31. public function user()
  32. {
  33. return $this->hasOne(User::class,'id','user_id');
  34. }
  35. public function serviceWork()
  36. {
  37. return $this->hasOne(ServiceWork::class,'id','service_work_id');
  38. }
  39. public function returnWork()
  40. {
  41. return $this->hasOne(ReturnWork::class,'work_sn','work_sn');
  42. }
  43. public function admin()
  44. {
  45. return $this->hasOne(Admin::class,'id','approval_admin_id');
  46. }
  47. public function getIssueApprovalTextAttr($value,$data)
  48. {
  49. $approval = [0=>'等待受理',1=>'受理中',2=>'已核实',3=>'返修中',4=>'已完结'];
  50. return $approval[$data['issue_approval']];
  51. }
  52. public function getFinishedImagesAttr($value)
  53. {
  54. return empty($value)?'':json_decode($value,true);
  55. }
  56. public function getComplaintImagesAttr($value)
  57. {
  58. return empty($value)?'':json_decode($value,true);
  59. }
  60. public function setComplaintImagesAttr($value)
  61. {
  62. return empty($value)?'':json_encode($value,JSON_UNESCAPED_UNICODE);
  63. }
  64. public function getComplaintTypeAttr($value)
  65. {
  66. return empty($value)?[]:json_decode($value,true);
  67. }
  68. public function setComplaintTypeAttr($value)
  69. {
  70. return empty($value)?[]:json_encode($value,JSON_UNESCAPED_UNICODE);
  71. }
  72. public function getApprovalTimeAttr($value,$data)
  73. {
  74. return !empty($data['approval_time']) ? date('Y-m-d H:i:s',$data['approval_time']) : '';
  75. }
  76. public function getFinishedTimeAttr($value,$data)
  77. {
  78. return !empty($data['finished_time']) ? date('Y-m-d H:i:s',$data['finished_time']) : '';
  79. }
  80. }