WorkReport.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. <?php
  2. namespace addons\qingdongams\model;
  3. use think\Model;
  4. use traits\model\SoftDelete;
  5. /**
  6. *工作报告
  7. */
  8. class WorkReport extends Model
  9. {
  10. use SoftDelete;
  11. protected $name = 'qingdongams_work_report';
  12. // 开启自动写入时间戳字段
  13. protected $autoWriteTimestamp = 'int';
  14. // 定义时间戳字段名
  15. protected $createTime = 'createtime';
  16. protected $updateTime = 'updatetime';
  17. protected $deleteTime = 'deletetime';
  18. // 追加属性
  19. protected $append = [];
  20. public function getCreatetimeAttr($value)
  21. {
  22. return date('Y-m-d H:i', $value);
  23. }
  24. //
  25. public function staff()
  26. {
  27. return $this->hasOne(Staff::class, 'id', 'staff_id')
  28. ->field('id,name,img,department_id');
  29. }
  30. //评论
  31. public function comments()
  32. {
  33. return $this->hasMany(Comment::class, 'relation_id', 'id')->where(['relation_type'=>'workreport'])->with('staff')->field('id,relation_id,content,staff_id,file_ids,createtime');
  34. }
  35. //明日日程
  36. public function getTomorrowEventAttr($value)
  37. {
  38. if (empty($value)) {
  39. return '';
  40. }
  41. $value = json_decode($value, true);
  42. $titles = Event::where(['id' => ['in', $value['id_list'] ?? []]])->column('title');
  43. $value['titles'] = implode(',', $titles ?? []);
  44. return $value;
  45. }
  46. //客户
  47. public function getCustomerAttr($value)
  48. {
  49. if (empty($value)) {
  50. return '';
  51. }
  52. $value = json_decode($value, true);
  53. return $value;
  54. }
  55. //拜访
  56. public function getVisitAttr($value)
  57. {
  58. if (empty($value)) {
  59. return '';
  60. }
  61. $value = json_decode($value, true);
  62. return $value;
  63. }
  64. //今日日程
  65. public function getEventAttr($value)
  66. {
  67. if (empty($value)) {
  68. return '';
  69. }
  70. $value = json_decode($value, true);
  71. return $value;
  72. }
  73. //合同
  74. public function getContractAttr($value)
  75. {
  76. if (empty($value)) {
  77. return '';
  78. }
  79. $value = json_decode($value, true);
  80. return $value;
  81. }
  82. //工单
  83. public function getWorkorderAttr($value)
  84. {
  85. if (empty($value)) {
  86. return '';
  87. }
  88. $value = json_decode($value, true);
  89. return $value;
  90. }
  91. //回款
  92. public function getReceivablesAttr($value)
  93. {
  94. if (empty($value)) {
  95. return '';
  96. }
  97. $value = json_decode($value, true);
  98. return $value;
  99. }
  100. //完成工单
  101. public function getCompleteWorkorderAttr($value)
  102. {
  103. if (empty($value)) {
  104. return '';
  105. }
  106. $value = json_decode($value, true);
  107. return $value;
  108. }
  109. //未完成日程
  110. public function getNotEventAttr($value)
  111. {
  112. if (empty($value)) {
  113. return '';
  114. }
  115. $value = json_decode($value, true);
  116. return $value;
  117. }
  118. //完成日程
  119. public function getCompleteEventAttr($value)
  120. {
  121. if (empty($value)) {
  122. return '';
  123. }
  124. $value = json_decode($value, true);
  125. return $value;
  126. }
  127. //跟进客户
  128. public function getFollowUpAttr($value)
  129. {
  130. if (empty($value)) {
  131. return '';
  132. }
  133. $value = json_decode($value, true);
  134. return $value;
  135. }
  136. //
  137. public function getGoodWorkorderAttr($value)
  138. {
  139. if (empty($value)) {
  140. return '';
  141. }
  142. $value = json_decode($value, true);
  143. return $value;
  144. }
  145. //
  146. public function getNoEventAttr($value)
  147. {
  148. if (empty($value)) {
  149. return '';
  150. }
  151. $value = json_decode($value, true);
  152. return $value;
  153. }
  154. }