提交 dc418fff 作者: panda

开发云享飞作业服务订单-相关接口

上级 ae2e8565
package com.mmc.pms.auth;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.common.ResultEnum;
import com.mmc.pms.util.PathUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.PrintWriter;
......
package com.mmc.pms.controller.service;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 服务订单地址 前端控制器
* </p>
*
* @author Pika
* @since 2023-06-10
*/
@RestController
@RequestMapping("/serviceOrderProvinceCity")
public class ServiceOrderProvinceCityController {
}
package com.mmc.pms.controller.service;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 服务订单状态 前端控制器
* </p>
*
* @author Pika
* @since 2023-06-10
*/
@RestController
@RequestMapping("/serviceOrderStatusInfo")
public class ServiceOrderStatusInfoController {
}
package com.mmc.pms.controller.service;
import com.mmc.pms.common.Page;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.controller.BaseController;
import com.mmc.pms.model.group.Create;
import com.mmc.pms.model.qo.ServiceOrderTaskQO;
import com.mmc.pms.model.qo.ServiceQO;
import com.mmc.pms.model.work.dto.ServiceDTO;
import com.mmc.pms.model.work.dto.ServiceOrderTaskDTO;
import com.mmc.pms.model.work.vo.ServiceOrderTaskVO;
import com.mmc.pms.model.work.vo.ServiceVO;
import com.mmc.pms.service.ServiceOrderTaskService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
......@@ -28,7 +27,7 @@ import javax.servlet.http.HttpServletRequest;
* @author Pika
* @since 2023-06-10
*/
@Api(tags = {"云享飞服务订单-模块"})
@Api(tags = {"云享飞作业服务订单-模块"})
@RestController
@RequestMapping("/serviceOrderTask")
public class ServiceOrderTaskController extends BaseController {
......@@ -36,12 +35,27 @@ public class ServiceOrderTaskController extends BaseController {
@Autowired
private ServiceOrderTaskService serviceOrderTaskService;
@ApiOperation(value = "订单任务-新增")
@ApiOperation(value = "服务订单任务-新增")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insertOrderTask")
public ResultBody insertOrderTask(
@Validated(Create.class) @RequestBody ServiceOrderTaskVO param, HttpServletRequest request) {
return serviceOrderTaskService.insertOrderTask(param, this.getUserLoginInfoFromRedis(request).getUserAccountId());
}
@ApiOperation(value = "查询服务订单列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ServiceOrderTaskDTO.class)})
@PostMapping("queryOrderTaskList")
public ResultBody<ServiceOrderTaskDTO> queryOrderTaskList(
@Validated(Page.class) @RequestBody ServiceOrderTaskQO param, HttpServletRequest request) {
return ResultBody.success(serviceOrderTaskService.queryOrderTaskList(param, this.getUserLoginInfoFromRedis(request).getUserAccountId()));
}
@ApiOperation(value = "查询服务订单")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ServiceOrderTaskDTO.class)})
@GetMapping("queryOrderTask")
public ResultBody<ServiceOrderTaskDTO> queryOrderTask(@ApiParam("订单服务id") @RequestParam(value = "id") Integer id) {
return serviceOrderTaskService.queryById(id);
}
}
package com.mmc.pms.controller.service;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 服务订单图片 前端控制器
* </p>
*
* @author Pika
* @since 2023-06-10
*/
@RestController
@RequestMapping("/serviceOrderTaskImage")
public class ServiceOrderTaskImageController {
}
......@@ -3,7 +3,11 @@ package com.mmc.pms.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.mmc.pms.entity.ServiceOrderTaskDO;
import com.mmc.pms.model.qo.ServiceOrderTaskQO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* <p>
......@@ -16,4 +20,7 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ServiceOrderTaskDao extends BaseMapper<ServiceOrderTaskDO> {
Integer conditionCount(@Param("param") ServiceOrderTaskQO param, @Param("userAccountId") Integer userAccountId);
List<ServiceOrderTaskDO> queryPageByLimit(ServiceOrderTaskQO param, Integer userAccountId);
}
package com.mmc.pms.entity;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.mmc.pms.model.other.dto.RepoCashDTO;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import java.io.Serializable;
import java.math.BigDecimal;
......
......@@ -83,10 +83,10 @@ public class ServiceOrderTaskDO implements Serializable {
private Integer display;
@ApiModelProperty(value = "创建时间")
private LocalDateTime createdTime;
private Date createdTime;
@ApiModelProperty(value = "更新时间")
private LocalDateTime updatedTime;
private Date updatedTime;
@ApiModelProperty(value = "逻辑删除;1代表删除,0代表未删除")
@TableLogic
......
package com.mmc.pms.model.qo;
import com.mmc.pms.common.Page;
import com.mmc.pms.model.group.Create;
import com.mmc.pms.model.group.Freeze;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* <p>
* 云享飞服务订单-主表
* </p>
*
* @author Pika
* @since 2023-06-10
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ServiceOrderTaskQO implements Serializable {
private static final long serialVersionUID = -17878654L;
@ApiModelProperty(value = "订单状态:0 待分配运营")
private Integer orderStatus;
@ApiModelProperty(value = "页码", required = true)
@NotNull(
message = "页码不能为空",
groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageNo;
@ApiModelProperty(value = "每页显示数", required = true)
@NotNull(
message = "每页显示数不能为空",
groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
private Integer pageSize;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
}
package com.mmc.pms.model.work.dto;
import com.mmc.pms.model.group.Create;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* <p>
* 云享飞服务订单-主表
* </p>
*
* @author Pika
* @since 2023-06-10
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class ServiceOrderTaskDTO implements Serializable {
private static final long serialVersionUID = -178678654L;
@ApiModelProperty(value = "订单编号")
private String orderNo;
@ApiModelProperty(value = "订单名称")
private String orderName;
@ApiModelProperty(value = "订单总金额")
private BigDecimal orderAmt;
@ApiModelProperty(value = "服务项ID",example = "1")
@NotNull(message = "新增服务-id不能为空", groups = {Create.class})
private Integer inspectionId;
@ApiModelProperty(value = "预计服务开始时间")
@NotNull(message = "新增服务-预计服务开始时间不能为空", groups = {Create.class})
private Date startTime;
@ApiModelProperty(value = "预计服务结束时间")
@NotNull(message = "新增服务-预计服务结束时间不能为空", groups = {Create.class})
private Date endTime;
@ApiModelProperty(value = "省份",example = "广东")
@NotBlank(message = "新增服务-省份不能为空", groups = {Create.class})
private String province;
@ApiModelProperty(value = "市",example = "深圳")
@NotBlank(message = "新增服务-市不能为空", groups = {Create.class})
private String city;
@ApiModelProperty(value = "详细地址",example = "西丽街道")
@NotBlank(message = "新增服务-详细地址不能为空", groups = {Create.class})
private String address;
@ApiModelProperty(value = "经度",example = "117.257370")
@NotNull(message = "新增服务-经度不能为空", groups = {Create.class})
private BigDecimal lon;
@ApiModelProperty(value = "纬度",example = "32.050774")
@NotNull(message = "新增服务-纬度不能为空", groups = {Create.class})
private BigDecimal lat;
@ApiModelProperty(value = "任务描述")
private String taskDescription;
@ApiModelProperty(value = "图片")
private List<String> images;
}
......@@ -33,10 +33,6 @@ public class ServiceOrderTaskVO implements Serializable {
@NotNull(message = "新增服务-id不能为空", groups = {Create.class})
private Integer inspectionId;
@ApiModelProperty(value = "服务名称")
@NotBlank(message = "新增服务-名称不能为空", groups = {Create.class})
private String inspectionName;
@ApiModelProperty(value = "预计服务开始时间")
@NotNull(message = "新增服务-预计服务开始时间不能为空", groups = {Create.class})
private Date startTime;
......
......@@ -2,6 +2,7 @@ package com.mmc.pms.service;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.model.qo.ServiceQO;
import com.mmc.pms.model.work.dto.ServiceDTO;
import com.mmc.pms.model.work.vo.ServiceVO;
import com.mmc.pms.page.PageResult;
......@@ -19,7 +20,7 @@ public interface BackstageTaskService {
ResultBody deleteById(Integer id);
ResultBody queryById(Integer id);
ResultBody<ServiceDTO> queryById(Integer id);
PageResult queryServiceManagerList(ServiceQO param, Integer userAccountId);
......
......@@ -75,7 +75,7 @@ public class BackstageTaskServiceImpl implements BackstageTaskService {
}
@Override
public ResultBody queryById(Integer id) {
public ResultBody<ServiceDTO> queryById(Integer id) {
ServiceDO serviceDO = backstageTaskServiceDao.queryById(id);
ServiceDTO serviceDTO = new ServiceDTO(serviceDO);
Map<Integer, String> categoriesNameMap =
......@@ -140,6 +140,8 @@ public class BackstageTaskServiceImpl implements BackstageTaskService {
@Override
public PageResult queryWorkServiceList(ServiceQO param, HttpServletRequest request) {
Integer pageNo = param.getPageNo();
param.buildCurrentPage();
List<Integer> userIds = null;
Integer provinceCode = param.getProvinceCode();
if(provinceCode!=null){
......@@ -153,8 +155,6 @@ public class BackstageTaskServiceImpl implements BackstageTaskService {
if (count == 0) {
return PageResult.buildPage(param.getPageNo(), param.getPageSize(), count);
}
Integer pageNo = param.getPageNo();
param.buildCurrentPage();
List<ServiceDO> pageList = backstageTaskServiceDao.queryPageByLimit(param,categoriesIds,userIds);
// 用户暂时无关联公司数据,先用假数据展示
......
package com.mmc.pms.service.Impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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.mmc.pms.common.ResultBody;
import com.mmc.pms.dao.BackstageTaskServiceDao;
import com.mmc.pms.dao.ServiceOrderProvinceCityDao;
import com.mmc.pms.dao.ServiceOrderTaskDao;
import com.mmc.pms.dao.ServiceOrderTaskImageDao;
import com.mmc.pms.entity.ServiceDO;
import com.mmc.pms.entity.ServiceOrderProvinceCityDO;
import com.mmc.pms.entity.ServiceOrderTaskDO;
import com.mmc.pms.entity.ServiceOrderTaskImageDO;
import com.mmc.pms.model.qo.ServiceOrderTaskQO;
import com.mmc.pms.model.work.dto.ServiceOrderTaskDTO;
import com.mmc.pms.model.work.vo.ServiceOrderTaskVO;
import com.mmc.pms.page.PageResult;
import com.mmc.pms.service.ServiceOrderTaskService;
import com.mmc.pms.util.BeanCopyUtils;
import com.mmc.pms.util.CodeUtil;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
......@@ -18,45 +27,148 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
/**
* <p>
* 云享飞服务订单-主表 服务实现类
* </p>
*
* @author Pika
* @since 2023-06-10
*/
@Service
public class ServiceOrderTaskServiceImpl extends ServiceImpl<ServiceOrderTaskDao, ServiceOrderTaskDO> implements ServiceOrderTaskService {
@Autowired private ServiceOrderTaskDao serviceOrderTaskDao;
@Autowired private ServiceOrderProvinceCityDao serviceOrderProvinceCityDao;
@Autowired private ServiceOrderTaskImageDao serviceOrderTaskImageDao;
@Override
@Transactional(rollbackFor = Exception.class)
public ResultBody insertOrderTask(ServiceOrderTaskVO param, Integer userAccountId) {
// 保存作业服务订单
ServiceOrderTaskDO orderTaskDO = ServiceOrderTaskDO.builder().orderNo(CodeUtil.createOrderTaskNO()).orderName(param.getInspectionName())
.inspectionId(param.getInspectionId()).inspectionName(param.getInspectionName()).taskDescription(param.getTaskDescription())
.startTime(param.getStartTime()).endTime(param.getEndTime()).userAccountId(userAccountId).build();
serviceOrderTaskDao.insert(orderTaskDO);
// 保存作业服务地址信息
ServiceOrderProvinceCityDO provinceCityDO = ServiceOrderProvinceCityDO.builder().serviceOrderTaskId(orderTaskDO.getId()).province(param.getProvince()).city(param.getCity())
.address(param.getAddress()).lat(param.getLat()).lon(param.getLon()).build();
serviceOrderProvinceCityDao.insert(provinceCityDO);
// 保存作业服务图片
List<String> images = param.getImages();
if(CollectionUtils.isNotEmpty(images)){
ServiceOrderTaskImageDO imageDO = ServiceOrderTaskImageDO.builder().orderTaskId(orderTaskDO.getId()).picture(StringUtils.join(",", images)).build();
serviceOrderTaskImageDao.insert(imageDO);
}
return ResultBody.success();
public class ServiceOrderTaskServiceImpl
extends ServiceImpl<ServiceOrderTaskDao, ServiceOrderTaskDO>
implements ServiceOrderTaskService {
@Autowired private ServiceOrderTaskDao serviceOrderTaskDao;
@Autowired private ServiceOrderProvinceCityDao serviceOrderProvinceCityDao;
@Autowired private ServiceOrderTaskImageDao serviceOrderTaskImageDao;
@Autowired private BackstageTaskServiceDao backstageTaskServiceDao;
@Override
@Transactional(rollbackFor = Exception.class)
public ResultBody insertOrderTask(ServiceOrderTaskVO param, Integer userAccountId) {
ServiceDO serviceDO = backstageTaskServiceDao.queryById(param.getInspectionId());
if (serviceDO == null) {
return ResultBody.error("服务id不存在");
}
// 保存作业服务订单
ServiceOrderTaskDO orderTaskDO =
ServiceOrderTaskDO.builder()
.orderNo(CodeUtil.createOrderTaskNO())
.orderName(serviceDO.getServiceName())
.inspectionId(param.getInspectionId())
.inspectionName(serviceDO.getServiceName())
.taskDescription(param.getTaskDescription())
.startTime(param.getStartTime())
.endTime(param.getEndTime())
.userAccountId(userAccountId)
.build();
serviceOrderTaskDao.insert(orderTaskDO);
// 保存作业服务地址信息
ServiceOrderProvinceCityDO provinceCityDO =
ServiceOrderProvinceCityDO.builder()
.serviceOrderTaskId(orderTaskDO.getId())
.province(param.getProvince())
.city(param.getCity())
.address(param.getAddress())
.lat(param.getLat())
.lon(param.getLon())
.build();
serviceOrderProvinceCityDao.insert(provinceCityDO);
// 保存作业服务图片
List<String> images = param.getImages();
if (CollectionUtils.isNotEmpty(images)) {
ServiceOrderTaskImageDO imageDO =
ServiceOrderTaskImageDO.builder()
.orderTaskId(orderTaskDO.getId())
.picture(String.join(",", images))
.build();
serviceOrderTaskImageDao.insert(imageDO);
}
return ResultBody.success();
}
@Override
public PageResult queryOrderTaskList(ServiceOrderTaskQO param, Integer userAccountId) {
Integer pageNo = param.getPageNo();
param.buildCurrentPage();
Integer count = serviceOrderTaskDao.conditionCount(param, userAccountId);
if (count == null || count == 0) {
return PageResult.buildPage(param.getPageNo(), param.getPageSize(), count);
}
List<ServiceOrderTaskDO> orderTaskList =
serviceOrderTaskDao.queryPageByLimit(param, userAccountId);
List<Integer> orderTaskIds =
orderTaskList.stream().map(ServiceOrderTaskDO::getId).collect(Collectors.toList());
Map<Integer, ServiceOrderProvinceCityDO> provinceCityMap = getOrderProvinceCityDOMapById(orderTaskIds);
Map<Integer, List<ServiceOrderTaskImageDO>> imageMap = getImageListMapById(orderTaskIds);
List<ServiceOrderTaskDTO> pageList = new ArrayList<>();
for (ServiceOrderTaskDO item : orderTaskList) {
ServiceOrderTaskDTO orderTaskDTO = getServiceOrderTaskDTO(provinceCityMap, imageMap, item);
pageList.add(orderTaskDTO);
}
return PageResult.buildPage(pageNo, param.getPageSize(), count, pageList);
}
@Override
public ResultBody<ServiceOrderTaskDTO> queryById(Integer id) {
ServiceOrderTaskDO order = serviceOrderTaskDao.selectById(id);
if(order==null){
return ResultBody.success();
}
Map<Integer, ServiceOrderProvinceCityDO> provinceCityMap = getOrderProvinceCityDOMapById(Arrays.asList(id));
Map<Integer, List<ServiceOrderTaskImageDO>> imageMap = getImageListMapById(Arrays.asList(id));
ServiceOrderTaskDTO serviceOrderTaskDTO = getServiceOrderTaskDTO(provinceCityMap, imageMap, order);
return ResultBody.success(serviceOrderTaskDTO);
}
private ServiceOrderTaskDTO getServiceOrderTaskDTO(Map<Integer, ServiceOrderProvinceCityDO> provinceCityMap, Map<Integer, List<ServiceOrderTaskImageDO>> imageMap, ServiceOrderTaskDO item) {
ServiceOrderTaskDTO orderTaskDTO = BeanCopyUtils.properties(item, new ServiceOrderTaskDTO());
BeanCopyUtils.properties(provinceCityMap.get(item.getId()), orderTaskDTO);
List<ServiceOrderTaskImageDO> imageDOList = imageMap.get(item.getId());
List<String> images = null;
if (CollectionUtils.isNotEmpty(imageDOList)) {
images =
imageDOList.stream()
.map(ServiceOrderTaskImageDO::getPicture)
.collect(Collectors.toList());
}
orderTaskDTO.setImages(images);
return orderTaskDTO;
}
private Map<Integer, List<ServiceOrderTaskImageDO>> getImageListMapById(List<Integer> orderTaskIds) {
LambdaQueryWrapper<ServiceOrderTaskImageDO> imageWrapper = new LambdaQueryWrapper<>();
imageWrapper.in(ServiceOrderTaskImageDO::getOrderTaskId, orderTaskIds);
List<ServiceOrderTaskImageDO> imageList = serviceOrderTaskImageDao.selectList(imageWrapper);
Map<Integer, List<ServiceOrderTaskImageDO>> imageMap = new HashMap<>();
if (CollectionUtils.isNotEmpty(imageList)) {
imageMap =
imageList.stream()
.collect(Collectors.groupingBy(ServiceOrderTaskImageDO::getOrderTaskId));
}
return imageMap;
}
private Map<Integer, ServiceOrderProvinceCityDO> getOrderProvinceCityDOMapById(List<Integer> orderTaskIds) {
LambdaQueryWrapper<ServiceOrderProvinceCityDO> provinceCityWrapper = new LambdaQueryWrapper<>();
provinceCityWrapper.in(ServiceOrderProvinceCityDO::getServiceOrderTaskId, orderTaskIds);
List<ServiceOrderProvinceCityDO> orderProvinceCityDOList =
serviceOrderProvinceCityDao.selectList(provinceCityWrapper);
Map<Integer, ServiceOrderProvinceCityDO> provinceCityMap =
orderProvinceCityDOList.stream()
.collect(
Collectors.toMap(
ServiceOrderProvinceCityDO::getServiceOrderTaskId, d -> d, (k1, k2) -> k1));
return provinceCityMap;
}
}
......@@ -4,7 +4,10 @@ package com.mmc.pms.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.mmc.pms.common.ResultBody;
import com.mmc.pms.entity.ServiceOrderTaskDO;
import com.mmc.pms.model.qo.ServiceOrderTaskQO;
import com.mmc.pms.model.work.dto.ServiceOrderTaskDTO;
import com.mmc.pms.model.work.vo.ServiceOrderTaskVO;
import com.mmc.pms.page.PageResult;
/**
* <p>
......@@ -17,4 +20,8 @@ import com.mmc.pms.model.work.vo.ServiceOrderTaskVO;
public interface ServiceOrderTaskService extends IService<ServiceOrderTaskDO> {
ResultBody insertOrderTask(ServiceOrderTaskVO param, Integer userAccountId);
PageResult queryOrderTaskList(ServiceOrderTaskQO param, Integer userAccountId);
ResultBody<ServiceOrderTaskDTO> queryById(Integer id);
}
package com.mmc.pms.util;
import org.springframework.beans.BeanUtils;
import java.util.Objects;
/**
* @author 作者 dahang
* @version 创建时间:2022年7月23日
* @explain 同名属性拷贝值
*/
public class BeanCopyUtils {
public static <T> T properties(Object source, T target) {
if (Objects.isNull(source)) {
return target;
}
BeanUtils.copyProperties(source, target);
return target;
}
public static <T> T properties(Object source, Class<T> target) {
T t = null;
try {
t = target.newInstance();
if (Objects.isNull(source)) {
return t;
}
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
BeanUtils.copyProperties(source, t);
return t;
}
}
......@@ -2,4 +2,35 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mmc.pms.dao.ServiceOrderTaskDao">
<select id="conditionCount" resultType="java.lang.Integer">
select count(*)
from service_order_task
<where>
is_deleted = 0
<if test="param.orderStatus != null">
and order_status = #{param.orderStatus}
</if>
<if test="userAccountId != null">
and user_account_id = #{userAccountId}
</if>
</where>
</select>
<select id="queryPageByLimit" resultType="com.mmc.pms.entity.ServiceOrderTaskDO">
select id, order_no, order_name, order_amt, order_status, user_account_id, user_operate_id, flyer_id,
inspection_id, inspection_name, start_time, end_time, ac_start_time, ac_end_time, task_description, pf_remark,
display, created_time, updated_time
from service_order_task
<where>
is_deleted = 0
<if test="param.orderStatus!=null">
and order_status = #{param.orderStatus}
</if>
<if test="userAccountId != null">
and user_account_id = #{userAccountId}
</if>
</where>
order by created_time desc
limit #{param.pageNo}, #{param.pageSize}
</select>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论