package com.its.vds.dao.mapper.batch; import com.its.app.utils.Elapsed; import com.its.vds.dao.mapper.BatchDaoService; import com.its.vds.entity.TbVdsCtlrStts; import lombok.extern.slf4j.Slf4j; import org.apache.ibatis.session.SqlSessionFactory; import org.springframework.stereotype.Repository; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @Slf4j @Repository public class VdsCtlrDao extends BatchDaoService { public VdsCtlrDao(SqlSessionFactory sqlSessionFactory) { super(sqlSessionFactory); this.serviceName = "VdsCtlrDao"; this.mapperName = "";//com.its.vds.dao.mapper.VdsCtlrMapper."; } public List> getSttsList(List req) { List> lists = new ArrayList<>(); req.forEach(obj -> { HashMap param = new HashMap<>(); param.put("VDS_CTLR_NMBR", obj.getVDS_CTLR_NMBR()); param.put("UPDT_DT", obj.getUPDT_DT()); param.put("CMNC_STTS_CD", obj.getCMNC_STTS_CD()); param.put("CBOX_DOOR_STTS_CD", obj.getCBOX_DOOR_STTS_CD()); param.put("FRONT_DOOR_STTS_CD", obj.getFRONT_DOOR_STTS_CD()); param.put("BACK_DOOR_STTS_CD", obj.getBACK_DOOR_STTS_CD()); param.put("FAN_STTS_CD", obj.getFAN_STTS_CD()); param.put("HETR_STTS_CD", obj.getHETR_STTS_CD()); param.put("CBOX_TMPR", obj.getCBOX_TMPR()); param.put("INPT_VOLT", obj.getINPT_VOLT()); param.put("PRNT_VOLT", obj.getPRNT_VOLT()); param.put("PRNT_PWER_STTS_CD", obj.getPRNT_PWER_STTS_CD()); param.put("VIDEO_INPUT", obj.getVIDEO_INPUT()); lists.add(param); }); return lists; } public int updateStts(List req, boolean isHistory) { log.info("{}.updateStts: START. {} EA. History {}", this.serviceName, req.size(), isHistory); Elapsed elapsed = new Elapsed(); this.mapper = this.mapperName + "batchUpdateVdsCtlrStts"; int total = updateBatch(this.mapper, getSttsList(req)); log.info("{}.updateStts: ..END. {} EA. {} ms.", this.serviceName, total, elapsed.milliSeconds()); return total; } public int insertStts(List req) { log.info("{}.insertStts: START. {} EA.", this.serviceName, req.size()); Elapsed elapsed = new Elapsed(); this.mapper = this.mapperName + "batchInsertVdsCtlrSttsHs"; int total = insertBatch(this.mapper, getSttsList(req)); log.info("{}.insertStts: ..END. {} EA. {} ms.", this.serviceName, total, elapsed.milliSeconds()); return total; } }