Browse Source

场景勋章功能后台

master
蟑螂恶霸 3 years ago
parent
commit
5a7c66a6d7
  1. 52
      lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/medal/add.html
  2. 11
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java
  3. 15
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMedalController.java
  4. 29
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java
  5. 11
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/domain/SceneMedal.java
  6. 8
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/mapper/QuestionAnswerMapper.java
  7. 4
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/mapper/SceneMedalMapper.java
  8. 8
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/IQuestionAnswerService.java
  9. 8
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/ISceneMedalService.java
  10. 5
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/QuestionAnswerServiceImpl.java
  11. 5
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/SceneMedalServiceImpl.java
  12. 7
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/resources/mapper/QuestionAnswerMapper.xml
  13. 5
      lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/resources/mapper/SceneMedalMapper.xml

52
lib/EmergencyService/zdxtEmergencyBootStart/src/main/resources/templates/project/medal/add.html

@ -3,38 +3,58 @@
<head>
<th:block th:include="zdxtInclude :: header('新增')"/>
<th:block th:include="zdxtInclude :: bootstrap-fileinput-css"/>
<th:block th:include="include :: select2-css" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" enctype="multipart/form-data" id="form-medal-add" type="text/template">
<input name="parentId" type="text" hidden>
<div class="form-group">
<label class="col-sm-3 control-label is-required">名称:</label>
<div class="col-sm-8">
<input class="form-control" type="text" name="name" id="name" required>
<div class="row">
<div class="form-group">
<label class="col-sm-2 control-label is-required">名称:</label>
<div class="col-sm-10">
<input class="form-control" type="text" name="name" id="name" required>
</div>
</div>
</div>
<div class="form-group" id="fileTitle">
<label class="col-sm-3 control-label is-required">图标:</label>
<div id="fileIn" class="col-sm-8">
<div class="file-loading">
<input id="fileInput" name="file" type="file" multiple>
<div class="row">
<div class="form-group" id="fileTitle">
<label class="col-sm-2 control-label is-required">图标:</label>
<div id="fileIn" class="col-sm-10">
<div class="file-loading">
<input id="fileInput" name="file" type="file" multiple>
</div>
</div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label is-required">启用:</label>
<div class="col-sm-8">
<select name="hide" class="form-control">
<option value="1"></option>
<option value="0"></option>
</select>
<div class="row">
<div class="col-sm-6">
<div class="form-group">
<label class="col-sm-4 control-label">场景:</label>
<div class="col-sm-8">
<select id="post" class="form-control select2-multiple" multiple>
<option th:each="scene:${sceneList}" th:value="${scene.guid}" th:text="${scene.name}" th:disabled="${scene.status == '1'}"></option>
</select>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="form-group">
<label class="col-sm-4 control-label is-required">启用:</label>
<div class="col-sm-8">
<select name="hide" class="form-control">
<option value="1"></option>
<option value="0"></option>
</select>
</div>
</div>
</div>
</div>
</form>
</div>
<th:block th:include="zdxtInclude :: footer"/>
<th:block th:include="zdxtInclude :: bootstrap-fileinput-js"/>
<th:block th:include="include :: select2-js" />
<script type="text/javascript" th:inline="javascript">
var prefix = ctx + "small/project/medal"

11
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/QuestionAnswerController.java

@ -113,4 +113,15 @@ public class QuestionAnswerController extends BaseController
int resNum = questionAnswerService.deleteQuestionAnswerByIds(ids);
return resNum>0?ZDResponse.success("操作成功", resNum):ZDResponse.error("操作失败", resNum);
}
/**
* 修改选择
*/
@GetMapping("/queryQAByFreId/{guid}")
@ResponseBody
public ZDResponse queryQAByFreId(@PathVariable("guid") String guid)
{
List<QuestionAnswer> list = questionAnswerService.queryQAByFreId(guid);
return ZDResponse.success("操作成功", list);
}
}

15
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/SceneMedalController.java

@ -3,8 +3,12 @@ package com.zdxt.knowledge.controller;
import com.zdxt.common.ZDResponse;
import com.zdxt.common.controller.BaseController;
import com.zdxt.common.util.TableDataInfo;
import com.zdxt.knowledge.domain.SceneManage;
import com.zdxt.knowledge.domain.SceneMedal;
import com.zdxt.knowledge.domain.WechatUser;
import com.zdxt.knowledge.service.ISceneManageService;
import com.zdxt.knowledge.service.ISceneMedalService;
import com.zdxt.knowledge.service.WechatService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
@ -29,6 +33,8 @@ public class SceneMedalController extends BaseController {
@Autowired
private ISceneMedalService sceneMedalService;
@Autowired private ISceneManageService sceneManageService;
@Autowired private WechatService wechatService;
@RequiresPermissions("project:medal:view")
@GetMapping("/view")
@ -48,13 +54,14 @@ public class SceneMedalController extends BaseController {
List<SceneMedal> list = sceneMedalService.selectSceneMedalList(sceneMedal);
return getDataTable(list);
}
/**
* 查询
*/
@PostMapping("/listAll")
@ResponseBody
public ZDResponse listAll(@RequestBody SceneMedal sceneMedal) {
// WechatUser wu = wechatService.selectUserById(sceneMedal.getCreator());
// List<SceneMedal> list = sceneMedalService.selectSceneMedalByIds(wu.getMedal());
List<SceneMedal> list = sceneMedalService.selectSceneMedalList(sceneMedal);
return ZDResponse.success("成功", list);
}
@ -74,7 +81,9 @@ public class SceneMedalController extends BaseController {
* 新增
*/
@GetMapping("/add")
public String add() {
public String add(ModelMap mmap) {
List<SceneManage> sceneList = sceneManageService.selectSceneManageListAll(new SceneManage());
mmap.put("sceneList", sceneList);
return prefix + "/add";
}
@ -96,6 +105,8 @@ public class SceneMedalController extends BaseController {
public String edit(@PathVariable("guid") String guid, ModelMap mmap) {
SceneMedal sceneMedal = sceneMedalService.selectSceneMedalById(guid);
mmap.put("sceneMedal", sceneMedal);
List<SceneManage> sceneList = sceneManageService.selectSceneManageListAll(new SceneManage());
mmap.put("sceneList", sceneList);
return prefix + "/edit";
}

29
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/controller/WechatLoginController.java

@ -18,6 +18,7 @@ import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@ -79,6 +80,34 @@ public class WechatLoginController extends BaseController {
? ZDResponse.success() : ZDResponse.error("编辑失败");
}
/**
* 修改保存
*/
@RequiresPermissions("project:user:edit")
@PostMapping("/editUserMedal")
@ResponseBody
public ZDResponse editUserMedal(WechatUser wechatUser) {
// 先通过场景id获取到相关联的勋章id
String medalId = wechatUser.getMedal();
SceneMedal sceneMedal = new SceneMedal();
sceneMedal.setSceneId(medalId);
List<SceneMedal> sceneMedals = sceneMedalService.selectSceneMedalList(sceneMedal);
medalId = sceneMedals.stream().map(c -> c.getGuid()).collect(Collectors.joining(","));
// 判断用户是否已拥有该勋章
WechatUser user = wechatService.selectUserById(wechatUser.getGuid());
String medalStr = user.getMedal();
if(medalStr.indexOf(medalId) > -1) {
// 已拥有直接返回
return ZDResponse.success();
}
// 否则更新
medalStr += ","+medalId;
user.setMedal(medalStr);
return wechatService.update(wechatUser) > 0
? ZDResponse.success() : ZDResponse.error("编辑失败");
}
/**
* 登入
*/

11
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/domain/SceneMedal.java

@ -30,6 +30,9 @@ public class SceneMedal implements Serializable {
*/
private String iconPath;
/** 绑定场景Id */
private String sceneId;
/**
* 是否启用
*/
@ -78,6 +81,14 @@ public class SceneMedal implements Serializable {
this.name = name;
}
public String getSceneId() {
return sceneId;
}
public void setSceneId(String sceneId) {
this.sceneId = sceneId;
}
public String getIconPath() {
return iconPath;
}

8
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/mapper/QuestionAnswerMapper.java

@ -59,4 +59,12 @@ public interface QuestionAnswerMapper
* @return 结果
*/
public int deleteQuestionAnswerByIds(String[] guids);
/**
* 查询选择列表
*
* @param freId 选择
* @return 选择集合
*/
public List<QuestionAnswer> queryQAByFreId(String freId);
}

4
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/mapper/SceneMedalMapper.java

@ -52,9 +52,9 @@ public interface SceneMedalMapper {
public int deleteSceneMedalByIds(String[] guids);
/**
* 批量删除
* 批量查询
*
* @param guids 需要删除的数据ID
* @param guids 需要查询的数据ID
* @return 结果
*/
public List<SceneMedal> selectSceneMedalByIds(String[] guids);

8
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/IQuestionAnswerService.java

@ -60,4 +60,12 @@ public interface IQuestionAnswerService
* @return 结果
*/
public int deleteQuestionAnswerById(String guid);
/**
* 查询选择列表
*
* @param freId 题次id
* @return 选择集合
*/
public List<QuestionAnswer> queryQAByFreId(String freId);
}

8
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/ISceneMedalService.java

@ -54,6 +54,14 @@ public interface ISceneMedalService {
*/
public int deleteSceneMedalByIds(String guids);
/**
* 批量查询
*
* @param guids 需要查询的数据ID
* @return 结果
*/
public List<SceneMedal> selectSceneMedalByIds(String guids);
/**
* 查询附件
*

5
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/QuestionAnswerServiceImpl.java

@ -96,4 +96,9 @@ public class QuestionAnswerServiceImpl implements IQuestionAnswerService
{
return questionAnswerMapper.deleteQuestionAnswerById(guid);
}
@Override
public List<QuestionAnswer> queryQAByFreId(String freId) {
return questionAnswerMapper.queryQAByFreId(freId);
}
}

5
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/java/com/zdxt/knowledge/service/impl/SceneMedalServiceImpl.java

@ -119,6 +119,11 @@ public class SceneMedalServiceImpl implements ISceneMedalService {
return sceneMedalMapper.deleteSceneMedalByIds(Convert.toStrArray(guids));
}
@Override
public List<SceneMedal> selectSceneMedalByIds(String guids) {
return sceneMedalMapper.selectSceneMedalByIds(Convert.toStrArray(guids));
}
@Override
public AttFileRespDTO queryFiles(String key) {
ZdxtFileBean zdxtFileBeanCondition = new ZdxtFileBean();

7
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/resources/mapper/QuestionAnswerMapper.xml

@ -97,5 +97,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
#{guid}
</foreach>
</delete>
<select id="queryQAByFreId" parameterType="String" resultMap="QuestionAnswerResult">
<include refid="selectQuestionAnswerVo"/>
where question_fre_id = #{freId}
order by create_time asc
</select>
</mapper>

5
lib/EmergencyService/zdxtEmergencyKnowledgeService/src/main/resources/mapper/SceneMedalMapper.xml

@ -7,6 +7,7 @@
<result property="guid" column="guid"/>
<result property="name" column="name"/>
<result property="iconPath" column="icon_path"/>
<result property="sceneId" column="scene_id"/>
<result property="hide" column="hide"/>
<result property="creator" column="creator"/>
<result property="createTime" column="create_time"/>
@ -18,6 +19,7 @@
select guid,
name,
icon_path,
scene_id,
hide,
creator,
create_time,
@ -46,6 +48,7 @@
<if test="guid != null ">guid,</if>
<if test="name != null and name != ''">`name`,</if>
<if test="iconPath != null and iconPath != ''">icon_path,</if>
<if test="sceneId != null and sceneId != ''">scene_id,</if>
<if test="hide != null and hide != ''">hide,</if>
<if test="creator != null and creator != ''">creator,</if>
<if test="createTime != null ">create_time,</if>
@ -56,6 +59,7 @@
<if test="guid != null ">#{guid},</if>
<if test="name != null and name != ''">#{name},</if>
<if test="iconPath != null and iconPath != ''">#{iconPath},</if>
<if test="sceneId != null and sceneId != ''">#{sceneId},</if>
<if test="hide != null and hide != ''">#{hide},</if>
<if test="creator != null and creator != ''">#{creator},</if>
<if test="createTime != null ">#{createTime},</if>
@ -69,6 +73,7 @@
<trim prefix="SET" suffixOverrides=",">
<if test="name != null and name != ''">name = #{name},</if>
<if test="iconPath != null and iconPath != ''">icon_path = #{iconPath},</if>
<if test="sceneId != null and sceneId != ''">scene_id = #{sceneId},</if>
<if test="hide != null and hide != ''">hide = #{hide},</if>
<if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
<if test="updateTime != null ">update_time = #{updateTime},</if>

Loading…
Cancel
Save