package com.lyms.talkonlineweb.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.lyms.talkonlineweb.domain.LymsChatgroup;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.sql.Wrapper;
import java.util.List;
import java.util.Map;
/**
* @Entity com.lyms.talkonlineweb.domain.LymsChatgroup
*/
@Mapper
public interface LymsChatgroupMapper extends BaseMapper<LymsChatgroup> {
@Select("SELECT p.`id`, `pname`, `idno`, `ppasswd`, p.`sex`, `birth`, IFNULL(p.`headimg`,'') headimg, `ccnt`, `islogin`, `openid`, p.`hxid`, `pid`, r.`pcid`, r.id as `rid`,r.`did`, `cid`, `fid`, r.`stat` " +
"FROM lyms_patient p,lyms_tkrecord r,lyms_chatgroup cg,lyms_doctor d " +
"WHERE p.`id`=r.`pid` AND p.`idno`=cg.`fromp` AND r.`did`=d.`did` AND cg.`target`=d.`dlogin` AND r.`did`=#{did} AND cg.`hxgroupid`=#{groupid} ORDER BY r.`createdtime` DESC")
List<Map<String, Object>> getPinfoBySesson(@Param("froms") String froms,@Param("did") String did,@Param("groupid") String groupid);
@Select({"<script>",
"SELECT " ,
"p.id as `pid`," ,
"p.pname," ,
"p.sex," ,
"p.birth," ,
"p.idno," ,
"p.enrolment_phone," ,
"pc.mobile," ,
"pc.pcid," ,
"pc.did," ,
"pc.dtid," ,
"pc.dtname," ,
"d.dlogin," ,
"i.iname, " ,
"i.iid, " ,
"i.createdtime " ,
"FROM " ,
"(`lyms_illness` i " ,
"left join `lyms_pcase` pc ON (pc.pcid = i.pcid) " ,
"left join `lyms_patient` p ON (p.id = pc.pid) " ,
"left join `lyms_doctor` d ON (d.did = pc.dtid)) " ,
"${ew.customSqlSegment}",
"</script>"})
// "WHERE " +
// "dtid=#{doctorId}")
List<Map<String, Object>> getDoctorPatient(Page<Map<String,Object>> page, @Param(Constants.WRAPPER) QueryWrapper queryWrapper);
}