|
|
@ -28,14 +28,25 @@ package com.yxt.anrui.scm.biz.scmvehicleinspectitem; |
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.yxt.anrui.scm.api.scmvehicleinspectdetail.ScmVehicleInspectdetailDetailsVo; |
|
|
|
import com.yxt.anrui.scm.api.scmvehicleinspectdetail.ScmVehicleInspectdetailDto; |
|
|
|
import com.yxt.anrui.scm.api.scmvehicleinspectimgtemp.ScmVehicleInspectimgtempDetailsVo; |
|
|
|
import com.yxt.anrui.scm.api.scmvehicleinspectimgtemp.ScmVehicleInspectimgtempDto; |
|
|
|
import com.yxt.anrui.scm.api.scmvehicleinspectitem.*; |
|
|
|
import com.yxt.anrui.scm.biz.scmvehicleinspectdetail.ScmVehicleInspectdetailService; |
|
|
|
import com.yxt.anrui.scm.biz.scmvehicleinspectimgtemp.ScmVehicleInspectimgtempService; |
|
|
|
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 org.apache.commons.lang3.StringUtils; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import java.util.Collections; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
/** |
|
|
|
* Project: anrui-scm(供应链) <br/> |
|
|
|
* File: ScmVehicleInspectitemService.java <br/> |
|
|
@ -51,51 +62,91 @@ import org.springframework.stereotype.Service; |
|
|
|
*/ |
|
|
|
@Service |
|
|
|
public class ScmVehicleInspectitemService extends MybatisBaseService<ScmVehicleInspectitemMapper, ScmVehicleInspectitem> { |
|
|
|
private QueryWrapper<ScmVehicleInspectitem> createQueryWrapper(ScmVehicleInspectitemQuery query) { |
|
|
|
// todo: 这里根据具体业务调整查询条件
|
|
|
|
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|
|
|
QueryWrapper<ScmVehicleInspectitem> qw = new QueryWrapper<>(); |
|
|
|
return qw; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Autowired |
|
|
|
private ScmVehicleInspectdetailService scmVehicleInspectdetailService; |
|
|
|
@Autowired |
|
|
|
private ScmVehicleInspectimgtempService scmVehicleInspectimgtempService; |
|
|
|
|
|
|
|
/** |
|
|
|
* 分页列表 |
|
|
|
* |
|
|
|
* @param pq |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public PagerVo<ScmVehicleInspectitemVo> listPageVo(PagerQuery<ScmVehicleInspectitemQuery> pq) { |
|
|
|
ScmVehicleInspectitemQuery query = pq.getParams(); |
|
|
|
QueryWrapper<ScmVehicleInspectitem> qw = createQueryWrapper(query); |
|
|
|
ScmVehicleInspectitemQuery params = pq.getParams(); |
|
|
|
QueryWrapper<ScmVehicleInspectitem> qw = new QueryWrapper<>(); |
|
|
|
if (params != null) { |
|
|
|
//项目名称
|
|
|
|
if (StringUtils.isNotBlank(params.getItem())) { |
|
|
|
qw.like("si.item", params.getItem()); |
|
|
|
} |
|
|
|
//是否上传照片
|
|
|
|
if (params.getIsImg() != null) { |
|
|
|
qw.eq("si.isImg", params.getIsImg()); |
|
|
|
} |
|
|
|
} |
|
|
|
IPage<ScmVehicleInspectitem> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<ScmVehicleInspectitemVo> pagging = baseMapper.selectPageVo(page, qw); |
|
|
|
PagerVo<ScmVehicleInspectitemVo> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
public void saveOrUpdateDto(ScmVehicleInspectitemDto dto) { |
|
|
|
public ResultBean<String> saveOrUpdateDto(ScmVehicleInspectitemDto dto) { |
|
|
|
ResultBean<String> rb = ResultBean.fireFail(); |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
List<ScmVehicleInspectimgtempDto> inspectimgtemp = dto.getInspectimgtemp(); |
|
|
|
List<ScmVehicleInspectdetailDto> inspectdetail = dto.getInspectdetail(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
this.insertByDto(dto); |
|
|
|
return; |
|
|
|
ScmVehicleInspectitem scmVehicleInspectitem = new ScmVehicleInspectitem(); |
|
|
|
BeanUtil.copyProperties(dto, scmVehicleInspectitem, "sid"); |
|
|
|
if ("1".equals(scmVehicleInspectitem.getIsImg())) {//上传图片
|
|
|
|
scmVehicleInspectimgtempService.save(inspectimgtemp, scmVehicleInspectitem.getSid()); |
|
|
|
} |
|
|
|
scmVehicleInspectdetailService.save(inspectdetail, scmVehicleInspectitem.getSid()); |
|
|
|
baseMapper.insert(scmVehicleInspectitem); |
|
|
|
} else { |
|
|
|
ScmVehicleInspectitem scmVehicleInspectitem = fetchBySid(dtoSid); |
|
|
|
if (scmVehicleInspectitem == null) { |
|
|
|
return rb.setMsg("该项目不存在"); |
|
|
|
} |
|
|
|
BeanUtil.copyProperties(dto, scmVehicleInspectitem); |
|
|
|
//删除项目内容
|
|
|
|
scmVehicleInspectdetailService.deleteByItemSid(dtoSid); |
|
|
|
//新增项目内容
|
|
|
|
scmVehicleInspectdetailService.save(inspectdetail, scmVehicleInspectitem.getSid()); |
|
|
|
//是否有照片,若有,则删除照片,再新增,若没有则直接删除
|
|
|
|
scmVehicleInspectimgtempService.deleteByItemSid(dtoSid); |
|
|
|
if ("1".equals(scmVehicleInspectitem.getIsImg())) { |
|
|
|
scmVehicleInspectimgtempService.save(inspectimgtemp, scmVehicleInspectitem.getSid()); |
|
|
|
} |
|
|
|
baseMapper.updateById(scmVehicleInspectitem); |
|
|
|
} |
|
|
|
this.updateByDto(dto); |
|
|
|
return rb.success().setData(dtoSid); |
|
|
|
} |
|
|
|
|
|
|
|
public void insertByDto(ScmVehicleInspectitemDto dto) { |
|
|
|
ScmVehicleInspectitem entity = new ScmVehicleInspectitem(); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
baseMapper.insert(entity); |
|
|
|
} |
|
|
|
|
|
|
|
public void updateByDto(ScmVehicleInspectitemDto dto) { |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
return; |
|
|
|
public ResultBean<ScmVehicleInspectitemDetailsVo> fetchDetailsVoBySid(String sid) { |
|
|
|
ResultBean<ScmVehicleInspectitemDetailsVo> rb = ResultBean.fireFail(); |
|
|
|
ScmVehicleInspectitem entity = fetchBySid(sid); |
|
|
|
if (entity == null) { |
|
|
|
return rb.setMsg("该项目不存在"); |
|
|
|
} |
|
|
|
ScmVehicleInspectitem entity = fetchBySid(dtoSid); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
baseMapper.updateById(entity); |
|
|
|
ScmVehicleInspectitemDetailsVo vo = baseMapper.fetchDetailsVoBySid(sid); |
|
|
|
//查询项目内容
|
|
|
|
List<ScmVehicleInspectdetailDetailsVo> inspectdetail = scmVehicleInspectdetailService.selectByItemSid(sid); |
|
|
|
inspectdetail.removeAll(Collections.singleton(null)); |
|
|
|
vo.setInspectdetail(inspectdetail); |
|
|
|
//查询照片模板
|
|
|
|
List<ScmVehicleInspectimgtempDetailsVo> inspectimgtemp = scmVehicleInspectimgtempService.selectByItemSid(sid); |
|
|
|
vo.setInspectimgtemp(inspectimgtemp); |
|
|
|
return rb.success().setData(vo); |
|
|
|
} |
|
|
|
|
|
|
|
public ScmVehicleInspectitemDetailsVo fetchDetailsVoBySid(String sid) { |
|
|
|
ScmVehicleInspectitem entity = fetchBySid(sid); |
|
|
|
ScmVehicleInspectitemDetailsVo vo = new ScmVehicleInspectitemDetailsVo(); |
|
|
|
BeanUtil.copyProperties(entity, vo); |
|
|
|
return vo; |
|
|
|
public void deleteAllBySid(String[] sids) { |
|
|
|
scmVehicleInspectdetailService.deleteAllByItemSid(sids); |
|
|
|
scmVehicleInspectimgtempService.deleteAllByItemSid(sids); |
|
|
|
delBySids(sids); |
|
|
|
} |
|
|
|
} |