DiagnosisOrder.php 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <?php
  2. /**
  3. *
  4. * @author: xaboy<365615158@qq.com>
  5. * @day: 2017/11/02
  6. */
  7. namespace app\admin\model\diagnosis;
  8. use app\admin\model\store\StoreProduct;
  9. use app\admin\model\system\SystemAdmin;
  10. use app\models\article\ArticleContent;
  11. use crmeb\traits\ModelTrait;
  12. use crmeb\basic\BaseModel;
  13. use think\model\concern\SoftDelete;
  14. /**
  15. * 图文管理 Model
  16. * Class WechatNews
  17. * @package app\admin\model\wechat
  18. */
  19. class DiagnosisOrder extends BaseModel
  20. {
  21. use ModelTrait;
  22. protected $pk = 'id';
  23. protected $name = 'diagnosis_order';
  24. protected $autoWriteTimestamp = true;
  25. use SoftDelete;
  26. protected $deleteTime = 'delete_time';
  27. public static function list($where)
  28. {
  29. $model = self::alias('a')
  30. ->field('a.*,b.nickname,c.nickname as re_nickname')
  31. ->leftJoin('user b', 'a.uid = b.uid')
  32. ->leftJoin('user c', 'a.order_receiving = c.uid')
  33. ->order('a.id DESC');
  34. if ($where['name'])$model->where('a.uid|b.nickname' , 'like', '%'.$where['name'].'%');
  35. if ($where['order_id'])$model->where('a.order_id' , 'like', '%'.$where['order_id'].'%');
  36. if ($where['rece'])$model->where('a.order_receiving|c.nickname' , 'like', '%'.$where['rece'].'%');
  37. if ($where['type'])$model->where('type' , $where['type']);
  38. if (isset($where['data']) && $where['data'] !== '') {
  39. $model = self::getModelTime($where, $model, 'create_time');
  40. }
  41. $data['count'] = $model->count();
  42. if ($where['page'] && $where['limit']){
  43. $model->page($where['page'], $where['limit']);
  44. }else{
  45. $model->page(20, 1);
  46. }
  47. $list = $model->select()->toArray();
  48. foreach ($list as &$item)
  49. {
  50. if ($item['paid'] == 0) $item['paid'] = '未支付';
  51. if ($item['paid'] == 1) $item['paid'] = '已支付';
  52. if ($item['pay_type'] == 1) $item['pay_type'] = '余额';
  53. if ($item['pay_type'] == 2) $item['pay_type'] = '微信';
  54. if ($item['pay_type'] == 3) $item['pay_type'] = '支付宝';
  55. $item['cate'] = implode(',',DiagnosisCate::where('id', 'in', $item['cate_id'])->column('name'));
  56. if ($item['status'] == 0){
  57. $item['status'] = '待接单';
  58. }elseif ($item['status'] == 1){
  59. $item['status'] = '已接单';
  60. }elseif ($item['status'] == 2){
  61. $item['status'] = '已完成';
  62. }elseif ($item['status'] == -1){
  63. $item['status'] = '已过期';
  64. }elseif ($item['status'] == -2){
  65. if ($item['refund_status'] == 0){
  66. $item['status'] = '待退款';
  67. }elseif ($item['refund_status'] == 1){
  68. $item['status'] = '已退款';
  69. }
  70. }
  71. if ($item['type'] == 1){
  72. $item['type'] = '陪诊';
  73. }elseif ($item['type'] == 2){
  74. $item['type'] = '代办';
  75. }
  76. }
  77. $data['data'] = $list;
  78. return $data;
  79. }
  80. }