init
This commit is contained in:
@@ -0,0 +1,132 @@
|
||||
package com.eactive.eai.rms.common.mmilog;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.domain.Sort.Direction;
|
||||
import org.springframework.data.web.SortDefault;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import com.eactive.eai.rms.common.base.BaseAnnotationController;
|
||||
import com.eactive.eai.rms.common.combo.ComboService;
|
||||
import com.eactive.eai.rms.common.combo.ComboVo;
|
||||
import com.eactive.eai.rms.common.vo.GridResponse;
|
||||
import com.eactive.eai.rms.data.entity.onl.mmilog.MMILogSearch;
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
|
||||
@Controller
|
||||
public class MMILogController extends BaseAnnotationController {
|
||||
|
||||
private MMILogManService mmiLogManService;
|
||||
|
||||
private ComboService comboService;
|
||||
|
||||
private ObjectMapper objectMapper;
|
||||
|
||||
@Autowired
|
||||
public MMILogController(MMILogManService mmiLogManService, ComboService comboService, ObjectMapper objectMapper) {
|
||||
this.mmiLogManService = mmiLogManService;
|
||||
this.comboService = comboService;
|
||||
this.objectMapper = objectMapper;
|
||||
}
|
||||
|
||||
@GetMapping(value = "/common/acl/mmiLog/mmiLogMan.view")
|
||||
public void view() {
|
||||
// view
|
||||
}
|
||||
|
||||
@GetMapping(value = "/common/acl/mmiLog/mmiLogMan.view", params = "cmd=DETAIL")
|
||||
public String viewList() {
|
||||
return "/common/acl/mmiLog/mmiLogManDetail";
|
||||
}
|
||||
|
||||
@PostMapping(value = "/common/acl/mmiLog/mmiLogMan.json", params = "cmd=LIST")
|
||||
public ResponseEntity<GridResponse<MMILogUI>> selectList(@SortDefault(sort = "id.msgDpstHms", direction = Direction.DESC) Pageable pageable, MMILogSearch mmiLogSearch) {
|
||||
Page<MMILogUI> page = mmiLogManService.selectList(pageable, mmiLogSearch);
|
||||
return ResponseEntity.ok(new GridResponse<>(page));
|
||||
}
|
||||
|
||||
@PostMapping(value = "/common/acl/mmiLog/mmiLogMan.json", params = "cmd=LIST_INIT_COMBO")
|
||||
public ResponseEntity<Map<String, Object>> eaiSvcNameCombo() {
|
||||
List<ComboVo> listInoutTypeCd = comboService.getFromCode("INOUT_TYPE");
|
||||
|
||||
Map<String, Object> resultMap = new HashMap<>();
|
||||
resultMap.put("inoutTypeRows", listInoutTypeCd);
|
||||
return ResponseEntity.ok(resultMap);
|
||||
}
|
||||
|
||||
@PostMapping(value = "/common/acl/mmiLog/mmiLogMan.excel", params = "cmd=LIST_GRID_TO_EXCEL")
|
||||
public ModelAndView listGridToExcel(MMILogSearch mmiLogSearch, @RequestParam Map<String, Object> paramMap)
|
||||
throws JsonProcessingException {
|
||||
|
||||
Map<String, Object>[] datas = mmiLogManService.selectListToExcel(mmiLogSearch);
|
||||
|
||||
String[] headers = objectMapper.readValue((String) paramMap.get("header"), String[].class);
|
||||
String[] headerTitles = objectMapper.readValue((String) paramMap.get("headerTitle"), String[].class);
|
||||
|
||||
HashMap<String, Object>[] lmerge = null;
|
||||
String merge = (String) paramMap.get("merge");
|
||||
|
||||
if (merge != null) {
|
||||
lmerge = objectMapper.readValue(merge, new TypeReference<HashMap<String, Object>[]>() {
|
||||
});
|
||||
}
|
||||
|
||||
Map<String, Object> resultMap = new HashMap<>();
|
||||
resultMap.put("headers", headers);
|
||||
resultMap.put("headerTitles", headerTitles);
|
||||
resultMap.put("datas", datas);
|
||||
resultMap.put("fileName", paramMap.get("fileName"));
|
||||
resultMap.put("merge", lmerge);
|
||||
return new ModelAndView("excelView", resultMap);
|
||||
}
|
||||
|
||||
@PostMapping(value = "/common/acl/mmiLog/mmiLogMan.json", params = "cmd=DETAIL")
|
||||
public ResponseEntity<MMILogUI> selectDetail(MMILogUI mmiLogUI) {
|
||||
MMILogUI ui = mmiLogManService.selectDetail(mmiLogUI);
|
||||
return ResponseEntity.ok(ui);
|
||||
}
|
||||
|
||||
@GetMapping(value = "/common/acl/mmiLog/mmiLogMan.json", params = "cmd=DETAIL_XML")
|
||||
public String showXML(HttpServletRequest request, MMILogUI mmiLogUI, String key, String type) {
|
||||
String message = "데이터 조회 실패";
|
||||
MMILogUI data = mmiLogManService.selectDetail(mmiLogUI);
|
||||
|
||||
if (data != null) {
|
||||
String header = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>";
|
||||
String xmlData = data.getReqDstcd();
|
||||
String[] sptXmlData = StringUtils.splitByWholeSeparatorPreserveAllTokens(xmlData, header);
|
||||
|
||||
Optional<String> matchedSegment = Arrays.stream(sptXmlData)
|
||||
.filter(segment -> segment != null &&
|
||||
(segment.contains("sysSvcName=\"" + key) && "eaiSvcName".equals(type) ||
|
||||
segment.contains("layoutId=\"" + key) ||
|
||||
segment.contains("id=\"" + key)))
|
||||
.findFirst();
|
||||
|
||||
if(matchedSegment.isPresent()) {
|
||||
message = header + (matchedSegment.get()).replaceAll("[\\r\\n\\t]", "");
|
||||
}
|
||||
}
|
||||
//data == null
|
||||
request.setAttribute("param", message);
|
||||
return "forward:/common/jsp/popupXmlBrowser.jsp";
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.eactive.eai.rms.common.mmilog;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import com.eactive.eai.rms.common.base.SqlMapClientForMonitoringTemplateDao;
|
||||
|
||||
@Repository("mmiLogDao")
|
||||
@SuppressWarnings({"deprecation","unchecked"})
|
||||
public class MMILogDao extends SqlMapClientForMonitoringTemplateDao {
|
||||
|
||||
public int selectListCount(HashMap<String, Object> param) throws Exception {
|
||||
return (Integer)template.queryForObject("MMILog.selectListCount", param);
|
||||
}
|
||||
|
||||
public List<Map<String, Object>> selectList(HashMap<String, Object> param) throws Exception {
|
||||
return (List<Map<String, Object>>)template.queryForList("MMILog.selectList", param);
|
||||
}
|
||||
public List selectListToExcel(HashMap param) throws Exception {
|
||||
return template.queryForList("MMILog.selectListToExcel", param);
|
||||
}
|
||||
public HashMap selectDetail(HashMap param) throws Exception {
|
||||
return (HashMap)template.queryForObject("MMILog.selectDetail", param);
|
||||
}
|
||||
public void insert(HashMap<String, Object> paramMap) throws Exception{
|
||||
this.template.insert("MMILog.insert", paramMap);
|
||||
}
|
||||
|
||||
public void update(HashMap<String, Object> paramMap) throws Exception{
|
||||
this.template.update("MMILog.update", paramMap);
|
||||
}
|
||||
|
||||
public void delete(HashMap<String, Object> paramMap) throws Exception{
|
||||
this.template.delete("MMILog.delete", paramMap);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,87 @@
|
||||
package com.eactive.eai.rms.common.mmilog;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.stream.StreamSupport;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import com.eactive.eai.rms.common.base.BaseService;
|
||||
import com.eactive.eai.rms.data.entity.onl.code.Code;
|
||||
import com.eactive.eai.rms.data.entity.onl.code.CodeId;
|
||||
import com.eactive.eai.rms.data.entity.onl.code.CodeService;
|
||||
import com.eactive.eai.rms.data.entity.onl.mmilog.MMILog;
|
||||
import com.eactive.eai.rms.data.entity.onl.mmilog.MMILogSearch;
|
||||
import com.eactive.eai.rms.data.entity.onl.mmilog.MMILogService;
|
||||
|
||||
@Service
|
||||
@Transactional(transactionManager = "transactionManagerForEMS")
|
||||
public class MMILogManService extends BaseService {
|
||||
|
||||
private MMILogService mmiLogService;
|
||||
|
||||
private CodeService codeService;
|
||||
|
||||
private MMILogUIMapper mmiLogUIMapper;
|
||||
|
||||
@Autowired
|
||||
public MMILogManService(MMILogService mmiLogService, CodeService codeService, MMILogUIMapper mmiLogUIMapper) {
|
||||
this.mmiLogService = mmiLogService;
|
||||
this.codeService = codeService;
|
||||
this.mmiLogUIMapper = mmiLogUIMapper;
|
||||
}
|
||||
|
||||
public Page<MMILogUI> selectList(Pageable pageable, MMILogSearch mmiLogSearch) {
|
||||
Page<MMILog> list = mmiLogService.findAll(pageable, mmiLogSearch);
|
||||
|
||||
return list.map(log -> {
|
||||
MMILogUI ui = mmiLogUIMapper.toVo(log);
|
||||
|
||||
CodeId codeId = new CodeId("INOUT_TYPE", log.getEaiSevrDstcd());
|
||||
String eaiSevrDstcd = codeService.findById(codeId).map(Code::getCodename).orElse("");
|
||||
|
||||
ui.setEaiSevrDstcd("[" + log.getEaiSevrDstcd() + "] " + eaiSevrDstcd);
|
||||
|
||||
// //mmi방식
|
||||
// String returnCd = "return_code=\"SUCCESS\"";
|
||||
|
||||
// //eims방식
|
||||
String returnCdString = "<Result>True</Result>";
|
||||
// RES로 returnCode 받기
|
||||
ui.setReturnCd(log.getResDstcd().contains(returnCdString) ? "SUCCESS" : "FAIL");
|
||||
ui.setReqDstcd("");
|
||||
ui.setResDstcd("");
|
||||
return ui;
|
||||
});
|
||||
}
|
||||
|
||||
public MMILogUI selectDetail(MMILogUI mmiLogUI) {
|
||||
MMILog mmiLog = mmiLogService.getById(mmiLogUIMapper.toId(mmiLogUI));
|
||||
return mmiLogUIMapper.toVo(mmiLog);
|
||||
}
|
||||
|
||||
public Map<String, Object>[] selectListToExcel(MMILogSearch mmiLogSearch) {
|
||||
Iterable<MMILog> list = mmiLogService.findAll(mmiLogSearch);
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
Map<String, Object>[] mapArray = StreamSupport.stream(list.spliterator(), false).map(log -> {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("MSGDPSTHMS", log.getId().getMsgDpstHms());
|
||||
map.put("INTERFACEID", log.getInterfaceId());
|
||||
map.put("EAISVCNAME", log.getId().getEaiSvcName());
|
||||
map.put("EAISEVRDSTCD", log.getEaiSevrDstcd());
|
||||
map.put("CNVSNNAME", log.getCnvsnName());
|
||||
map.put("LOUTNAME", log.getLoutName());
|
||||
map.put("DEPLOYID", log.getDeployId());
|
||||
|
||||
String returnCd = "<Result>True</Result>";
|
||||
map.put("RETURNCD", log.getResDstcd().contains(returnCd) ? "SUCCESS" : "FAIL");
|
||||
return map;
|
||||
}).toArray(size -> new HashMap[size]);
|
||||
return mapArray;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.eactive.eai.rms.common.mmilog;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class MMILogUI {
|
||||
|
||||
@JsonProperty("MSGDPSTHMS")
|
||||
private String msgDpstHMS;
|
||||
|
||||
@JsonProperty("INTERFACEID")
|
||||
private String interfaceId;
|
||||
|
||||
@JsonProperty("EAISVCNAME")
|
||||
private String eaiSvcName;
|
||||
|
||||
@JsonProperty("EAISEVRDSTCD")
|
||||
private String eaiSevrDstcd;
|
||||
|
||||
@JsonProperty("CNVSNNAME")
|
||||
private String cnvsnName;
|
||||
|
||||
@JsonProperty("LOUTNAME")
|
||||
private String loutName;
|
||||
|
||||
@JsonProperty("DEPLOYID")
|
||||
private String deployId;
|
||||
|
||||
@JsonProperty("RETURNCD")
|
||||
private String returnCd;
|
||||
/////
|
||||
@JsonProperty("RESDSTCD")
|
||||
private String resDstcd;
|
||||
|
||||
@JsonProperty("REQDSTCD")
|
||||
private String reqDstcd;
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.eactive.eai.rms.common.mmilog;
|
||||
|
||||
import org.mapstruct.BeanMapping;
|
||||
import org.mapstruct.InheritInverseConfiguration;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import org.mapstruct.MappingTarget;
|
||||
import org.mapstruct.NullValuePropertyMappingStrategy;
|
||||
import org.mapstruct.ReportingPolicy;
|
||||
|
||||
import com.eactive.eai.data.mapper.GenericMapper;
|
||||
import com.eactive.eai.rms.data.entity.onl.mmilog.MMILog;
|
||||
import com.eactive.eai.rms.data.entity.onl.mmilog.MMILogId;
|
||||
|
||||
@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE)
|
||||
public interface MMILogUIMapper extends GenericMapper<MMILogUI, MMILog> {
|
||||
|
||||
@Override
|
||||
@Mapping(source = "id.eaiSvcName", target = "eaiSvcName")
|
||||
@Mapping(source = "id.msgDpstHms", target = "msgDpstHMS")
|
||||
MMILogUI toVo(MMILog entity);
|
||||
|
||||
@Override
|
||||
@InheritInverseConfiguration
|
||||
MMILog toEntity(MMILogUI vo);
|
||||
|
||||
@Mapping(source = "eaiSvcName", target = "eaiSvcName")
|
||||
@Mapping(source = "msgDpstHMS", target = "msgDpstHms")
|
||||
MMILogId toId(MMILogUI vo);
|
||||
|
||||
@InheritInverseConfiguration
|
||||
@BeanMapping(nullValuePropertyMappingStrategy = NullValuePropertyMappingStrategy.IGNORE)
|
||||
void updateToEntity(MMILogUI mmiLogUI, @MappingTarget MMILog mmiLog);
|
||||
}
|
||||
Reference in New Issue
Block a user