SessionService.java 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187
  1. package com.oqpo.api.service;
  2. import com.oqpo.api.config.JwtTokenProvider;
  3. import com.oqpo.api.entity.oper.MemberEntity;
  4. import com.oqpo.api.entity.stinfo.BrandEntity;
  5. import com.oqpo.api.enums.SystemMessageCode;
  6. import com.oqpo.api.exception.GlobalException;
  7. import com.oqpo.api.mapper.MemberMapper;
  8. import com.oqpo.api.mapper.stinfo.BrandMapper;
  9. import com.oqpo.api.service.oper.AfflService;
  10. import com.oqpo.api.service.oper.UserMngService;
  11. import com.oqpo.api.service.stinfo.BrandService;
  12. import com.oqpo.api.service.system.ActionService;
  13. import com.oqpo.api.service.system.CodeService;
  14. import com.oqpo.api.service.system.MenuService;
  15. import com.oqpo.api.web.dto.response.session.GetKeyNumResponse;
  16. import com.oqpo.api.web.dto.response.session.MsessionResponse;
  17. import com.oqpo.api.web.dto.response.session.SessionBrandListResponse;
  18. import com.oqpo.api.web.dto.response.session.SessionResponse;
  19. import com.oqpo.api.web.dto.response.stinfo.brand.BsnsBrandListResponse;
  20. import lombok.extern.slf4j.Slf4j;
  21. import org.springframework.beans.factory.annotation.Autowired;
  22. import org.springframework.stereotype.Service;
  23. import javax.servlet.http.HttpServletRequest;
  24. import java.util.List;
  25. @Service
  26. @Slf4j
  27. public class SessionService extends CommonService {
  28. @Autowired
  29. private JwtTokenProvider jwtTokenProvider;
  30. @Autowired
  31. private CodeService codeService;
  32. @Autowired
  33. private MenuService menuService;
  34. @Autowired
  35. private ActionService actionService;
  36. @Autowired
  37. private UserMngService userMngService;
  38. @Autowired
  39. private AfflService afflService;
  40. @Autowired
  41. private BrandService brandService;
  42. @Autowired
  43. private MemberMapper memberMapper;
  44. @Autowired
  45. private BrandMapper brandMapper;
  46. public SessionResponse data(HttpServletRequest request) throws Exception {
  47. MemberEntity memberEntity = new MemberEntity();
  48. String connKey = jwtTokenProvider.resolveToken(request);
  49. try {
  50. memberEntity.setUserId(jwtTokenProvider.getUserId(connKey));
  51. memberEntity.setUserNm(jwtTokenProvider.getUserNm(connKey));
  52. memberEntity.setSystemAdminYn(jwtTokenProvider.getSystemAdminYn(connKey));
  53. memberEntity.setAuthTpCd(jwtTokenProvider.getAuthTpCd(connKey));
  54. memberEntity.setAuthTpNm(jwtTokenProvider.getAuthTpNm(connKey));
  55. MemberEntity groupInfo = memberMapper.selectMemberById(memberEntity.getUserId());
  56. memberEntity.setAfflShopId(groupInfo.getAfflShopId());
  57. memberEntity.setAfflShopNm(groupInfo.getAfflShopNm());
  58. memberEntity.setBrandId(groupInfo.getBrandId());
  59. memberEntity.setBrandNm(groupInfo.getBrandNm());
  60. memberEntity.setStoreId(groupInfo.getStoreId());
  61. memberEntity.setStoreNm(groupInfo.getStoreNm());
  62. memberEntity.setSpplyId(groupInfo.getSpplyId());
  63. memberEntity.setSpplyNm(groupInfo.getSpplyNm());
  64. memberEntity.setOqBrandId(groupInfo.getOqBrandId());
  65. memberEntity.setOqStoreId(groupInfo.getOqStoreId());
  66. // 권한이 매장이면 결재가능여부 정보 및 mallId 값 전송
  67. if ("50".equals(memberEntity.getAuthTpCd())) {
  68. // 매장 selectBrandPgInfo
  69. BrandEntity pgEntity = brandMapper.selectBrandPgInfo(memberEntity.getBrandId());
  70. if ("".toString().equals(pgEntity.getMallId())) {
  71. memberEntity.setApprYn("N");
  72. memberEntity.setMallId("");
  73. } else {
  74. memberEntity.setApprYn("Y");
  75. memberEntity.setMallId(pgEntity.getMallId());
  76. }
  77. } else {
  78. memberEntity.setApprYn("N");
  79. memberEntity.setMallId("");
  80. }
  81. // 사용자정보 가져오기
  82. //if ("60".equals(memberEntity.getAuthTpCd())) {
  83. // 공급사로 - 공급사 테이블에서 공급사아이디와 공급사명 가져오기
  84. //}
  85. } catch (Exception e) {
  86. e.getStackTrace();
  87. throw new GlobalException(SystemMessageCode.NEED_AUTH);
  88. }
  89. return SessionResponse.toDTO(memberEntity,
  90. codeService.codeList(memberEntity.getUserId()),
  91. menuService.authMenuList(memberEntity.getUserId(), memberEntity),
  92. actionService.actionList(memberEntity.getUserId(), memberEntity)
  93. );
  94. }
  95. public SessionResponse mdata(HttpServletRequest request) throws Exception {
  96. MemberEntity memberEntity = new MemberEntity();
  97. String connKey = jwtTokenProvider.resolveToken(request);
  98. try {
  99. memberEntity.setUserId(jwtTokenProvider.getUserId(connKey));
  100. memberEntity.setUserNm(jwtTokenProvider.getUserNm(connKey));
  101. memberEntity.setSystemAdminYn(jwtTokenProvider.getSystemAdminYn(connKey));
  102. memberEntity.setAuthTpCd(jwtTokenProvider.getAuthTpCd(connKey));
  103. memberEntity.setAuthTpNm(jwtTokenProvider.getAuthTpNm(connKey));
  104. MemberEntity groupInfo = memberMapper.selectMemberById(memberEntity.getUserId());
  105. memberEntity.setAfflShopId(groupInfo.getAfflShopId());
  106. memberEntity.setAfflShopNm(groupInfo.getAfflShopNm());
  107. memberEntity.setBrandId(groupInfo.getBrandId());
  108. memberEntity.setBrandNm(groupInfo.getBrandNm());
  109. memberEntity.setStoreId(groupInfo.getStoreId());
  110. memberEntity.setStoreNm(groupInfo.getStoreNm());
  111. memberEntity.setSpplyId(groupInfo.getSpplyId());
  112. memberEntity.setSpplyNm(groupInfo.getSpplyNm());
  113. if ("".equals(groupInfo.getBrandId())) {
  114. memberEntity.setBrandId(jwtTokenProvider.getBrandId(connKey));
  115. }
  116. // 권한이 매장이면 결재가능여부 정보 및 mallId 값 전송
  117. if ("50".equals(memberEntity.getAuthTpCd())) {
  118. // 매장 selectBrandPgInfo
  119. BrandEntity pgEntity = brandMapper.selectBrandPgInfo(memberEntity.getBrandId());
  120. if ("".toString().equals(pgEntity.getMallId())) {
  121. memberEntity.setApprYn("N");
  122. memberEntity.setMallId("");
  123. } else {
  124. memberEntity.setApprYn("Y");
  125. memberEntity.setMallId(pgEntity.getMallId());
  126. }
  127. } else {
  128. memberEntity.setApprYn("N");
  129. memberEntity.setMallId("");
  130. }
  131. } catch (Exception e) {
  132. e.getStackTrace();
  133. throw new GlobalException(SystemMessageCode.NEED_AUTH);
  134. }
  135. return SessionResponse.toDTO(memberEntity,
  136. codeService.codeList(memberEntity.getUserId()),
  137. menuService.authMobileMenuList(memberEntity.getUserId(), memberEntity),
  138. actionService.actionList(memberEntity.getUserId(), memberEntity));
  139. }
  140. //selectBsnsBrandList
  141. public SessionBrandListResponse bsnsBrandList(String bsnsRegNo) throws Exception {
  142. return SessionBrandListResponse.toDTO(brandService.selectBsnsBrandList(bsnsRegNo));
  143. }
  144. // key 생성 작업
  145. public GetKeyNumResponse getKeyInfo(String keyType) throws Exception {
  146. String keyNum = "";
  147. if ("Br".equals(keyType)) { //브랜드
  148. keyNum = fnGetKeyNo(23);
  149. } else if ("St".equals(keyType)) {
  150. keyNum = fnGetKeyNo(24);
  151. } else if ("It".equals(keyType)) {
  152. keyNum = fnGetKeyNo(26);
  153. }
  154. return GetKeyNumResponse.toDTO(keyNum);
  155. }
  156. }