package com.vci.web.service.impl; import com.vci.dto.BdHomeConfigDTO; import com.vci.model.BdHomeConfigDO; import com.vci.pagemodel.BdHomeConfigVO; import com.vci.starter.web.pagemodel.BaseQueryObject; import com.vci.starter.web.pagemodel.DataGrid; import com.vci.starter.web.pagemodel.PageHelper; import com.vci.starter.web.pagemodel.SessionInfo; import com.vci.starter.web.util.BeanUtilForVCI; import com.vci.starter.web.wrapper.VciQueryWrapperForDO; import com.vci.web.dao.HomeConfigDaoI; import com.vci.web.service.HomeConfigServiceI; import com.vci.web.util.WebUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import java.util.*; /** * @Description 首页配置服务 * @Author dangsn * @Date 2024/12/24 15:46 */ @Service public class HomeConfigServiceImpl implements HomeConfigServiceI { /** * 日志 */ private Logger logger = LoggerFactory.getLogger(getClass()); /** * 首页配置数据服务 */ @Resource private HomeConfigDaoI homeConfigDaoI; /** * 新增首页配置 * * @param homeConfigDTO 首页配置传输对象 */ @Override public void addData(BdHomeConfigDTO homeConfigDTO) { BdHomeConfigDO homeConfigDO = new BdHomeConfigDO(); BeanUtilForVCI.copyPropertiesIgnoreCase(homeConfigDTO, homeConfigDO); homeConfigDO.setOid(WebUtil.getPk()); SessionInfo sessionInfo = WebUtil.getCurrentUserSessionInfo(); homeConfigDO.setUserId(sessionInfo.getUserId()); homeConfigDO.setUserName(sessionInfo.getUserName()); homeConfigDaoI.insert(homeConfigDO); } /** * 修改首页配置 * * @param homeConfigDTO 首页配置传输对象 */ @Override public void editData(BdHomeConfigDTO homeConfigDTO) { WebUtil.alertNotNull(homeConfigDTO.getOid(), "数据主键"); BdHomeConfigDO homeConfigDO = homeConfigDaoI.selectByPrimaryKey(homeConfigDTO.getOid()); homeConfigDO.setModule(homeConfigDTO.getModule()); homeConfigDO.setIcon(homeConfigDTO.getIcon()); homeConfigDO.setTitle(homeConfigDTO.getTitle()); homeConfigDO.setNum(homeConfigDTO.getNum()); homeConfigDO.setRatio(homeConfigDTO.getRatio()); homeConfigDO.setOrderNum(homeConfigDTO.getOrderNum()); homeConfigDaoI.update(homeConfigDO); } /** * 删除首页配置 * * @param homeConfigDTO 首页配置传输对象 */ @Override public void delData(BdHomeConfigDTO homeConfigDTO) { WebUtil.alertNotNull(homeConfigDTO.getOid(), "数据主键"); List oidList = WebUtil.str2List(homeConfigDTO.getOid()); homeConfigDaoI.deleteByPrimaryKeys(oidList); } /** * 根据OID获取首页配置 * * @param oid 首页配置OID * @return 首页配置 */ @Override public BdHomeConfigVO getDataByOid(String oid) { WebUtil.alertNotNull(oid, "数据主键"); BdHomeConfigDO homeConfigDO = homeConfigDaoI.selectByPrimaryKey(oid); return null; } private List DOS2VOS(Collection doCollection){ List voList = new ArrayList<>(); if(!CollectionUtils.isEmpty(doCollection)){ doCollection.forEach(DO->{ voList.add(DO2VO(DO)); }); } return voList; } private BdHomeConfigVO DO2VO(BdHomeConfigDO DO){ BdHomeConfigVO vo = new BdHomeConfigVO(); BeanUtilForVCI.copyPropertiesIgnoreCase(DO, vo); return vo; } /** * 分页获取首页配置 * * @param baseQueryObject 查询对象 * @return 首页配置 */ @Override public DataGrid gridData(BaseQueryObject baseQueryObject) { Map conditionMap = baseQueryObject.getConditionMap(); PageHelper pageHelper = baseQueryObject.getPageHelper(); if(conditionMap == null){ conditionMap = new HashMap<>(); } if(pageHelper == null){ pageHelper = new PageHelper(); } VciQueryWrapperForDO wrapper = new VciQueryWrapperForDO(conditionMap, BdHomeConfigDO.class, pageHelper); List doList = homeConfigDaoI.selectByWrapper(wrapper); DataGrid dataGrid = new DataGrid<>(); dataGrid.setPage(pageHelper.getPage()); dataGrid.setLimit(pageHelper.getLimit()); dataGrid.setData(DOS2VOS(doList)); wrapper.clearPage(); dataGrid.setTotal(homeConfigDaoI.countByWrapper(wrapper)); return dataGrid; } /** * 获取所有首页配置 * * @return 首页配置 */ @Override public List getAllData() { VciQueryWrapperForDO wrapper = new VciQueryWrapperForDO(BdHomeConfigDO.class); List doList = homeConfigDaoI.selectByWrapper(wrapper); return DOS2VOS(doList); } }