|
@@ -40,8 +40,9 @@ class WechatMenuController extends CatchController
|
|
|
|
|
|
public function add(WechatMenuRequest $request)
|
|
|
{
|
|
|
-
|
|
|
- $param = $this->handleParam($request->validated());
|
|
|
+ $param = $request->validated();
|
|
|
+ $param['msg_content'] = $request->input('msg_content');
|
|
|
+ $param = $this->handleParam($param);
|
|
|
$userContext = $this->getUserContext(null);
|
|
|
$param['user_id'] = $userContext['loginUser']->id;
|
|
|
$param['puser_id'] = $userContext['loginUser']->pid;
|
|
@@ -51,7 +52,9 @@ class WechatMenuController extends CatchController
|
|
|
|
|
|
public function edit($id,WechatMenuRequest $request)
|
|
|
{
|
|
|
- $param = $this->handleParam($request->validated());
|
|
|
+ $param = $request->validated();
|
|
|
+ $param['msg_content'] = $request->input('msg_content');
|
|
|
+ $param = $this->handleParam($param);
|
|
|
return WechatMenuService::updateMenu($id,$param);
|
|
|
}
|
|
|
|
|
@@ -114,16 +117,18 @@ class WechatMenuController extends CatchController
|
|
|
if (count($param['content']) >3){
|
|
|
WechatMenuService::throwErrMsg("底部菜单不能超过3个");
|
|
|
}
|
|
|
- $clicks = [];
|
|
|
- foreach ($param['content'] as $val){
|
|
|
+ // $clicks = [];
|
|
|
+ $msgContent = [];
|
|
|
+ foreach ($param['content'] as &$val){
|
|
|
if (!empty(getProp($val,'sub_button'))){
|
|
|
- foreach ($val['sub_button'] as $sub){
|
|
|
+ foreach ($val['sub_button'] as &$sub){
|
|
|
if (getProp($sub,'type') == 'miniprogram'){
|
|
|
$sub['appid'] = $param['miniprogram_appid'];
|
|
|
$sub['pagepath'] = $sub['url'];
|
|
|
}
|
|
|
if (getProp($sub,'type') == 'click'){
|
|
|
- $clicks[] = $sub['key'];
|
|
|
+ // $clicks[] = $sub['key'];
|
|
|
+ $msgContent[] =[$sub['key'] => $sub['content']];
|
|
|
}
|
|
|
}
|
|
|
}else{
|
|
@@ -132,41 +137,45 @@ class WechatMenuController extends CatchController
|
|
|
$val['pagepath'] = $val['url'];
|
|
|
}
|
|
|
if (getProp($val,'type') == 'click'){
|
|
|
- $clicks[] = $val['key'];
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- unset($val,$sub,$info);
|
|
|
- $param['msg_content']= [];
|
|
|
- // 有点击事件
|
|
|
- if (!empty($clicks)){
|
|
|
- $msgContent = [];
|
|
|
- $msg = getProp($param,'msg_content');
|
|
|
- if (empty($msg) || !is_array($msg)){
|
|
|
- WechatMenuService::throwErrMsg("发送的文本信息不能为空");
|
|
|
- }
|
|
|
- foreach ($clicks as $val){
|
|
|
- $temp = getProp($msg,$val);
|
|
|
- if (empty($temp) || !is_array($temp)){
|
|
|
- WechatMenuService::throwErrMsg("发送的文本信息格式不正确");
|
|
|
- }
|
|
|
- $contents = "";
|
|
|
- foreach ($temp as & $item){
|
|
|
- if (getProp($item,'url')){
|
|
|
- $item['content'] = "<a href=\"\" data-miniprogram-appid=\"{$param['miniprogram_appid']}\" data-miniprogram-path=\"{$val['url']}\">{$val['title']}</a>";
|
|
|
- }else{
|
|
|
- $item['content'] = $item['tittle'];
|
|
|
- }
|
|
|
- $contents .= $item['content']."\n";
|
|
|
+ // $clicks[] = $val['key'];
|
|
|
+ $msgContent[] =[$val['key'] => $val['content']];
|
|
|
}
|
|
|
- rtrim($contents, "\n");
|
|
|
- $temp['content'] = $contents;
|
|
|
- $msgContent = [$val => $temp];
|
|
|
}
|
|
|
- $param['msg_content'] = $msgContent;
|
|
|
- unset($msgContent);
|
|
|
- unset($temp,$val,$item);
|
|
|
}
|
|
|
+ $param['msg_content']= $msgContent;
|
|
|
+ // unset($val,$sub,$info);
|
|
|
+ // // 有点击事件
|
|
|
+ // if (!empty($clicks)){
|
|
|
+ // $msgContent = [];
|
|
|
+ // $msg = getProp($param,'msg_content');
|
|
|
+ // if (empty($msg) || !is_array($msg)){
|
|
|
+ // WechatMenuService::throwErrMsg("发送的文本信息不能为空");
|
|
|
+ // }
|
|
|
+ // foreach ($clicks as $val){
|
|
|
+ // $temp = getProp($msg,$val);
|
|
|
+ // if (empty($temp) || !is_array($temp)){
|
|
|
+ // WechatMenuService::throwErrMsg("发送的文本信息格式不正确");
|
|
|
+ // }
|
|
|
+ // $contents = "";
|
|
|
+ // foreach ($temp as & $item){
|
|
|
+ // if (getProp($item,'url')){
|
|
|
+ // $item['content'] = "<a href=\"\" data-miniprogram-appid=\"{$param['miniprogram_appid']}\" data-miniprogram-path=\"{$item['url']}\">{$item['title']}</a>";
|
|
|
+ // }else{
|
|
|
+ // $item['content'] = $item['title'];
|
|
|
+ // }
|
|
|
+ // $contents = $contents.$item['content']."\n";
|
|
|
+ // }
|
|
|
+ //
|
|
|
+ // rtrim($contents, "\n");
|
|
|
+ // $temp['content'] = $contents;
|
|
|
+ // $msgContent = [$val => $temp];
|
|
|
+ // }
|
|
|
+ // $param['msg_content'] = $msgContent;
|
|
|
+ // unset($msgContent);
|
|
|
+ // unset($temp,$val,$item);
|
|
|
+ // }else{
|
|
|
+ // $param['msg_content']= [];
|
|
|
+ // }
|
|
|
return $param;
|
|
|
}
|
|
|
|