map类型输入参数到sql

本文介绍了一种基于Ibatis框架的菜单权限查询实现方法,通过使用动态SQL和参数映射,根据员工ID和当前时间获取相应的资源权限代码。该方法利用HashMap作为参数传递,通过左连接和条件筛选确保权限的有效性和时效性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

public List<String> getMenuGrant(String staffId ,String currentTime) {
		Map queryMap = new HashMap();
		queryMap.put("staffId", staffId);
		queryMap.put("currentTime", currentTime);
		List<String> voList = this.queryIbatis("tfm_bsm_org.getArcGrant", queryMap);
		return voList;
	}
  	<select id="getArcGrant" resultClass="java.lang.String" parameterClass="java.util.HashMap">
			SELECT 
			RESOURCE_CODE as resourceCode
		    FROM TF2M_ARC_GRANT_PROXY g 
			left join TF_PROXY_RELATION p
			on p.AGENT_ID=g.PRINCIPAL_CODE
			WHERE p.PROXY_STATUS='1'
		 <dynamic prepend="and">
			 <isNotEmpty prepend="and" property="staffId">
             	<![CDATA[g.PRINCIPAL_CODE = '$staffId$']]>
             </isNotEmpty>
              <isNotEmpty prepend="and" property="currentTime">
             	<![CDATA[p.PROXY_START_TIME <= #currentTime#]]>
             </isNotEmpty>
              <isNotEmpty prepend="and" property="currentTime">
             	<![CDATA[p.PROXY_END_TIME >= #currentTime#]]>
             </isNotEmpty>
         </dynamic>
	</select>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值