【原】 Springboot Thymeleaf JQuery 实现金额检索查询

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31653405/article/details/82984170
标效果预览 -1 
效果预览 - 2

一、前端页面代码

(1)、HTML

<script type="text/javascript" src="/lib/layui/layui.js" charset="utf-8"></script>

  <table class="layui-table" id="sortable" style="-webkit-text-size-adjust:none; font-size:10px;">
      <thead>
          <tr>
              <th class="sort-alpha" th:text="#{usermoneydetail.userId}"></th>
              <th class="sort-numeric" th:text="#{usermoneydetail.userName}"> </th>
              <th class="sort-numeric" th:text="#{usermoneydetail.userState}"></th>
              <th class="sort-numeric" th:text="#{usermoneydetail.userMoney}"> </th>
              <th class="sort-numeric" th:text="#{usermoneydetail.detailType}"> </th>
               <th class="sort-numeric" th:text="#{usermoneydetail.createTime}"> </th>
           </tr>
       </thead>
        <tbody>
          <tr th:each="list : ${list}">
              <td><span th:text="${list.userId}"></span></td>
              <td><span th:text="${list.userName}"></span></td>
               <td> 
                   <span th:if="${list.userState=='0'}" th:text="#{usermoneydetail.userZeroStar} "> </span>
		            <span th:if="${list.userState=='1'}" th:text="#{usermoneydetail.userOneStar}"></span>
		            <span th:if="${list.userState=='2'}" th:text="#{usermoneydetail.userTwoStar}"></span>
		             <span th:if="${list.userState=='4'}" th:text="#{usermoneydetail.userFourStar}"></span>
		             <span th:if="${list.userState=='5'}" th:text="#{usermoneydetail.userFiveStar}"></span>
		                               - (<span th:text="${list.userState}"></span>)
               </td>
               <td><span th:text="${list.userDetailMoney}"></span></td>
				<td>
		            <span th:if="${list.detailTypes=='1'}" th:text="#{usermoneydetail.reflect}"></span>
		             <span th:if="${list.detailTypes=='2'}" th:text="#{usermoneydetail.consumpte}"></span>
		            <span th:if="${list.detailTypes=='3'}" th:text="#{usermoneydetail.levelaward}"></span>
		            <span th:if="${list.detailTypes=='4'}" th:text="#{usermoneydetail.sharebonusaward}"></span>
		            <span th:if="${list.detailTypes=='5'}" th:text="#{usermoneydetail.rerememberaward}"></span>
		            <span th:if="${list.detailTypes=='6'}" th:text="#{usermoneydetail.welfareaward}"></span>
                </td>
                 <td><span th:text="${#dates.format(list.createTime, 'yyyy-MM-dd hh:mm:ss')}"></span></td>
               </tr>
            </tbody>
   </table>






<div class="basic">
			    <!-- 饼图 -->
     <div id='main3' style='width:50%;height:450px;float: left;margin-left:10px;'></div>
			     <!-- 条形图 -->
    <div id='main2' style='width:45%;height:450px;float:right;margin-right:0px;'></div>
</div>

(2)、 JS

/**查询按钮**/
	    function searchUserMoneyDetail(){
	    var userName = $("#userName").val();
	 		$.ajax({
	 			 url : '/systemUserMoneyDetail/linkUserMoneyDetail', 
	 			 type : 'get',  
	 			 dataType : 'json',
	 			 async: false,
	 			 data : {'userName':userName},
	 			 success : function(data){
	 			   	    		
                 }
	 		});
	 	 }
	    	 

二、后台Spring接收代码

        /***
		 * 资金明细 - 所有用户 资金信息记录 -- 用户根据条件选定时
		 * @return
		 * @throws Exception 
		 */
		@ResponseBody
		@RequestMapping(value = "/linkUserMoneyDetail",method = RequestMethod.GET)
		public Map<String, Object> productListSort(HttpSession session,HttpServletRequest request,HttpServletResponse response) throws Exception{
	    	Map<String, Object> map = new HashMap<String, Object>();
	     	
    		String  userName = request.getParameter("userName");
	    	String  userState = request.getParameter("userState");
	    	String  detailType = request.getParameter("detailType");
	    	String startTime = request.getParameter("startTime");
	    	String endTime = request.getParameter("endTime");
		
			//根据条件,查询匹配条件的用户资金明细记录
			List<DrpSystemUserMoneyDetail> MoneyList = userMoneyDetailService.linkUserMoneyDetail( userName, userState, detailType, startTime, endTime);
    	
			//根据条件,进行统计匹配条件中满足条件下的结果总数
			List<BigDecimal> bgSumMoneyBar = userMoneyDetailService.getSumMoneyBar( userName, userState, detailType, startTime, endTime );
			
			
		    map.put("MoneyList", MoneyList);
			map.put("bgSumMoneyBar", bgSumMoneyBar);
			return map;
		}
    /***
	 * 根据匹配条件,查询匹配的用户资金明细记录信息
	 * @throws ParseException 
	 */
	@Override
	public List<DrpSystemUserMoneyDetail> linkUserMoneyDetail(String userName,String userState, String detailType, String startTime,String endTime) throws ParseException {
		
		String sql = "  From DrpSystemUserMoneyDetail WHERE 1 = 1 ";//原始sql语句
		//List<Predicate> predicates = new ArrayList<Predicate>();
		
		//CriteriaBuilder cb = entityManager.getCriteriaBuilder();
        //CriteriaQuery<DrpSystemUserMoneyDetail> query = cb.createQuery(DrpSystemUserMoneyDetail.class);
        //Root<DrpSystemUserMoneyDetail> root = query.from(DrpSystemUserMoneyDetail.class);
         //where
        //Predicate Predicate1 = null;
        //用户名称
		if ( !userName.isEmpty() && userName != null && userName != "" ) {
			//Predicate Predicate2 = null;
			sql += " AND user_name LIKE '%" + userName + "%'";
			/*Predicate2 =  cb.equal(root.get("userName"), userName);
			if (Predicate2 != null) {
				Predicate1 = cb.and(Predicate1, Predicate2);
            } else {
            	Predicate1 = Predicate2;
            }
			predicates.add(Predicate1);
			query.where(predicates.toArray(new Predicate[predicates.size()]));*/
		}
		//用户星级级别
		if ( !userState.isEmpty() && userState != null && userState != "") {
			//Predicate Predicate2 = null;
			sql += " AND user_state = '" + userState + "'";
			/**Predicate2 = cb.equal( root.get("userState"), userState);
			if (Predicate2 != null) {
				Predicate1 = cb.and(Predicate1, Predicate2);
            } else {
            	Predicate1 = Predicate2;
            }
			predicates.add(Predicate1);
			query.where(predicates.toArray(new Predicate[predicates.size()]));*/
		}
		//用户流水明细
		if ( !detailType.isEmpty() && detailType != null && detailType != ""  ) {
			//Predicate Predicate2 = null;
			sql += " AND detail_types = '" + detailType +"'";
			/**Predicate2 = cb.equal( root.get("detailType"), detailType);
			if (Predicate2 != null) {
				Predicate1 = cb.and(Predicate1, Predicate2);
            } else {
            	Predicate1 = Predicate2;
            }
			predicates.add(Predicate1);
			query.where(predicates.toArray(new Predicate[predicates.size()]));*/
		}
		
		//创建时间
		if ( (startTime != null && !"".equals(startTime))&&(endTime != null && !"".equals(endTime)) ) {
			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
	    	//Date dateStartTime =  sdf.parse( startTime  );
	    	//Date dateEndTime =  sdf.parse( endTime  );
			//Predicate Predicate2 = null;
			sql += " AND  create_time BETWEEN '" + startTime + "' AND '" + endTime + "' ";
			/**Predicate2 = cb.equal( root.get("createTime"), dateCreateTime);
			if (Predicate2 != null) {
				Predicate1 = cb.and(Predicate1, Predicate2);
            } else {
            	Predicate1 = Predicate2;
            }
			predicates.add(Predicate1);
			query.where(predicates.toArray(new Predicate[predicates.size()]));*/
		}
		
		//根据时间进行排序
		sql += " ORDER BY create_time DESC";
		
		System.out.println(sql);
		
		@SuppressWarnings("unchecked")
		List<DrpSystemUserMoneyDetail> moneyDetailList = entityManager.createQuery(sql).getResultList();
		 
		return moneyDetailList;
	}

三、前端页面回调代码

    //时间日期格式化
	   function formatDate(createTime) {		
		   var d = new Date(createTime);		
		   var dformat = [ d.getFullYear(), d.getMonth() + 1, d.getDate() ].join('-') 		
		   + ' ' + [ 
		             d.getHours() < 10 ? ('0' +d.getHours()) : d.getHours(), 
				     d.getMinutes() < 10 ? ('0' + d.getMinutes() ) : d.getMinutes(), 
				     d.getSeconds() < 10 ? ('0' + d.getSeconds() ) : d.getSeconds()		  
				   ].join(':');
		   return dformat
   		} 

以上是自己整理的,并测试过,可以直接用

----------------------------------------------------------------------------------------------------------------

文章中,有问题,可以在评论区评论,一起探讨编程中奥秘!

----------------------------------------------------------------------------------------------------------------

来都来了,代码看都看了,那就留个言呗,可以互动下!

----------------------------------------------------------------------------------------------------------------

转载声明:本文为博主原创文章,未经博主允许不得转载

猜你喜欢

转载自blog.csdn.net/qq_31653405/article/details/82984170