model = new Model(); } /** * @author chenniang * @DataTime: 2021-12-10 17:10 * @功能说明:领地 认养分类列表 */ public function claimCateList(){ $input = $this->_param; $cate_model = new LandCate(); $dis[] = ['uniacid','=',$this->_uniacid]; $dis[] = ['status','>',-1]; $dis[] = ['type','=',$input['type']]; if(!empty($input['title'])){ $dis[] = ['title','like','%'.$input['title'].'%']; } $data = $cate_model->dataList($dis,$input['limit']); if(!empty($data['data'])){ $farmer_model = new Farmer(); foreach ($data['data'] as &$v){ $v['farmer_title'] = $farmer_model->where('id','in',$v['farmer_id'])->where(['status'=>2])->column('title'); $v['farmer_title'] = array_values($v['farmer_title']); } } return $this->success($data); } /** * @author chenniang * @DataTime: 2021-03-12 15:04 * @功能说明:配置详情 */ public function claimCateInfo(){ $input = $this->_param; $dis = [ 'id' => $input['id'] ]; $cate_model = new LandCate(); $data = $cate_model->dataInfo($dis); return $this->success($data); } /** * @author chenniang * @DataTime: 2021-03-12 15:04 * @功能说明:领地 认养分类编辑 */ public function claimCateUpdate(){ $input = $this->_input; $dis = [ 'id' => $input['id'] ]; $cate_model = new LandCate(); $input['uniacid'] = $this->_uniacid; $data = $cate_model->dataUpdate($dis,$input); return $this->success($data); } /** * @author chenniang * @DataTime: 2021-12-10 17:13 * @功能说明:领地 认养分类添加 */ public function claimCateAdd(){ $input = $this->_input; $cate_model = new LandCate(); $input['uniacid'] = $this->_uniacid; $data = $cate_model->dataAdd($input); return $this->success($data); } /** * @author chenniang * @DataTime: 2021-12-28 11:26 * @功能说明:用户下单列表 */ public function orderList(){ $input = $this->_param; $dis[] = ['a.uniacid','=',$this->_uniacid]; if(!empty($input['pay_type'])){ $dis[] = ['a.pay_type','=',$input['pay_type']]; } if(!empty($input['order_code'])){ $dis[] = ['a.order_code','like','%'.$input['order_code'].'%']; } if(!empty($input['goods_name'])){ $dis[] = ['a.goods_name','like','%'.$input['goods_name'].'%']; } if(!empty($input['mobile'])){ $dis[] = ['b.mobile','like','%'.$input['mobile'].'%']; } if(!empty($input['farmer_id'])){ $dis[] = ['a.farmer_id','=',$input['farmer_id']]; } if(!empty($input['start_time'])&&!empty($input['end_time'])){ $dis[] = ['a.create_time','between',"{$input['start_time']},{$input['end_time']}"]; } $order_model = new ClaimOrder(); $farmer_model = new Farmer(); $user_model = new User(); $data = $order_model->adminDataList($dis,$input['limit']); if(!empty($data['data'])){ foreach ($data['data'] as &$v){ $v['farmer_info'] = $farmer_model->dataInfo(['id'=>$v['farmer_id']],'title'); $v['user_info'] = $user_model->dataInfo(['id'=>$v['user_id']]); } } return $this->success($data); } /** * @author chenniang * @DataTime: 2021-12-28 11:52 * @功能说明:用户下单详情 */ public function orderInfo(){ $input = $this->_param; $farmer_model = new Farmer(); $source_model = new Source(); $dis = [ 'id' => $input['id'] ]; $order_model = new ClaimOrder(); $data = $order_model->dataInfo($dis); $data['time_text'] = date('Y-m-d',$data['start_time']).'~'.date('Y-m-d',$data['end_time']); //农场信息 $data['farmer_info'] = $farmer_model->dataInfo(['id'=>$data['farmer_id']]); //溯源信息 $data['source'] = $source_model->dataInfo(['id'=>$data['source_id']]); $address_model = new OrderAddress(); $data['address_info'] = $address_model->dataInfo(['order_id'=>$input['id'],'type'=>2]); if($data['is_collage']==1){ $collage_model = new CollageJoin(); $collage_info = $collage_model->dataInfo(['order_id'=>$input['id']]); if(!empty($collage_info)){ $data['collage_status'] = $collage_info['status']; $data['collage_discount_price'] = $data['init_price']-$collage_info['price']; $data['collage_discount_price'] = $data['collage_discount_price']>0?$data['collage_discount_price']:0; } } return $this->success($data); } /** * @author chenniang * @DataTime: 2022-02-08 17:14 * @功能说明:配送订单列表 */ public function userSendOrderList(){ $input = $this->_param; $send_order_model = new SendOrder(); $data = $send_order_model->orderSendOrder($input['claim_order_id'],1,$input['limit']); return $this->success($data); } /** * @author chenniang * @DataTime: 2022-02-16 17:21 * @功能说明:配送订单列表 */ public function sendOrderList(){ $input = $this->_param; $send_order_model = new SendOrder(); $dis[] = ['uniacid','=',$this->_uniacid]; $dis[] = ['pay_time','>',0]; if(!empty($input['pay_type'])){ $dis[] = ['pay_type','=',$input['pay_type']]; } if(!empty($input['type'])){ $dis[] = ['type','=',$input['type']]; } if(!empty($input['send_type'])){ $dis[] = ['send_type','=',$input['send_type']]; } if(!empty($input['farmer_id'])){ $dis[] = ['farmer_id','=',$input['farmer_id']]; } $data = $send_order_model->dataList($dis,$input['limit']); return $this->success($data); } /** * @author chenniang * @DataTime: 2022-02-09 14:00 * @功能说明:配送订单详情 */ public function sendOrderInfo() { $input = $this->_param; $send_order_model = new SendOrder(); $seed_model = new LandOrderSeed; $farmer_model = new Farmer(); $send_order = $send_order_model->dataInfo(['id' => $input['id']]); if($send_order['type']==1){ $order_model = new ClaimOrder(); $send_order['claim_order'] = $order_model->dataInfo(['id' => $send_order['order_id']]); }else{ $order_model = new LandOrder(); $send_order['land_order'] = $order_model->dataInfo(['id' => $send_order['order_id']]); //种子列表 $send_order['land_order']['seed'] = $seed_model->orderSeed($send_order['order_id']); } $send_order['farmer_info'] = $farmer_model->dataInfo(['id'=>$send_order['farmer_id']]); return $this->success($send_order); } /** * @author chenniang * @DataTime: 2022-02-09 10:24 * @功能说明:配送订单收货 */ public function sendOrderReceiving(){ $input = $this->_input; $send_order_model = new SendOrder(); $send_order = $send_order_model->dataInfo(['id'=>$input['id']]); if(empty($send_order)){ $this->errorMsg('订单未找到'); } if($send_order['pay_type']!=2&&$send_order['send_type']==1){ $this->errorMsg('订单状态错误'); } if($send_order['pay_type']!=3&&$send_order['send_type']==2){ $this->errorMsg('订单状态错误'); } $res = $send_order_model->sendOrderReceiving($send_order); if(!empty($res['code'])){ $this->errorMsg($res['msg']); } return $this->success(true); } /** * @author chenniang * @DataTime: 2022-02-09 09:47 * @功能说明:发货订单发货 */ public function sendOrderSend(){ $input = $this->_input; $send_order_model = new SendOrder(); $send_order = $send_order_model->dataInfo(['id'=>$input['id']]); if(empty($send_order)){ $this->errorMsg('订单未找到'); } if($send_order['pay_type']!=2){ $this->errorMsg('订单状态错误'); } $config_model = new Config(); $config = $config_model->dataInfo(['uniacid'=>$this->_uniacid]); $update = [ 'pay_type' => 3, 'send_time'=> time(), 'auto_receiving_time' => $config['auto_hx_time']*86400+time() ]; Db::startTrans(); $res = $send_order_model->dataUpdate(['id'=>$input['id']],$update); if($res==0){ Db::rollback(); $this->errorMsg('发货失败'); } if($send_order['type']==1){ $claim_order_model = new ClaimOrder(); $claim_order_model->dataUpdate(['id'=>$send_order['order_id']],['pay_type'=>3]); } Db::commit(); return $this->success(true); } /** * @author chenniang * @DataTime: 2022-07-01 15:06 * @功能说明:认养拼团列表 */ public function collageList(){ $input = $this->_param; $collage_model = new ClaimCollage(); $dis[] = ['a.uniacid','=',$this->_uniacid]; $dis[] = ['a.status','>',-1]; if(!empty($input['title'])){ $dis[] = ['a.title','like','%'.$input['title'].'%']; } if(!empty($input['goods_name'])){ $dis[] = ['b.title','like','%'.$input['goods_name'].'%']; } $data = $collage_model->adminDataList($dis,$input['limit']); return $this->success($data); } /** * @author chenniang * @DataTime: 2022-07-01 15:11 * @功能说明:添加拼团 */ public function collageAdd(){ $input = $this->_input; $collage_model = new ClaimCollage(); $input['uniacid'] = $this->_uniacid; $res = $collage_model->dataAdd($input); return $this->success($res); } /** * @author chenniang * @DataTime: 2022-07-01 15:11 * @功能说明:添加拼团 */ public function collageUpdate(){ $input = $this->_input; $collage_model = new ClaimCollage(); $dis = [ 'id' => $input['id'] ]; $input['uniacid'] = $this->_uniacid; $res = $collage_model->dataUpdate($dis,$input); return $this->success($res); } /** * @author chenniang * @DataTime: 2022-07-01 15:11 * @功能说明:添加拼团 */ public function collageInfo(){ $input = $this->_param; $collage_model = new ClaimCollage(); $dis = [ 'id' => $input['id'] ]; $res = $collage_model->dataInfo($dis); $claim_model = new Claim(); $res['claim_title'] = $claim_model->where(['id'=>$res['claim_id']])->value('title'); return $this->success($res); } /** * @author chenniang * @DataTime: 2021-12-14 15:28 * @功能说明:认养管理列表 */ public function claimList(){ $input = $this->_param; $claim_model = new Claim(); $dis[] = ['uniacid','=',$this->_uniacid]; if(isset($input['status'])){ $dis[] = ['status','=',$input['status']]; }else{ $dis[] = ['status','>',-1]; } if(!empty($input['farmer_id'])){ $dis[] = ['farmer_id','=',$input['farmer_id']]; } if(!empty($input['title'])){ $dis[] = ['title','like','%'.$input['title'].'%']; } $data = $claim_model->dataList($dis,$input['limit']); if(!empty($data['data'])){ $farmer_model = new Farmer(); $cate_model = new LandCate(); foreach ($data['data'] as &$v){ $v['farmer_name'] = $farmer_model->where(['id'=>$v['farmer_id']])->value('title'); $cate_name = $cate_model->where('id','in',$v['cate_id'])->column('title'); $v['cate_name'] = implode(',',$cate_name); } } $arr = [ 0 => 'off_num', 1 => 'on_num', ]; foreach ($arr as $key => $value){ $dis = [ 'uniacid' => $this->_uniacid, 'status' => $key ]; $data[$value] = $claim_model->where($dis)->count(); } return $this->success($data); } /** * @author chenniang * @DataTime: 2021-12-14 16:32 * @功能说明:添加认养 */ public function claimAdd(){ $input = $this->_input; $input['uniacid'] = $this->_uniacid; $claim_model = new Claim(); $res = $claim_model->dataAdd($input); return $this->success($res); } /** * @author chenniang * @DataTime: 2021-12-14 16:32 * @功能说明:认养详情 */ public function claimInfo(){ $input = $this->_param; $dis = [ 'id' => $input['id'] ]; $claim_model = new Claim(); $res = $claim_model->dataInfo($dis); $claim_text_model = new ClaimText(); $monitor_text_model= new MonitorText(); //流程 $res['process'] = $claim_text_model->where(['claim_id'=>$input['id']])->select()->toArray(); //监控 $res['monitor'] = $monitor_text_model->where(['obj_id'=>$input['id'],'type'=>2])->column('monitor_id'); $res['monitor'] = array_values($res['monitor']); $freightTemplate_model = new FreightTemplate(); $res['send_template_type'] = $freightTemplate_model->where(['id'=>$res['send_tmpl_id']])->value('type'); return $this->success($res); } /** * @author chenniang * @DataTime: 2021-12-14 16:32 * @功能说明:编辑认养 */ public function claimUpdate(){ $input = $this->_input; $dis = [ 'id' => $input['id'] ]; $input['uniacid'] = $this->_uniacid; $claim_model = new Claim(); $res = $claim_model->dataUpdate($dis,$input); return $this->success($res); } /** * @author chenniang * @DataTime: 2021-12-14 16:32 * @功能说明:编辑认养 */ public function claimStatusUpdate(){ $input = $this->_input; $dis = [ 'id' => $input['id'] ]; $claim_model = new Claim(); $res = $claim_model->where($dis)->update($input); return $this->success($res); } /** * @author chenniang * @DataTime: 2021-12-31 15:11 * @功能说明:认养和土地分类 */ public function landAndClaimCate(){ $input = $this->_param; $dis = [ 'a.status' => 1, 'a.uniacid'=> $this->_uniacid, 'a.type' => $input['type'] ]; $where = []; if(!empty($input['farmer_id'])){ $where = [ 'a.is_public' => 1, 'b.farmer_id' => $this->farmer['id'] ]; } $cate_model = new LandCate(); $data = $cate_model->alias('a') ->join('lbfarm_land_cate_text b','a.id = b.cate_id','left') ->where($dis) ->where(function ($query) use ($where){ $query->whereOr($where); }) ->field('a.*') ->group('a.id') ->order('a.top desc,a.id desc') ->select() ->toArray(); return $this->success($data); } }