|
- package com.iformall.controller;
-
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONObject;
- import com.github.pagehelper.PageInfo;
- import com.iformall.common.ErrorCode;
- import com.iformall.common.ResultData;
- import com.iformall.controller.base.BaseController;
- import com.iformall.domain.po.WxAppinfo;
- import com.iformall.domain.po.WxWeappExtSet;
- import com.iformall.enums.EnumAppType;
- import com.iformall.service.WxAppinfoService;
- import com.iformall.service.WxWeappExtSetService;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiImplicitParam;
- import io.swagger.annotations.ApiImplicitParams;
- import io.swagger.annotations.ApiOperation;
- import org.apache.commons.lang3.StringUtils;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.*;
-
- import java.util.List;
-
- /**
- * Stormeye Wu
- */
- @Controller
- @RequestMapping("/weappExtSet")
- @Api(description = "小程序扩展设置接口")
- public class WxWeappExtSetController extends BaseController {
- private final Logger logger = LoggerFactory.getLogger(getClass());
-
- @Autowired
- private WxAppinfoService appinfoService;
-
- @Autowired
- private WxWeappExtSetService weappExtSetService;
-
- @ApiOperation("分页列表接口")
- @GetMapping("list")
- @ApiImplicitParams({
- @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
- @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
- public ResultData list(@ModelAttribute WxWeappExtSet weappExtSet, Integer pageNum, Integer pageSize) {
- logger.debug("[" + getIpAddr() + "] WxWeappExtSetController::list");
- if (null == weappExtSet) weappExtSet = new WxWeappExtSet();
- final PageInfo<WxWeappExtSet> page = weappExtSetService.listAsPage(weappExtSet, pageNum, pageSize);
- return new ResultData(page);
- }
-
- @PostMapping("add")
- public ResultData add(@RequestBody WxWeappExtSet weappExtSet) {
- logger.debug("[" + getIpAddr() + "] WxWeappExtSetController::add");
- if (null == weappExtSet) return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- weappExtSetService.saveOrUpdate(weappExtSet);
- return new ResultData();
- }
-
- @PostMapping("update")
- public ResultData update(@RequestBody WxWeappExtSet weappExtSet) {
- logger.debug("[" + getIpAddr() + "] WxWeappBasicSetController::update");
- if (null == weappExtSet) return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- if (StringUtils.isBlank(weappExtSet.getExtJson())) {
- return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- }
- if (StringUtils.isBlank(weappExtSet.getReleaseJson())) {
- return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- }
- weappExtSetService.saveOrUpdate(weappExtSet);
- return new ResultData();
- }
-
- @ApiOperation("扩展模板-批量模板更新")
- @PostMapping("batchUpdate")
- public ResultData batchAdd(@RequestBody WxWeappExtSet weappExtSet) {
- logger.debug("[" + getIpAddr() + "] WxWeappExtSetController::batchUpdate");
- if (null == weappExtSet) return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- if(StringUtils.isBlank(weappExtSet.getExtJson())) {
- return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- }
- if(weappExtSet.getType() == null) {
- return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- }
- String extJson = weappExtSet.getExtJson();
- JSONObject obj = JSON.parseObject(extJson);
- if(obj == null) {
- return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- }
- JSONObject extObj = obj.getJSONObject("ext");
- if(extObj == null) {
- return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- }
- JSONObject attrObj = extObj.getJSONObject("attr");
- if(attrObj == null) {
- return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
- }
- WxWeappExtSet extSetQ = new WxWeappExtSet();
- extSetQ.setType(weappExtSet.getType());
- List<WxWeappExtSet> weappExtSetList = weappExtSetService.getList(extSetQ);
- for(WxWeappExtSet info: weappExtSetList) {
- WxAppinfo appinfo = appinfoService.getByAppId(info.getAppId());
- if(appinfo == null) {
- continue;
- }
- obj.put("extAppid", info.getAppId());
- if(weappExtSet.getType().equals(EnumAppType.C.getCode())) {
- if (attrObj != null) {
- attrObj.put("ifHaveCarModular", String.valueOf(info.getCarSupport()));
- }
- }
- if(extObj != null) {
- extObj.put("weappId", info.getAppId());
- extObj.put("name", appinfo.getName());
- if(weappExtSet.getType().equals(EnumAppType.C.getCode())) {
- extObj.put("attr", attrObj);
- }
- obj.put("ext", extObj);
- }
-
- WxWeappExtSet newInfo = new WxWeappExtSet();
- newInfo.setExtJson(JSON.toJSONString(obj));
- newInfo.setId(info.getId());
-
- try {
- weappExtSetService.saveOrUpdate(newInfo);
- } catch (Exception e) {
- logger.error("APPID " + info.getAppId() + ", 保存失败 " + e.getMessage());
- }
- }
- return new ResultData();
- }
-
- }
|