package com.panzhihua.service_equipment.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.panzhihua.common.model.dtos.equipment.UnionOutdoorSiteDto;
|
import com.panzhihua.common.model.vos.R;
|
import com.panzhihua.service_equipment.dao.UnionOutdoorServiceRangeMapper;
|
import com.panzhihua.service_equipment.dao.UnionOutdoorSiteMapper;
|
import com.panzhihua.service_equipment.model.dos.UnionOutdoorServiceRange;
|
import com.panzhihua.service_equipment.model.dos.UnionOutdoorSite;
|
import com.panzhihua.service_equipment.service.UnionOutdoorSiteService;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
|
@Slf4j
|
@Service
|
public class UnionOutdoorSiteServiceImpl extends ServiceImpl<UnionOutdoorSiteMapper, UnionOutdoorSite> implements UnionOutdoorSiteService {
|
|
@Resource
|
private UnionOutdoorServiceRangeMapper unionOutdoorServiceRangeMapper;
|
|
|
/**
|
* 分页总工会户外劳工站
|
*
|
* @param unionOutdoorSiteDto
|
* @return 动态结果
|
*/
|
@Override
|
public R<IPage<UnionOutdoorSite>> query(UnionOutdoorSiteDto unionOutdoorSiteDto) {
|
Page page = new Page(unionOutdoorSiteDto.getPageNum(), unionOutdoorSiteDto.getPageSize());
|
QueryWrapper<UnionOutdoorSite> unionOutdoorLaborDynamicQueryWrapper = new QueryWrapper<>();
|
if (unionOutdoorSiteDto.getAreaCode()!=null)
|
unionOutdoorLaborDynamicQueryWrapper.eq("area_code",unionOutdoorSiteDto.getAreaCode());
|
if (unionOutdoorSiteDto.getKeyWord()!=null)
|
unionOutdoorLaborDynamicQueryWrapper.and(wrapper -> wrapper.like("name", unionOutdoorSiteDto.getKeyWord())
|
.or()
|
.like("introduction", unionOutdoorSiteDto.getKeyWord())
|
.or()
|
.like("detailed_address", unionOutdoorSiteDto.getKeyWord()));
|
|
Page pageResult = baseMapper.selectPage(page, unionOutdoorLaborDynamicQueryWrapper);
|
pageResult.setTotal(pageResult.getRecords().size());
|
return R.ok(pageResult);
|
}
|
|
@Override
|
public R<UnionOutdoorSite> unionOutdoorSiteDetails(Long id) {
|
UnionOutdoorSite unionOutdoorSite = baseMapper.selectById(id);
|
if (unionOutdoorSite != null) {
|
unionOutdoorSite.setViewNum(unionOutdoorSite.getViewNum()+1);
|
baseMapper.updateById(unionOutdoorSite);
|
QueryWrapper<UnionOutdoorServiceRange> queryWrapper = new QueryWrapper<>();
|
queryWrapper.inSql("id", "SELECT service_range_id FROM union_outdoor_site_service_range WHERE site_id = " + id);
|
unionOutdoorSite.setUnionOutdoorServiceRangeList(unionOutdoorServiceRangeMapper.selectList(queryWrapper));
|
return R.ok(unionOutdoorSite);
|
}
|
return R.fail();
|
}
|
}
|