批量启用跟禁用

 

1、在页面中配置

 

2、书写Ajax

      

禁用的是一样的,

 

 

 

3、书写controller层

 

4、service层总的配置

service实现

 

5、dao层

 

6、sql语句

<input type="button" onclick="updateStatusByGroup('1')" class="btn btn-outline btn-info btn-xs" id="updateEnables" value="禁用">
                    	 <input type="button" onclick="updateStatusByGroup('0')" class="btn btn-outline btn-danger btn-xs" id="updateDisables" value="启用">



启用跟禁用的AJAX


//启用多条数据
        function updateStatusByGroup(status) {
        	var arr = new Array();
        	var str = "";
        	var nullStr = "";
        	if(status == 1){
        		str = "确定禁用选中内容?";
        		nullStr = "请选择禁用记录!"
        	}else if(status == 0){
        		str = "确定启用选中内容?";
        		nullStr = "请选择启用记录!"
        	}
        		
    		$("input[name='ids']:checked").each(function(i){
    			arr[i] = $(this).val();
    		});
    		if(arr.length == 0){art.warn(nullStr);return;}
    		var vals = arr.join(",");
     		bootbox.confirm(message(str), function(result) {
    		 	if(result){
    		 		$.ajax({
    					url: "${base}/admin/app_user/updateSetables.jhtml",
    					type: "POST",
    					data:{
    						ids:vals,
    						status:status
    					},
    					dataType: "json",
    					cache: false,
    					success: function(message) {
    						art.message(message);
    						if (message.type == "success") {
    							window.setTimeout(function() {
    								window.location.reload();
    							}, 500);
    						}
    					}
    				});
    		 	}
          }); 
        };
1、controller层

//多条记录的启用/禁用
	@RequestMapping(value = "/updateSetables", method = RequestMethod.POST)
	public @ResponseBody Message updateSetables(String ids,int status){
		WefineUser wefineUser=null;
		String[] split=ids.split(",");
		for(String id:split){
			wefineUser=new WefineUser();
			//将参数转换成long的包装类
			wefineUser.setId(Long.valueOf(id));
			wefineUser.setStatus(status);
			this.wefineUserService.update(wefineUser);
		}
		List<Long> idsList=new ArrayList<>();
		for(String id:split){
			idsList.add(Long.parseLong(id));
		}
		Long[] longs=new Long[idsList.size()];
		wefineUserService.updateStatus(status, idsList.toArray(longs));
		return SUCCESS_MESSAGE;
		
	}



2、service接口

 //批量启用/禁用数据
		public void updateStatus(Integer status,Long ... ids);

接口实现
//批量启用/禁用数据
	public void updateStatus(Integer status, Long... ids) {
		
	}


3、dao层
//批量启用或者是禁用数据
	   void updateStatus(@Param("status")Integer status,@Param("ids")Long[] ids);



sql语句

<update id="updateStatus">
	   update T_WEFINE_USER
	   set status=#{status}
	   where id in
	   <foreach item="WefineUserId" index="index" collection="ids" open="(" separator="," close=")">
	  		#{id} 
		</foreach>
	</update>

 

 

优化后的批量启用与禁用:只需要在controller中写

 


	//多条记录的启用/禁用
		@RequestMapping(value = "/updateSetables", method = RequestMethod.POST)
		public @ResponseBody Message updateSetables(String ids,int status){
			AppUser appUser=null;
			String[] split=ids.split(",");
			for(String id:split){
				 appUser = appUserService.find(Long.valueOf(id));
				appUser.setStatus(status);
				this.appUserService.update(appUser);
			}
			
			return SUCCESS_MESSAGE;
			
		}

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值