|
@@ -0,0 +1,699 @@
|
|
|
+<?php
|
|
|
+namespace app\admin\logic;
|
|
|
+
|
|
|
+use app\admin\server\Webuserserver;
|
|
|
+use app\common\model\CookbookModel;
|
|
|
+use app\common\model\MealcenterModel;
|
|
|
+use app\common\model\MealcookModel;
|
|
|
+use app\common\model\MealModel;
|
|
|
+
|
|
|
+//use app\common\model\MealOrdersModel;
|
|
|
+//use app\common\model\UserAddressModel;
|
|
|
+use think\Db;
|
|
|
+
|
|
|
+class MealLogic
|
|
|
+{
|
|
|
+ /**
|
|
|
+ * 获取套餐配送中心列表
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-01
|
|
|
+ */
|
|
|
+ public function getcenterlist($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $wherefield = ['name_center', 'address'];
|
|
|
+ $where = [];
|
|
|
+ foreach ($wherefield as $key => $value) {
|
|
|
+ if (isset($arr[$value]) && !empty($arr[$value])) {
|
|
|
+ $where[] = [$value, 'like', '%' . $arr[$value] . '%'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $wherefield2 = ['is_active'];
|
|
|
+ foreach ($wherefield2 as $key => $value) {
|
|
|
+ if (isset($arr[$value]) && is_numeric($arr[$value])) {
|
|
|
+ $where[] = [$value, '=', $arr[$value]];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $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;
|
|
|
+ $m_m = new MealcenterModel();
|
|
|
+ $count = $m_m->getList($where, 'count');
|
|
|
+ if ($count <= 0) {
|
|
|
+ return backarr(0, "无数据");
|
|
|
+ }
|
|
|
+ $totalpage = ceil($count / $size);
|
|
|
+ $page > $totalpage && $page = $totalpage;
|
|
|
+ $list = $m_m->getList($where, "*", $page, $size);
|
|
|
+ $data = [
|
|
|
+ 'page' => $page,
|
|
|
+ 'size' => $size,
|
|
|
+ 'count' => $count,
|
|
|
+ 'list' => $list,
|
|
|
+ ];
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '获取配餐中心列表',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "查询成功", $data);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 通过配送中心获取详细信息
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-05
|
|
|
+ */
|
|
|
+ public function getmealcenterinfobyid($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['cmid'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $cmid = $arr['cmid'];
|
|
|
+ $m_m = new MealcenterModel();
|
|
|
+ $minfo = $m_m->getInfo(['id' => $cmid]);
|
|
|
+ if (empty($minfo)) {
|
|
|
+ return backarr(0, "无数据");
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '获取配送中心[' . $cmid . ']信息',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "查询成功", $minfo);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 创建配餐中心
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-05
|
|
|
+ */
|
|
|
+ public function newcenter($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['name_center', 'gcj_lat', 'gcj_long', 'show_img', 'address'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $name_center = $arr['name_center'];
|
|
|
+ $m_m = new MealcenterModel();
|
|
|
+ $where = ['name_center' => $name_center];
|
|
|
+ $minfo = $m_m->getInfo($where);
|
|
|
+ if (!empty($minfo)) {
|
|
|
+ return backarr(0, "配送中心已存在");
|
|
|
+ }
|
|
|
+ $insertData = $arr;
|
|
|
+ $mcid = $m_m->insertData($insertData);
|
|
|
+ if (empty($mcid)) {
|
|
|
+ return backarr(0, "配送中心添加失败");
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '配餐中心创建:' . $mcid . ":" . $name_center,
|
|
|
+ 'type' => 1,
|
|
|
+ 'tablename' => 'mealcenter',
|
|
|
+ 'refid' => $mcid,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "配送中心添加成功", ['mcid' => $mcid]);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 修改配餐中心
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-05
|
|
|
+ */
|
|
|
+ public function editcenter($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['id'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $id = $arr['id'];
|
|
|
+ $m_m = new MealcenterModel();
|
|
|
+ $where = ['id' => $id];
|
|
|
+ $minfo = $m_m->getInfo($where);
|
|
|
+ if (empty($minfo)) {
|
|
|
+ return backarr(0, "配送中心不存在");
|
|
|
+ }
|
|
|
+ unset($arr['id']);
|
|
|
+ $updateData = [];
|
|
|
+ foreach ($minfo as $key => $value) {
|
|
|
+ if (isset($arr[$key]) && $arr[$key] != $value) {
|
|
|
+ $updateData[$key] = $arr[$key];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $row = $m_m->updateinfo($where, $updateData);
|
|
|
+ if (empty($row)) {
|
|
|
+ return backarr(0, "配送中心修改失败");
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '配餐中心修改:' . $id . ":" . $minfo['name_center'],
|
|
|
+ 'type' => 1,
|
|
|
+ 'tablename' => 'mealcenter',
|
|
|
+ 'refid' => $id,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "配送中心修改成功", ['mcid' => $id]);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 获取套餐配送中心
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-07
|
|
|
+ */
|
|
|
+ public function getmeallist($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $wherefield = ['name_center' => 'mc.name_center', 'name_meal' => 'm.name_meal'];
|
|
|
+ $where = [];
|
|
|
+ foreach ($wherefield as $key => $value) {
|
|
|
+ if (isset($arr[$key]) && !empty($arr[$key])) {
|
|
|
+ $where[] = [$value, 'like', '%' . $arr[$key] . '%'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $wherefield2 = ['is_active' => 'm.is_active'];
|
|
|
+ foreach ($wherefield2 as $key => $value) {
|
|
|
+ if (isset($arr[$key]) && is_numeric($arr[$key])) {
|
|
|
+ $where[] = [$value, '=', $arr[$key]];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $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;
|
|
|
+ $m_m = new MealModel();
|
|
|
+ $count = $m_m->getListJoinCenter($where, 'count');
|
|
|
+ if ($count <= 0) {
|
|
|
+ return backarr(0, "无数据");
|
|
|
+ }
|
|
|
+ $totalpage = ceil($count / $size);
|
|
|
+ $page > $totalpage && $page = $totalpage;
|
|
|
+ $field = ['m.*', 'mc.name_center'];
|
|
|
+ $list = $m_m->getListJoinCenter($where, $field, $page, $size);
|
|
|
+ $data = [
|
|
|
+ 'page' => $page,
|
|
|
+ 'size' => $size,
|
|
|
+ 'count' => $count,
|
|
|
+ 'list' => $list,
|
|
|
+ ];
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '获取配餐中心列表',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "查询成功", $data);
|
|
|
+ }
|
|
|
+
|
|
|
+ public function updatemealisactive($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['id'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $id = $arr['id'];
|
|
|
+ $m_m = new MealModel();
|
|
|
+ $where = ['id' => $id];
|
|
|
+ $minfo = $m_m->getInfo($where);
|
|
|
+ if (empty($minfo)) {
|
|
|
+ return backarr(0, "无对应数据");
|
|
|
+ }
|
|
|
+ $update = [];
|
|
|
+ if (1 == $minfo['is_active'] && 0 === $arr['is_active']) {
|
|
|
+ $update['is_active'] = $arr['is_active'];
|
|
|
+ }
|
|
|
+ if (0 === $minfo['is_active'] && 1 === $arr['is_active']) {
|
|
|
+ $update['is_active'] = $arr['is_active'];
|
|
|
+ }
|
|
|
+ if (empty($update)) {
|
|
|
+ $update['updatetime'] = date('y-m-d H:i:s');
|
|
|
+ }
|
|
|
+ $row = $m_m->updateinfo($where, $update);
|
|
|
+ if (empty($row)) {
|
|
|
+ return backarr(0, "修改失败");
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '修改套餐可用[id:' . $id . '][is_active:' . $arr['is_active'] . ']',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "操作成功", ['mid' => $id]);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 编辑套餐
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-07
|
|
|
+ */
|
|
|
+ public function editmeal($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['center_id', 'name_meal', 'price'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $m_m = new MealModel();
|
|
|
+ if (isset($arr['id'])) {
|
|
|
+ //修改
|
|
|
+ $mid = $arr['id'];
|
|
|
+ $where = ['id' => $mid];
|
|
|
+ $minfo = $m_m->getInfo($where);
|
|
|
+ $updateData = [];
|
|
|
+ foreach ($arr as $key => $value) {
|
|
|
+ if (isset($minfo[$key]) && $minfo[$key] != $value) {
|
|
|
+ $updateData[$key] = $value;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (!empty($updateData)) {
|
|
|
+ $updateData['updatetime'] = date('Y-m-d');
|
|
|
+ $row = $m_m->updateinfo($where, $updateData);
|
|
|
+ if (empty($row)) {
|
|
|
+ return backarr(0, "修改失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //添加
|
|
|
+ $insertData = [
|
|
|
+ 'center_id' => $arr['center_id'],
|
|
|
+ 'name_meal' => $arr['name_meal'],
|
|
|
+ 'price' => $arr['price'],
|
|
|
+ 'is_active' => 1,
|
|
|
+ 'createtime' => date('Y-m-d H:i:s'),
|
|
|
+ ];
|
|
|
+ $mid = $m_m->insertData($insertData);
|
|
|
+ if (empty($mid)) {
|
|
|
+ return backarr(0, "添加失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '套餐编辑[id:' . $mid . ']',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "操作成功", ['mid' => $mid]);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 根据id获取套餐详情
|
|
|
+ *
|
|
|
+ * @param [type] $arr
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-07
|
|
|
+ */
|
|
|
+ public function getmealinfo($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['id'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $id = $arr['id'];
|
|
|
+ $m_m = new MealModel();
|
|
|
+ $where = ['id' => $id];
|
|
|
+ $minfo = $m_m->getInfo($where);
|
|
|
+ if (empty($minfo)) {
|
|
|
+ return backarr(0, "无对应数据");
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '获取套餐[' . $id . ']详情',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "查询成功", $minfo);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 根据中心id获取菜品列表
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-07
|
|
|
+ */
|
|
|
+ public function getcooks($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['center_id'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $centerid = $arr['center_id'];
|
|
|
+ $where = [
|
|
|
+ 'center_id' => $centerid,
|
|
|
+ 'is_active' => 1,
|
|
|
+ ];
|
|
|
+ $m_cb = new CookbookModel();
|
|
|
+ $list = $m_cb->getList($where, "*", 1, 0);
|
|
|
+ if (empty($list)) {
|
|
|
+ return backarr(0, "无对应数据");
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '获取配送中心[' . $centerid . ']菜品列表',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "查询成功", $list);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 保存套餐菜谱
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-08
|
|
|
+ */
|
|
|
+ public function savemealcooks($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['center_id', 'week', 'items', 'meal_id'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $centerid = $arr['center_id'];
|
|
|
+ $week = $arr['week'];
|
|
|
+ $mealid = $arr['meal_id'];
|
|
|
+ $items = $arr['items'];
|
|
|
+ $where = [
|
|
|
+ 'center_id' => $centerid,
|
|
|
+ 'meal_id' => $mealid,
|
|
|
+ 'week' => $week,
|
|
|
+ ];
|
|
|
+ Db::startTrans();
|
|
|
+ try {
|
|
|
+ $m_mc = new MealcookModel();
|
|
|
+ $m_mc->deletecooks($where);
|
|
|
+ foreach ($items as $key => $value) {
|
|
|
+ $insertData = [
|
|
|
+ 'center_id' => $centerid,
|
|
|
+ 'meal_id' => $mealid,
|
|
|
+ 'cook_id' => $value['cook_id'],
|
|
|
+ 'week' => $week,
|
|
|
+ ];
|
|
|
+ $mcid = $m_mc->insertData($insertData);
|
|
|
+ if (empty($mcid)) {
|
|
|
+ throw new \Exception("添加失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '更新套餐[' . $mealid . ']菜谱',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ Db::commit();
|
|
|
+ return backarr(1, "添加成功");
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ Db::rollback();
|
|
|
+ $msg = $e->getMessage();
|
|
|
+ return backarr(0, $msg);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 获取套餐菜谱全部信息
|
|
|
+ *
|
|
|
+ * @param [type] $arr
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-08
|
|
|
+ */
|
|
|
+ public function getmealcooklist($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $wherefield = ['name_center' => 'mc1.name_center', 'name_meal' => 'm.name_meal', 'name_cook' => 'cb.name_meal', 'week', 'mc.week'];
|
|
|
+ $where = [];
|
|
|
+ foreach ($wherefield as $key => $value) {
|
|
|
+ if (isset($arr[$key]) && !empty($arr[$key])) {
|
|
|
+ $where[] = [$value, 'like', '%' . $arr[$key] . '%'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $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;
|
|
|
+ $m_mc = new MealcookModel();
|
|
|
+ $count = $m_mc->getListJoinInfo($where, 'count');
|
|
|
+ if ($count <= 0) {
|
|
|
+ return backarr(0, "无数据");
|
|
|
+ }
|
|
|
+ $totalpage = ceil($count / $size);
|
|
|
+ $page > $totalpage && $page = $totalpage;
|
|
|
+ $list = $m_mc->getListJoinInfo($where, '*', $page, $size);
|
|
|
+ $data = [
|
|
|
+ 'page' => $page,
|
|
|
+ 'size' => $size,
|
|
|
+ 'count' => $count,
|
|
|
+ 'list' => $list,
|
|
|
+ ];
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '获取套餐菜谱列表',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "查询成功", $data);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 获取菜单列表
|
|
|
+ *
|
|
|
+ * @param [type] $arr
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-08
|
|
|
+ */
|
|
|
+ public function getcookslist($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $wherefield = ['name_cook' => 'cb.name_cook', 'name_center' => 'mc.name_center'];
|
|
|
+ $where = [];
|
|
|
+ foreach ($wherefield as $key => $value) {
|
|
|
+ if (isset($arr[$key]) && !empty($arr[$key])) {
|
|
|
+ $where[] = [$value, 'like', '%' . $arr[$key] . '%'];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $wherefield2 = ['is_active' => 'cb.is_active'];
|
|
|
+ foreach ($wherefield2 as $key => $value) {
|
|
|
+ if (isset($arr[$key]) && is_numeric($arr[$key])) {
|
|
|
+ $where[] = [$value, '=', $arr[$key]];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $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;
|
|
|
+ $m_cb = new CookbookModel();
|
|
|
+ $count = $m_cb->getListjoinMC($where, 'count');
|
|
|
+ if ($count <= 0) {
|
|
|
+ return backarr(0, "无数据");
|
|
|
+ }
|
|
|
+ $totalpage = ceil($count / $size);
|
|
|
+ $page > $totalpage && $page = $totalpage;
|
|
|
+ $field = ['cb.*', 'mc.name_center'];
|
|
|
+ $list = $m_cb->getListjoinMC($where, $field, $page, $size);
|
|
|
+ $data = [
|
|
|
+ 'page' => $page,
|
|
|
+ 'size' => $size,
|
|
|
+ 'count' => $count,
|
|
|
+ 'list' => $list,
|
|
|
+ ];
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '获取套餐菜谱列表',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "查询成功", $data);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 获取菜谱信息根据id
|
|
|
+ *
|
|
|
+ * @param [type] $arr
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-08
|
|
|
+ */
|
|
|
+ public function getcookinfobyid($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['cmid'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $mbid = $arr['cmid'];
|
|
|
+ $m_cb = new CookbookModel();
|
|
|
+ $minfo = $m_cb->getInfo(['id' => $mbid]);
|
|
|
+ if (empty($minfo)) {
|
|
|
+ return backarr(0, "无数据");
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '获取配送中心[' . $mbid . ']信息',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "查询成功", $minfo);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 改菜品信息
|
|
|
+ *
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-08
|
|
|
+ */
|
|
|
+ public function editcookinfo($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['name_center', 'name_cook', 'show_img'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $namecenter = trim($arr['name_center']);
|
|
|
+ $namecook = trim($arr['name_cook']);
|
|
|
+ $showimg = $arr['show_img'];
|
|
|
+ $mcwhere = ['name_center' => $namecenter, 'is_active' => 1];
|
|
|
+ $time = date('Y-m-d H:i:s');
|
|
|
+ $m_mc = new MealcenterModel();
|
|
|
+ $m_cb = new CookbookModel();
|
|
|
+ $mcinfo = $m_mc->getInfo($mcwhere);
|
|
|
+ if (empty($mcinfo)) {
|
|
|
+ return backarr(0, "配送中心不存在");
|
|
|
+ }
|
|
|
+ if (!isset($arr['id']) || empty($arr['id'])) {
|
|
|
+ $cbwhere = ['name_cook' => $namecook, 'is_active' => 1];
|
|
|
+ $cbinfo = $m_cb->getInfo($cbwhere);
|
|
|
+ if (!empty($cbinfo)) {
|
|
|
+ return backarr(0, "菜品已存在");
|
|
|
+ }
|
|
|
+ $insertData = [
|
|
|
+ 'name_cook' => $namecook,
|
|
|
+ 'show_img' => $showimg,
|
|
|
+ 'center_id' => $mcinfo['id'],
|
|
|
+ 'craetetime' => $time,
|
|
|
+ ];
|
|
|
+ $id = $m_cb->insertData($insertData);
|
|
|
+ if (empty($id)) {
|
|
|
+ return backarr(0, "菜品添加失败");
|
|
|
+ }
|
|
|
+ $cbinfo = $insertData;
|
|
|
+ $cbinfo['id'] = $id;
|
|
|
+ }
|
|
|
+ if (isset($arr['id']) && !empty($arr['id'])) {
|
|
|
+ $id = $arr['id'];
|
|
|
+ $where = ['id' => $id];
|
|
|
+ $cbinfo = $m_cb->getInfo($where);
|
|
|
+ if (empty($minfo)) {
|
|
|
+ return backarr(0, "菜品不存在");
|
|
|
+ }
|
|
|
+ unset($arr['id']);
|
|
|
+ $updateData = [];
|
|
|
+ foreach ($cbinfo as $key => $value) {
|
|
|
+ if (isset($arr[$key]) && $arr[$key] != $value) {
|
|
|
+ $updateData[$key] = $arr[$key];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $row = $m_cb->updateinfo($where, $updateData);
|
|
|
+ if (empty($row)) {
|
|
|
+ return backarr(0, "菜品修改失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '菜品编辑:' . $id . ":" . $cbinfo['name_cook'],
|
|
|
+ 'type' => 1,
|
|
|
+ 'tablename' => 'cookbook',
|
|
|
+ 'refid' => $id,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "菜品编辑成功", ['cbid' => $id]);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 修改菜品可用
|
|
|
+ *
|
|
|
+ * @param [type] $arr
|
|
|
+ * @return void
|
|
|
+ * @author wj
|
|
|
+ * @date 2022-12-08
|
|
|
+ */
|
|
|
+ public function updatecookisactive($arr)
|
|
|
+ {
|
|
|
+ $userinfo = checkToken();
|
|
|
+ $fillfields = ['id'];
|
|
|
+ foreach ($fillfields as $key => $value) {
|
|
|
+ if (!isset($arr[$value]) || empty($arr[$value])) {
|
|
|
+ return backarr(0, "参数缺少");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $id = $arr['id'];
|
|
|
+ $m_cb = new CookbookModel();
|
|
|
+ $where = ['id' => $id];
|
|
|
+ $cbnfo = $m_cb->getInfo($where);
|
|
|
+ if (empty($cbnfo)) {
|
|
|
+ return backarr(0, "无对应数据");
|
|
|
+ }
|
|
|
+ $update = [];
|
|
|
+ if (1 == $cbnfo['is_active'] && 0 === $arr['is_active']) {
|
|
|
+ $update['is_active'] = $arr['is_active'];
|
|
|
+ }
|
|
|
+ if (0 === $cbnfo['is_active'] && 1 === $arr['is_active']) {
|
|
|
+ $update['is_active'] = $arr['is_active'];
|
|
|
+ }
|
|
|
+ if (empty($update)) {
|
|
|
+ $update['updatetime'] = date('y-m-d H:i:s');
|
|
|
+ }
|
|
|
+ $row = $m_cb->updateinfo($where, $update);
|
|
|
+ if (empty($row)) {
|
|
|
+ return backarr(0, "修改失败");
|
|
|
+ }
|
|
|
+ //保存日志
|
|
|
+ $s_w = new Webuserserver();
|
|
|
+ $logData = [
|
|
|
+ 'node' => '修改菜品可用[id:' . $id . '][is_active:' . $arr['is_active'] . ']',
|
|
|
+ 'type' => 1,
|
|
|
+ ];
|
|
|
+ $s_w->savelog($userinfo['id'], $logData);
|
|
|
+ return backarr(1, "操作成功", ['mid' => $id]);
|
|
|
+ }
|
|
|
+}
|