|
|
@ -28,21 +28,17 @@ package com.yxt.anrui.buscenter.biz.busdeliveredusemessage; |
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.*; |
|
|
|
import com.yxt.common.base.service.MybatisBaseService; |
|
|
|
import com.yxt.common.base.utils.PagerUtil; |
|
|
|
import com.yxt.common.core.query.PagerQuery; |
|
|
|
import com.yxt.common.core.result.ResultBean; |
|
|
|
import com.yxt.common.core.vo.PagerVo; |
|
|
|
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessage; |
|
|
|
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessageQuery; |
|
|
|
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessageVo; |
|
|
|
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessageDetailsVo; |
|
|
|
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessageDto; |
|
|
|
import com.yxt.anrui.buscenter.api.busdeliveredusemessage.BusDeliveredUseMessageFeign; |
|
|
|
|
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
/** |
|
|
@ -60,51 +56,106 @@ import java.util.List; |
|
|
|
*/ |
|
|
|
@Service |
|
|
|
public class BusDeliveredUseMessageService extends MybatisBaseService<BusDeliveredUseMessageMapper, BusDeliveredUseMessage> { |
|
|
|
private QueryWrapper<BusDeliveredUseMessage> createQueryWrapper(BusDeliveredUseMessageQuery query) { |
|
|
|
// todo: 这里根据具体业务调整查询条件
|
|
|
|
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|
|
|
QueryWrapper<BusDeliveredUseMessage> qw = new QueryWrapper<>(); |
|
|
|
return qw; |
|
|
|
} |
|
|
|
|
|
|
|
public PagerVo<BusDeliveredUseMessageVo> listPageVo(PagerQuery<BusDeliveredUseMessageQuery> pq) { |
|
|
|
BusDeliveredUseMessageQuery query = pq.getParams(); |
|
|
|
QueryWrapper<BusDeliveredUseMessage> qw = createQueryWrapper(query); |
|
|
|
IPage<BusDeliveredUseMessage> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<BusDeliveredUseMessageVo> pagging = baseMapper.selectPageVo(page, qw); |
|
|
|
PagerVo<BusDeliveredUseMessageVo> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
public void saveOrUpdateDto(BusDeliveredUseMessageDto dto){ |
|
|
|
private QueryWrapper<BusDeliveredUseMessage> createQueryWrapper(BusDeliveredUseMessageQuery query) { |
|
|
|
// todo: 这里根据具体业务调整查询条件
|
|
|
|
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|
|
|
QueryWrapper<BusDeliveredUseMessage> qw = new QueryWrapper<>(); |
|
|
|
return qw; |
|
|
|
} |
|
|
|
|
|
|
|
public PagerVo<BusDeliveredUseMessageVo> listPageVo(PagerQuery<BusDeliveredUseMessageQuery> pq) { |
|
|
|
BusDeliveredUseMessageQuery query = pq.getParams(); |
|
|
|
QueryWrapper<BusDeliveredUseMessage> qw = createQueryWrapper(query); |
|
|
|
IPage<BusDeliveredUseMessage> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<BusDeliveredUseMessageVo> pagging = baseMapper.selectPageVo(page, qw); |
|
|
|
PagerVo<BusDeliveredUseMessageVo> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 录入使用人信息 |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public ResultBean<List<BusDeliveredUseMessageVo>> saveOrUpdate(BusDeliveredUseMessageDto dto) { |
|
|
|
ResultBean<List<BusDeliveredUseMessageVo>> rb = ResultBean.fireFail(); |
|
|
|
List<BusDeliveredUseMessageVo> list = new ArrayList<>(); |
|
|
|
if (StringUtils.isBlank(dto.getSid())) { |
|
|
|
List<String> stringList = dto.getVinNoList(); |
|
|
|
if (stringList.size() == 0) { |
|
|
|
return rb.setMsg("请选择需要录入使用人信息的车辆"); |
|
|
|
} |
|
|
|
List<String> sidsList = Arrays.asList(dto.getSidList()); |
|
|
|
if (sidsList.size() == 0) { |
|
|
|
//新增
|
|
|
|
list = saveUseMessage(dto); |
|
|
|
} else { |
|
|
|
//先删除掉使用人信息
|
|
|
|
delBySids(dto.getSidList()); |
|
|
|
list = saveUseMessage(dto); |
|
|
|
|
|
|
|
} |
|
|
|
} else { |
|
|
|
BusDeliveredUseMessage useMessage = fetchBySid(dto.getSid()); |
|
|
|
if (useMessage == null) { |
|
|
|
return rb.setMsg("该车辆的使用人信息不存在"); |
|
|
|
} |
|
|
|
list = updateByDto(dto); |
|
|
|
} |
|
|
|
return rb.success().setData(list); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 录入使用人信息 |
|
|
|
* |
|
|
|
* @param dto 数据传输对象 |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public List<BusDeliveredUseMessageVo> saveUseMessage(BusDeliveredUseMessageDto dto) { |
|
|
|
List<BusDeliveredUseMessageVo> list = new ArrayList<>(); |
|
|
|
List<String> stringList = dto.getVinNoList(); |
|
|
|
for (int i = 0; i < stringList.size(); i++) { |
|
|
|
BusDeliveredUseMessage useMessage = new BusDeliveredUseMessage(); |
|
|
|
//合同编号
|
|
|
|
useMessage.setContractNo(dto.getContractNo()); |
|
|
|
useMessage.setVinNo(stringList.get(i)); |
|
|
|
useMessage.setName(dto.getName()); |
|
|
|
useMessage.setMobile(dto.getMobile()); |
|
|
|
useMessage.setIdNo(dto.getIdNo()); |
|
|
|
useMessage.setAddress(dto.getAddress()); |
|
|
|
save(useMessage); |
|
|
|
BusDeliveredUseMessageVo vo = new BusDeliveredUseMessageVo(); |
|
|
|
vo.setVinNo(stringList.get(i)); |
|
|
|
vo.setUseMessageSid(useMessage.getSid()); |
|
|
|
list.add(vo); |
|
|
|
} |
|
|
|
return list; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 修改使用人信息 |
|
|
|
* |
|
|
|
* @param dto 数据传输对象 |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public List<BusDeliveredUseMessageVo> updateByDto(BusDeliveredUseMessageDto dto) { |
|
|
|
List<BusDeliveredUseMessageVo> list = new ArrayList<>(); |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
this.insertByDto(dto); |
|
|
|
return; |
|
|
|
} |
|
|
|
this.updateByDto(dto); |
|
|
|
} |
|
|
|
|
|
|
|
public void insertByDto(BusDeliveredUseMessageDto dto){ |
|
|
|
BusDeliveredUseMessage entity = new BusDeliveredUseMessage(); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
baseMapper.insert(entity); |
|
|
|
} |
|
|
|
|
|
|
|
public void updateByDto(BusDeliveredUseMessageDto dto){ |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
return; |
|
|
|
} |
|
|
|
BusDeliveredUseMessage entity = fetchBySid(dtoSid); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
baseMapper.updateById(entity); |
|
|
|
} |
|
|
|
|
|
|
|
public BusDeliveredUseMessageDetailsVo fetchDetailsVoBySid(String sid){ |
|
|
|
BusDeliveredUseMessage entity = fetchBySid(sid); |
|
|
|
BusDeliveredUseMessageDetailsVo vo = new BusDeliveredUseMessageDetailsVo(); |
|
|
|
BeanUtil.copyProperties(entity, vo); |
|
|
|
return vo; |
|
|
|
} |
|
|
|
BusDeliveredUseMessage entity = fetchBySid(dtoSid); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
baseMapper.updateById(entity); |
|
|
|
BusDeliveredUseMessageVo vo = new BusDeliveredUseMessageVo(); |
|
|
|
vo.setUseMessageSid(entity.getSid()); |
|
|
|
vo.setVinNo(entity.getVinNo()); |
|
|
|
list.add(vo); |
|
|
|
return list; |
|
|
|
} |
|
|
|
|
|
|
|
public BusDeliveredUseMessageDetailsVo fetchDetailsVoBySid(String sid) { |
|
|
|
BusDeliveredUseMessage entity = fetchBySid(sid); |
|
|
|
BusDeliveredUseMessageDetailsVo vo = new BusDeliveredUseMessageDetailsVo(); |
|
|
|
BeanUtil.copyProperties(entity, vo); |
|
|
|
return vo; |
|
|
|
} |
|
|
|
} |