dataLists(new ServiceWorkLists()); } /** * @notes 编辑 * @return \think\response\Json * @author likeadmin * @date 2024/07/10 15:06 */ public function edit() { $params = (new ServiceWorkValidate())->post()->goCheck('edit'); $workDetail = ServiceWorkLogic::detail($params); $result = ServiceWorkLogic::edit($params); if (true === $result) { if(strtotime($workDetail['appointment_time']) !== strtotime($params['appointment_time']) && !empty($workDetail['master_worker_id'])){ $masterDetail = MasterWorkerLogic::detail(['id'=>$workDetail['master_worker_id']]); // 修改预约时间通知【给用户的通知】 $res = event('Notice', [ 'scene_id' => 117, 'params' => [ 'user_id' => $workDetail['user_id'], 'date' => $params['appointment_time'], 'tel' => asteriskString($masterDetail['mobile']), ] ]); // 修改预约时间通知【给工程师的通知,仅限公众号】 $res = event('Notice', [ 'scene_id' => 118, 'params' => [ 'user_id' => $workDetail['master_worker_id'], 'order_id' => $workDetail['id'], 'thing4' => $workDetail['title'], 'time5' => $workDetail['appointment_time'], 'time6' => $params['appointment_time'], 'thing11' => (iconv_strlen($workDetail['address'])>15)?(mb_substr($workDetail['address'],0,15,'UTF-8').'...'):$workDetail['address'], 'phone_number8' => asteriskString($workDetail['mobile']), ] ]); } return $this->success('编辑成功', [], 1, 1); } return $this->fail(ServiceWorkLogic::getError()); } /** * @notes 删除 * @return \think\response\Json * @author likeadmin * @date 2024/07/10 15:06 */ public function delete() { $params = (new ServiceWorkValidate())->post()->goCheck('delete'); $result = ServiceWorkLogic::edit($params); if (true === $result) { return $this->success('编辑成功', [], 1, 1); } return $this->success('分配成功', [], 1, 1); } /** * @notes 获取详情 * @return \think\response\Json * @author likeadmin * @date 2024/07/10 15:06 */ public function detail() { $params = (new ServiceWorkValidate())->goCheck('detail'); $result = ServiceWorkLogic::detail($params); return $this->data($result); } public function allocateWorker() { $params = (new ServiceWorkValidate())->post()->goCheck('allocateWorker'); $result = ServiceWorkLogic::allocateWorker($params,$this->adminInfo); if (true === $result) { return $this->success('分配工程师成功', [], 1, 1); } return $this->fail(ServiceWorkLogic::getError()); } public function cancelWorker() { $params = (new ServiceWorkValidate())->post()->goCheck('detail'); $result = ServiceWorkLogic::cancel($params); if (true === $result) { return $this->success('取消工单成功!', [], 1, 1); } return $this->fail(ServiceWorkLogic::getError()); } public function settlementMaster() { $params = (new ServiceWorkValidate())->post()->goCheck('detail'); $result = ServiceWorkLogic::settlement($params); if (true === $result) { return $this->success('操作成功!', [], 1, 1); } return $this->fail(ServiceWorkLogic::getError()); } public function notApproved() { $params = (new ServiceWorkValidate())->post()->goCheck('detail'); $result = ServiceWorkLogic::notApproved($params); if (true === $result) { return $this->success('操作成功!', [], 1, 1); } return $this->fail(ServiceWorkLogic::getError()); } public function cancelAllocation() { $params = (new ServiceWorkValidate())->post()->goCheck('allocateWorker'); $result = ServiceWorkLogic::cancelAllocation($params,$this->adminInfo); if (true === $result) { return $this->success('操作成功!', [], 1, 1); } return $this->fail(ServiceWorkLogic::getError()); } public function addCustomerLog() { $params = (new ServiceWorkValidate())->post()->goCheck('detail',[ 'admin_id' => $this->adminId, ]); $result = ServiceWorkLogic::addCustomerLog($params); if (true === $result) { return $this->success('操作成功!', [], 1, 1); } return $this->fail(ServiceWorkLogic::getError()); } public function confirmServiceFinish() { $params = request()->post(); $params['admin_id'] = $this->adminId; $result = ServiceOrderLogic::confirmServiceFinish($params); if (false === $result) { return $this->fail(ServiceOrderLogic::getError()); } // 订单完成通知【给用户】 - 全款 -通知 ServiceOrderLogic::serviceFinishNotice($params); // 工程师完单的时候设置该规则关闭,以及短信通知工程师 ServiceOrderLogic::orderQuantityRule($params); return $this->success('操作成功!', [], 1, 1); } public function distributeTenants() { $params = request()->post(); $params['admin_id'] = $this->adminId; $result = ServiceWorkLogic::distributeTenants($params); if (true === $result) { return $this->success('分配成功', [], 1, 1); } return $this->fail(ServiceWorkLogic::getError()); } }