Sale.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <?php
  2. /**
  3. * @copyright Copyright (c) 2017 https://www.sapixx.com All rights reserved.
  4. * @license Licensed (http://www.apache.org/licenses/LICENSE-2.0).
  5. * @author pillar<ltmn@qq.com>
  6. * 当前销售产品ID
  7. */
  8. namespace app\popupshop\model;
  9. use think\Model;
  10. use app\popupshop\model\SaleHouse;
  11. class Sale extends Model
  12. {
  13. protected $pk = 'id';
  14. protected $table = 'ai_popupshop_sales';
  15. /**
  16. * 默认主产品
  17. * @return void
  18. */
  19. public function House(){
  20. return $this->hasOne('SaleHouse','id','house_id');
  21. }
  22. /**
  23. * 寄卖的产品列表
  24. * @return void
  25. */
  26. public function salesUser(){
  27. return $this->hasOne('SaleUser','id','sales_user_id');
  28. }
  29. /**
  30. * 所属用户
  31. * @return void
  32. */
  33. public function User(){
  34. return $this->hasOne('app\common\model\SystemUser','id','user_id');
  35. }
  36. /**
  37. * 所属好店
  38. * @return void
  39. */
  40. public function Store(){
  41. return $this->hasOne('Store','id','store_id');
  42. }
  43. /**
  44. * 所有产品列表
  45. * @param [int] $member_miniapp_id
  46. * @return void
  47. */
  48. public static function lists($member_miniapp_id,int $types = 0){
  49. $condition[] = ['member_miniapp_id','=',$member_miniapp_id];
  50. switch ($types) {
  51. case 1:
  52. $condition[] = ['user_id','=',0];
  53. break;
  54. case 2:
  55. $condition[] = ['user_id','>',0];
  56. break;
  57. case 3:
  58. $condition[] = ['is_pay','=',0];
  59. break;
  60. case 4:
  61. $condition[] = ['is_pay','=',1];
  62. break;
  63. }
  64. $info = self::where($condition)->order('id desc')->paginate(5,false,['query' => ['types' => $types]]);
  65. foreach ($info as $key => $value) {
  66. $house_ids = array_column(json_decode($value->gift),'house_id');
  67. $gift = [];
  68. foreach ($house_ids as $i => $id) {
  69. $gift[$i] = SaleHouse::where(['id' => $id])->find()->toArray();
  70. }
  71. $info[$key]['gift'] = $gift;
  72. }
  73. return $info;
  74. }
  75. //添加或编辑
  76. public static function edit(array $param){
  77. $data['is_sale'] = $param['is_sale'];
  78. $data['house_id'] = $param['house_id'];
  79. $data['store_id'] = $param['store_id'];
  80. $data['user_id'] = $param['user_id'];
  81. $data['user_cost_price'] = $param['cost_price'];
  82. $data['user_entrust_price']= $param['entrust_price'];
  83. $data['user_sale_price'] = $param['sale_price'];
  84. $data['member_miniapp_id'] = $param['member_miniapp_id'];
  85. $data['gift'] = json_encode($param['gift']);
  86. $data['update_time'] = time();
  87. if(isset($param['sales_user_id'])){
  88. $data['sales_user_id'] = $param['sales_user_id'];
  89. }
  90. if(isset($param['id'])){
  91. return self::where(['id' => $param['id']])->update($data);
  92. }else{
  93. $data['create_time'] = time();
  94. return self::insert($data);
  95. }
  96. }
  97. }