Browse Source

软文后台列表界面获取筛选功能所需数据

huangct 8 năm trước cách đây
mục cha
commit
34391286dd

+ 4 - 0
jpress-model/src/main/java/io/jpress/model/query/ContentQuery.java

@@ -905,4 +905,8 @@ public class ContentQuery extends JBaseQuery {
 		return datas;
 	}
 
+	public List<Content> findAuthorByModule(String module) {
+		return DAO.find("SELECT DISTINCT author from content WHERE module='" +module+ "'");
+	}
+
 }

+ 8 - 2
jpress-model/src/main/java/io/jpress/model/query/MetaDataQuery.java

@@ -15,11 +15,11 @@
  */
 package io.jpress.model.query;
 
+import io.jpress.model.Metadata;
+
 import java.math.BigInteger;
 import java.util.List;
 
-import io.jpress.model.Metadata;
-
 public class MetaDataQuery extends JBaseQuery {
 
 	protected static final Metadata DAO = new Metadata();
@@ -51,4 +51,10 @@ public class MetaDataQuery extends JBaseQuery {
 				"object_type = ? and object_id = ? and meta_key = ? ", type, id, key);
 
 	}
+
+	public List<Metadata> findListByModuleAndKey(String module, String key) {
+		return DAO.find("SELECT DISTINCT m.meta_value from metadata m LEFT JOIN content c on m.object_id=c.id\n" +
+				"where m.meta_key= '" +key+ "' and c.module= '" +module+ "' order by m.meta_value desc;");
+
+	}
 }

+ 10 - 6
jpress-model/src/main/java/io/jpress/model/query/TaxonomyQuery.java

@@ -15,18 +15,17 @@
  */
 package io.jpress.model.query;
 
-import java.math.BigInteger;
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-
 import com.jfinal.plugin.activerecord.Page;
 import com.jfinal.plugin.ehcache.IDataLoader;
-
 import io.jpress.model.ModelSorter;
 import io.jpress.model.Taxonomy;
 import io.jpress.utils.StringUtils;
 
+import java.math.BigInteger;
+import java.util.ArrayList;
+import java.util.LinkedList;
+import java.util.List;
+
 public class TaxonomyQuery extends JBaseQuery {
 
 	protected static final Taxonomy DAO = new Taxonomy();
@@ -217,4 +216,9 @@ public class TaxonomyQuery extends JBaseQuery {
 		return keyBuffer.toString().replace(" ", "");
 	}
 
+	public List<Taxonomy> findTagsByModule(String module) {
+		return DAO.find("SELECT DISTINCT title from taxonomy WHERE type='tag' and content_module='" +module+ "'");
+
+	}
+
 }

+ 42 - 4
jpress-web-admin/src/main/java/io/jpress/admin/controller/_ContentController.java

@@ -27,12 +27,10 @@ import io.jpress.interceptor.UCodeInterceptor;
 import io.jpress.message.Actions;
 import io.jpress.message.MessageKit;
 import io.jpress.model.Content;
+import io.jpress.model.Metadata;
 import io.jpress.model.Taxonomy;
 import io.jpress.model.User;
-import io.jpress.model.query.ContentQuery;
-import io.jpress.model.query.MappingQuery;
-import io.jpress.model.query.TaxonomyQuery;
-import io.jpress.model.query.UserQuery;
+import io.jpress.model.query.*;
 import io.jpress.model.router.ContentRouter;
 import io.jpress.router.RouterMapping;
 import io.jpress.router.RouterNotAllowConvert;
@@ -84,6 +82,13 @@ public class _ContentController extends JBaseCRUDController<Content> {
 		setAttr("normal_count", ContentQuery.me().findCountByModuleAndStatus(getModuleName(), Content.STATUS_NORMAL));
 		setAttr("count", ContentQuery.me().findCountInNormalByModule(getModuleName()));
 
+		if ("uuhelper".equals(getModuleName())) {
+			setAttr("push_time_list",getMetaDatas("push_time"));
+			setAttr("copy_right_list",getMetaDatas("copy_right"));
+			setAttr("author_list",getAuthors());
+			setAttr("tag_list",getTags());
+		}
+
 		setAttr("tids", getPara("tids"));
 		BigInteger[] tids = null;
 		String[] tidStrings = getPara("tids", "").split(",");
@@ -490,4 +495,37 @@ public class _ContentController extends JBaseCRUDController<Content> {
 		}
 	}
 
+	//uuhelper后台软文列表页筛选项获取所有元数据
+	private List<String> getMetaDatas(String metaKey) {
+		List<String> metaValues = new ArrayList<String>();
+		List<Metadata> metaDatas = new ArrayList<Metadata>();
+		metaDatas = MetaDataQuery.me().findListByModuleAndKey(getModuleName(), metaKey);
+		for (int i = 0; i < metaDatas.size(); i++) {
+			metaValues.add(metaDatas.get(i).getMetaValue());
+		}
+		return metaValues;
+	}
+
+	//uuhelper后台软文列表页筛选项获取所有作者
+	private List<String> getAuthors() {
+		List<String> authors = new ArrayList<String>();
+		List<Content> contents = new ArrayList<Content>();
+		contents = ContentQuery.me().findAuthorByModule(getModuleName());
+		for (int i = 0; i < contents.size(); i++) {
+			authors.add(contents.get(i).getAuthor());
+		}
+		return authors;
+	}
+
+	//uuhelper后台软文列表页筛选项获取所有类别(即所有tag标签)
+	private List<String> getTags() {
+		List<String> tags = new ArrayList<String>();
+		List<Taxonomy> taxonomys = new ArrayList<Taxonomy>();
+		taxonomys = TaxonomyQuery.me().findTagsByModule(getModuleName());
+		for (int i = 0; i < taxonomys.size(); i++) {
+			tags.add(taxonomys.get(i).getTitle());
+		}
+		return tags;
+	}
+
 }

+ 31 - 41
jpress-web-admin/src/main/webapp/WEB-INF/admin/content/_index_include.html

@@ -108,64 +108,54 @@
 							<td><input name="dataItem" onclick="checkAll(this)" type="checkbox" value="0"></td>
 							<td></td>
 							<td class="chooseUas">
-								<input type="text" value="1">
+								<input type="text" value="">
 								<ul>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
+									<#if push_time_list??>
+										<#list push_time_list as push_time>
+											<li>${push_time!}</li>
+										</#list>
+									</#if>
 								</ul>
 							</td>
 							<td class="chooseUas">
-								<input type="text" value="2">
+								<input type="text" value="">
 								<ul>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
+									<#if author_list??>
+										<#list author_list as author>
+											<li>${author!}</li>
+										</#list>
+									</#if>
 								</ul>
 							</td>
 							<td class="chooseUas">
-								<input type="text" value="3">
+								<input type="text" value="">
 								<ul>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
+									<#if copy_right_list??>
+										<#list copy_right_list as copy_right>
+											<li>${copy_right!}</li>
+										</#list>
+									</#if>
 								</ul>
 							</td>
 							<td class="chooseUas">
-								<input type="text" value="5">
+								<input type="text" value="">
 								<ul>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
+									<#if tag_list??>
+										<#list tag_list as tag>
+											<li>${tag!}</li>
+										</#list>
+									</#if>
 								</ul>
 							</td>
 							<td class="chooseUas">
-								<input type="text" value="6">
+								<input type="text" value="">
 								<ul>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
-									<li>全部</li>
+									<li>全部1</li>
+									<li>全部2</li>
+									<li>全部3</li>
+									<li>全部4</li>
+									<li>全部5</li>
+									<li>全部6</li>
 								</ul>
 							</td>
 						</tr>