mybatis之IN多条件查询,查询status=多个值的数据
1.controllerimport com.chint.common.CommonPage;import com.chint.common.ResponseData;import com.chint
1.controller
import com.chint.common.CommonPage;
import com.chint.common.ResponseData;
import com.chint.entity.dto.DeliverInfoParam;
import com.chint.entity.dto.DeliverTaskResultDTO;
import com.chint.entity.dto.PhotoResultDTO;
import com.chint.service.DeliverGpsTrajectoryService;
import com.chint.service.ISmallProgramService;
import com.chint.service.ITransTaskService;
import com.chint.util.ZiamUtil;
import com.chint.ziam.library.AuthenticationContext;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
*
*
*
**/
@Api(tags = "小程序")
@Slf4j
@RestController
@RequestMapping("/smallProgram")
public class SmallProgramController {
@Autowired
ISmallProgramService smallProgramService;
@ApiOperation("运单列表查询")
@RequestMapping(value = "/listDeliver", method = RequestMethod.POST)
@ResponseBody
public ResponseData<CommonPage<DeliverTaskResultDTO>> listDeliver(@RequestBody DeliverInfoParam deliverInfoParam,
@RequestParam(value = "pageSize", defaultValue = "5") Integer pageSize,
@RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum){
List<DeliverTaskResultDTO> deliverTaskList = smallProgramService.listDeliver(deliverInfoParam,pageSize,pageNum);
return ResponseData.success(CommonPage.restPage(deliverTaskList));
}
}
2.service
import com.baomidou.mybatisplus.extension.service.IService;
import com.chint.entity.DeliveryTaskInfo;
import com.chint.entity.dto.*;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* <p>
public interface ISmallProgramService extends IService<DeliveryTaskInfo> {
List<DeliverTaskResultDTO> listDeliver(DeliverInfoParam deliverInfoParam,Integer pageSize,Integer pageNum);
}
3.impl
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.chint.entity.DeliveryTaskInfo;
import com.chint.entity.dto.*;
import com.chint.mapper.SmallProgramMapper;
import com.chint.service.ISmallProgramService;
import com.github.pagehelper.PageHelper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
/**
*/
@Service
public class SmallProgramServiceImpl extends ServiceImpl<SmallProgramMapper, DeliveryTaskInfo> implements ISmallProgramService {
@Autowired
SmallProgramMapper smallProgramMapper;
@Override
public List<DeliverTaskResultDTO> listDeliver(DeliverInfoParam deliverInfoParam,Integer pageSize,Integer pageNum) {
PageHelper.startPage(pageNum,pageSize);
return smallProgramMapper.listDeliver(deliverInfoParam);
}
}
4.mapper接口层
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.chint.entity.DeliveryTaskInfo;
import com.chint.entity.dto.DeliverInfoParam;
import com.chint.entity.dto.DeliverTaskResultDTO;
import com.chint.entity.dto.PhotoResultDTO;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* <p>
* 用户表 Mapper 接口
*
*/
public interface SmallProgramMapper extends BaseMapper<DeliveryTaskInfo> {
List<DeliverTaskResultDTO> listDeliver(@RequestBody DeliverInfoParam deliverInfoParam);
}
5.mapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.chint.mapper.SmallProgramMapper">
<resultMap id="DeliverMap" type="com.chint.entity.dto.PhotoResultDTO">
<result column="trans_ship_no" property="transShipNo" />
<result column="delivery_ship_no" property="deliveryShipNo" />
<result column="deliveryId" property="deliveryId" />
<result column="count_num" property="countNum" />
<result column="total_vol" property="totalVol" />
<result column="total_weight" property="totalWeight" />
<result column="status" property="status" />
<result column="send_carrier_name" property="sendCarrierName" />
<result column="vehicle_plate" property="vehiclePlate" />
<result column="allocate_type" property="allocateType" />
<result column="delivery_type" property="deliveryType" />
<!-- <result column="goods_type" property="goodsType" />-->
<result column="delivery_di" property="deliveryDi" />
<result column="recieve_di" property="recieveDi" />
<result column="delivery_date" property="deliveryDate" />
<result column="estimate_arrival_time" property="estimateArrivalTime" />
<result column="acture_arrival_time" property="actureArrivalTime" />
<collection property="photos" ofType="com.chint.entity.UploadPhoto">
<result column="id" property="id" />
<result column="photo_type" property="photoType" />
<result column="upload_url" property="uploadUrl" />
<result column="photo_name" property="photoName" />
<result column="upload_status" property="uploadStatus" />
</collection>
</resultMap>
<select id="listDeliver" resultMap="DeliverMap">
select delivery.id deliveryId,
delivery.delivery_ship_no,
delivery.status,
delivery.send_carrier_name,
delivery.vehicle_plate,
task.trans_ship_no,
task.count_num,
task.total_vol,
task.total_weight,
task.allocate_type,
task.delivery_type,
task.delivery_di,
task.recieve_di,
task.delivery_date,
task.estimate_arrival_time,
task.acture_arrival_time,
pto.id,
pto.photo_type,
pto.upload_url,
pto.photo_name,
pto.upload_status
from delivery_task_info delivery
left join trans_x_delivery rela on delivery.delivery_ship_no = rela.delivery_ship_no
left join trans_task_info task on rela.trans_ship_no = task.trans_ship_no
left join upload_photo pto on delivery.delivery_ship_no = pto.delivery_ship_no
<where>
<if test="driverPhone != null and driverPhone != ''">
and delivery.driver_phone = #{driverPhone}
</if>
<if test="statusList != null and statusList.size() > 0">
and delivery.status in
<foreach collection="statusList" separator="," open="(" close=")" item="status" >
#{status}
</foreach>
</if>
</where>
</select>
</mapper>
6.接受mapper.xml的返回参数实体类
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import com.chint.entity.UploadPhoto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import java.io.Serializable;
import java.util.List;
/**
* <p>
* 运单轨迹查询结果参数
* </p>
*
* @author chint
* @since 2022-11-01
*/
@Getter
@Setter
@ApiModel(value = "PhotoResultDTO对象", description = "运单,图片查询结果")
public class PhotoResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "派车单号",hidden = true)
private Long transShipNo;
@ApiModelProperty("deliveryId号")
private Long deliveryId;
@ApiModelProperty("运单号")
private Long deliveryShipNo;
@ExcelProperty("件数")
@ApiModelProperty("件数")
private Integer countNum;
@ExcelProperty("总体积")
@ApiModelProperty("总体积")
private String totalVol;
@ExcelProperty("总重量")
@ApiModelProperty("总重量")
private String totalWeight;
//导入时为新建
@ApiModelProperty(value = "运输单状态",example="0-新建,1-已派车,2-运输中,3-已签收,9-已删除",hidden = true)
private String status;
@ExcelProperty("承运商")
@ApiModelProperty("承运商")
private String sendCarrierName;
@ExcelProperty("车牌号")
@ApiModelProperty("车牌号")
private String vehiclePlate;
@ExcelProperty("配载方式")
@ApiModelProperty("配载方式")//挂车
private String allocateType;
@ExcelProperty("发货类型")
@ApiModelProperty("发货类型")//货车
private String deliveryType;
@ExcelProperty("商品/货物类型")
@ApiModelProperty("商品/货物类型")
private String goodsType;
@ApiModelProperty("发货地址")
private String deliveryDi;
@ApiModelProperty("收货地址")
private String recieveDi;
@ApiModelProperty("发货时间")
private String deliveryDate;
@ApiModelProperty("预计到达时间")
private String estimateArrivalTime;
@ApiModelProperty("预计到达时间")
private String actureArrivalTime;
@TableField(exist = false)
@ApiModelProperty("图片信息表")
List<UploadPhoto> photos;
}
相关文章:
-
windows系统下载jdk:访问oracle官网或其他jdk提供商网站,下载适合windows系统的jdk版本。网站地址:oracle 甲骨文中国 | 云应用和云平台点击进入下滑…
-
-
-
-
一、前言环境说明:windows10 + idea2021.3.2 + jdk1.8 + springboot 2.3.1.release正常情况下我们在开发系统的时候都是使用一个…
-
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论