From ce7bf2e6ff801146d2ee02825b23d186e110c523 Mon Sep 17 00:00:00 2001 From: 彭雪彬 <1724387007@qq.com> Date: Tue, 22 Jul 2025 18:06:35 +0800 Subject: [PATCH] 骑手送达照片记录 --- oying-system/src/main/java/com/oying/modules/rider/rest/RiderDeliveryPhotosController.java | 73 ++++++++ oying-system/src/main/java/com/oying/modules/rider/domain/dto/RiderDeliveryPhotosQueryCriteria.java | 45 +++++ oying-system/src/main/java/com/oying/modules/rider/domain/vo/OrderDeliveryPhotosVo.java | 37 ++++ oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderDeliveryPhotosServiceImpl.java | 121 +++++++++++++ oying-system/src/main/java/com/oying/modules/rider/utils/Constants.java | 6 oying-system/src/main/java/com/oying/modules/rider/service/RiderDeliveryPhotosService.java | 68 +++++++ oying-system/src/main/resources/mapper/rider/RiderDeliveryPhotosMapper.xml | 64 +++++++ oying-system/src/main/java/com/oying/modules/rider/domain/RiderDeliveryPhotos.java | 72 ++++++++ oying-system/src/main/java/com/oying/modules/rider/mapper/RiderDeliveryPhotosMapper.java | 22 ++ oying-system/src/main/java/com/oying/modules/rider/rest/WxRiderController.java | 28 ++ 10 files changed, 530 insertions(+), 6 deletions(-) diff --git a/oying-system/src/main/java/com/oying/modules/rider/domain/RiderDeliveryPhotos.java b/oying-system/src/main/java/com/oying/modules/rider/domain/RiderDeliveryPhotos.java new file mode 100644 index 0000000..1690b09 --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/rider/domain/RiderDeliveryPhotos.java @@ -0,0 +1,72 @@ +package com.oying.modules.rider.domain; + +import com.oying.base.BaseEntity; +import lombok.Getter; +import lombok.Setter; +import cn.hutool.core.bean.BeanUtil; +import io.swagger.annotations.ApiModelProperty; +import cn.hutool.core.bean.copier.CopyOptions; +import java.sql.Timestamp; +import java.io.Serializable; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; + +/** +* @description / +* @author pxb +* @date 2025-07-22 +**/ +@Getter +@Setter +@TableName("qs_rider_delivery_photos") +public class RiderDeliveryPhotos extends BaseEntity implements Serializable { + + @TableId(value = "photo_id", type = IdType.AUTO) + @ApiModelProperty(value = "照片记录ID") + private Long photoId; + + @ApiModelProperty(value = "关联的订单ID") + private Long orderId; + + @ApiModelProperty(value = "关联的订单号") + private String orderNum; + + @ApiModelProperty(value = "骑手ID") + private Long riderId; + + @ApiModelProperty(value = "骑手姓名") + private String riderName; + + @ApiModelProperty(value = "骑手手机号") + private String riderPhone; + + @ApiModelProperty(value = "照片存储的URL地址") + private String photoUrl; + + @ApiModelProperty(value = "照片存储ID") + private Long uploadId; + + @ApiModelProperty(value = "拍摄地点纬度") + private String latitude; + + @ApiModelProperty(value = "拍摄地点经度") + private String longitude; + + @ApiModelProperty(value = "照片描述信息") + private String description; + + @ApiModelProperty(value = "是否有效 1-有效 0-无效") + private String isValid; + + @ApiModelProperty(value = "用户手机号") + private String userPhone; + + @ApiModelProperty(value = "用户id") + private Long userId; + + + public void copy(RiderDeliveryPhotos source){ + BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); + } +} diff --git a/oying-system/src/main/java/com/oying/modules/rider/domain/dto/RiderDeliveryPhotosQueryCriteria.java b/oying-system/src/main/java/com/oying/modules/rider/domain/dto/RiderDeliveryPhotosQueryCriteria.java new file mode 100644 index 0000000..3c66081 --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/rider/domain/dto/RiderDeliveryPhotosQueryCriteria.java @@ -0,0 +1,45 @@ +package com.oying.modules.rider.domain.dto; + +import lombok.Data; +import java.sql.Timestamp; +import java.util.List; +import io.swagger.annotations.ApiModelProperty; + +/** +* @author pxb +* @date 2025-07-22 +**/ +@Data +public class RiderDeliveryPhotosQueryCriteria{ + + @ApiModelProperty(value = "页码", example = "1") + private Integer page = 1; + + @ApiModelProperty(value = "每页数据量", example = "10") + private Integer size = 10; + + @ApiModelProperty(value = "关联的订单ID") + private Long orderId; + + @ApiModelProperty(value = "关联的订单号") + private String orderNum; + + @ApiModelProperty(value = "骑手ID") + private Long riderId; + + @ApiModelProperty(value = "骑手姓名") + private String riderName; + + @ApiModelProperty(value = "骑手手机号") + private String riderPhone; + + @ApiModelProperty(value = "照片存储ID") + private Long uploadId; + + @ApiModelProperty(value = "用户手机号") + private String userPhone; + + @ApiModelProperty(value = "用户id") + private Long userId; + private List<Timestamp> createTime; +} diff --git a/oying-system/src/main/java/com/oying/modules/rider/domain/vo/OrderDeliveryPhotosVo.java b/oying-system/src/main/java/com/oying/modules/rider/domain/vo/OrderDeliveryPhotosVo.java new file mode 100644 index 0000000..845a296 --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/rider/domain/vo/OrderDeliveryPhotosVo.java @@ -0,0 +1,37 @@ +package com.oying.modules.rider.domain.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Getter; +import lombok.Setter; + +import java.io.Serializable; + +/** +* @description / +* @author pxb +* @date 2025-06-18 +**/ +@Getter +@Setter +public class OrderDeliveryPhotosVo implements Serializable { + + + @ApiModelProperty(value = "订单号") + private String orderNum; + + @ApiModelProperty(value = "拍照经度") + private String userLongitude; + + @ApiModelProperty(value = "拍照纬度") + private String userLatitude; + + @ApiModelProperty(value = "图片地址") + private String photoUrl; + + @ApiModelProperty(value = "描述") + private String description; + + @ApiModelProperty(value = "照片存储ID") + private Long uploadId; + +} diff --git a/oying-system/src/main/java/com/oying/modules/rider/mapper/RiderDeliveryPhotosMapper.java b/oying-system/src/main/java/com/oying/modules/rider/mapper/RiderDeliveryPhotosMapper.java new file mode 100644 index 0000000..34de69b --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/rider/mapper/RiderDeliveryPhotosMapper.java @@ -0,0 +1,22 @@ +package com.oying.modules.rider.mapper; + +import com.oying.modules.rider.domain.RiderDeliveryPhotos; +import com.oying.modules.rider.domain.dto.RiderDeliveryPhotosQueryCriteria; +import java.util.List; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Mapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; + +/** +* @author pxb +* @date 2025-07-22 +**/ +@Mapper +public interface RiderDeliveryPhotosMapper extends BaseMapper<RiderDeliveryPhotos> { + + IPage<RiderDeliveryPhotos> findAll(@Param("criteria") RiderDeliveryPhotosQueryCriteria criteria, Page<Object> page); + + List<RiderDeliveryPhotos> findAll(@Param("criteria") RiderDeliveryPhotosQueryCriteria criteria); +} diff --git a/oying-system/src/main/java/com/oying/modules/rider/rest/RiderDeliveryPhotosController.java b/oying-system/src/main/java/com/oying/modules/rider/rest/RiderDeliveryPhotosController.java new file mode 100644 index 0000000..62080cc --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/rider/rest/RiderDeliveryPhotosController.java @@ -0,0 +1,73 @@ +package com.oying.modules.rider.rest; + +import com.oying.annotation.Log; +import com.oying.modules.rider.domain.RiderDeliveryPhotos; +import com.oying.modules.rider.service.RiderDeliveryPhotosService; +import com.oying.modules.rider.domain.dto.RiderDeliveryPhotosQueryCriteria; +import lombok.RequiredArgsConstructor; +import java.util.List; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; +import io.swagger.annotations.*; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.oying.utils.PageResult; + +/** +* @author pxb +* @date 2025-07-22 +**/ +@RestController +@RequiredArgsConstructor +@Api(tags = "骑手送达照片记录") +@RequestMapping("/api/riderDeliveryPhotos") +public class RiderDeliveryPhotosController { + + private final RiderDeliveryPhotosService riderDeliveryPhotosService; + + @ApiOperation("导出数据") + @GetMapping(value = "/download") + @PreAuthorize("@el.check('riderDeliveryPhotos:list')") + public void exportRiderDeliveryPhotos(HttpServletResponse response, RiderDeliveryPhotosQueryCriteria criteria) throws IOException { + riderDeliveryPhotosService.download(riderDeliveryPhotosService.queryAll(criteria), response); + } + + @GetMapping + @ApiOperation("查询骑手送达照片记录") + @PreAuthorize("@el.check('riderDeliveryPhotos:list')") + public ResponseEntity<PageResult<RiderDeliveryPhotos>> queryRiderDeliveryPhotos(RiderDeliveryPhotosQueryCriteria criteria){ + Page<Object> page = new Page<>(criteria.getPage(), criteria.getSize()); + return new ResponseEntity<>(riderDeliveryPhotosService.queryAll(criteria,page),HttpStatus.OK); + } + + @PostMapping + @Log("新增骑手送达照片记录") + @ApiOperation("新增骑手送达照片记录") + @PreAuthorize("@el.check('riderDeliveryPhotos:add')") + public ResponseEntity<Object> createRiderDeliveryPhotos(@Validated @RequestBody RiderDeliveryPhotos resources){ + riderDeliveryPhotosService.create(resources); + return new ResponseEntity<>(HttpStatus.CREATED); + } + + @PutMapping + @Log("修改骑手送达照片记录") + @ApiOperation("修改骑手送达照片记录") + @PreAuthorize("@el.check('riderDeliveryPhotos:edit')") + public ResponseEntity<Object> updateRiderDeliveryPhotos(@Validated @RequestBody RiderDeliveryPhotos resources){ + riderDeliveryPhotosService.update(resources); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } + + @DeleteMapping + @Log("删除骑手送达照片记录") + @ApiOperation("删除骑手送达照片记录") + @PreAuthorize("@el.check('riderDeliveryPhotos:del')") + public ResponseEntity<Object> deleteRiderDeliveryPhotos(@ApiParam(value = "传ID数组[]") @RequestBody List<Long> ids) { + riderDeliveryPhotosService.deleteAll(ids); + return new ResponseEntity<>(HttpStatus.OK); + } +} diff --git a/oying-system/src/main/java/com/oying/modules/rider/rest/WxRiderController.java b/oying-system/src/main/java/com/oying/modules/rider/rest/WxRiderController.java index caaee55..6b046a1 100644 --- a/oying-system/src/main/java/com/oying/modules/rider/rest/WxRiderController.java +++ b/oying-system/src/main/java/com/oying/modules/rider/rest/WxRiderController.java @@ -5,11 +5,13 @@ import com.oying.modules.rider.domain.dto.RiderIncomeDetailQueryCriteria; import com.oying.modules.rider.domain.dto.RiderOrderRecordQueryCriteria; import com.oying.modules.rider.domain.dto.RiderWithdrawalRecordQueryCriteria; +import com.oying.modules.rider.domain.vo.OrderDeliveryPhotosVo; import com.oying.modules.rider.domain.vo.OrderRiderOperationVo; import com.oying.modules.rider.service.*; import com.oying.modules.rider.utils.Constants; import com.oying.utils.PageResult; import com.oying.utils.R; +import com.oying.utils.StringUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; @@ -37,6 +39,8 @@ private final RiderInfoService riderInfoService; private final RiderOrderRecordService riderOrderRecordService; + + private final RiderDeliveryPhotosService riderDeliveryPhotosService; @GetMapping("getRiderSourceInfo/{riderId}") @@ -96,7 +100,7 @@ // @PreAuthorize("@el.check('riderOrderRecord:list')") public ResponseEntity<?> riderGrabOrder(@PathVariable String orderNum) { // 订单号不能为空 - if (orderNum == null || orderNum.equals("")) { + if (StringUtils.isBlank(orderNum)) { return ResponseEntity.ok(R.fail(Constants.HTTP_CODE_FAIL, "订单号不能为空")); } R result = riderOrderRecordService.riderGrabOrder(orderNum); @@ -108,7 +112,7 @@ // @PreAuthorize("@el.check('riderOrderRecord:list')") public ResponseEntity<?> riderCancelOrder(@PathVariable String orderNum) { // 订单号不能为空 - if (orderNum == null || orderNum.equals("")) { + if (StringUtils.isBlank(orderNum)) { return ResponseEntity.ok(R.fail(Constants.HTTP_CODE_FAIL, "订单号不能为空")); } R result = riderOrderRecordService.riderCancelOrder(orderNum); @@ -120,7 +124,7 @@ // @PreAuthorize("@el.check('riderOrderRecord:list')") public ResponseEntity<?> riderCompleteOrder(@PathVariable String orderNum) { // 订单号不能为空 - if (orderNum == null || orderNum.equals("")) { + if (StringUtils.isBlank(orderNum)) { return ResponseEntity.ok(R.fail(Constants.HTTP_CODE_FAIL, "订单号不能为空")); } R result = riderOrderRecordService.riderCompleteOrder(orderNum); @@ -130,12 +134,24 @@ @PostMapping("riderOperationOrder") @ApiOperation("骑手上报到店/取货配送") // @PreAuthorize("@el.check('riderOrderRecord:list')") - public ResponseEntity<?> riderOperationOrder(@RequestBody OrderRiderOperationVo orderRiderOperation) { + public ResponseEntity<?> riderOperationOrder(@RequestBody OrderRiderOperationVo orderRiderOperationVo) { // 订单号不能为空 - if (orderRiderOperation.getOrderNum() == null || orderRiderOperation.getOrderNum().equals("")) { + if (StringUtils.isBlank(orderRiderOperationVo.getOrderNum())) { return ResponseEntity.ok(R.fail(Constants.HTTP_CODE_FAIL, "订单号不能为空")); } - R result = riderOrderRecordService.riderOperationOrder(orderRiderOperation); + R result = riderOrderRecordService.riderOperationOrder(orderRiderOperationVo); + return ResponseEntity.ok(R.success(result)); + } + + @PostMapping("riderDeliveryPhotos") + @ApiOperation("骑手上传图片记录") + // @PreAuthorize("@el.check('riderOrderRecord:list')") + public ResponseEntity<?> riderDeliveryPhotos(@RequestBody OrderDeliveryPhotosVo orderDeliveryPhotosVo) { + // 订单号不能为空 + if (StringUtils.isBlank(orderDeliveryPhotosVo.getOrderNum())) { + return ResponseEntity.ok(R.fail(Constants.HTTP_CODE_FAIL, "订单号不能为空")); + } + Boolean result = riderDeliveryPhotosService.riderDeliveryPhotos(orderDeliveryPhotosVo); return ResponseEntity.ok(R.success(result)); } diff --git a/oying-system/src/main/java/com/oying/modules/rider/service/RiderDeliveryPhotosService.java b/oying-system/src/main/java/com/oying/modules/rider/service/RiderDeliveryPhotosService.java new file mode 100644 index 0000000..3db8594 --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/rider/service/RiderDeliveryPhotosService.java @@ -0,0 +1,68 @@ +package com.oying.modules.rider.service; + +import com.oying.modules.rider.domain.RiderDeliveryPhotos; +import com.oying.modules.rider.domain.dto.RiderDeliveryPhotosQueryCriteria; +import java.util.Map; +import java.util.List; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.oying.modules.rider.domain.vo.OrderDeliveryPhotosVo; +import com.oying.utils.PageResult; + +/** +* @description 服务接口 +* @author pxb +* @date 2025-07-22 +**/ +public interface RiderDeliveryPhotosService extends IService<RiderDeliveryPhotos> { + + /** + * 查询数据分页 + * @param criteria 条件 + * @param page 分页参数 + * @return PageResult + */ + PageResult<RiderDeliveryPhotos> queryAll(RiderDeliveryPhotosQueryCriteria criteria, Page<Object> page); + + /** + * 查询所有数据不分页 + * @param criteria 条件参数 + * @return List<RiderDeliveryPhotosDto> + */ + List<RiderDeliveryPhotos> queryAll(RiderDeliveryPhotosQueryCriteria criteria); + + /** + * 创建 + * @param resources / + */ + void create(RiderDeliveryPhotos resources); + + /** + * 编辑 + * @param resources / + */ + void update(RiderDeliveryPhotos resources); + + /** + * 多选删除 + * @param ids / + */ + void deleteAll(List<Long> ids); + + /** + * 导出数据 + * @param all 待导出的数据 + * @param response / + * @throws IOException / + */ + void download(List<RiderDeliveryPhotos> all, HttpServletResponse response) throws IOException; + + /** + * 新增配送照片记录 + * @param orderDeliveryPhotosVo + * @throws IOException / + */ + Boolean riderDeliveryPhotos(OrderDeliveryPhotosVo orderDeliveryPhotosVo); +} diff --git a/oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderDeliveryPhotosServiceImpl.java b/oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderDeliveryPhotosServiceImpl.java new file mode 100644 index 0000000..2c0d9be --- /dev/null +++ b/oying-system/src/main/java/com/oying/modules/rider/service/impl/RiderDeliveryPhotosServiceImpl.java @@ -0,0 +1,121 @@ +package com.oying.modules.rider.service.impl; + +import com.oying.modules.rider.domain.RiderDeliveryPhotos; +import com.oying.modules.rider.domain.vo.OrderDeliveryPhotosVo; +import com.oying.modules.rider.utils.Constants; +import com.oying.modules.sh.domain.vo.OrderResponse; +import com.oying.modules.sh.service.OrderService; +import com.oying.utils.FileUtil; +import lombok.RequiredArgsConstructor; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.oying.modules.rider.service.RiderDeliveryPhotosService; +import com.oying.modules.rider.domain.dto.RiderDeliveryPhotosQueryCriteria; +import com.oying.modules.rider.mapper.RiderDeliveryPhotosMapper; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import com.oying.utils.PageUtil; + +import java.util.List; +import java.util.Map; +import java.io.IOException; +import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; +import java.util.LinkedHashMap; + +import com.oying.utils.PageResult; + +/** + * @author pxb + * @description 服务实现 + * @date 2025-07-22 + **/ +@Service +@RequiredArgsConstructor +public class RiderDeliveryPhotosServiceImpl extends ServiceImpl<RiderDeliveryPhotosMapper, RiderDeliveryPhotos> implements RiderDeliveryPhotosService { + + private final RiderDeliveryPhotosMapper riderDeliveryPhotosMapper; + private final OrderService orderService; + + @Override + public PageResult<RiderDeliveryPhotos> queryAll(RiderDeliveryPhotosQueryCriteria criteria, Page<Object> page) { + return PageUtil.toPage(riderDeliveryPhotosMapper.findAll(criteria, page)); + } + + @Override + public List<RiderDeliveryPhotos> queryAll(RiderDeliveryPhotosQueryCriteria criteria) { + return riderDeliveryPhotosMapper.findAll(criteria); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void create(RiderDeliveryPhotos resources) { + riderDeliveryPhotosMapper.insert(resources); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(RiderDeliveryPhotos resources) { + RiderDeliveryPhotos riderDeliveryPhotos = getById(resources.getPhotoId()); + riderDeliveryPhotos.copy(resources); + riderDeliveryPhotosMapper.updateById(riderDeliveryPhotos); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void deleteAll(List<Long> ids) { + riderDeliveryPhotosMapper.deleteBatchIds(ids); + } + + @Override + public void download(List<RiderDeliveryPhotos> all, HttpServletResponse response) throws IOException { + List<Map<String, Object>> list = new ArrayList<>(); + for (RiderDeliveryPhotos riderDeliveryPhotos : all) { + Map<String, Object> map = new LinkedHashMap<>(); + map.put("关联的订单ID", riderDeliveryPhotos.getOrderId()); + map.put("关联的订单号", riderDeliveryPhotos.getOrderNum()); + map.put("骑手ID", riderDeliveryPhotos.getRiderId()); + map.put("骑手姓名", riderDeliveryPhotos.getRiderName()); + map.put("骑手手机号", riderDeliveryPhotos.getRiderPhone()); + map.put("照片存储的URL地址", riderDeliveryPhotos.getPhotoUrl()); + map.put("照片存储ID", riderDeliveryPhotos.getUploadId()); + map.put("拍摄地点纬度", riderDeliveryPhotos.getLatitude()); + map.put("拍摄地点经度", riderDeliveryPhotos.getLongitude()); + map.put("照片描述信息", riderDeliveryPhotos.getDescription()); + map.put("是否有效 1-有效 0-无效", riderDeliveryPhotos.getIsValid()); + map.put("用户手机号", riderDeliveryPhotos.getUserPhone()); + map.put("用户id", riderDeliveryPhotos.getUserId()); + map.put("创建人", riderDeliveryPhotos.getCreateBy()); + map.put("修改人", riderDeliveryPhotos.getUpdateBy()); + map.put("创建时间", riderDeliveryPhotos.getCreateTime()); + map.put("修改时间", riderDeliveryPhotos.getUpdateTime()); + list.add(map); + } + FileUtil.downloadExcel(list, response); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean riderDeliveryPhotos(OrderDeliveryPhotosVo orderDeliveryPhotosVo) { + OrderResponse orderResponse = orderService.getByOrderNum(orderDeliveryPhotosVo.getOrderNum()); + if (orderResponse != null) { + // 封装数据 + RiderDeliveryPhotos riderDeliveryPhotos = new RiderDeliveryPhotos(); + riderDeliveryPhotos.setOrderId(orderResponse.getOrder().getOrderId()); + riderDeliveryPhotos.setOrderNum(orderResponse.getOrder().getOrderNum()); + riderDeliveryPhotos.setRiderId(orderResponse.getOrder().getRiderId()); + riderDeliveryPhotos.setRiderName(orderResponse.getOrder().getRiderName()); + riderDeliveryPhotos.setRiderPhone(orderResponse.getOrder().getRiderPhone()); + riderDeliveryPhotos.setPhotoUrl(orderDeliveryPhotosVo.getPhotoUrl()); + riderDeliveryPhotos.setUploadId(orderDeliveryPhotosVo.getUploadId()); + riderDeliveryPhotos.setLatitude(orderDeliveryPhotosVo.getUserLatitude()); + riderDeliveryPhotos.setLongitude(orderDeliveryPhotosVo.getUserLongitude()); + riderDeliveryPhotos.setDescription(orderDeliveryPhotosVo.getDescription()); + riderDeliveryPhotos.setIsValid(Constants.IS_VALID_YES); + riderDeliveryPhotos.setUserPhone(orderResponse.getOrder().getUsername()); + riderDeliveryPhotos.setUserId(orderResponse.getOrder().getUserId()); + return this.save(riderDeliveryPhotos); + } + return false; + } +} diff --git a/oying-system/src/main/java/com/oying/modules/rider/utils/Constants.java b/oying-system/src/main/java/com/oying/modules/rider/utils/Constants.java index ecbb6cc..04a90b6 100644 --- a/oying-system/src/main/java/com/oying/modules/rider/utils/Constants.java +++ b/oying-system/src/main/java/com/oying/modules/rider/utils/Constants.java @@ -45,6 +45,12 @@ String IS_OVERTIME_YES = "1"; /** + * 是否有效 1-有效 0-无效 + */ + String IS_VALID_YES = "1"; + String IS_VALID_NO = "0"; + + /** * 订单来源: 1-平台派单 2-骑手抢单 3-商家直派 4-其他 */ String ORDER_SOURCE_PLATFORM = "1"; diff --git a/oying-system/src/main/resources/mapper/rider/RiderDeliveryPhotosMapper.xml b/oying-system/src/main/resources/mapper/rider/RiderDeliveryPhotosMapper.xml new file mode 100644 index 0000000..32d1a3d --- /dev/null +++ b/oying-system/src/main/resources/mapper/rider/RiderDeliveryPhotosMapper.xml @@ -0,0 +1,64 @@ +<?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.oying.modules.rider.mapper.RiderDeliveryPhotosMapper"> + <resultMap id="BaseResultMap" type="com.oying.modules.rider.domain.RiderDeliveryPhotos"> + <id column="photo_id" property="photoId"/> + <result column="order_id" property="orderId"/> + <result column="order_num" property="orderNum"/> + <result column="rider_id" property="riderId"/> + <result column="rider_name" property="riderName"/> + <result column="rider_phone" property="riderPhone"/> + <result column="photo_url" property="photoUrl"/> + <result column="upload_id" property="uploadId"/> + <result column="latitude" property="latitude"/> + <result column="longitude" property="longitude"/> + <result column="description" property="description"/> + <result column="is_valid" property="isValid"/> + <result column="user_phone" property="userPhone"/> + <result column="user_id" property="userId"/> + <result column="create_by" property="createBy"/> + <result column="update_by" property="updateBy"/> + <result column="create_time" property="createTime"/> + <result column="update_time" property="updateTime"/> + </resultMap> + + <sql id="Base_Column_List"> + photo_id, order_id, order_num, rider_id, rider_name, rider_phone, photo_url, upload_id, latitude, longitude, description, is_valid, user_phone, user_id, create_by, update_by, create_time, update_time + </sql> + + <select id="findAll" resultMap="BaseResultMap"> + select + <include refid="Base_Column_List"/> + from qs_rider_delivery_photos + <where> + <if test="criteria.orderId != null"> + and order_id = #{criteria.orderId} + </if> + <if test="criteria.orderNum != null"> + and order_num = #{criteria.orderNum} + </if> + <if test="criteria.riderId != null"> + and rider_id = #{criteria.riderId} + </if> + <if test="criteria.riderName != null"> + and rider_name = #{criteria.riderName} + </if> + <if test="criteria.riderPhone != null"> + and rider_phone = #{criteria.riderPhone} + </if> + <if test="criteria.uploadId != null"> + and upload_id = #{criteria.uploadId} + </if> + <if test="criteria.userPhone != null"> + and user_phone = #{criteria.userPhone} + </if> + <if test="criteria.userId != null"> + and user_id = #{criteria.userId} + </if> + <if test="criteria.createTime != null and criteria.createTime.size() > 0"> + AND create_time BETWEEN #{criteria.createTime[0]} AND #{criteria.createTime[1]} + </if> + </where> + order by photo_id desc + </select> +</mapper> \ No newline at end of file -- Gitblit v1.9.3