package com.ltkj.hosp.mapper;
|
|
import java.util.List;
|
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.ltkj.hosp.domain.TjOrderDetail;
|
import com.ltkj.hosp.domain.TjProject;
|
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Select;
|
|
/**
|
* 体检项目明细Mapper接口
|
*
|
* @author ltkj
|
* @date 2022-11-22
|
*/
|
@Mapper
|
public interface TjOrderDetailMapper extends BaseMapper<TjOrderDetail> {
|
/**
|
* 查询体检项目明细
|
*
|
* @param orderDetailId 体检项目明细主键
|
* @return 体检项目明细
|
*/
|
public TjOrderDetail selectTjOrderDetailByOrderDetailId(String orderDetailId);
|
|
/**
|
* 查询体检项目明细列表
|
*
|
* @param tjOrderDetail 体检项目明细
|
* @return 体检项目明细集合
|
*/
|
public List<TjOrderDetail> selectTjOrderDetailList(TjOrderDetail tjOrderDetail);
|
|
/**
|
* 新增体检项目明细
|
*
|
* @param tjOrderDetail 体检项目明细
|
* @return 结果
|
*/
|
public int insertTjOrderDetail(TjOrderDetail tjOrderDetail);
|
|
/**
|
* 修改体检项目明细
|
*
|
* @param tjOrderDetail 体检项目明细
|
* @return 结果
|
*/
|
public int updateTjOrderDetail(TjOrderDetail tjOrderDetail);
|
|
/**
|
* 删除体检项目明细
|
*
|
* @param orderDetailId 体检项目明细主键
|
* @return 结果
|
*/
|
public int deleteTjOrderDetailByOrderDetailId(String orderDetailId);
|
|
/**
|
* 批量删除体检项目明细
|
*
|
* @param orderDetailIds 需要删除的数据主键集合
|
* @return 结果
|
*/
|
public int deleteTjOrderDetailByOrderDetailIds(String[] orderDetailIds);
|
|
|
/**
|
* 查询已缴费项目
|
*/
|
@Select("SELECT * FROM tj_project p WHERE p.pro_parent_id =0 AND p.pro_id IN (\n" +
|
" SELECT a.pro_id FROM tj_order_detail a WHERE !ISNULL(flowing_water_id) AND order_id=#{orderId})")
|
public List<TjProject> selectTjOrderDetailListByFlowingWaterIdIsNotNull(String orderId);
|
|
|
|
|
|
/**
|
* 查询未缴费项目
|
*/
|
@Select("SELECT * FROM tj_project p WHERE p.pro_parent_id =0 AND p.pro_id IN (\n" +
|
" SELECT a.pro_id FROM tj_order_detail a WHERE ISNULL(flowing_water_id) AND order_id=#{orderId})")
|
public List<TjProject> selectTjOrderDetailListByFlowingWaterIdIsNull(String orderId);
|
|
|
@Select("SELECT * FROM tj_order_detail WHERE order_id=#{orderId} AND !ISNULL(flowing_water_id) AND deleted='0'")
|
public List<TjOrderDetail> getTjOrderDetailListByOrderId(String orderId);
|
|
@Select("SELECT * FROM tj_order_detail WHERE order_id=#{orderId} AND deleted='0'")
|
public List<TjOrderDetail> getTjOrderDetailsByOrderId(String orderId);
|
|
@Select("SELECT * FROM tj_order_detail WHERE deleted='0' AND order_id=#{orderId} AND pro_id=#{proId}")
|
public TjOrderDetail getTjOrderDetailByOrderId(@Param("orderId") String orderId,@Param("proId") String proId);
|
|
@Select("SELECT * FROM tj_order_detail WHERE deleted='0' AND order_id=#{orderId} AND tj_status in (0,3) AND !ISNULL(flowing_water_id)")
|
public List<TjOrderDetail> getTjOrderDetailListByOrderIdAndStatus(String orderId);
|
|
@Select({"<script>", "select", "*", "from tj_order_detail", "where order_id =#{orderId} AND pro_id in", "<foreach collection='proParentIdList' item='id' open='(' separator=',' close=')'>",
|
"#{id}",
|
"</foreach>",
|
"</script>" })
|
public List<TjOrderDetail> getTjOrderDetailListInProParentIdList(@Param("orderId") String orderId,@Param("proParentIdList") List<Long> proParentIdList);
|
|
|
@Select("SELECT * FROM tj_order_detail WHERE exception_desc='1'AND deleted='0' AND create_time BETWEEN IFNULL('${startDate}','1970-01-01 00:00:00') AND IFNULL('${endDate}',SYSDATE())")
|
List<TjOrderDetail> getTjOrderDetailList(@Param("startDate") String startDate,@Param("endDate") String endDate);
|
|
|
@Select("\tINSERT INTO tj_order_detail(\n" +
|
"\torder_detail_id,\n" +
|
" order_id,\n" +
|
" pro_id,\n" +
|
" pro_result,\n" +
|
" tj_status,\n" +
|
" create_time,\n" +
|
" create_by,\n" +
|
" is_sampling,\n" +
|
" create_id,\n" +
|
" pro_type) \n" +
|
" \n" +
|
" SELECT a.id,#{orderId},a.pro_id,IFNULL(b.pro_default,''),'0',SYSDATE(),#{userName},b.is_sampling,#{userId},IFNULL(a.pac_id,0) FROM tb_transition a LEFT JOIN tj_project b ON a.pro_id=b.pro_id WHERE a.cus_id=#{cusId} \n" +
|
"\t\t\n" +
|
"\tUNION\n" +
|
" \n" +
|
"\tSELECT DISTINCT a.parent_pro_id,#{orderId},a.parent_pro_id,IFNULL(b.pro_default,''),'0',SYSDATE(),#{userName},b.is_sampling,#{userId},IFNULL(a.pac_id,0) FROM tb_transition a LEFT JOIN tj_project b ON a.parent_pro_id=b.pro_id WHERE a.cus_id=#{cusId}")
|
List<TjOrderDetail> saveTjOrderDetailsByCusId(@Param("cusId")String cusId,@Param("orderId")String orderId,@Param("userName")String userName,@Param("userId") String userId);
|
}
|