MasterWorkerRetentionMoneyLogLists.php 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. /**
  3. * @author 林海涛
  4. * @date 2024/7/28 上午11:30
  5. */
  6. namespace app\workerapi\lists;
  7. use app\common\model\master_worker\MasterWorkerRetentionMoneyLog;
  8. class MasterWorkerRetentionMoneyLogLists extends BaseWorkerDataLists
  9. {
  10. public function queryWhere()
  11. {
  12. $where = [];
  13. if(isset($this->params['formData'])){
  14. $queryParams = json_decode($this->params['formData'],true);
  15. if(isset($queryParams['worker_id'])){
  16. $where[]= ['worker_id','=',$queryParams['worker_id']];
  17. }
  18. }
  19. if(isset($this->params['create_time']) && !empty($this->params['create_time'])){
  20. $time = [strtotime($this->params['create_time'][0]), strtotime($this->params['create_time'][1])];
  21. $where[] = ['create_time', 'between', $time];
  22. }
  23. return $where;
  24. }
  25. public function lists(): array
  26. {
  27. $lists = MasterWorkerRetentionMoneyLog::where($this->searchWhere)
  28. ->where($this->queryWhere())
  29. ->append(['action_text'])
  30. ->field(['id', 'sn','action','amount','remark','create_time','update_time'])
  31. ->order(['id' => 'desc'])
  32. ->select()
  33. ->toArray();
  34. foreach ($lists as &$item) {
  35. $item['amount'] = $item['action_text'] . $item['amount'];
  36. }
  37. return $lists;
  38. }
  39. public function count(): int
  40. {
  41. return MasterWorkerRetentionMoneyLog::where($this->queryWhere())->count();
  42. }
  43. }