package com.zteits.park.dao.impl; import com.zteits.clouds.api.dto.clouds.param.UpdateBindRegionReq; import com.zteits.clouds.api.dto.park.dto.ChargerModifyParkRelDTO; import com.zteits.clouds.api.dto.pda.dto.RegionAreaDTO; import com.zteits.park.dao.ChargerModifyParkRelDao; import com.zteits.park.domain.ChargerModifyParkRel; import com.zteits.park.domain.ChargerModifyParkRelExample; import com.zteits.park.mapper.ChargerModifyParkRelMapper; import com.zteits.park.mapper.smapper.ChargerModifyParkRelSMapper; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * @Description: 收费员与泊位区间修改车牌权限关联关系 * @Author: zengqc * @Date: 2021/7/19 9:42 */ @Component public class ChargerModifyParkRelDaoImpl implements ChargerModifyParkRelDao { private static final Logger log = LoggerFactory.getLogger(ChargerModifyParkRelDaoImpl.class); @Autowired private ChargerModifyParkRelMapper chargerModifyParkRelMapper; @Autowired private ChargerModifyParkRelSMapper chargerModifyParkRelSMapper; /** * 根据收费员编号,删除之前的关联关系 * * @param chargerCode 收费员编号 */ @Override public void deleteChargerModifyParkRelByChargerCode(String chargerCode) { ChargerModifyParkRelExample example = new ChargerModifyParkRelExample(); example.createCriteria().andChargerCodeEqualTo(chargerCode); int count = chargerModifyParkRelMapper.deleteByExample(example); log.info("删除收费员{}关联关系条数{}", chargerCode, count); } /** * 根据收费员编号获取其绑定的泊位区间列表 * * @param chargerCode 收费员编号 * @return 绑定的泊位区间列表 */ @Override public List queryChargerParkRelByChargerCode(String chargerCode) { List chargerModifyParkRelDTOList = new ArrayList<>(); ChargerModifyParkRelExample example = new ChargerModifyParkRelExample(); example.createCriteria().andChargerCodeEqualTo(chargerCode); List chargerModifyParkRelList = chargerModifyParkRelMapper.selectByExample(example); for (ChargerModifyParkRel rel : chargerModifyParkRelList) { ChargerModifyParkRelDTO dto = new ChargerModifyParkRelDTO(); BeanUtils.copyProperties(rel, dto); chargerModifyParkRelDTOList.add(dto); } return chargerModifyParkRelDTOList; } /** * 保存收费员关联绑定的泊位区间列表 * */ @Override public void saveChargerParkRel(UpdateBindRegionReq regionReq) { Date now = new Date(); List bindRegionList = regionReq.getBindRegionList(); List relList = new ArrayList<>(); for (RegionAreaDTO regionAreaDTO : bindRegionList) { ChargerModifyParkRel rel = new ChargerModifyParkRel(); rel.setChargerCode(regionReq.getChargerCode()); rel.setPlNo(regionAreaDTO.getPlNo()); rel.setPlName(regionAreaDTO.getPlName()); rel.setParkAreaCode(regionAreaDTO.getParkAreaCode()); rel.setParkAreaName(regionAreaDTO.getParkAreaName()); rel.setCreateOp(regionReq.getsOpId()); rel.setCreateTime(now); relList.add(rel); } if (relList.size() > 0) { this.chargerModifyParkRelSMapper.insertChargerParkRelList(relList); } } }