zjh
2024-12-06 c42f62b32bac302a7ac9fcde7489f7c5fc6e11aa
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/LtkjHysqdMapper.java
@@ -3,12 +3,17 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ltkj.common.annotation.DataSource;
import com.ltkj.common.enums.DataSourceType;
import com.ltkj.hosp.domain.TjCustomer;
import com.ltkj.hosp.domain.TjOrder;
import com.ltkj.hosp.sqlDomain.LtkjExamJcsqd;
import com.ltkj.hosp.sqlDomain.LtkjHysqd;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.Date;
import java.util.List;
/**
 * @Company: 西安路泰科技有限公司
@@ -25,4 +30,73 @@
    @Delete("DELETE FROM ltkj_hysqd WHERE tjh=#{tjh} AND tmh=#{tmh} ")
    void  deletedLtkjHysqdByTjhAndTmh(@Param("tjh")String tjh,@Param("tmh")String tmh);
    @Select("SELECT * FROM ltkj_hysqd a WHERE a.tjh=#{tjh}")
    List<LtkjHysqd> getLtkjHysqdByTjh(@Param("tjh") String tjh);
    @Select("SELECT * FROM tj_customer cus JOIN (\n" +
            "SELECT\n" +
            "\txx.user_id \n" +
            "FROM\n" +
            "\t(\n" +
            "\tSELECT\n" +
            "\t\td.* \n" +
            "\tFROM\n" +
            "\t\ttj_order d\n" +
            "\t\tLEFT JOIN (\n" +
            "\t\tSELECT\n" +
            "\t\t\ta.tjh \n" +
            "\t\tFROM\n" +
            "\t\t\tltkj_hysqd a\n" +
            "\t\t\tJOIN ltkj_hybgd b ON a.tmh = b.tmh \n" +
            "\t\tWHERE\n" +
            "\t\t\tb.jyjg NOT BETWEEN SUBSTRING_INDEX( b.fwz, '-', 1 ) \n" +
            "\t\t\tAND b.jyjg > SUBSTRING_INDEX( b.fwz, '-',- 1 ) \n" +
            "\t\tGROUP BY\n" +
            "\t\t\ta.tjh \n" +
            "\t\t) aa ON aa.tjh = d.card_id \n" +
            "\tWHERE\n" +
            "\t\td.deleted = 0 \n" +
            "\t\tAND ! ISNULL( aa.tjh ) \n" +
            "\t\tAND d.create_time BETWEEN #{strTime} \n" +
            "\t\tAND #{endTime}\n" +
            "\t\t UNION\n" +
            "\tSELECT\n" +
            "\t\to.* \n" +
            "\tFROM\n" +
            "\t\ttj_order o\n" +
            "\t\tLEFT JOIN ( SELECT e.order_id FROM tj_order_detail e WHERE e.deleted = 0 AND e.exception_desc = 1 GROUP BY e.order_id ) bb ON bb.order_id = o.order_id \n" +
            "\tWHERE\n" +
            "\t\to.deleted = 0 \n" +
            "\t\tAND ! ISNULL( bb.order_id ) \n" +
            "\t\tAND o.create_time BETWEEN #{strTime} \n" +
            "\tAND #{endTime}\n" +
            "\t)xx GROUP BY xx.order_id)c  ON c.user_id=cus.cus_id")
    List<TjCustomer> getHyYcXmList(@Param("strTime") Date strTime, @Param("endTime")Date endTime);
    @Select("SELECT * FROM tj_customer cus JOIN (\t\n" +
            "SELECT\n" +
            "\t\to.* \n" +
            "\tFROM\n" +
            "\t\ttj_order o\n" +
            "\tWHERE\n" +
            "\t\to.deleted = 0 \n" +
            "\t\tAND o.create_time BETWEEN #{strTime} \n" +
            "\tAND #{endTime}) c  ON c.user_id=cus.cus_id")
    List<TjCustomer> getCgYcXmList(@Param("strTime") Date strTime, @Param("endTime")Date endTime);
    @Select("SELECT\n" +
            "     COUNT(*)\n" +
            "    FROM\n" +
            "      ltkj_hysqd a\n" +
            "      JOIN ltkj_hybgd b ON a.tmh = b.tmh \n" +
            "    WHERE\n" +
            "          b.jyjg NOT BETWEEN SUBSTRING_INDEX( b.fwz, '-', 1 ) AND b.jyjg > SUBSTRING_INDEX( b.fwz, '-',- 1 )\n" +
            "      AND\n" +
            "       a.tjh=#{cardId}")
    int getHyYcXmCount(String cardId);
}