guomengjiao дней назад: 4
Родитель
Сommit
3d6e2275f2

+ 2 - 0
ruoyi-info/src/main/java/com/ruoyi/info/hospital/mapper/HospitalMapper.java

@@ -13,4 +13,6 @@ import com.ruoyi.common.core.mapper.BaseMapperPlus;
 public interface HospitalMapper extends BaseMapperPlus<HospitalMapper, Hospital, HospitalVo> {
 
     HospitalVo queryDelById(Long id);
+
+    String queryNameById(Long id);
 }

+ 2 - 0
ruoyi-info/src/main/java/com/ruoyi/info/hospital/service/IHospitalService.java

@@ -92,4 +92,6 @@ public interface IHospitalService {
      * @param qrCodeUrl
      */
     void updateQrCodeUrl(Long hospitalId, String qrCodeUrl);
+
+    String queryNameById(Long id);
 }

+ 5 - 0
ruoyi-info/src/main/java/com/ruoyi/info/hospital/service/impl/HospitalServiceImpl.java

@@ -218,4 +218,9 @@ public class HospitalServiceImpl implements IHospitalService {
         baseMapper.updateById(hospital);
     }
 
+    @Override
+    public String queryNameById(Long id) {
+        return baseMapper.queryNameById(id);
+    }
+
 }

+ 4 - 1
ruoyi-info/src/main/java/com/ruoyi/info/order/domain/bo/OrderBo.java

@@ -43,6 +43,8 @@ public class OrderBo extends BaseEntity {
      */
     @ApiModelProperty(value = "C端用户ID", required = true)
     private Long userId;
+    @ApiModelProperty(value = "C端用户手机号")
+    private String userMobile;
 
     /**
      * 状态
@@ -89,7 +91,8 @@ public class OrderBo extends BaseEntity {
     @ApiModelProperty(value = "服务ID", required = true)
     @NotNull(message = "服务ID不能为空", groups = { AddGroup.class, EditGroup.class })
     private Long serviceId;
-
+    @ApiModelProperty("服务名称")
+    private String serviceName;
     /**
      * 期望时间
      */

+ 2 - 0
ruoyi-info/src/main/java/com/ruoyi/info/order/domain/vo/OrderVo.java

@@ -66,6 +66,8 @@ public class OrderVo {
     @ExcelProperty(value = "医院ID")
     @ApiModelProperty("医院ID")
     private Long hospitalId;
+    @ApiModelProperty(value = "医院名称")
+    private String hospitalName;
     @ApiModelProperty(value = "医院信息")
     private HospitalVo hospitalVo;
 

+ 9 - 1
ruoyi-info/src/main/java/com/ruoyi/info/order/service/impl/OrderServiceImpl.java

@@ -236,12 +236,20 @@ public class OrderServiceImpl implements IOrderService {
     @Override
     public TableDataInfo<OrderVo> queryAllPageList(OrderBo bo, PageQuery pageQuery) {
         Page<OrderVo> result = baseMapper.queryAllPageList(bo, pageQuery);
+        result.setRecords(convertAllList(result.getRecords()));
         return TableDataInfo.build(result);
     }
 
     @Override
     public List<OrderVo> queryAllList(OrderBo bo) {
-        return baseMapper.queryAllList(bo);
+        return convertAllList(baseMapper.queryAllList(bo));
     }
 
+    private List<OrderVo> convertAllList(List<OrderVo> list) {
+        return list.stream().map(o -> {
+            o.setHospitalName(hospitalService.queryNameById(o.getHospitalId()));
+            o.setHospitalDepartmentName(hospitalDepartmentService.queryNameById(o.getHospitalDepartmentId()));
+            return o;
+        }).collect(Collectors.toList());
+    }
 }

+ 4 - 0
ruoyi-info/src/main/resources/mapper/HospitalMapper.xml

@@ -38,5 +38,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         SELECT * FROM tb_hospital WHERE id = #{id}
     </select>
 
+    <select id="queryNameById" resultType="java.lang.String">
+        SELECT name FROM tb_hospital WHERE id = #{id}
+    </select>
+
 
 </mapper>

+ 34 - 2
ruoyi-info/src/main/resources/mapper/order/OrderMapper.xml

@@ -29,12 +29,44 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </resultMap>
 
     <select id="queryAllPageList" resultType="com.ruoyi.info.order.domain.vo.OrderVo">
-
+        <include refid="queryList"/>
     </select>
 
     <select id="queryAllList" resultType="com.ruoyi.info.order.domain.vo.OrderVo">
-
+        <include refid="queryList"/>
     </select>
 
+    <sql id="queryList">
+        select o.*, u.mobile as userMobile, sp.name as serviceName from tb_order o
+        left join tb_user u on u.id = o.user_id
+        left join tb_service_product sp on sp.id = o.service_id
+        <where>
+            <if test="bo.orderNo != null and bo.orderNo != ''">
+                and o.order_no like concat('%', #{bo.orderNo}, '%')
+            </if>
+            <if test="bo.userId != null">
+                and o.user_id = #{bo.userId}
+            </if>
+            <if test="bo.status != null">
+                and o.status = #{bo.status.code}
+            </if>
+            <if test="bo.hospitalId != null">
+                and o.hospital_id = #{bo.hospitalId}
+            </if>
+            <if test="bo.userMobile != null and bo.userMobile != ''">
+                and u.mobile like concat('%', #{bo.userMobile}, '%')
+            </if>
+            <if test="bo.serviceName != null and bo.serviceName != ''">
+                and sp.name like concat('%', #{bo.serviceName}, '%')
+            </if>
+            <if test="bo.startTime != null">
+                and o.create_time >= #{bo.startTime}
+            </if>
+            <if test="bo.endTime != null">
+                and o.create_time <![CDATA[ <= ]]> #{bo.endTime}
+            </if>
+        </where>
+        order by o.create_time desc
+    </sql>
 
 </mapper>