Browse Source

mybatis-plus

yufeng 3 years ago
parent
commit
0a760c6852

+ 1 - 0
.gitignore

@@ -13,3 +13,4 @@
13 13
 hs_err_pid*
14 14
 
15 15
 /target/
16
+.idea/

+ 0 - 6
.settings/org.eclipse.core.resources.prefs

@@ -1,6 +0,0 @@
1
-eclipse.preferences.version=1
2
-encoding//src/main/java=UTF-8
3
-encoding//src/main/resource=UTF-8
4
-encoding//src/main/resource/env/dev=UTF-8
5
-encoding//src/test/java=UTF-8
6
-encoding/<project>=UTF-8

+ 48 - 37
pom.xml

@@ -126,19 +126,45 @@
126 126
         </dependency>
127 127
 
128 128
         <!-- mybatis 包 -->
129
-        <dependency>
130
-            <groupId>org.mybatis</groupId>
131
-            <artifactId>mybatis</artifactId>
132
-            <version>3.4.5</version>
133
-        </dependency>
129
+<!--         <dependency> -->
130
+<!--             <groupId>org.mybatis</groupId> -->
131
+<!--             <artifactId>mybatis</artifactId> -->
132
+<!--             <version>3.4.5</version> -->
133
+<!--         </dependency> -->
134 134
 
135 135
         <!--mybatis spring 插件 -->
136
-        <dependency>
136
+<!--         <dependency> -->
137
+<!--             <groupId>org.mybatis</groupId> -->
138
+<!--             <artifactId>mybatis-spring</artifactId> -->
139
+<!--             <version>1.3.0</version> -->
140
+<!--         </dependency> -->
141
+
142
+		<dependency>
137 143
             <groupId>org.mybatis</groupId>
138
-            <artifactId>mybatis-spring</artifactId>
139
-            <version>1.3.0</version>
144
+            <artifactId>mybatis-typehandlers-jsr310</artifactId>
145
+            <version>1.0.2</version>
140 146
         </dependency>
141 147
 
148
+		<dependency>
149
+            <groupId>com.baomidou</groupId>
150
+            <artifactId>mybatis-plus-boot-starter</artifactId>
151
+            <version>3.2.0</version>
152
+        </dependency>
153
+        <dependency>
154
+            <groupId>com.baomidou</groupId>
155
+            <artifactId>mybatis-plus-generator</artifactId>
156
+            <version>3.2.0</version>
157
+        </dependency>
158
+        <dependency>
159
+            <groupId>com.baomidou</groupId>
160
+            <artifactId>mybatis-plus-extension</artifactId>
161
+            <version>3.2.0</version>
162
+        </dependency>
163
+        <dependency>
164
+            <groupId>org.freemarker</groupId>
165
+            <artifactId>freemarker</artifactId>
166
+            <version>2.3.29</version>
167
+        </dependency>
142 168
         <!-- mysql连接 -->
143 169
 
144 170
         <dependency>
@@ -175,12 +201,6 @@
175 201
         </dependency>
176 202
 
177 203
         <dependency>
178
-            <groupId>com.alibaba</groupId>
179
-            <artifactId>fastjson</artifactId>
180
-            <version>1.2.3</version>
181
-        </dependency>
182
-
183
-        <dependency>
184 204
             <groupId>com.fasterxml.jackson.core</groupId>
185 205
             <artifactId>jackson-annotations</artifactId>
186 206
             <version>${jackson.version}</version>
@@ -298,7 +318,7 @@
298 318
         <dependency>
299 319
             <groupId>com.alibaba</groupId>
300 320
             <artifactId>druid</artifactId>
301
-            <version>1.0.13</version>
321
+            <version>1.1.21</version>
302 322
         </dependency>
303 323
 
304 324
         <!-- https://mvnrepository.com/artifact/net.sf.ezmorph/ezmorph -->
@@ -386,12 +406,12 @@
386 406
             <version>1.2.17</version>
387 407
         </dependency>
388 408
 
389
-        <!-- https://mvnrepository.com/artifact/org.mybatis.caches/mybatis-memcached -->
390
-        <dependency>
391
-            <groupId>org.mybatis.caches</groupId>
392
-            <artifactId>mybatis-memcached</artifactId>
393
-            <version>1.0.0</version>
394
-        </dependency>
409
+<!--         https://mvnrepository.com/artifact/org.mybatis.caches/mybatis-memcached -->
410
+<!--         <dependency> -->
411
+<!--             <groupId>org.mybatis.caches</groupId> -->
412
+<!--             <artifactId>mybatis-memcached</artifactId> -->
413
+<!--             <version>1.0.0</version> -->
414
+<!--         </dependency> -->
395 415
 
396 416
         <!-- https://mvnrepository.com/artifact/ognl/ognl -->
397 417
         <dependency>
@@ -468,22 +488,6 @@
468 488
         </dependency>
469 489
         
470 490
         <dependency>
471
-            <groupId>com.baomidou</groupId>
472
-            <artifactId>mybatis-plus-boot-starter</artifactId>
473
-            <version>3.2.0</version>
474
-        </dependency>
475
-        <dependency>
476
-            <groupId>com.baomidou</groupId>
477
-            <artifactId>mybatis-plus-generator</artifactId>
478
-            <version>3.2.0</version>
479
-        </dependency>
480
-        <dependency>
481
-            <groupId>org.freemarker</groupId>
482
-            <artifactId>freemarker</artifactId>
483
-            <version>2.3.29</version>
484
-        </dependency>
485
-
486
-        <dependency>
487 491
             <groupId>org.projectlombok</groupId>
488 492
             <artifactId>lombok</artifactId>
489 493
             <version>1.18.10</version>
@@ -511,6 +515,13 @@
511 515
             <artifactId>swagger-models</artifactId>
512 516
             <version>1.5.21</version>
513 517
         </dependency>
518
+        
519
+        <!-- fastjson -->
520
+        <dependency>
521
+            <groupId>com.alibaba</groupId>
522
+            <artifactId>fastjson</artifactId>
523
+            <version>1.2.61</version>
524
+        </dependency>
514 525
 
515 526
     </dependencies>
516 527
 

+ 53 - 3
src/main/java/com/ylcm/sys/controller/AdMediaController.java

@@ -1,9 +1,23 @@
1 1
 package com.ylcm.sys.controller;
2 2
 
3 3
 
4
+import javax.annotation.Resource;
5
+import javax.servlet.http.HttpServletRequest;
6
+import javax.servlet.http.HttpServletResponse;
7
+
8
+import org.apache.commons.lang.StringUtils;
9
+import org.springframework.stereotype.Controller;
10
+import org.springframework.ui.ModelMap;
4 11
 import org.springframework.web.bind.annotation.RequestMapping;
5 12
 
6
-import org.springframework.web.bind.annotation.RestController;
13
+import com.alibaba.fastjson.JSONObject;
14
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
15
+import com.baomidou.mybatisplus.core.metadata.IPage;
16
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
17
+import com.ylcm.sys.common.Constants;
18
+import com.ylcm.sys.domain.AdMedia;
19
+import com.ylcm.sys.service.AdMediaService;
20
+
7 21
 
8 22
 /**
9 23
  * <p>
@@ -13,8 +27,44 @@ import org.springframework.web.bind.annotation.RestController;
13 27
  * @author admin
14 28
  * @since 2020-07-01
15 29
  */
16
-@RestController
30
+@Controller
17 31
 @RequestMapping("/ad-media")
18
-public class AdMediaController {
32
+public class AdMediaController extends BaseController{
33
+	
34
+	@Resource
35
+	private AdMediaService adMediaService;
36
+
37
+    /**
38
+     * to 品牌型号管理
39
+     * */
40
+	@RequestMapping(value = "/index.do")
41
+    public String index(ModelMap model) {
42
+        // 菜单选中,和权限对应
43
+        model.put("menu", "brand_mng");
44
+        model.put("parentMenu", "ad_placement");
45
+        
46
+        return "admedia/index";
47
+    }
48
+	
49
+	@RequestMapping(value = "/ajax_list.do")
50
+    public void mediaList(String name, Integer rank, Integer pageSize, Integer pageNo, 
51
+    		HttpServletRequest request, HttpServletResponse response) {
52
+		JSONObject result = new JSONObject();
53
+        result.put("code", Constants.CODE_FAIL);
54
+        result.put("msg", "服务器异常");
55
+        
56
+        LambdaQueryWrapper<AdMedia> queryWrapper = new LambdaQueryWrapper<AdMedia>();
57
+        if (rank != null) {
58
+			queryWrapper.eq(AdMedia::getRank, rank);
59
+		}
60
+        if (StringUtils.isNotBlank(name)) {
61
+			queryWrapper.like(AdMedia::getName, name);
62
+		}
63
+        
64
+        IPage<AdMedia> page = adMediaService.page(new Page<AdMedia>(pageNo, pageSize));
19 65
 
66
+        result.put("list", page);
67
+        returnResult(request, response, result);
68
+    }
69
+	
20 70
 }

+ 4 - 6
src/main/java/com/ylcm/sys/controller/BaseController.java

@@ -8,14 +8,12 @@ import java.util.Map;
8 8
 import javax.servlet.http.HttpServletRequest;
9 9
 import javax.servlet.http.HttpServletResponse;
10 10
 
11
-import net.sf.json.JSONObject;
12
-
13 11
 import org.slf4j.Logger;
14 12
 import org.slf4j.LoggerFactory;
15 13
 
14
+import com.alibaba.fastjson.JSONObject;
16 15
 import com.ylcm.sys.common.Util;
17 16
 
18
-
19 17
 /**
20 18
  * BaseController
21 19
  */
@@ -53,10 +51,10 @@ public class BaseController {
53 51
 			response.setHeader("Pragma", "No-cache");
54 52
 			response.setHeader("Cache-Control", "no-cache");
55 53
 			response.setDateHeader("Expires", 0);
56
-			JSONObject resultJSON = JSONObject.fromObject(map); // 根据需要拼装json
54
+			JSONObject resultJSON = new JSONObject(map);
57 55
 			String jsonpCallback = request.getParameter("callback");// 客户端请求参数
58 56
 			PrintWriter out = response.getWriter();
59
-			out.println(jsonpCallback + "(" + resultJSON.toString(1, 1) + ")");// 返回jsonp格式数据
57
+			out.println(jsonpCallback + "(" + resultJSON.toJSONString() + ")");// 返回jsonp格式数据
60 58
 			out.flush();
61 59
 			out.close();
62 60
 		} catch (Exception e) {
@@ -76,7 +74,7 @@ public class BaseController {
76 74
 				response.setHeader("Cache-Control", "no-cache");
77 75
 				response.setDateHeader("Expires", 0);
78 76
 				out = response.getWriter();
79
-				out.println(jsonpCallback + "(" + resultJSON.toString(1, 1) + ")");// 返回jsonp格式数据
77
+				out.println(jsonpCallback + "(" + resultJSON.toJSONString() + ")");// 返回jsonp格式数据
80 78
 			}else{
81 79
 				response.setHeader("content-type", "json/javascript");
82 80
 				out = response.getWriter();

+ 1 - 4
src/main/java/com/ylcm/sys/multiple/MultipleDataSource.java

@@ -7,7 +7,7 @@ import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource;
7 7
  */
8 8
 public class MultipleDataSource extends AbstractRoutingDataSource {
9 9
 
10
-	private static final ThreadLocal<String> dataSourceKey = new InheritableThreadLocal<String>();
10
+	private static final ThreadLocal<String> dataSourceKey = new ThreadLocal<String>();
11 11
 
12 12
 	/**
13 13
 	 * 
@@ -15,7 +15,6 @@ public class MultipleDataSource extends AbstractRoutingDataSource {
15 15
 	 */
16 16
 	@Override
17 17
 	protected Object determineCurrentLookupKey() {
18
-//		System.out.println("nows:"+dataSourceKey.get());
19 18
 		return dataSourceKey.get();
20 19
 	}
21 20
 	
@@ -25,7 +24,6 @@ public class MultipleDataSource extends AbstractRoutingDataSource {
25 24
 	 */
26 25
 	public static void setDataSourceKey(String dataSource) {
27 26
 		dataSourceKey.set(dataSource);
28
-		System.out.println("set:"+dataSourceKey.get());
29 27
 	}
30 28
 
31 29
 	/**
@@ -33,7 +31,6 @@ public class MultipleDataSource extends AbstractRoutingDataSource {
33 31
 	 */
34 32
 	public static void removeDataSourceKey() {
35 33
 		dataSourceKey.remove();
36
-		System.out.println("remove:"+dataSourceKey.get());
37 34
 	}
38 35
 
39 36
 }

+ 16 - 4
src/main/resource/applicationContext-common.xml

@@ -116,7 +116,22 @@
116 116
 	<!-- ====================================================================================== -->
117 117
 	<!-- 配置 SqlMapClient -->
118 118
 	<!-- ====================================================================================== -->
119
-	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
119
+<!-- 	<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> -->
120
+<!-- 		<property name="dataSource" ref="multipleDataSource" /> -->
121
+<!-- 		<property name="mapperLocations"> -->
122
+<!-- 			<list> -->
123
+<!-- 				<value>classpath:mapper/*Mapper.xml</value> -->
124
+<!-- 			</list> -->
125
+<!-- 		</property> -->
126
+<!-- 		<property name="configLocation" value="classpath:mybatisConfig.xml" /> -->
127
+<!-- 	</bean> -->
128
+	
129
+	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
130
+		<property name="basePackage" value="com.ylcm.sys.mapper"></property>
131
+	</bean>
132
+	
133
+	<!-- mybatisplus -->
134
+	<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">
120 135
 		<property name="dataSource" ref="multipleDataSource" />
121 136
 		<property name="mapperLocations">
122 137
 			<list>
@@ -126,9 +141,6 @@
126 141
 		<property name="configLocation" value="classpath:mybatisConfig.xml" />
127 142
 	</bean>
128 143
 	
129
-	<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
130
-		<property name="basePackage" value="com.ylcm.sys.mapper"></property>
131
-	</bean>
132 144
 
133 145
 	<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
134 146
 		<!-- set the max upload size100MB -->

+ 4 - 3
src/main/resource/env/dev/application.properties

@@ -3,15 +3,16 @@
3 3
 #读写数据库
4 4
 jdbc.driver= com.mysql.jdbc.Driver
5 5
 jdbc.username=yxb
6
-jdbc.url=jdbc:mysql://121.41.17.212:3306/ylcm
6
+jdbc.url=jdbc:mysql://121.41.17.212:3306/yangguang
7 7
 jdbc.password=Biyu5YzU+6sxDRbmWEa3B2uUcImzDo0BuXjTlL505+/pTb+/0Oqd3ou1R6J8+9Fy3CYrM18nBDqf6wAaPgUGOg==
8 8
 #只读数据库“
9 9
 jdbc.readonly.driver = com.mysql.jdbc.Driver
10 10
 jdbc.readonly.username=yxb
11
-jdbc.readonly.url=jdbc:mysql://121.41.17.212:3306/ylcm
11
+jdbc.readonly.url=jdbc:mysql://121.41.17.212:3306/yangguang
12 12
 jdbc.readonly.password=Biyu5YzU+6sxDRbmWEa3B2uUcImzDo0BuXjTlL505+/pTb+/0Oqd3ou1R6J8+9Fy3CYrM18nBDqf6wAaPgUGOg==
13 13
 
14 14
 #连接
15 15
 initSize=10
16 16
 maxSize=100
17
-psCacheSize=30
17
+psCacheSize=30
18
+

+ 112 - 0
src/main/webapp/WEB-INF/jsp/admedia/index.jsp

@@ -0,0 +1,112 @@
1
+<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
2
+<%@ include file="../common/common.jsp"%>
3
+<title>媒体管理</title>
4
+</head>
5
+<link rel="stylesheet" type="text/css" href="${staticPath}webupload/progress.css">
6
+<body>
7
+<%@ include file="../common/head.jsp"%>
8
+<div class="screen main">
9
+    <%@ include file="../common/left.jsp" %>
10
+    <div class="main-content">
11
+        <div class="btn-radius">品牌型号管理</div>
12
+        <form name="dataForm" action="ajax_list.do" method="post">
13
+        <div class="search-group">
14
+            <input type="hidden" name="download" value="1" />
15
+            <div class="search-item">产品型号&nbsp;&nbsp;<input type="text" id="model" name="model" class="text {text:'请输入关键字'}" size="11" /></div>
16
+            <div class="search-item">品牌&nbsp;&nbsp;<input type="text" id="brand" name="brand" class="text {text:'请输入关键字'}" size="11" /></div>
17
+            <div class="search-item">广告主&nbsp;&nbsp;<input type="text" id="advertiser" name="advertiser" class="text {text:'请输入关键字'}" size="11" /></div>
18
+            <div class="search-item">
19
+                一级行业
20
+                <div class="select {width:120,onchange:onchangeByFirstInd}">
21
+                    <select id="firstInd" name="firstInd">
22
+                        <option value="">一级行业</option>
23
+                        <c:forEach items="${brandType1}" var="item">
24
+                           <option value="${item.number}">${item.name}</option>
25
+                        </c:forEach>
26
+                    </select>
27
+                </div>
28
+            </div>
29
+            <div class="search-item">
30
+                二级行业
31
+                <div class="select">
32
+                    <select id="secondInd" name="secondInd">
33
+                        <option value="">二级行业</option>
34
+                    </select>
35
+                </div>
36
+            </div>
37
+            <div class="search-item">
38
+                <a href="javascript:void(0);" onclick="getList(1)" class="btn-radius">搜 索</a>
39
+            </div>
40
+        </div>
41
+        </form>
42
+        <div class="rFloat buttons">
43
+            <c:if test="${funcMap['brand_add'] eq 1}">
44
+                <a href="javascript:platformModfiy('add','品牌型号信息');" class="btn">+新增</a>
45
+            </c:if>
46
+            <a href="${staticPath}excel/品牌导入模板.xlsx" class="btn">下载模板</a>
47
+            <c:if test="${funcMap['brand_import_excel'] eq 1}">
48
+                <span class="btn upfile">
49
+                <form id="fileForm" action="import_excel_for_advertise.do?type=1" method="post" enctype="multipart/form-data" target="hframe">
50
+                    <span class="webuploader-pick">导入表</span>
51
+                    <input type="file" name="excelfile" id="excelfile" onchange="importExcel()"; />
52
+                </form>
53
+                </span>
54
+            </c:if>
55
+            <c:if test="${funcMap['brand_import_pic'] eq 1}">
56
+                <div id="picker" class="btn"></div>
57
+            </c:if>
58
+            <c:if test="${funcMap['brand_export'] eq 1}">
59
+                <a href="javascript:document.dataForm.submit();" class="btn">导出</a>
60
+            </c:if>
61
+        </div>
62
+        已选 <span id="checkCount" class="orange">0</span> 条&nbsp;&nbsp;
63
+        <c:if test="${funcMap['brand_all_delete'] eq 1}">
64
+            <a href="javascript:void(0);" onclick="delRecordBatch()" class="btn del">批量删除</a>
65
+        </c:if>
66
+        <table class="table mTop10" cellpadding="0" cellspacing="0">
67
+            <thead>
68
+                <tr>
69
+                    <th width="44"><input type="checkbox" class="checkbox checkbox-white {click:checkAll}" name="all" value="" /></th>
70
+                    <th>产品型号</th>
71
+                    <th width="98" class="nop">产品LOGO</th>
72
+                    <th>所属品牌</th>
73
+                    <th width="98" class="nop">品牌LOGO</th>
74
+                    <th>广告主</th>
75
+                    <th>一级行业</th>
76
+                    <th>二级行业</th>
77
+                    <th width="98">操作</th>
78
+                </tr>
79
+            </thead>
80
+            <tbody id="list"></tbody>
81
+        </table>
82
+        <div class="mTop20">
83
+            <div id="page" class="rFloat"></div>
84
+            累计 <span id="count" class="orange">10</span> 条
85
+        </div>
86
+    </div>
87
+    <div class="clear"></div>
88
+</div>
89
+<iframe name="hframe" style="display: none;"></iframe>
90
+<%@ include file="../common/footer.jsp"%>
91
+<script type="text/javascript" src="${staticPath}webupload/webuploader.min.js"></script>
92
+<script type="text/javascript" src="${staticPath}webupload/upload.js"></script>
93
+<script type="text/javascript" src="${staticPath}js/admedia/admedia.js"></script>
94
+<script type="text/javascript">
95
+var update_flag = "${funcMap['brand_import_pic']}",delete_flag = "${funcMap['brand_import_pic']}";
96
+$(function(){
97
+    $.resetText();
98
+    $(".text").input();
99
+    $(".select").uiSelect();
100
+    $.checkbox();
101
+    getList(1);
102
+    /*上传rar按钮初始化*/
103
+    uploadRar('picker', '导入图片', 2, true, null, null,true,"myCallbcak");
104
+})
105
+function myCallbcak(url){
106
+    alert("导入完成。", 1, function(){
107
+        getList(1);
108
+    });
109
+}
110
+</script>
111
+</body>
112
+</html>

+ 1 - 1
src/main/webapp/WEB-INF/jsp/common/footer.jsp

@@ -1,4 +1,4 @@
1 1
 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
2 2
 <div class="footer">
3
-	<img src="static/img/footer_logo.png" onerror="this.src='static/img/noimg.jpg';"/><br />版权  Copyright &copy; 2018 INLY All Rights Reserved.
3
+	<img src="${staticPath}img/footer_logo.png" onerror="this.src='${staticPath}img/noimg.jpg';"/><br />版权  Copyright &copy; 2018 INLY All Rights Reserved.
4 4
 </div>

+ 191 - 0
src/main/webapp/static/js/admedia/admedia.js

@@ -0,0 +1,191 @@
1
+// 获取表格数据
2
+function getList(page){
3
+	page = page || 1;
4
+	var firstInd = $("#firstInd option:selected").text();
5
+	var pageSize = 10, data = {
6
+		"brand" : $("#brand").val(),
7
+		"model" : $("#model").val(),
8
+		"advertiser" : $("#advertiser").val(),
9
+		"firstInd" : ( firstInd == "一级行业" ? "" : firstInd),
10
+		"secondInd" : $("#secondInd option:selected").val(),
11
+		"pageNo" : page,
12
+	    "pageSize" : pageSize
13
+	}, html = "";
14
+		
15
+	$("#page, #list").empty();
16
+	ajax("ajax_list.do", data, function(res){
17
+		if (res.code == 1 && res.list.length > 0){
18
+			$.each(res.list, function(index, item){
19
+				html += '<tr>'+
20
+					'<td><input type="checkbox" class="checkbox {click:itemCheck}" name="chk" value="'+item.id+'" /><label></label></td>'+
21
+					'<td>'+item.model.toNull()+'</td>'+
22
+    				'<td class="nop">'+(item.modelImgUrl ? '<img src="'+item.modelImgUrl.toNull()+'" width="98" height="58" valign="middle" onerror="this.src=\'static/img/noimg.jpg\'"/>':'&nbsp;')+'</td>'+
23
+					'<td>'+item.brand.toNull()+'</td>'+
24
+    				'<td class="nop">'+(item.brandImgUrl ? '<img src="'+item.brandImgUrl.toNull()+'" width="98" height="58" valign="middle" onerror="this.src=\'static/img/noimg.jpg\'"/>':'&nbsp;')+'</td>'+
25
+					'<td>'+item.advertiser.toNull()+'</td>'+
26
+					'<td>'+item.firstInd.toNull()+'</td>'+
27
+					'<td>'+item.secondInd.toNull()+'</td>'+
28
+					'<td class="edit">'+
29
+    					(update_flag == 1 ? '<a href="javascript:platformModfiy(\'edit\',\'品牌型号信息\','+item.id+');">编辑</a><br />' : '') +
30
+    					(delete_flag == 1 ? '<a href="javascript:delRecord('+item.id+');">删除</a>' : '' ) +
31
+					'</td>'+
32
+				'</tr>';
33
+			});
34
+			$("#list").html(html);
35
+			$.checkbox();
36
+			$("#count").text(res.count);
37
+			var newpage = new createPage(res.count, page, pageSize, 3);
38
+			$("#page").html(newpage.pageHtml);
39
+		} else {
40
+			$("#list").info("暂无数据。");
41
+		}
42
+	});
43
+}
44
+pageGo = function(page){
45
+	resetCheckAll();
46
+	getList(page);
47
+}
48
+
49
+// 删除单个
50
+function delRecord(id){
51
+	confirm("确定删除该条记录吗?", function(){
52
+        ajax("del_brand.do", {"id" : id}, function(res){
53
+            if (res.code == 1){
54
+    			alert("删除成功。", 1, function(){
55
+    				window.location.href = "brand_list.do";
56
+    			});
57
+            } else {
58
+            	alert(res.msg);
59
+            }
60
+        });
61
+	});
62
+}
63
+
64
+// 删除多个
65
+function delRecordBatch(){
66
+	var arr = document.getElementsByName("chk");
67
+	var ids = "";
68
+	for (i=0; i<arr.length; i++){
69
+		if (arr[i].checked){
70
+			ids += ("," + arr[i].value);
71
+		}
72
+	}
73
+	if (ids.isEmpty()){
74
+		alert("请至少选择一条记录");
75
+		return false;
76
+	}
77
+	confirm("确定删除这些记录吗?", function(){
78
+        ajax("batch_del_for_brand.do", {"ids" : ids.substring(1,ids.length)}, function(res){
79
+            if (res.code == 1){
80
+    			alert("删除成功。", 1, function(){
81
+    				window.location.href = "brand_list.do";
82
+    			});
83
+            } else {
84
+            	alert(res.msg);
85
+            }
86
+        });
87
+	});
88
+}
89
+
90
+// 导入表格数据
91
+function importExcel(obj){
92
+    $("#fileForm").submit();
93
+}
94
+
95
+// 导入结果
96
+function excelCallback(code, msg) {
97
+    if (code == 1) {
98
+        // 导入成功
99
+    	alert("导入成功。", 1, function(){
100
+			window.location.href = "brand_list.do";
101
+		});
102
+    } else {
103
+    	// 导入失败
104
+    	alert(msg, 0, function(){
105
+        	location.reload();
106
+		});
107
+    }
108
+}
109
+
110
+// 保存品牌型号信息
111
+function save(){
112
+	// 得到数据
113
+    var data = $('#dataForm').serializeJSON();
114
+    data.id = $.getParam("id");
115
+    data.firstInd = $("select[name='firstInd']>option:selected").text();
116
+    data.modelImgUrl = $("#modelImgUrl")[0].src;
117
+    data.brandImgUrl = $("#brandImgUrl")[0].src;
118
+    console.log(data);
119
+    // 数据是否完整
120
+    if (data['model'].isEmpty()){
121
+    	top.alert("请填写产品型号", 0, function(){
122
+            $("input[name='model']").focus();
123
+        });
124
+        return false;
125
+    }
126
+    if (data['modelImgUrl'].isEmpty() || data['modelImgUrl'].indexOf("ylcm_sys") > 1){
127
+    	top.alert("请上传产品LOGO");
128
+        return false;
129
+    }
130
+    if (data['brand'].isEmpty()){
131
+    	top.alert("请填写所属品牌", 0, function(){
132
+            $("input[name='brand']").focus();
133
+        });
134
+        return false;
135
+    }
136
+    if (data['brandImgUrl'].isEmpty() || data['brandImgUrl'].indexOf("ylcm_sys") > 1){
137
+    	top.alert("请上传品牌LOGO");
138
+        return false;
139
+    }
140
+    if (data['advertiser'].isEmpty()){
141
+    	top.alert("请填写广告主", 0, function(){
142
+            $("input[name='advertiser']").focus();
143
+        });
144
+        return false;
145
+    }
146
+    if (data['firstInd'].isEmpty() || data['firstInd'] == "下拉选择"){
147
+    	top.alert("请选择一级行业");
148
+        return false;
149
+    }
150
+    if (data['secondInd'].isEmpty()){
151
+    	top.alert("请选择二级行业");
152
+        return false;
153
+    }
154
+    // 提交数据
155
+    top.ajax("save_brand_info.do", data, function(res){
156
+        if (res.code == 1){
157
+            top.alert("保存成功。", 1, function(){
158
+            	top.getList(1);
159
+            	top.$.closeWindow();
160
+            });
161
+        } else {
162
+            top.alert(res.msg);
163
+        }
164
+    });
165
+}
166
+
167
+// 弹窗
168
+function platformModfiy(act, title, id){
169
+	title = title || "";
170
+	id = id || "";
171
+	$.openWindow(act.decode("add","新增","edit","修改","")+title, "brand_info.do?id="+id, 500, 470, true);
172
+}
173
+// 切换,一级行业
174
+function onchangeByFirstInd(secondIndName){
175
+	var html = "", number = $("select[name='firstInd']>option:selected").val();
176
+	if(number.isEmpty()){
177
+		html = '<option value="">二级行业</option>';
178
+		$("select[name='secondInd']").html(html);
179
+		$(".select").uiSelect();
180
+		return false;
181
+	}
182
+	ajax({url:"ajax_brand_type.do",data:{"number":number},callBack:function(res){
183
+		if(res.code == 1 && res.list.length > 0){
184
+			$.each(res.list,function(index, item){
185
+				html+='<option value="'+item.name+'" '+(item.name == secondIndName ? " selected":"")+'>'+item.name+'</option>';
186
+			});
187
+			$("select[name='secondInd']").html(html);
188
+			$(".select").uiSelect();
189
+		}
190
+	},load:false});
191
+}

+ 136 - 0
yangguang.iml

@@ -0,0 +1,136 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
3
+  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
4
+    <output url="file://$MODULE_DIR$/target/classes" />
5
+    <output-test url="file://$MODULE_DIR$/target/test-classes" />
6
+    <content url="file://$MODULE_DIR$">
7
+      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
8
+      <sourceFolder url="file://$MODULE_DIR$/src/main/resource" type="java-resource" />
9
+      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
10
+      <excludeFolder url="file://$MODULE_DIR$/target" />
11
+    </content>
12
+    <orderEntry type="inheritedJdk" />
13
+    <orderEntry type="sourceFolder" forTests="false" />
14
+    <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
15
+    <orderEntry type="library" name="Maven: org.springframework:spring-core:4.3.14.RELEASE" level="project" />
16
+    <orderEntry type="library" name="Maven: org.springframework:spring-beans:4.3.14.RELEASE" level="project" />
17
+    <orderEntry type="library" name="Maven: org.springframework:spring-context:4.3.14.RELEASE" level="project" />
18
+    <orderEntry type="library" name="Maven: org.springframework:spring-tx:4.3.14.RELEASE" level="project" />
19
+    <orderEntry type="library" name="Maven: org.springframework:spring-web:4.3.14.RELEASE" level="project" />
20
+    <orderEntry type="library" name="Maven: org.springframework:spring-webmvc:4.3.14.RELEASE" level="project" />
21
+    <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.3.14.RELEASE" level="project" />
22
+    <orderEntry type="library" name="Maven: org.springframework:spring-test:4.3.14.RELEASE" level="project" />
23
+    <orderEntry type="library" name="Maven: org.springframework:spring-aop:4.3.14.RELEASE" level="project" />
24
+    <orderEntry type="library" name="Maven: org.springframework:spring-aspects:4.3.14.RELEASE" level="project" />
25
+    <orderEntry type="library" name="Maven: org.springframework:spring-context-support:4.3.14.RELEASE" level="project" />
26
+    <orderEntry type="library" name="Maven: org.springframework:spring-expression:4.3.14.RELEASE" level="project" />
27
+    <orderEntry type="library" name="Maven: org.springframework:spring-orm:4.3.14.RELEASE" level="project" />
28
+    <orderEntry type="library" name="Maven: org.mybatis:mybatis:3.4.5" level="project" />
29
+    <orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:1.3.0" level="project" />
30
+    <orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.6" level="project" />
31
+    <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.8.4" level="project" />
32
+    <orderEntry type="library" name="Maven: javax.servlet:javax.servlet-api:3.0.1" level="project" />
33
+    <orderEntry type="library" name="Maven: javax.servlet:jstl:1.2" level="project" />
34
+    <orderEntry type="library" name="Maven: com.aliyun:aliyun-java-sdk-sts:2.1.6" level="project" />
35
+    <orderEntry type="library" name="Maven: com.aliyun.oss:aliyun-sdk-oss:2.0.6" level="project" />
36
+    <orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" />
37
+    <orderEntry type="library" name="Maven: commons-beanutils:commons-beanutils:1.7.0" level="project" />
38
+    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.10" level="project" />
39
+    <orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.1" level="project" />
40
+    <orderEntry type="library" name="Maven: commons-collections:commons-collections:3.2.1" level="project" />
41
+    <orderEntry type="library" name="Maven: commons-dbcp:commons-dbcp:1.4" level="project" />
42
+    <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.2.2" level="project" />
43
+    <orderEntry type="library" name="Maven: commons-io:commons-io:2.4" level="project" />
44
+    <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
45
+    <orderEntry type="library" name="Maven: commons-logging:commons-logging:1.1.1" level="project" />
46
+    <orderEntry type="library" name="Maven: commons-pool:commons-pool:1.6" level="project" />
47
+    <orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" />
48
+    <orderEntry type="library" name="Maven: xml-apis:xml-apis:1.0.b2" level="project" />
49
+    <orderEntry type="library" name="Maven: com.alibaba:druid:1.0.13" level="project" />
50
+    <orderEntry type="module-library">
51
+      <library name="Maven: com.alibaba:jconsole:1.8.0">
52
+        <CLASSES>
53
+          <root url="jar://D:/java/JDK/lib/jconsole.jar!/" />
54
+        </CLASSES>
55
+        <JAVADOC />
56
+        <SOURCES />
57
+      </library>
58
+    </orderEntry>
59
+    <orderEntry type="module-library">
60
+      <library name="Maven: com.alibaba:tools:1.8.0">
61
+        <CLASSES>
62
+          <root url="jar://D:/java/JDK/lib/tools.jar!/" />
63
+        </CLASSES>
64
+        <JAVADOC />
65
+        <SOURCES />
66
+      </library>
67
+    </orderEntry>
68
+    <orderEntry type="library" name="Maven: net.sf.ezmorph:ezmorph:1.0.6" level="project" />
69
+    <orderEntry type="library" name="Maven: org.gnu:gnu-crypto:2.0.1" level="project" />
70
+    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
71
+    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.2" level="project" />
72
+    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.6" level="project" />
73
+    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpmime:4.5.2" level="project" />
74
+    <orderEntry type="library" name="Maven: com.github.axet:java-unrar:1.7.0-8" level="project" />
75
+    <orderEntry type="library" name="Maven: org.jdom:jdom:1.1" level="project" />
76
+    <orderEntry type="library" name="Maven: net.sf.json-lib:json-lib:jdk15:2.4" level="project" />
77
+    <orderEntry type="library" name="Maven: javax.transaction:jta:1.1" level="project" />
78
+    <orderEntry type="library" name="Maven: net.sourceforge.jexcelapi:jxl:2.6.12" level="project" />
79
+    <orderEntry type="library" name="Maven: log4j:log4j:1.2.17" level="project" />
80
+    <orderEntry type="library" name="Maven: org.mybatis.caches:mybatis-memcached:1.0.0" level="project" />
81
+    <orderEntry type="library" name="Maven: net.spy:spymemcached:2.10.6" level="project" />
82
+    <orderEntry type="library" name="Maven: ognl:ognl:2.6.7" level="project" />
83
+    <orderEntry type="library" name="Maven: org.apache.poi:poi:3.15" level="project" />
84
+    <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.15" level="project" />
85
+    <orderEntry type="library" name="Maven: com.github.virtuald:curvesapi:1.04" level="project" />
86
+    <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.15" level="project" />
87
+    <orderEntry type="library" name="Maven: org.apache.poi:poi-scratchpad:3.15" level="project" />
88
+    <orderEntry type="library" name="Maven: org.apache.poi:poi-excelant:3.15" level="project" />
89
+    <orderEntry type="library" name="Maven: org.apache.ant:ant:1.8.2" level="project" />
90
+    <orderEntry type="library" name="Maven: org.apache.ant:ant-launcher:1.8.2" level="project" />
91
+    <orderEntry type="library" name="Maven: org.apache.poi:poi-examples:3.15" level="project" />
92
+    <orderEntry type="library" name="Maven: taglibs:standard:1.1.2" level="project" />
93
+    <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" />
94
+    <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" />
95
+    <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.25" level="project" />
96
+    <orderEntry type="library" name="Maven: org.slf4j:slf4j-log4j12:1.7.21" level="project" />
97
+    <orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-boot-starter:3.2.0" level="project" />
98
+    <orderEntry type="library" name="Maven: com.baomidou:mybatis-plus:3.2.0" level="project" />
99
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.1.6.RELEASE" level="project" />
100
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.1.6.RELEASE" level="project" />
101
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.1.6.RELEASE" level="project" />
102
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.1.6.RELEASE" level="project" />
103
+    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.1.6.RELEASE" level="project" />
104
+    <orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" />
105
+    <orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
106
+    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.11.2" level="project" />
107
+    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.11.2" level="project" />
108
+    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.26" level="project" />
109
+    <orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
110
+    <orderEntry type="library" scope="RUNTIME" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
111
+    <orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.2.0" level="project" />
112
+    <orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-generator:3.2.0" level="project" />
113
+    <orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-extension:3.2.0" level="project" />
114
+    <orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-core:3.2.0" level="project" />
115
+    <orderEntry type="library" name="Maven: com.baomidou:mybatis-plus-annotation:3.2.0" level="project" />
116
+    <orderEntry type="library" name="Maven: com.github.jsqlparser:jsqlparser:2.1" level="project" />
117
+    <orderEntry type="library" name="Maven: org.freemarker:freemarker:2.3.29" level="project" />
118
+    <orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.10" level="project" />
119
+    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.9.2" level="project" />
120
+    <orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.9.2" level="project" />
121
+    <orderEntry type="library" name="Maven: io.springfox:springfox-core:2.9.2" level="project" />
122
+    <orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.8.12" level="project" />
123
+    <orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.9.2" level="project" />
124
+    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger-common:2.9.2" level="project" />
125
+    <orderEntry type="library" name="Maven: io.springfox:springfox-spring-web:2.9.2" level="project" />
126
+    <orderEntry type="library" name="Maven: com.google.guava:guava:20.0" level="project" />
127
+    <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.4.0" level="project" />
128
+    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" level="project" />
129
+    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
130
+    <orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.2.0.Final" level="project" />
131
+    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.9.2" level="project" />
132
+    <orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.5.21" level="project" />
133
+    <orderEntry type="library" name="Maven: io.swagger:swagger-models:1.5.21" level="project" />
134
+    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.9.5" level="project" />
135
+  </component>
136
+</module>