where('mark', $mark)->first(); if (!$hospital_extra) { $hospital_extra = new HospitalExtra(); $hospital_extra->hospital = $hospital; $hospital_extra->mark = $mark; switch ($mark) { case 'pay': $hospital_extra->content = '{"wxp":{"open":0,"id":"","number":"","v3":"","key":"","crt":""}}'; break; case 'order_type': $hospital_extra->content = '{"combo_add_item":0,"item":0}'; break; case 'card_pay': $hospital_extra->content = '{"open":0}'; break; case 'readme': $hospital_extra->content = '{"open":0,"content":"","time":5}'; break; case 'h5txt': $hospital_extra->content = '{"path":""}'; break; case 'report': $hospital_extra->content = '{"open":0}'; break; case 'profitsharing': $hospital_extra->content = '{"open":0}'; break; } $hospital_extra->save(); } $hospital_extra->content = json_decode($hospital_extra->content, true); return $hospital_extra; } public function update(Request $request) { Login::admin([], [17, 25]); $hospital = $request->post('hospital'); if (Login::$info->hospital != 0) { if ($hospital != Login::$info->hospital) { Yo::error_echo(100000, ['机构/医院']); } } $mark = $request->post('mark'); $content = $request->post('content'); $hospital_extra = self::get_hospital_extra($hospital, $mark); $hospital_extra->content = $content; $hospital_extra->save(); return Yo::update_echo($hospital_extra->id); } public function info(Request $request) { Login::admin([], [17, 25]); $hospital = $request->post('hospital'); if (Login::$info->hospital != 0) { if ($hospital != Login::$info->hospital) { Yo::error_echo(100000, ['机构/医院']); } } $mark = $request->post('mark'); $hospital_extra = self::get_hospital_extra($hospital, $mark); return Yo::echo([ 'info' => $hospital_extra ]); } public function report_status(Request $request) { $hospital = $request->post('hospital'); $mark = 'report'; $hospital_extra = HospitalExtra::where('hospital', $hospital)->where('mark', $mark)->first(); $hospital_extra_public = HospitalExtra::where('hospital', 0)->where('mark', $mark)->first(); $hospital_extra_public_content = json_decode($hospital_extra_public->content, true); if (!!$hospital_extra) { $hospital_extra_content = json_decode($hospital_extra->content, true); $hospital_extra_content['open'] = $hospital_extra_content['open'] == 0 ? $hospital_extra_public_content['open'] : $hospital_extra_content['open']; } else { $hospital_extra_content = $hospital_extra_public_content; } if ($hospital_extra_content['open'] == 0) $hospital_extra_content['open'] = 2; return Yo::echo([ 'info' => $hospital_extra_content ]); } public function profitsharing_status(Request $request) { $hospital = $request->post('hospital'); $mark = 'profitsharing'; $hospital_extra = HospitalExtra::where('hospital', $hospital)->where('mark', $mark)->first(); $hospital_extra_public = HospitalExtra::where('hospital', 0)->where('mark', $mark)->first(); $hospital_extra_public_content = json_decode($hospital_extra_public->content, true); if (!!$hospital_extra) { $hospital_extra_content = json_decode($hospital_extra->content, true); $hospital_extra_content['open'] = $hospital_extra_content['open'] == 0 ? $hospital_extra_public_content['open'] : $hospital_extra_content['open']; } else { $hospital_extra_content = $hospital_extra_public_content; } if ($hospital_extra_content['open'] == 0) $hospital_extra_content['open'] = 2; return Yo::echo([ 'info' => $hospital_extra_content ]); } public function mp_info(Request $request) { Login::user(); $hospital = $request->post('hospital'); $mark = $request->post('mark'); $hospital_extra = HospitalExtra::where('hospital', $hospital)->where('mark', $mark)->first(); $hospital_extra_public = HospitalExtra::where('hospital', 0)->where('mark', $mark)->first(); $hospital_extra_public_content = json_decode($hospital_extra_public->content, true); if (!!$hospital_extra) { $hospital_extra_content = json_decode($hospital_extra->content, true); switch ($mark) { case 'pay': $hospital_extra_content['wxp'] = $hospital_extra_content['wxp']['open'] == 0 ? $hospital_extra_public_content['wxp'] : $hospital_extra_content['wxp']; break; case 'order_type': $hospital_extra_content['combo_add_item'] = $hospital_extra_content['combo_add_item'] == 0 ? $hospital_extra_public_content['combo_add_item'] : $hospital_extra_content['combo_add_item']; $hospital_extra_content['item'] = $hospital_extra_content['item'] == 0 ? $hospital_extra_public_content['item'] : $hospital_extra_content['item']; break; case 'card_pay': case 'report': case 'profitsharing': $hospital_extra_content['open'] = $hospital_extra_content['open'] == 0 ? $hospital_extra_public_content['open'] : $hospital_extra_content['open']; break; case 'readme': $hospital_extra_content['open'] = $hospital_extra_content['open'] == 0 ? $hospital_extra_public_content['open'] : $hospital_extra_content['open']; $hospital_extra_content['content'] = $hospital_extra_content['content'] == '' ? $hospital_extra_public_content['content'] : $hospital_extra_content['content']; $hospital_extra_content['time'] = $hospital_extra_content['time'] == 0 ? $hospital_extra_public_content['time'] : $hospital_extra_content['time']; break; } } else { $hospital_extra_content = $hospital_extra_public_content; } switch ($mark) { case 'pay': if ($hospital_extra_content['wxp']['open'] == 0) $hospital_extra_content['wxp']['open'] = 2; break; case 'order_type': if ($hospital_extra_content['combo_add_item'] == 0) $hospital_extra_content['combo_add_item'] = 2; if ($hospital_extra_content['item'] == 0) $hospital_extra_content['item'] = 2; break; case 'card_pay': case 'readme': case 'report': case 'profitsharing': if ($hospital_extra_content['open'] == 0) $hospital_extra_content['open'] = 2; break; } return Yo::echo([ 'info' => $hospital_extra_content ]); } }