Store.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. namespace app\admin\model\shopro\dispatch;
  3. use think\Model;
  4. use traits\model\SoftDelete;
  5. class Store extends Model
  6. {
  7. use SoftDelete;
  8. // 表名
  9. protected $name = 'shopro_dispatch_store';
  10. // 自动写入时间戳字段
  11. protected $autoWriteTimestamp = 'int';
  12. // 定义时间戳字段名
  13. protected $createTime = 'createtime';
  14. protected $updateTime = 'updatetime';
  15. protected $deleteTime = 'deletetime';
  16. // 追加属性
  17. protected $append = [
  18. 'store_ids_text',
  19. 'store_ids_list'
  20. ];
  21. public function getStoreIdsAttr($value, $data)
  22. {
  23. // 如果为空直接返回空数组,不做 intval 转换
  24. return $value ? array_map("intval", explode(',', $data['store_ids'])) : [];
  25. }
  26. public function getStoreIdsTextAttr($value, $data)
  27. {
  28. if ($data['store_ids']) {
  29. $store_ids = explode(',', $data['store_ids']);
  30. $store_ids_text = implode(',', \app\admin\model\shopro\store\Store::where('id', 'in', $store_ids)->column('name'));
  31. } else {
  32. $store_ids_text = '全部商家配送门店';
  33. }
  34. return $store_ids_text;
  35. }
  36. public function getStoreIdsListAttr($value, $data)
  37. {
  38. $store_list = [];
  39. if ($data['store_ids']) {
  40. $store_list = \app\admin\model\shopro\store\Store::where('id', 'in', $data['store_ids'])->field('id, name, address, province_name, city_name, area_name, status')->select();
  41. }
  42. return $store_list;
  43. }
  44. }