提交 e7c70902 authored 作者: liuhaiquan's avatar liuhaiquan

客诉列表增加类型中文字段,运单增加缺失字段

上级 9b945d18
......@@ -5,6 +5,7 @@ import lombok.*;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.List;
/**
* @ClassName saveCustomerComplaintDetailParam
......@@ -33,6 +34,6 @@ public class SaveCustomerComplaintDetailParam {
private String content; //问题描述
@ApiModelProperty("图片")
private String picture; //图片
private List<String> picture; //图片
}
......@@ -35,4 +35,11 @@ public class CustomerComplaintOrderChildVO {
private String truckNo;
@ApiModelProperty(value = "司机姓名", example = "张三")
private String driverName;
@ApiModelProperty(value = "接单时间", example = "2023-12-12 12:12:12")
private String createTime; //创建时间
@ApiModelProperty(value = "状态", example = "10")
private Integer status; //状态
@ApiModelProperty(value = "状态信息", example = "接单")
private String statusMsg;
}
......@@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import java.util.List;
/**
* @ClassName CustomerComplaintTypeVO
* @Description
......@@ -28,8 +30,10 @@ public class CustomerComplaintDetailVO {
private Integer complaintTypeId; //投诉类型id
@ApiModelProperty("问题描述")
private String content; //问题描述
@ApiModelProperty("图片")
@ApiModelProperty("图片字符串")
private String picture; //图片
@ApiModelProperty("图片集合")
private List<String> pictureList; //图片集合
@ApiModelProperty("创建时间")
private String createTime; //创建时间
......
......@@ -4,8 +4,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.mapper.customer.CustomerComplaintDetailMapper;
import com.clx.performance.model.customer.CustomerComplaintDetail;
import com.clx.performance.param.pc.customer.PageCustomerComplaintDetailParam;
import com.clx.performance.vo.pc.customer.CustomerComplaintDetailVO;
import com.msl.common.dao.BaseDao;
public interface CustomerComplaintDetailDao extends BaseDao<CustomerComplaintDetailMapper, CustomerComplaintDetail, Integer> {
Page<CustomerComplaintDetail> pageCustomerComplaintDetail(PageCustomerComplaintDetailParam param);
Page<CustomerComplaintDetailVO> pageCustomerComplaintDetail(PageCustomerComplaintDetailParam param);
}
package com.clx.performance.dao.impl.customer;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.customer.CustomerComplaintDetailDao;
import com.clx.performance.mapper.customer.CustomerComplaintDetailMapper;
import com.clx.performance.model.customer.CustomerComplaintDetail;
import com.clx.performance.param.pc.customer.PageCustomerComplaintDetailParam;
import com.clx.performance.vo.pc.customer.CustomerComplaintDetailVO;
import com.msl.common.dao.impl.BaseDaoImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Repository;
import java.util.Objects;
/**
* @ClassName CustomerComplaintTypeDaoImpl
* @Description
......@@ -22,30 +19,7 @@ import java.util.Objects;
@Repository
public class CustomerComplaintDetailDaoImpl extends BaseDaoImpl<CustomerComplaintDetailMapper, CustomerComplaintDetail, Integer> implements CustomerComplaintDetailDao {
@Override
public Page<CustomerComplaintDetail> pageCustomerComplaintDetail(PageCustomerComplaintDetailParam param) {
LambdaQueryWrapper<CustomerComplaintDetail> query = new LambdaQueryWrapper<>();
if(Objects.nonNull(param.getComplaintTypeId())){
query.eq(CustomerComplaintDetail :: getComplaintTypeId,param.getComplaintTypeId());
}
if(StringUtils.isNotBlank(param.getChildNo())){
query.eq(CustomerComplaintDetail :: getChildNo,param.getChildNo());
}
if(StringUtils.isNotBlank(param.getDriverMobile())){
query.eq(CustomerComplaintDetail :: getDriverMobile,param.getDriverMobile());
}
if(StringUtils.isNotBlank(param.getDriverName())){
query.eq(CustomerComplaintDetail :: getDriverName,param.getDriverName());
}
if(StringUtils.isNotBlank(param.getBeginTime())){
query.ge(CustomerComplaintDetail :: getCreateTime,param.getBeginTime());
}
if(StringUtils.isNotBlank(param.getEndTime())){
query.le(CustomerComplaintDetail :: getCreateTime,param.getEndTime());
}
query.orderByDesc(CustomerComplaintDetail :: getCreateTime);
return baseMapper.selectPage(Page.of(param.getPage(),param.getPageSize()),query);
public Page<CustomerComplaintDetailVO> pageCustomerComplaintDetail(PageCustomerComplaintDetailParam param) {
return baseMapper.pageCustomerComplaintDetail(param);
}
}
package com.clx.performance.mapper.customer;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.model.customer.CustomerComplaintDetail;
import com.clx.performance.param.pc.customer.PageCustomerComplaintDetailParam;
import com.clx.performance.sqlProvider.customer.CustomerComplaintDetailSqlProvider;
import com.clx.performance.vo.pc.customer.CustomerComplaintDetailVO;
import org.apache.ibatis.annotations.SelectProvider;
public interface CustomerComplaintDetailMapper extends BaseMapper<CustomerComplaintDetail> {
@SelectProvider(type = CustomerComplaintDetailSqlProvider.class, method = "pageCustomerComplaintDetail")
Page<CustomerComplaintDetailVO> pageCustomerComplaintDetail(PageCustomerComplaintDetailParam param);
}
package com.clx.performance.service.customer.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.clx.performance.dao.customer.CustomerComplaintDetailDao;
......@@ -13,8 +14,11 @@ import com.msl.user.data.UserSessionData;
import com.msl.user.utils.TokenUtil;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.Arrays;
/**
* @ClassName CustomerComplaintTypeServiceImpl
* @Description
......@@ -38,13 +42,22 @@ public class CustomerComplaintDetailServiceImpl implements CustomerComplaintDeta
detail.setChildNo(param.getChildNo());
detail.setComplaintTypeId(param.getComplaintTypeId());
detail.setContent(param.getContent());
detail.setPicture(param.getPicture());
if(CollectionUtil.isNotEmpty(param.getPicture())){
detail.setPicture(String.join(",",param.getPicture()));
}
customerComplaintDetailDao.saveEntity(detail);
}
@Override
public IPage<CustomerComplaintDetailVO> pageCustomerComplaintDetail(PageCustomerComplaintDetailParam param) {
Page<CustomerComplaintDetail> page = customerComplaintDetailDao.pageCustomerComplaintDetail(param);
return customerComplaintDetailStruct.convertPage(page);
Page<CustomerComplaintDetailVO> page = customerComplaintDetailDao.pageCustomerComplaintDetail(param);
if(CollectionUtil.isNotEmpty(page.getRecords())){
page.getRecords().forEach(item->{
if(StringUtils.isNotBlank(item.getPicture())){
item.setPictureList(Arrays.asList(item.getPicture().split(",")));
}
});
}
return page;
}
}
......@@ -2091,7 +2091,12 @@ public class OrderChildServiceImpl implements OrderChildService {
List<String> truckNos = driverTruckList.stream().map(DriverTruckAppVo :: getTruckNo).collect(Collectors.toList());
LocalDateTime monthAgo = LocalDateTime.now().minusMonths(1);
Page<OrderChild> page = orderChildDao.getMonthAgoByTruckNos(truckNos,monthAgo,param);
return orderChildStruct.covertPageCustomerComplaintOrderChildVO(page);
Page<CustomerComplaintOrderChildVO> returnPage = orderChildStruct.covertPageCustomerComplaintOrderChildVO(
page);
if(CollectionUtils.isNotEmpty(returnPage.getRecords())){
returnPage.getRecords().forEach(item-> item.setStatusMsg(OrderChildEnum.Status.getMsgByCode(item.getStatus())));
}
return returnPage;
}
private static String formatTimeStr(Integer n) {
......
package com.clx.performance.sqlProvider.customer;
import com.clx.performance.param.pc.customer.PageCustomerComplaintDetailParam;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.jdbc.SQL;
import java.util.Objects;
/**
* @ClassName CustomerComplaintDetailSqlProvider
* @Description
* @Author kavin
* @Date 2023/12/13 13:31
* @Version 1.0
*/
public class CustomerComplaintDetailSqlProvider {
public String pageCustomerComplaintDetail(PageCustomerComplaintDetailParam param) {
return new SQL(){{
SELECT( " a.id, a.driver_user_no ,a.driver_name,a.driver_mobile,a.child_no" +
" a.complaint_type_id,a.content,a.picture,b.name" +
" date_format(a.create_time, '%Y-%m-%d %H:%i:%s') as createTime, " +
" date_format(a.modified_time, '%Y-%m-%d %H:%i:%s') as modifiedTime ");
FROM("customer_complaint_detail a");
LEFT_OUTER_JOIN("customer_complaint_type b on a.complaint_type_id = b.id");
if(Objects.nonNull(param.getComplaintTypeId())){
WHERE("a.complaint_type_id = #{param.complaintTypeId}");
}
if(StringUtils.isNotBlank(param.getChildNo())){
WHERE("a.child_no = #{param.childNo}");
}
if(StringUtils.isNotBlank(param.getDriverMobile())){
WHERE("a.driver_mobile = #{param.driverMobile}");
}
if(StringUtils.isNotBlank(param.getDriverName())){
WHERE("a.driver_name = #{param.driverName}");
}
if(StringUtils.isNotBlank(param.getBeginTime())){
WHERE("a.create_time >= #{param.beginTime}");
}
if(StringUtils.isNotBlank(param.getEndTime())){
WHERE("a.create_time <= #{param.endTime}");
}
ORDER_BY("a.create_time desc");
}}.toString();
}
}
......@@ -9,6 +9,8 @@ import org.mapstruct.Mapper;
@Mapper(componentModel = "spring", uses = DateStructUtil.class, imports = {DateUtils.class})
public interface CustomerComplaintDetailStruct {
Page<CustomerComplaintDetailVO> convertPage(Page<CustomerComplaintDetail> page);
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论