package com.gx.obe.server.management.table.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gx.obe.server.common.utils.IDUtils; import com.gx.obe.server.common.utils.StringUtils; import com.gx.obe.server.management.table.dao.ObeBidPriceTableValueMapper; import com.gx.obe.server.management.table.entity.ObeBidPriceTableValue; import com.gx.obe.server.management.table.service.ObeBidPriceTableValueService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; /** * @author mazc * @Description: */ @Service @Transactional public class ObeBidPriceTableValueServiceImpl extends ServiceImpl<ObeBidPriceTableValueMapper, ObeBidPriceTableValue> implements ObeBidPriceTableValueService { @Autowired private ObeBidPriceTableValueMapper obeBidPriceTableValueMapper; /** * @param ObeBidPriceTableValueList * @Description: 批量更新 * @author mazc */ @Override @Transactional(rollbackFor = Exception.class) public Integer updateByBatch(List<ObeBidPriceTableValue> ObeBidPriceTableValueList) { return obeBidPriceTableValueMapper.updateBatchList(ObeBidPriceTableValueList); } /** * @param ObeBidPriceTableValueList * @Description: 批量插入 * @author mazc */ @Override @Transactional(rollbackFor = Exception.class) public Integer insertByBatch(List<ObeBidPriceTableValue> ObeBidPriceTableValueList) { return obeBidPriceTableValueMapper.insertByBatch(ObeBidPriceTableValueList); } /** * @param ObeBidPriceTableValue * @param attributes * @Description: 指定字段修改 * @author chenxw */ @Override public boolean updateAssignProperty(ObeBidPriceTableValue ObeBidPriceTableValue, String[] attributes) { return obeBidPriceTableValueMapper.updateAssignProperty(ObeBidPriceTableValue, attributes) > 0; } /** * @param ObeBidPriceTableValueList * @param attributes * @Description: 批量指定字段修改 * @author chenxw */ @Override public Integer batchUpdateProperty(List<ObeBidPriceTableValue> ObeBidPriceTableValueList, String[] attributes) { return obeBidPriceTableValueMapper.batchUpdateProperty(ObeBidPriceTableValueList, attributes); } /** * @param ObeBidPriceTableValueList * @param attributes * @return * @Description: 批量添加或跟新 * @author chenxw */ @Override @Transactional(rollbackFor = Exception.class) public Integer batchSaveOrUpdate(List<ObeBidPriceTableValue> ObeBidPriceTableValueList, String[] attributes) { List<ObeBidPriceTableValue> insertObeBidPriceTableValueList = new ArrayList<>(); List<ObeBidPriceTableValue> updateObeBidPriceTableValueList = new ArrayList<>(); for (ObeBidPriceTableValue ObeBidPriceTableValue : ObeBidPriceTableValueList) { if (StringUtils.isEmpty(ObeBidPriceTableValue.getId())) { ObeBidPriceTableValue.setId(IDUtils.getId()); insertObeBidPriceTableValueList.add(ObeBidPriceTableValue); } else { updateObeBidPriceTableValueList.add(ObeBidPriceTableValue); } } int count = 0; if (insertObeBidPriceTableValueList.size() > 0) { count += obeBidPriceTableValueMapper.insertByBatch(insertObeBidPriceTableValueList); } if (updateObeBidPriceTableValueList.size() > 0) { count += obeBidPriceTableValueMapper.batchUpdateProperty(updateObeBidPriceTableValueList, attributes); } return count; } /** * @param priceTableId * @return * @Description: 根据报价表id获取 * @author chenxw */ public List<ObeBidPriceTableValue> getByPriceTableId(String priceTableId) { QueryWrapper<ObeBidPriceTableValue> obeBidPriceTableValueQueryWrapper = new QueryWrapper<>(); obeBidPriceTableValueQueryWrapper.lambda() .eq(ObeBidPriceTableValue::getPriceTableId, priceTableId); return obeBidPriceTableValueMapper.selectList(obeBidPriceTableValueQueryWrapper); } }