package com.dy.pmsPlatform.station; import cn.hutool.core.codec.Base64; import com.dy.common.webUtil.QueryResultVo; import com.dy.pmsGlobal.daoPlt.PltStationMapper; import com.dy.pmsGlobal.pojoPlt.PltProduct; import com.dy.pmsGlobal.pojoPlt.PltStation; import com.dy.pmsGlobal.util.QrCodeUtil; import com.google.zxing.WriterException; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.common.utils.PojoUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.io.IOException; import java.util.List; import java.util.Map; @Slf4j @Service public class StationSv { private PltStationMapper dao; private static final String stationPrefix = "103" ; @Autowired public void setDao(PltStationMapper dao) { this.dao = dao; } @Transactional public int save(PltStation station) throws Exception { if(dao.selectByCodeId(station.id,station.code)>0){ throw new Exception("工站编号已存在"); } int count = dao.insertSelective(station); return count; } /** * 逻辑删除实体 * @param id 实体ID * @return 影响记录数量 */ @Transactional public int delete(Long id) { return this.dao.deleteLogicById(id); } @Transactional public int update(PltStation station) throws Exception { if(dao.selectByCodeId(station.id,station.code)>0){ throw new Exception("工站编号已存在"); } int count = dao.updateByPrimaryKeySelective(station); return count; } public PltStation selectById(String stationId) { return dao.selectByPrimaryKey(Long.valueOf(stationId)); } /** * 获取列表 */ public QueryResultVo> selectSome(QueryVo queryVo) { Map params = (Map) PojoUtils.generalize(queryVo); //查询符合条件的记录总数 Long itemTotal = this.dao.selectSomeCount(params); QueryResultVo> rsVo = new QueryResultVo<>(queryVo.pageSize, queryVo.pageCurr) ; //计算分页等信息 rsVo.calculateAndSet(itemTotal, params); //查询符合条件的记录 rsVo.obj = this.dao.selectSome(params) ; rsVo.obj.parallelStream().forEach(item->{ item.qrCode = QrCodeUtil.genQrCodeString(stationPrefix+item.id); }); return rsVo ; } @Transactional public int disabled(Long id, Boolean disabled) { PltStation station = new PltStation(); station.setId(id); station.setDisabled(disabled); return dao.updateByPrimaryKeySelective(station); } public List selectAll() { return dao.selectAll(); } }