新增pad接口:可按天查询(仅可今天或历史)已下发服务指令工单、执行中服务指令工单、待执行服务指令工单
This commit is contained in:
parent
db40fd9752
commit
77eabd7616
|
|
@ -1,24 +1,29 @@
|
|||
package com.nu.modules.pad.directiveplan.api;
|
||||
|
||||
import com.nu.entity.CareDirectiveEntity;
|
||||
import com.nu.entity.CareDirectiveInstantEntity;
|
||||
import com.nu.entity.CareDirectivePackageEntity;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.nu.entity.*;
|
||||
import com.nu.modules.config.IDirectiveConfigApi;
|
||||
import com.nu.modules.care.api.ICareDirectivePlanApi;
|
||||
import com.nu.modules.order.api.IDirectiveOrderApi;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.compress.utils.Lists;
|
||||
import org.jeecg.common.api.vo.Result;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Description: 护理类服务指令计划API
|
||||
* @Author: caolei
|
||||
* @Date: 2025-11-26
|
||||
* @Version: V1.0
|
||||
*/
|
||||
* @Description: 护理类服务指令计划API
|
||||
* @Author: caolei
|
||||
* @Date: 2025-11-26
|
||||
* @Version: V1.0
|
||||
*/
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/pad/care/directive")
|
||||
|
|
@ -27,9 +32,10 @@ public class CareDirectiveApi {
|
|||
|
||||
@Autowired
|
||||
private IDirectiveConfigApi directiveConfigApi;
|
||||
|
||||
@Autowired
|
||||
private ICareDirectivePlanApi careDirectivePlanApi;
|
||||
@Autowired
|
||||
private IDirectiveOrderApi directiveOrderApi;
|
||||
|
||||
/**
|
||||
* 获取护理类服务指令树-配置数据
|
||||
|
|
@ -37,22 +43,22 @@ public class CareDirectiveApi {
|
|||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/getServiceTree")
|
||||
public Result<List<Map<String,Object>>> getServiceTree() {
|
||||
List<Map<String,Object>> treeList = directiveConfigApi.getServiceTree("1");
|
||||
public Result<List<Map<String, Object>>> getServiceTree() {
|
||||
List<Map<String, Object>> treeList = directiveConfigApi.getServiceTree("1");
|
||||
return Result.OK(treeList);
|
||||
}
|
||||
|
||||
/**
|
||||
* PAD端获取服务指令计划表格数据
|
||||
*
|
||||
* @param careDirectiveEntity
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/getNclist")
|
||||
public Result<Map<String,Object>> getPlanList(CareDirectiveEntity careDirectiveEntity) {
|
||||
Map<String,Object> pageList = careDirectivePlanApi.getPlanList(careDirectiveEntity);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
/**
|
||||
* PAD端获取服务指令计划表格数据
|
||||
*
|
||||
* @param careDirectiveEntity
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/getNclist")
|
||||
public Result<Map<String, Object>> getPlanList(CareDirectiveEntity careDirectiveEntity) {
|
||||
Map<String, Object> pageList = careDirectivePlanApi.getPlanList(careDirectiveEntity);
|
||||
return Result.OK(pageList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取指令包集合数据
|
||||
|
|
@ -235,4 +241,46 @@ public class CareDirectiveApi {
|
|||
// return Result.OK("操作成功");
|
||||
// }
|
||||
|
||||
/**
|
||||
* 获取护理单元+老人 当天服务指令
|
||||
* <p>
|
||||
* 入参
|
||||
* dto.nuId
|
||||
* elderId
|
||||
* startTime
|
||||
* endTime
|
||||
*
|
||||
* @return history 已结束指令
|
||||
* current 正在执行指令
|
||||
* future 将来待执行指令
|
||||
* all 所有
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/getDirectiveOrders")
|
||||
public Result<Map<String, Object>> getDirectiveOrders(CareDirectiveEntity dto) {
|
||||
Map<String, Object> result = Maps.newHashMap();
|
||||
List<DirectiveOrderEntity> history = Lists.newArrayList();
|
||||
List<DirectiveOrderEntity> current = Lists.newArrayList();
|
||||
List<DirectiveOrderEntity> future = Lists.newArrayList();
|
||||
List<DirectiveOrderEntity> all = Lists.newArrayList();
|
||||
|
||||
//历史
|
||||
history = directiveOrderApi.queryHistory(dto);
|
||||
if (DateUtil.isSameDay(new Date(), dto.getQueryDate())) {
|
||||
//正在执行
|
||||
current = directiveOrderApi.queryCurrent(dto);
|
||||
//将来
|
||||
future = careDirectivePlanApi.queryFuture(dto);
|
||||
}
|
||||
//所有
|
||||
all.addAll(history);
|
||||
all.addAll(current);
|
||||
all.addAll(future);
|
||||
|
||||
result.put("history", history);
|
||||
result.put("current", current);
|
||||
result.put("future", future);
|
||||
result.put("all", all);
|
||||
return Result.OK(result);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -108,4 +108,10 @@ public class CareDirectiveEntity implements Serializable {
|
|||
/**长者标签列表**/
|
||||
private List<ElderTagEntity> tagList;
|
||||
|
||||
/**查询时间*/
|
||||
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||
private Date queryDate;
|
||||
private String orderTimeType;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,6 @@
|
|||
package com.nu.modules.care.api;
|
||||
|
||||
import com.nu.entity.CareDirectiveEntity;
|
||||
import com.nu.entity.CareDirectiveInstantEntity;
|
||||
import com.nu.entity.CareDirectivePackageEntity;
|
||||
import com.nu.entity.ElderTagEntity;
|
||||
import com.nu.entity.*;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
|
@ -22,6 +19,8 @@ public interface ICareDirectivePlanApi {
|
|||
CareDirectiveInstantEntity addInstant(CareDirectiveInstantEntity careDirectiveInstantEntity);
|
||||
void editInstant(CareDirectiveInstantEntity careDirectiveInstantEntity);
|
||||
void deleteInstant(CareDirectiveInstantEntity careDirectiveInstantEntity);
|
||||
|
||||
List<DirectiveOrderEntity> queryFuture(CareDirectiveEntity dto);
|
||||
// ElderTagEntity addElderTag(ElderTagEntity elderTagEntity);
|
||||
// void editElderTag(ElderTagEntity elderTagEntity);
|
||||
// void deleteElderTag(ElderTagEntity elderTagEntity);
|
||||
|
|
|
|||
|
|
@ -45,4 +45,8 @@ public interface IDirectiveOrderApi {
|
|||
|
||||
int queryTodayFinishedTotal(String type,String nuId, String elderId);
|
||||
|
||||
List<DirectiveOrderEntity> queryHistory(CareDirectiveEntity dto);
|
||||
|
||||
List<DirectiveOrderEntity> queryCurrent(CareDirectiveEntity dto);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
package com.nu.modules.biz.order.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.nu.entity.CareDirectiveEntity;
|
||||
import com.nu.entity.DirectiveOrderEntity;
|
||||
import com.nu.entity.DirectiveOrderSubEntity;
|
||||
import com.nu.modules.biz.order.entity.DirectiveOrder;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
|
@ -30,4 +33,6 @@ public interface DirectiveOrderMapper extends BaseMapper<DirectiveOrder> {
|
|||
|
||||
int queryTodayFinishedTotal(@Param("type") String type, @Param("nuId") String nuId, @Param("elderId") String elderId);
|
||||
|
||||
List<DirectiveOrderEntity> queryOrderByTimeType(@Param("dto") CareDirectiveEntity dto);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,6 +2,112 @@
|
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.nu.modules.biz.order.mapper.DirectiveOrderMapper">
|
||||
|
||||
<resultMap id="DirectiveOrderMap" type="com.nu.entity.DirectiveOrderEntity">
|
||||
<id column="id" property="id"/>
|
||||
<result column="order_no" property="orderNo"/>
|
||||
<result column="order_type" property="orderType"/>
|
||||
<result column="opt_type" property="optType"/>
|
||||
<result column="pool_id" property="poolId"/>
|
||||
<result column="biz_id" property="bizId"/>
|
||||
<result column="biz_type" property="bizType"/>
|
||||
<result column="nu_id" property="nuId"/>
|
||||
<result column="nu_name" property="nuName"/>
|
||||
<result column="elder_id" property="elderId"/>
|
||||
<result column="elder_name" property="elderName"/>
|
||||
<result column="employee_id" property="employeeId"/>
|
||||
<result column="employee_name" property="employeeName"/>
|
||||
<result column="directive_id" property="directiveId"/>
|
||||
<result column="directive_name" property="directiveName"/>
|
||||
<result column="cycle_type_id" property="cycleTypeId"/>
|
||||
<result column="cycle_type" property="cycleType"/>
|
||||
<result column="cycle_value" property="cycleValue"/>
|
||||
<result column="preview_file" property="previewFile"/>
|
||||
<result column="net_preview_file" property="netPreviewFile"/>
|
||||
<result column="preview_file_small" property="previewFileSmall"/>
|
||||
<result column="net_preview_file_small" property="netPreviewFileSmall"/>
|
||||
<result column="mp3_file" property="mp3File"/>
|
||||
<result column="net_mp3_file" property="netMp3File"/>
|
||||
<result column="mp4_file" property="mp4File"/>
|
||||
<result column="net_mp4_file" property="netMp4File"/>
|
||||
<result column="service_duration" property="serviceDuration"/>
|
||||
<result column="service_content" property="serviceContent"/>
|
||||
<result column="package_id" property="packageId"/>
|
||||
<result column="package_name" property="packageName"/>
|
||||
<result column="iz_package" property="izPackage"/>
|
||||
<result column="toll_price" property="tollPrice"/>
|
||||
<result column="com_price" property="comPrice"/>
|
||||
<result column="real_com_price" property="realComPrice"/>
|
||||
<result column="start_time" property="startTime"/>
|
||||
<result column="end_time" property="endTime"/>
|
||||
<result column="begin_emp" property="beginEmp"/>
|
||||
<result column="begin_time" property="beginTime"/>
|
||||
<result column="finish_emp" property="finishEmp"/>
|
||||
<result column="finish_time" property="finishTime"/>
|
||||
<result column="iz_start" property="izStart"/>
|
||||
<result column="iz_finish" property="izFinish"/>
|
||||
<result column="initiator_id" property="initiatorId"/>
|
||||
<result column="initiator_name" property="initiatorName"/>
|
||||
<result column="create_emp" property="createEmp"/>
|
||||
<result column="create_time" property="createTime"/>
|
||||
<result column="update_emp" property="updateEmp"/>
|
||||
<result column="update_time" property="updateTime"/>
|
||||
<result column="del_flag" property="delFlag"/>
|
||||
<result column="remarks" property="remarks"/>
|
||||
<collection property="subList" ofType="com.nu.entity.DirectiveOrderSubEntity">
|
||||
<id column="sub_id" property="id"/>
|
||||
<result column="sub_order_type" property="orderType"/>
|
||||
<result column="sub_main_id" property="mainId"/>
|
||||
<result column="sub_pool_sub_id" property="poolSubId"/>
|
||||
<result column="sub_nu_id" property="nuId"/>
|
||||
<result column="sub_nu_name" property="nuName"/>
|
||||
<result column="sub_elder_id" property="elderId"/>
|
||||
<result column="sub_elder_name" property="elderName"/>
|
||||
<result column="sub_employee_id" property="employeeId"/>
|
||||
<result column="sub_employee_name" property="employeeName"/>
|
||||
<result column="sub_instruction_tag_id" property="instructionTagId"/>
|
||||
<result column="sub_instruction_tag_name" property="instructionTagName"/>
|
||||
<result column="sub_category_id" property="categoryId"/>
|
||||
<result column="sub_category_name" property="categoryName"/>
|
||||
<result column="sub_type_id" property="typeId"/>
|
||||
<result column="sub_type_name" property="typeName"/>
|
||||
<result column="sub_directive_id" property="directiveId"/>
|
||||
<result column="sub_directive_name" property="directiveName"/>
|
||||
<result column="sub_cycle_type_id" property="cycleTypeId"/>
|
||||
<result column="sub_cycle_type" property="cycleType"/>
|
||||
<result column="sub_cycle_value" property="cycleValue"/>
|
||||
<result column="sub_preview_file" property="previewFile"/>
|
||||
<result column="sub_net_preview_file" property="netPreviewFile"/>
|
||||
<result column="sub_preview_file_small" property="previewFileSmall"/>
|
||||
<result column="sub_net_preview_file_small" property="netPreviewFileSmall"/>
|
||||
<result column="sub_mp3_file" property="mp3File"/>
|
||||
<result column="sub_net_mp3_file" property="netMp3File"/>
|
||||
<result column="sub_mp4_file" property="mp4File"/>
|
||||
<result column="sub_net_mp4_file" property="netMp4File"/>
|
||||
<result column="sub_service_duration" property="serviceDuration"/>
|
||||
<result column="sub_service_content" property="serviceContent"/>
|
||||
<result column="sub_toll_price" property="tollPrice"/>
|
||||
<result column="sub_com_price" property="comPrice"/>
|
||||
<result column="sub_real_com_price" property="realComPrice"/>
|
||||
<result column="sub_package_id" property="packageId"/>
|
||||
<result column="sub_package_name" property="packageName"/>
|
||||
<result column="sub_iz_package" property="izPackage"/>
|
||||
<result column="sub_start_time" property="startTime"/>
|
||||
<result column="sub_end_time" property="endTime"/>
|
||||
<result column="sub_begin_time" property="beginTime"/>
|
||||
<result column="sub_finish_time" property="finishTime"/>
|
||||
<result column="sub_iz_start" property="izStart"/>
|
||||
<result column="sub_iz_finish" property="izFinish"/>
|
||||
<result column="sub_create_by" property="createBy"/>
|
||||
<result column="sub_create_time" property="createTime"/>
|
||||
<result column="sub_update_by" property="updateBy"/>
|
||||
<result column="sub_update_time" property="updateTime"/>
|
||||
<result column="sub_del_flag" property="delFlag"/>
|
||||
<result column="sub_tplink_path" property="tplinkPath"/>
|
||||
<result column="sub_manually_pic_path" property="manuallyPicPath"/>
|
||||
<result column="sub_manually_mp4_path" property="manuallyMp4Path"/>
|
||||
</collection>
|
||||
</resultMap>
|
||||
|
||||
<select id="queryDataPoolList" resultType="com.nu.modules.biz.order.entity.DirectiveOrder">
|
||||
select a.id as poolId,
|
||||
a.biz_id as bizId,
|
||||
|
|
@ -153,4 +259,71 @@
|
|||
</where>
|
||||
</select>
|
||||
|
||||
<select id="queryOrderByTimeType" resultMap="DirectiveOrderMap">
|
||||
SELECT
|
||||
o.id, o.order_no, o.order_type, o.opt_type, o.pool_id, o.biz_id, o.biz_type,
|
||||
o.nu_id, o.nu_name, o.elder_id, o.elder_name, o.employee_id, o.employee_name,
|
||||
o.directive_id, o.directive_name, o.cycle_type_id, o.cycle_type, o.cycle_value,
|
||||
o.preview_file, o.net_preview_file, o.preview_file_small, o.net_preview_file_small,
|
||||
o.mp3_file, o.net_mp3_file, o.mp4_file, o.net_mp4_file, o.service_duration,
|
||||
o.service_content, o.package_id, o.package_name, o.iz_package, o.toll_price,
|
||||
o.com_price, o.real_com_price, o.start_time, o.end_time, o.begin_emp, o.begin_time,
|
||||
o.finish_emp, o.finish_time, o.iz_start, o.iz_finish, o.initiator_id, o.initiator_name,
|
||||
o.create_emp, o.create_time, o.update_emp, o.update_time, o.del_flag, o.remarks,
|
||||
s.id as sub_id, s.order_type as sub_order_type, s.main_id as sub_main_id,
|
||||
s.pool_sub_id as sub_pool_sub_id, s.nu_id as sub_nu_id, s.nu_name as sub_nu_name,
|
||||
s.elder_id as sub_elder_id, s.elder_name as sub_elder_name, s.employee_id as sub_employee_id,
|
||||
s.employee_name as sub_employee_name, s.instruction_tag_id as sub_instruction_tag_id,
|
||||
s.instruction_tag_name as sub_instruction_tag_name, s.category_id as sub_category_id,
|
||||
s.category_name as sub_category_name, s.type_id as sub_type_id, s.type_name as sub_type_name,
|
||||
s.directive_id as sub_directive_id, s.directive_name as sub_directive_name,
|
||||
s.cycle_type_id as sub_cycle_type_id, s.cycle_type as sub_cycle_type,
|
||||
s.cycle_value as sub_cycle_value, s.preview_file as sub_preview_file,
|
||||
s.net_preview_file as sub_net_preview_file, s.preview_file_small as sub_preview_file_small,
|
||||
s.net_preview_file_small as sub_net_preview_file_small, s.mp3_file as sub_mp3_file,
|
||||
s.net_mp3_file as sub_net_mp3_file, s.mp4_file as sub_mp4_file, s.net_mp4_file as sub_net_mp4_file,
|
||||
s.service_duration as sub_service_duration, s.service_content as sub_service_content,
|
||||
s.toll_price as sub_toll_price, s.com_price as sub_com_price, s.real_com_price as sub_real_com_price,
|
||||
s.package_id as sub_package_id, s.package_name as sub_package_name, s.iz_package as sub_iz_package,
|
||||
s.start_time as sub_start_time, s.end_time as sub_end_time, s.begin_time as sub_begin_time,
|
||||
s.finish_time as sub_finish_time, s.iz_start as sub_iz_start, s.iz_finish as sub_iz_finish,
|
||||
s.create_by as sub_create_by, s.create_time as sub_create_time, s.update_by as sub_update_by,
|
||||
s.update_time as sub_update_time, s.del_flag as sub_del_flag, s.tplink_path as sub_tplink_path,
|
||||
s.manually_pic_path as sub_manually_pic_path, s.manually_mp4_path as sub_manually_mp4_path
|
||||
FROM nu_biz_nu_directive_order o
|
||||
LEFT JOIN nu_biz_nu_directive_order_sub s ON o.id = s.main_id
|
||||
WHERE o.order_type = '1'
|
||||
<if test="dto.orderTimeType != null and dto.orderTimeType != ''">
|
||||
<if test="dto.orderTimeType == 'history'">
|
||||
<choose>
|
||||
<when test="@cn.hutool.core.date.DateUtil@isSameDay(dto.queryDate, new java.util.Date())">
|
||||
<![CDATA[
|
||||
AND (
|
||||
(DATE(o.start_time) = DATE(#{dto.queryDate}) AND o.end_time < NOW())
|
||||
OR
|
||||
(DATE(o.start_time) = DATE(#{dto.queryDate}) AND o.start_time < NOW() AND o.iz_finish = 'Y')
|
||||
)
|
||||
]]>
|
||||
</when>
|
||||
<otherwise>
|
||||
<![CDATA[
|
||||
AND DATE(o.start_time) = DATE(#{dto.queryDate})
|
||||
]]>
|
||||
</otherwise>
|
||||
</choose>
|
||||
</if>
|
||||
<if test="dto.orderTimeType == 'current'">
|
||||
<![CDATA[
|
||||
AND (DATE(o.start_time) = DATE(#{dto.queryDate}) AND o.start_time <= #{dto.queryDate} AND #{dto.queryDate} >= o.end_time AND o.iz_finish = 'N')
|
||||
]]>
|
||||
</if>
|
||||
</if>
|
||||
<if test="dto.nuId != null and dto.nuId != ''">
|
||||
AND o.nu_id = #{dto.nuId}
|
||||
</if>
|
||||
<if test="dto.elderId != null and dto.elderId != ''">
|
||||
AND o.elder_id = #{dto.elderId}
|
||||
</if>
|
||||
ORDER BY o.start_time, s.start_time
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ 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.nu.entity.CareDirectiveEntity;
|
||||
import com.nu.entity.DirectiveOrderEntity;
|
||||
import com.nu.entity.DirectiveOrderSubEntity;
|
||||
import com.nu.modules.biz.order.entity.DirectiveOrder;
|
||||
|
|
@ -177,6 +178,18 @@ public class DirectiveOrderPadServiceImpl extends ServiceImpl<DirectiveOrderMapp
|
|||
return baseMapper.queryTodayFinishedTotal(type,nuId, elderId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DirectiveOrderEntity> queryHistory(CareDirectiveEntity dto) {
|
||||
dto.setOrderTimeType("history");
|
||||
return baseMapper.queryOrderByTimeType(dto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DirectiveOrderEntity> queryCurrent(CareDirectiveEntity dto) {
|
||||
dto.setOrderTimeType("current");
|
||||
return baseMapper.queryOrderByTimeType(dto);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> editSubMp4(DirectiveOrderSubEntity directiveOrderSubEntity) {
|
||||
DirectiveOrderSub directiveOrderSub = new DirectiveOrderSub();
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
package com.nu.modules.biz.plan.care.mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.nu.entity.CareDirectiveEntity;
|
||||
import com.nu.entity.DirectiveOrderEntity;
|
||||
import com.nu.modules.biz.plan.care.entity.CareDirectivePlan;
|
||||
import com.nu.modules.biz.plan.care.entity.DirectivePackagePlan;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
|
@ -23,4 +26,6 @@ public interface CareDirectivePlanMapper extends BaseMapper<CareDirectivePlan> {
|
|||
int deleteByIdPhysic(@Param("id") String id);
|
||||
|
||||
int queryTotal(@Param("nuId") String nuId, @Param("elderId") String elderId);
|
||||
|
||||
List<DirectiveOrderEntity> queryFuture( @Param("dto") CareDirectiveEntity dto);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,113 @@
|
|||
<?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.nu.modules.biz.plan.care.mapper.CareDirectivePlanMapper">
|
||||
|
||||
<resultMap id="DirectiveOrderMap" type="com.nu.entity.DirectiveOrderEntity">
|
||||
<id column="id" property="id"/>
|
||||
<result column="order_no" property="orderNo"/>
|
||||
<result column="order_type" property="orderType"/>
|
||||
<result column="opt_type" property="optType"/>
|
||||
<result column="pool_id" property="poolId"/>
|
||||
<result column="biz_id" property="bizId"/>
|
||||
<result column="biz_type" property="bizType"/>
|
||||
<result column="nu_id" property="nuId"/>
|
||||
<result column="nu_name" property="nuName"/>
|
||||
<result column="elder_id" property="elderId"/>
|
||||
<result column="elder_name" property="elderName"/>
|
||||
<result column="employee_id" property="employeeId"/>
|
||||
<result column="employee_name" property="employeeName"/>
|
||||
<result column="directive_id" property="directiveId"/>
|
||||
<result column="directive_name" property="directiveName"/>
|
||||
<result column="cycle_type_id" property="cycleTypeId"/>
|
||||
<result column="cycle_type" property="cycleType"/>
|
||||
<result column="cycle_value" property="cycleValue"/>
|
||||
<result column="preview_file" property="previewFile"/>
|
||||
<result column="net_preview_file" property="netPreviewFile"/>
|
||||
<result column="preview_file_small" property="previewFileSmall"/>
|
||||
<result column="net_preview_file_small" property="netPreviewFileSmall"/>
|
||||
<result column="mp3_file" property="mp3File"/>
|
||||
<result column="net_mp3_file" property="netMp3File"/>
|
||||
<result column="mp4_file" property="mp4File"/>
|
||||
<result column="net_mp4_file" property="netMp4File"/>
|
||||
<result column="service_duration" property="serviceDuration"/>
|
||||
<result column="service_content" property="serviceContent"/>
|
||||
<result column="package_id" property="packageId"/>
|
||||
<result column="package_name" property="packageName"/>
|
||||
<result column="iz_package" property="izPackage"/>
|
||||
<result column="toll_price" property="tollPrice"/>
|
||||
<result column="com_price" property="comPrice"/>
|
||||
<result column="real_com_price" property="realComPrice"/>
|
||||
<result column="start_time" property="startTime"/>
|
||||
<result column="end_time" property="endTime"/>
|
||||
<result column="begin_emp" property="beginEmp"/>
|
||||
<result column="begin_time" property="beginTime"/>
|
||||
<result column="finish_emp" property="finishEmp"/>
|
||||
<result column="finish_time" property="finishTime"/>
|
||||
<result column="iz_start" property="izStart"/>
|
||||
<result column="iz_finish" property="izFinish"/>
|
||||
<result column="initiator_id" property="initiatorId"/>
|
||||
<result column="initiator_name" property="initiatorName"/>
|
||||
<result column="create_emp" property="createEmp"/>
|
||||
<result column="create_time" property="createTime"/>
|
||||
<result column="update_emp" property="updateEmp"/>
|
||||
<result column="update_time" property="updateTime"/>
|
||||
<result column="del_flag" property="delFlag"/>
|
||||
<result column="remarks" property="remarks"/>
|
||||
<collection property="subList" ofType="com.nu.entity.DirectiveOrderSubEntity">
|
||||
<id column="sub_id" property="id"/>
|
||||
<result column="sub_order_type" property="orderType"/>
|
||||
<result column="sub_main_id" property="mainId"/>
|
||||
<result column="sub_pool_sub_id" property="poolSubId"/>
|
||||
<result column="sub_nu_id" property="nuId"/>
|
||||
<result column="sub_nu_name" property="nuName"/>
|
||||
<result column="sub_elder_id" property="elderId"/>
|
||||
<result column="sub_elder_name" property="elderName"/>
|
||||
<result column="sub_employee_id" property="employeeId"/>
|
||||
<result column="sub_employee_name" property="employeeName"/>
|
||||
<result column="sub_instruction_tag_id" property="instructionTagId"/>
|
||||
<result column="sub_instruction_tag_name" property="instructionTagName"/>
|
||||
<result column="sub_category_id" property="categoryId"/>
|
||||
<result column="sub_category_name" property="categoryName"/>
|
||||
<result column="sub_type_id" property="typeId"/>
|
||||
<result column="sub_type_name" property="typeName"/>
|
||||
<result column="sub_directive_id" property="directiveId"/>
|
||||
<result column="sub_directive_name" property="directiveName"/>
|
||||
<result column="sub_cycle_type_id" property="cycleTypeId"/>
|
||||
<result column="sub_cycle_type" property="cycleType"/>
|
||||
<result column="sub_cycle_value" property="cycleValue"/>
|
||||
<result column="sub_preview_file" property="previewFile"/>
|
||||
<result column="sub_net_preview_file" property="netPreviewFile"/>
|
||||
<result column="sub_preview_file_small" property="previewFileSmall"/>
|
||||
<result column="sub_net_preview_file_small" property="netPreviewFileSmall"/>
|
||||
<result column="sub_mp3_file" property="mp3File"/>
|
||||
<result column="sub_net_mp3_file" property="netMp3File"/>
|
||||
<result column="sub_mp4_file" property="mp4File"/>
|
||||
<result column="sub_net_mp4_file" property="netMp4File"/>
|
||||
<result column="sub_service_duration" property="serviceDuration"/>
|
||||
<result column="sub_service_content" property="serviceContent"/>
|
||||
<result column="sub_toll_price" property="tollPrice"/>
|
||||
<result column="sub_com_price" property="comPrice"/>
|
||||
<result column="sub_real_com_price" property="realComPrice"/>
|
||||
<result column="sub_package_id" property="packageId"/>
|
||||
<result column="sub_package_name" property="packageName"/>
|
||||
<result column="sub_iz_package" property="izPackage"/>
|
||||
<result column="sub_start_time" property="startTime"/>
|
||||
<result column="sub_end_time" property="endTime"/>
|
||||
<result column="sub_begin_time" property="beginTime"/>
|
||||
<result column="sub_finish_time" property="finishTime"/>
|
||||
<result column="sub_iz_start" property="izStart"/>
|
||||
<result column="sub_iz_finish" property="izFinish"/>
|
||||
<result column="sub_create_by" property="createBy"/>
|
||||
<result column="sub_create_time" property="createTime"/>
|
||||
<result column="sub_update_by" property="updateBy"/>
|
||||
<result column="sub_update_time" property="updateTime"/>
|
||||
<result column="sub_del_flag" property="delFlag"/>
|
||||
<result column="sub_tplink_path" property="tplinkPath"/>
|
||||
<result column="sub_manually_pic_path" property="manuallyPicPath"/>
|
||||
<result column="sub_manually_mp4_path" property="manuallyMp4Path"/>
|
||||
</collection>
|
||||
</resultMap>
|
||||
|
||||
<delete id="deleteByIdPhysic">
|
||||
delete
|
||||
from nu_biz_nu_care_directive_plan
|
||||
|
|
@ -41,14 +148,11 @@
|
|||
</where>
|
||||
</select>
|
||||
<select id="queryTotal" resultType="java.lang.Integer">
|
||||
SELECT
|
||||
COUNT(*) as total_count
|
||||
FROM
|
||||
nu_biz_nu_care_directive_plan p
|
||||
LEFT JOIN
|
||||
nu_config_package_directive pd ON p.directive_id = pd.package_id
|
||||
WHERE
|
||||
p.nu_id = #{nuId}
|
||||
SELECT COUNT(*) as total_count
|
||||
FROM nu_biz_nu_care_directive_plan p
|
||||
LEFT JOIN
|
||||
nu_config_package_directive pd ON p.directive_id = pd.package_id
|
||||
WHERE p.nu_id = #{nuId}
|
||||
AND p.elder_id = #{elderId}
|
||||
AND (
|
||||
-- 条件1: 包数据 (cycle_type_id为空或空字符串)
|
||||
|
|
@ -57,16 +161,16 @@
|
|||
AND (
|
||||
-- 包数据按星期执行
|
||||
(
|
||||
pd.cycle_value IN ('0','1','2','3','4','5','6')
|
||||
pd.cycle_value IN ('0', '1', '2', '3', '4', '5', '6')
|
||||
AND pd.cycle_value = (
|
||||
CASE DAYOFWEEK(CURDATE())
|
||||
WHEN 1 THEN '6' -- 星期天
|
||||
WHEN 2 THEN '0' -- 星期一
|
||||
WHEN 3 THEN '1' -- 星期二
|
||||
WHEN 4 THEN '2' -- 星期三
|
||||
WHEN 5 THEN '3' -- 星期四
|
||||
WHEN 6 THEN '4' -- 星期五
|
||||
WHEN 7 THEN '5' -- 星期六
|
||||
WHEN 1 THEN '6' -- 星期天
|
||||
WHEN 2 THEN '0' -- 星期一
|
||||
WHEN 3 THEN '1' -- 星期二
|
||||
WHEN 4 THEN '2' -- 星期三
|
||||
WHEN 5 THEN '3' -- 星期四
|
||||
WHEN 6 THEN '4' -- 星期五
|
||||
WHEN 7 THEN '5' -- 星期六
|
||||
END
|
||||
)
|
||||
)
|
||||
|
|
@ -86,16 +190,128 @@
|
|||
AND (
|
||||
-- 周期指令按星期执行
|
||||
(
|
||||
p.cycle_value IN ('0','1','2','3','4','5','6')
|
||||
p.cycle_value IN ('0', '1', '2', '3', '4', '5', '6')
|
||||
AND p.cycle_value = (
|
||||
CASE DAYOFWEEK(CURDATE())
|
||||
WHEN 1 THEN '6' -- 星期天
|
||||
WHEN 2 THEN '0' -- 星期一
|
||||
WHEN 3 THEN '1' -- 星期二
|
||||
WHEN 4 THEN '2' -- 星期三
|
||||
WHEN 5 THEN '3' -- 星期四
|
||||
WHEN 6 THEN '4' -- 星期五
|
||||
WHEN 7 THEN '5' -- 星期六
|
||||
WHEN 1 THEN '6' -- 星期天
|
||||
WHEN 2 THEN '0' -- 星期一
|
||||
WHEN 3 THEN '1' -- 星期二
|
||||
WHEN 4 THEN '2' -- 星期三
|
||||
WHEN 5 THEN '3' -- 星期四
|
||||
WHEN 6 THEN '4' -- 星期五
|
||||
WHEN 7 THEN '5' -- 星期六
|
||||
END
|
||||
)
|
||||
)
|
||||
OR
|
||||
-- 周期指令按日期执行
|
||||
(
|
||||
LENGTH(p.cycle_value) = 2
|
||||
AND p.cycle_value = DATE_FORMAT(CURDATE(), '%d')
|
||||
)
|
||||
)
|
||||
)
|
||||
);
|
||||
</select>
|
||||
<select id="queryFuture" resultMap="DirectiveOrderMap">
|
||||
select p.id,
|
||||
p.nu_id,
|
||||
p.nu_name,
|
||||
p.elder_id,
|
||||
p.elder_name,
|
||||
p.category_id,
|
||||
p.category_name,
|
||||
p.type_id,
|
||||
p.type_name,
|
||||
CASE
|
||||
WHEN p.iz_package = 'Y' THEN p.directive_id
|
||||
ELSE NULL
|
||||
END AS directive_id,
|
||||
CASE
|
||||
WHEN p.iz_package = 'Y' THEN p.directive_name
|
||||
ELSE NULL
|
||||
END AS directive_name,
|
||||
p.preview_file,
|
||||
p.net_preview_file,
|
||||
p.preview_file_small,
|
||||
p.net_preview_file_small,
|
||||
p.mp3_file,
|
||||
p.net_mp3_file,
|
||||
p.mp4_file,
|
||||
p.net_mp4_file,
|
||||
p.immediate_file,
|
||||
p.net_immediate_file,
|
||||
p.immediate_file_focus,
|
||||
p.net_immediate_file_focus,
|
||||
p.cycle_type_id,
|
||||
p.cycle_type,
|
||||
p.cycle_value,
|
||||
p.service_duration,
|
||||
p.service_content,
|
||||
p.positioning,
|
||||
p.positioning_long,
|
||||
p.tag_name,
|
||||
p.start_time,
|
||||
p.end_time,
|
||||
p.create_by,
|
||||
p.create_time,
|
||||
p.update_by,
|
||||
p.update_time,
|
||||
p.sys_org_code,
|
||||
p.iz_package,
|
||||
pd.directive_id AS sub_id,
|
||||
pd.directive_id AS sub_directive_id
|
||||
FROM nu_biz_nu_care_directive_plan p
|
||||
LEFT JOIN
|
||||
nu_config_package_directive pd ON p.directive_id = pd.package_id
|
||||
WHERE p.nu_id = #{dto.nuId}
|
||||
AND p.elder_id = #{dto.elderId}
|
||||
AND (
|
||||
-- 条件1: 包数据 (cycle_type_id为空或空字符串)
|
||||
(
|
||||
(p.cycle_type_id IS NULL OR p.cycle_type_id = '')
|
||||
AND (
|
||||
-- 包数据按星期执行
|
||||
(
|
||||
pd.cycle_value IN ('0', '1', '2', '3', '4', '5', '6')
|
||||
AND pd.cycle_value = (
|
||||
CASE DAYOFWEEK(CURDATE())
|
||||
WHEN 1 THEN '6' -- 星期天
|
||||
WHEN 2 THEN '0' -- 星期一
|
||||
WHEN 3 THEN '1' -- 星期二
|
||||
WHEN 4 THEN '2' -- 星期三
|
||||
WHEN 5 THEN '3' -- 星期四
|
||||
WHEN 6 THEN '4' -- 星期五
|
||||
WHEN 7 THEN '5' -- 星期六
|
||||
END
|
||||
)
|
||||
)
|
||||
OR
|
||||
-- 包数据按日期执行
|
||||
(
|
||||
LENGTH(pd.cycle_value) = 2
|
||||
AND pd.cycle_value = DATE_FORMAT(CURDATE(), '%d')
|
||||
)
|
||||
)
|
||||
)
|
||||
-- 条件2: 日常类型指令 (cycle_type_id = '1')
|
||||
OR p.cycle_type_id = '1'
|
||||
-- 条件3: 周期类型指令 (cycle_type_id = '2')
|
||||
OR (
|
||||
p.cycle_type_id = '2'
|
||||
AND (
|
||||
-- 周期指令按星期执行
|
||||
(
|
||||
p.cycle_value IN ('0', '1', '2', '3', '4', '5', '6')
|
||||
AND p.cycle_value = (
|
||||
CASE DAYOFWEEK(CURDATE())
|
||||
WHEN 1 THEN '6' -- 星期天
|
||||
WHEN 2 THEN '0' -- 星期一
|
||||
WHEN 3 THEN '1' -- 星期二
|
||||
WHEN 4 THEN '2' -- 星期三
|
||||
WHEN 5 THEN '3' -- 星期四
|
||||
WHEN 6 THEN '4' -- 星期五
|
||||
WHEN 7 THEN '5' -- 星期六
|
||||
END
|
||||
)
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
package com.nu.modules.biz.plan.care.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.nu.entity.CareDirectiveInstantEntity;
|
||||
import com.nu.entity.CareDirectivePackageEntity;
|
||||
import com.nu.entity.ElderTagEntity;
|
||||
import com.nu.entity.*;
|
||||
import com.nu.modules.biz.datapool.service.ICareDataPoolService;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
import com.nu.entity.CareDirectiveEntity;
|
||||
import com.nu.modules.biz.common.entity.BizConfigServiceCategory;
|
||||
import com.nu.modules.biz.common.entity.BizConfigServiceDirective;
|
||||
import com.nu.modules.biz.common.entity.BizConfigServiceType;
|
||||
|
|
@ -396,6 +393,11 @@ public class CareDirectivePlanServiceImpl extends ServiceImpl<CareDirectivePlanM
|
|||
//TODO 增加日志
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<DirectiveOrderEntity> queryFuture(CareDirectiveEntity dto) {
|
||||
return baseMapper.queryFuture(dto);
|
||||
}
|
||||
|
||||
// @Override
|
||||
// public ElderTagEntity addElderTag(ElderTagEntity elderTagEntity) {
|
||||
// ElderTagPlan bizNuElderTagPlan = new ElderTagPlan();
|
||||
|
|
|
|||
Loading…
Reference in New Issue