旅游管理系统:启用/禁用

#启用/禁用
#ProjectDao

/**
* 禁用或启用项目信息
 * */
	 int validById(
			 @Param("valid")Integer valid,
			 @Param("ids")String[] ids);

##ProjectMapper.xml

<!-- 禁用或启用项目信息
        valid 表示状态值
        ids对应dao层方法中的数组参数
    -->
   <update id="validById">
       update tms_projects
       set valid=#{valid}
       where id in 
       <!-- 通过动态sql拼接(1,2,3,4)这样格式的数据 -->
       <foreach collection="ids" 
                open="(" 
                close=")"
                item="item"
                separator=",">
                #{item} <!-- ids中的一个元素 -->
       </foreach>
   </update>

##ProjectService及其实现类

/**
	  * @param valid 状态
	  * @param ids 由多个id构成的字符串
	  */
	 void validById(Integer valid,String ids);//"1,2,3,4";

//实现类
@Override
	public void validById(Integer valid, String ids) {
		//1.对数据进行业务验证
		if(valid!=0&&valid!=1)
		throw new ServiceException("valid的值不合法:valid="+valid);
		if(StringUtils.isEmpty(ids))
		throw new ServiceException("ids 的值不能为空");
		//2.对参数数据进行处理
		String[] idArray=ids.split(",");
		//3.执行业务更新操作
		int rows=projectDao.validById(valid, idArray);
		//4.验证结果的有效性
		if(rows==0)
		throw new ServiceException("修改失败");
	}

##ProjectController

/**禁用或启用项目信息*/
	  @RequestMapping("doValidById")
	  @ResponseBody
	  public void doValidById(Integer valid,
			  String ids){
		  projectService.validById(valid, ids);
	  }

##页面Js代码

$(document).ready(function(){
	//在查询按钮上注册点击事件
	 $("#queryFormId")
	 .on("click",".btn-search",doQueryObjects)
	 .on("click",".btn-valid,.btn-invalid",doValidById)
	 //页面加载完成执行数据的获取操作
	  doGetObjects();
})
/*禁用或启用项目信息*/
function doValidById(){//valid,ids
  //1.设置valid的值
  var valid;
  //1.1获得点击的button对象,根据点击对象的不同设置不同的valid
  /*var clazz=$(this).attr("class");
  if(clazz=="btn btn-primary btn-valid"){
	valid=1;  
  }*/
  if($(this).hasClass("btn-valid")){
	  valid=1;//启用
  }
  if($(this).hasClass("btn-invalid")){
	  valid=0;//禁用
  }
  //2.获得选中的checkbox的id值
  var ids="";//1,2,3,4
  $("#tbodyId input[name='checkId']")//迭代input对象
  .each(function(){//each函数用于迭代一个数组
	  if($(this).prop("checked")){//判定此input对象是否是选中的
		  if(ids==""){
			  ids+=$(this).val();
		  }else{
			  ids+=","+$(this).val();
		  }
	  }
  });
  //console.log("valid="+valid);
  //console.log("ids="+ids);
  if(ids==""){
	  alert("请至少选择一个");
	  return;
  }
  //3.发起异步请求,更新数据
  var url="project/doValidById.do";
  var params={
		  "valid":valid,
		  "ids":ids
  }
  $.post(url,params,function(){
	  //重新执行查询操作
	  doGetObjects();
  })
}
/*点击查询按钮时执行此方法*/
function doQueryObjects(){
	//1.初始化当前页码数据
	$("#pageId").data("pageCurrent",1);
	//2.根据条件查询数据
	doGetObjects();
}
/*获取项目信息*/
function doGetObjects(){
	//var url="project/doGetObjects.do";
	/*$.ajax({
		url:url,
		type:"get",
		dataType:"json",
		success:function(result){
		}
	});*/
	var url="project/doGetPageObjects.do"
	var pageCurrent=$("#pageId").data("pageCurrent");
	if(!pageCurrent)pageCurrent=1;//默认取第一页的数据
	var params={"pageCurrent":pageCurrent};
	//获得表单数据,并将其添加到params对象
	params.name=$("#searchNameId").val();
	params.valid=$("#searchValidId").val();
	console.log(params);//检测一下向服务端传递的数据
	//发起异步请求获取服务端数据
	$.getJSON(url,params,function(result){//callback method
		//console.log(result);//json对象
		//将数据显示在table的tbody位置
		setTableBodyRows(result.list);//map中的key对应的值
		//设置分页信息(函数定义在了page.js文件中)
		setPagination(result.pageObject);
	});
}
/*将数据填充在table对象的body中*/
function setTableBodyRows(data){//扩展作业
	 //1.获得tbody对象
	 var tBody=$("#tbodyId");
	 tBody.empty();
	 //2.迭代数据集result
	 //for(var i=0;i<result.length;i++){}
	 for(var i in data){
	 //2.1构建一个tr对象
	 var tr=$("<tr></tr>");
	 //2.2构建每行td对象(一行有多个)
	 //var td0=$("<td></td>");
	 //....
	 //2.3在td对象内容填充具体数据
	 //td0.append(result[id].id);
	 //....
	 var tds="<td><input type='checkbox' name='checkId' value='"+data[i].id+"'></td>"+
	         "<td>"+data[i].code+"</td>"+
	         "<td>"+data[i].name+"</td>"+
	         "<td>"+data[i].beginDate+"</td>"+
	         "<td>"+data[i].endDate+"</td>"+
	         "<td>"+(data[i].valid?"有效":"无效")+"</td>"+
	         "<td><input type='button'  class='btn btn-default' value='修改'/></td>";
	 //2.4将td添加到tr对象中(一行要放多个)
	 tr.append(tds);
	 //2.5将tr追加到tbody中
	 tBody.append(tr);
	 }
}





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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值