TransfromAccountRecord.php 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <?php
  2. /**
  3. * Created by PhpStorm.
  4. * User: hp
  5. * Date: 2017/11/22
  6. * Time: 14:15
  7. */
  8. namespace App\Modules\Finance\Models;
  9. use DB;
  10. use Illuminate\Database\Eloquent\Model;
  11. class TransfromAccountRecord extends Model
  12. {
  13. protected $table = 'transfer_account_record';
  14. protected $fillable = ['day', 'company_name', 'account', 'fee', 'status', 'remark'];
  15. /**
  16. * 添加记录
  17. */
  18. static function addTransformAccountRecord($data)
  19. {
  20. return self::create($data);
  21. }
  22. /**
  23. * 修改记录
  24. */
  25. static function updateTransformAccountRecord($id, $fee, $day, $status, $company_name, $account, $remark)
  26. {
  27. $object = self::where('id', $id);
  28. $params = [];
  29. if ($fee) {
  30. $params['fee'] = $fee;
  31. }
  32. if ($day) {
  33. $params['day'] = $day;
  34. }
  35. if ($status) {
  36. $params['status'] = $status;
  37. }
  38. if ($company_name) {
  39. $params['company_name'] = $company_name;
  40. }
  41. if ($account) {
  42. $params['account'] = $account;
  43. }
  44. if ($remark) {
  45. $params['remark'] = $remark;
  46. }
  47. return $object->update($params);
  48. }
  49. /**
  50. * 获取到账记录
  51. * @param array $params
  52. * @param bool $is_all
  53. * @return mixed
  54. */
  55. static function getTransformAccountRecord($params = [], $is_all = false)
  56. {
  57. $search_object = self::orderBy('transfer_account_record.created_at', 'desc');
  58. if (isset($params['status']) && $params['status']) $search_object->where('status', $params['status']);
  59. if (isset($params['account']) && $params['account']) $search_object->where('account', $params['account']);
  60. if (isset($params['end_time']) && $params['end_time']) $search_object->where('day', '<=', $params['end_time']);
  61. if (isset($params['start_time']) && $params['start_time']) $search_object->where('day', '>=', $params['start_time']);
  62. if (isset($params['company_name']) && $params['company_name']) $search_object->where('company_name', 'like', '%' . $params['company_name'] . '%');
  63. if ($is_all) {
  64. return $search_object->get();
  65. } else {
  66. return $search_object->paginate();
  67. }
  68. }
  69. }