QappUserAddDesktopRealStats.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. <?php
  2. namespace App\Modules\User\Models;
  3. use DB;
  4. use Illuminate\Database\Eloquent\Model;
  5. class QappUserAddDesktopRealStats extends Model
  6. {
  7. protected $table = 'qapp_user_add_desktop_real_stats';
  8. protected $fillable = [
  9. 'send_order_id',
  10. 'distribution_channel_id',
  11. 'register_num',
  12. 'add_desktop_num',
  13. 'date',
  14. ];
  15. /**
  16. * 根据日期、派单id获取统计信息
  17. * @param string $date
  18. * @param int $sendOrderId
  19. * @return array
  20. */
  21. public static function getDesktopRealStat(string $date, int $sendOrderId)
  22. {
  23. if (empty($date) || empty($sendOrderId)) {
  24. return [];
  25. }
  26. // 读主库
  27. return DB::connection('mysql::write')
  28. ->table('qapp_user_add_desktop_real_stats')
  29. ->where('date', $date)
  30. ->where('send_order_id', $sendOrderId)
  31. ->first();
  32. }
  33. /**
  34. * 写入数据
  35. * @param $insertData
  36. * @return bool
  37. */
  38. public static function insertDesktopRealStat($insertData)
  39. {
  40. if (empty($insertData)) {
  41. return false;
  42. }
  43. return self::insertGetId($insertData);
  44. }
  45. /**
  46. * 增加计数
  47. * @param string $date
  48. * @param int $sendOrderId
  49. * @param string $field
  50. * @param int $num
  51. * @return bool
  52. */
  53. public static function incrDesktopRealStat(string $date, int $sendOrderId, string $field, $num = 1)
  54. {
  55. if (empty($date) || empty($sendOrderId) || empty($field)) {
  56. return false;
  57. }
  58. return self::where('date', $date)
  59. ->where('send_order_id', $sendOrderId)
  60. ->increment($field, $num);
  61. }
  62. }