MenuServiceDaoImpl.java 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. package com.java110.community.dao.impl;
  2. import com.alibaba.fastjson.JSONObject;
  3. import com.java110.common.cache.MappingCache;
  4. import com.java110.common.constant.DomainContant;
  5. import com.java110.common.constant.ResponseConstant;
  6. import com.java110.common.constant.StatusConstant;
  7. import com.java110.common.exception.DAOException;
  8. import com.java110.common.util.DateUtil;
  9. import com.java110.community.dao.IMenuServiceDao;
  10. import com.java110.core.base.dao.BaseServiceDao;
  11. import org.slf4j.Logger;
  12. import org.slf4j.LoggerFactory;
  13. import org.springframework.stereotype.Service;
  14. import org.springframework.transaction.annotation.Transactional;
  15. import java.util.HashMap;
  16. import java.util.List;
  17. import java.util.Map;
  18. /**
  19. * 路由服务 与数据库交互
  20. * Created by wuxw on 2017/4/5.
  21. */
  22. @Service("menuServiceDaoImpl")
  23. @Transactional
  24. public class MenuServiceDaoImpl extends BaseServiceDao implements IMenuServiceDao {
  25. private static Logger logger = LoggerFactory.getLogger(MenuServiceDaoImpl.class);
  26. /**
  27. * 保存路由信息 到 instance
  28. *
  29. * @param info bId 信息
  30. * @throws DAOException DAO异常
  31. */
  32. @Override
  33. public int saveMenuGroupInfo(Map info) throws DAOException {
  34. logger.debug("保存路由信息Instance 入参 info : {}", info);
  35. int saveFlag = sqlSessionTemplate.insert("menuServiceDaoImpl.saveMenuGroupInfo", info);
  36. return saveFlag;
  37. }
  38. /**
  39. * 查询路由信息(instance)
  40. *
  41. * @param info bId 信息
  42. * @return List<Map>
  43. * @throws DAOException DAO异常
  44. */
  45. @Override
  46. public List<Map> getMenuGroupInfo(Map info) throws DAOException {
  47. logger.debug("查询路由信息 入参 info : {}", info);
  48. List<Map> businessMenuGroupInfos = sqlSessionTemplate.selectList("menuServiceDaoImpl.getMenuGroupInfo", info);
  49. return businessMenuGroupInfos;
  50. }
  51. /**
  52. * 修改路由信息
  53. *
  54. * @param info 修改信息
  55. * @throws DAOException DAO异常
  56. */
  57. @Override
  58. public int updateMenuGroupInfo(Map info) throws DAOException {
  59. logger.debug("修改路由信息Instance 入参 info : {}", info);
  60. int saveFlag = sqlSessionTemplate.update("menuServiceDaoImpl.updateMenuGroupInfo", info);
  61. return saveFlag;
  62. }
  63. /**
  64. * 查询路由数量
  65. *
  66. * @param info 路由信息
  67. * @return 路由数量
  68. */
  69. @Override
  70. public int queryMenuGroupsCount(Map info) {
  71. logger.debug("查询路由数据 入参 info : {}", info);
  72. List<Map> businessMenuGroupInfos = sqlSessionTemplate.selectList("menuServiceDaoImpl.queryMenuGroupsCount", info);
  73. if (businessMenuGroupInfos.size() < 1) {
  74. return 0;
  75. }
  76. return Integer.parseInt(businessMenuGroupInfos.get(0).get("count").toString());
  77. }
  78. /**
  79. * 保存路由信息 到 instance
  80. *
  81. * @param info bId 信息
  82. * @throws DAOException DAO异常
  83. */
  84. @Override
  85. public int saveBasePrivilegeInfo(Map info) throws DAOException {
  86. logger.debug("保存路由信息Instance 入参 info : {}", info);
  87. int saveFlag = sqlSessionTemplate.insert("menuServiceDaoImpl.saveBasePrivilegeInfo", info);
  88. if (saveFlag < 1) {
  89. return saveFlag;
  90. }
  91. // 将权限组分配给对应商户类型管理员
  92. info.put("pgId",MappingCache.getValue(DomainContant.DEFAULT_PRIVILEGE_ADMIN, info.get("domain").toString()));
  93. saveFlag = sqlSessionTemplate.insert("menuServiceDaoImpl.saveBasePrivilegeRelInfo", info);
  94. return saveFlag;
  95. }
  96. /**
  97. * 查询路由信息(instance)
  98. *
  99. * @param info bId 信息
  100. * @return List<Map>
  101. * @throws DAOException DAO异常
  102. */
  103. @Override
  104. public List<Map> getBasePrivilegeInfo(Map info) throws DAOException {
  105. logger.debug("查询路由信息 入参 info : {}", info);
  106. List<Map> businessBasePrivilegeInfos = sqlSessionTemplate.selectList("menuServiceDaoImpl.getBasePrivilegeInfo", info);
  107. return businessBasePrivilegeInfos;
  108. }
  109. /**
  110. * 修改路由信息
  111. *
  112. * @param info 修改信息
  113. * @throws DAOException DAO异常
  114. */
  115. @Override
  116. public int updateBasePrivilegeInfo(Map info) throws DAOException {
  117. logger.debug("修改路由信息Instance 入参 info : {}", info);
  118. int saveFlag = 0;
  119. //判断是否为删除
  120. if(info.containsKey("statusCd") && StatusConstant.STATUS_CD_INVALID.equals(info.get("statusCd"))){
  121. //做查询
  122. List<Map> basePrivileges = getBasePrivilegeInfo(info);
  123. if(basePrivileges != null && basePrivileges.size() > 0){
  124. saveFlag = sqlSessionTemplate.update("menuServiceDaoImpl.updateBasePrivilegeRelInfo", info);
  125. if(saveFlag < 1){
  126. return saveFlag;
  127. }
  128. }
  129. }
  130. saveFlag = sqlSessionTemplate.update("menuServiceDaoImpl.updateBasePrivilegeInfo", info);
  131. return saveFlag;
  132. }
  133. /**
  134. * 查询路由数量
  135. *
  136. * @param info 路由信息
  137. * @return 路由数量
  138. */
  139. @Override
  140. public int queryBasePrivilegesCount(Map info) {
  141. logger.debug("查询路由数据 入参 info : {}", info);
  142. List<Map> businessBasePrivilegeInfos = sqlSessionTemplate.selectList("menuServiceDaoImpl.queryBasePrivilegesCount", info);
  143. if (businessBasePrivilegeInfos.size() < 1) {
  144. return 0;
  145. }
  146. return Integer.parseInt(businessBasePrivilegeInfos.get(0).get("count").toString());
  147. }
  148. /**
  149. * 保存路由信息 到 instance
  150. *
  151. * @param info bId 信息
  152. * @throws DAOException DAO异常
  153. */
  154. @Override
  155. public int saveMenuInfo(Map info) throws DAOException {
  156. logger.debug("保存路由信息Instance 入参 info : {}", info);
  157. int saveFlag = sqlSessionTemplate.insert("menuServiceDaoImpl.saveMenuInfo", info);
  158. return saveFlag;
  159. }
  160. /**
  161. * 查询路由信息(instance)
  162. *
  163. * @param info bId 信息
  164. * @return List<Map>
  165. * @throws DAOException DAO异常
  166. */
  167. @Override
  168. public List<Map> getMenuInfo(Map info) throws DAOException {
  169. logger.debug("查询路由信息 入参 info : {}", info);
  170. List<Map> businessMenuInfos = sqlSessionTemplate.selectList("menuServiceDaoImpl.getMenuInfo", info);
  171. return businessMenuInfos;
  172. }
  173. /**
  174. * 修改路由信息
  175. *
  176. * @param info 修改信息
  177. * @throws DAOException DAO异常
  178. */
  179. @Override
  180. public int updateMenuInfo(Map info) throws DAOException {
  181. logger.debug("修改路由信息Instance 入参 info : {}", info);
  182. int saveFlag = 0;
  183. //判断是否为删除
  184. if(info.containsKey("statusCd") && StatusConstant.STATUS_CD_INVALID.equals(info.get("statusCd"))){
  185. //做查询
  186. List<Map> baseMenus = getMenuInfo(info);
  187. if(baseMenus != null && baseMenus.size() > 0){
  188. Map privilegeInfo = new HashMap();
  189. privilegeInfo.put("pId", baseMenus.get(0).get("pId"));
  190. privilegeInfo.put("statusCd", StatusConstant.STATUS_CD_INVALID);
  191. //删除权限 权限组关系
  192. saveFlag = sqlSessionTemplate.update("menuServiceDaoImpl.updateBasePrivilegeRelInfo", info);
  193. if(saveFlag < 1){
  194. return saveFlag;
  195. }
  196. //删除权限
  197. saveFlag = sqlSessionTemplate.update("menuServiceDaoImpl.updateBasePrivilegeInfo", info);
  198. if(saveFlag < 1){
  199. return saveFlag;
  200. }
  201. }
  202. }
  203. saveFlag = sqlSessionTemplate.update("menuServiceDaoImpl.updateMenuInfo", info);
  204. return saveFlag;
  205. }
  206. /**
  207. * 查询路由数量
  208. *
  209. * @param info 路由信息
  210. * @return 路由数量
  211. */
  212. @Override
  213. public int queryMenusCount(Map info) {
  214. logger.debug("查询路由数据 入参 info : {}", info);
  215. List<Map> businessMenuInfos = sqlSessionTemplate.selectList("menuServiceDaoImpl.queryMenusCount", info);
  216. if (businessMenuInfos.size() < 1) {
  217. return 0;
  218. }
  219. return Integer.parseInt(businessMenuInfos.get(0).get("count").toString());
  220. }
  221. }