|
@@ -7,6 +7,10 @@
|
|
|
*/
|
|
|
namespace app\api\logic;
|
|
|
use app\common\model\houseservermodel;
|
|
|
+use app\common\model\MealcenterModel;
|
|
|
+use app\common\model\serverappointmentmodel;
|
|
|
+use app\common\model\UserAddressModel;
|
|
|
+use think\Db;
|
|
|
|
|
|
class houseserverlogic{
|
|
|
|
|
@@ -28,4 +32,106 @@ class houseserverlogic{
|
|
|
];
|
|
|
return backarr(1, "查询成功", $data);
|
|
|
}
|
|
|
+ /*
|
|
|
+ * 20221229
|
|
|
+ * 创建家政预约定单
|
|
|
+ */
|
|
|
+ public function createOrder($arr)
|
|
|
+ {
|
|
|
+ $fillfields = ['center_id', 'serverid','apointmentuserid'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $center_id = $arr['center_id'];
|
|
|
+ $serverid = $arr['serverid'];
|
|
|
+ $userid = $arr['apointmentuserid'];
|
|
|
+ $m_mc =new MealcenterModel();
|
|
|
+ $mcinfo = $m_mc->getInfo(['id' => $center_id, 'is_active' => 1]);
|
|
|
+ if (empty($mcinfo)) {
|
|
|
+ return backarr(0, "配餐中心不存在");
|
|
|
+ }
|
|
|
+ $m_hs = new houseservermodel();
|
|
|
+ $sinfo = $m_hs->getInfo(['id' => $serverid, 'isactive' => 1]);
|
|
|
+ if (empty($sinfo)) {
|
|
|
+ return backarr(0, "服务项目不存在");
|
|
|
+ }
|
|
|
+ Db::startTrans();
|
|
|
+ try {
|
|
|
+ $m_ua = new UserAddressModel();
|
|
|
+ if (!isset($arr['address_id']) || empty($arr['address_id'])) {
|
|
|
+ $fillfields = ['receiver_address', 'address', 'receiver_name', 'receiver_telno', 'gcj_lat', 'gcj_long'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ throw new \Exception("参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $insertData = [
|
|
|
+ 'receiver_address' => $arr['receiver_address'],
|
|
|
+ 'address' => $arr['address'],
|
|
|
+ 'receiver_name' => $arr['receiver_name'],
|
|
|
+ 'receiver_telno' => $arr['receiver_telno'],
|
|
|
+ 'gcj_lat' => $arr['gcj_lat'],
|
|
|
+ 'gcj_long' => $arr['gcj_long'],
|
|
|
+ 'user_id' => $userid,
|
|
|
+ ];
|
|
|
+ $uaid = $m_ua->insertData($insertData);
|
|
|
+ if (empty($uaid)) {
|
|
|
+ throw new \Exception("地址保存失败");
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $uaid = $arr['address_id'];
|
|
|
+ $uinfo = $m_ua->getInfo(['id' => $uaid]);
|
|
|
+ if (empty($uinfo)) {
|
|
|
+ throw new \Exception("无地址信息");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ $orderno = date('ymdhis') . $center_id . $serverid . $userid;
|
|
|
+ $insertData = [
|
|
|
+ 'center_id' => $center_id,
|
|
|
+ 'serverid' => $serverid,
|
|
|
+ 'orderno' => $orderno,
|
|
|
+ 'apointmentuserid' => $userid,
|
|
|
+ 'address_id' => $uaid,
|
|
|
+ 'appointmenttime' => date('Y-m-d H:i:s'),
|
|
|
+
|
|
|
+ ];
|
|
|
+ $m_mo = new serverappointmentmodel();
|
|
|
+ $moid = $m_mo->insertData($insertData);
|
|
|
+ if (empty($moid)) {
|
|
|
+ throw new \Exception("预约单添加失败");
|
|
|
+ }
|
|
|
+ Db::commit();
|
|
|
+ return backarr(1, "预约单添加成功", ['moid' => $moid]);
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ Db::rollback();
|
|
|
+ $msg = $e->getMessage();
|
|
|
+ return backarr(0, $msg);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /*
|
|
|
+ * 20221229
|
|
|
+ */
|
|
|
+ public function getorderlistbyuserid($arr){
|
|
|
+ $t_sa=new serverappointmentmodel();
|
|
|
+ if (!isset($arr['userid']) || empty($arr['userid'])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ $page = isset($arr['page']) && is_numeric($arr['page']) && !empty($arr['page']) && $arr['page'] > 0 ? $arr['page'] : 1;
|
|
|
+ $size = isset($arr['size']) && is_numeric($arr['size']) && !empty($arr['size']) && $arr['size'] > 0 ? $arr['size'] : 10;
|
|
|
+ $where_arr['apointmentuserid']=$arr['userid'];
|
|
|
+ $list=$t_sa->getList($where_arr,'*',$page,$size);
|
|
|
+ $data = [
|
|
|
+ 'page' => $page,
|
|
|
+ 'size' => $size,
|
|
|
+ // 'count' => $count,
|
|
|
+ 'list' => $list,
|
|
|
+ ];
|
|
|
+ return backarr(1, "查询成功", $data);
|
|
|
+ }
|
|
|
}
|