Quellcode durchsuchen

集美宣教代码提交

liuwenbin vor 7 Jahren
Ursprung
Commit
447477e370

+ 2 - 2
edu-article/JkEdu/src/com/yihu/jk/api/ArticleApiTest.java

@ -55,12 +55,12 @@ public class ArticleApiTest {
		ArticleApi api = new ArticleApi();
		InterfaceMessage im = new InterfaceMessage();
		JSONObject obj = new JSONObject();
//		obj.put("firstLevelCategoryId","43");
		obj.put("firstLevelCategoryId","43");
//		obj.put("articleId","0");
//		obj.put("isAuthentication","1");
//		obj.put("secondLevelCategoryId","74889da6-955e-4454-870f-4da37b466264");
		obj.put("secondLevelCategoryId","74889da6-955e-4454-870f-4da37b466264");
//        obj.put("firstLevelCategoryName","健康文章");
//        obj.put("secondLevelCategoryName","孕检知识");
//		obj.put("insertTimeStart","1");

+ 87 - 61
edu-article/JkEdu/src/com/yihu/jk/dao/ArticleDao.java

@ -8,6 +8,7 @@ import com.common.json.JSONObject;
import com.coreframework.db.DB;
import com.coreframework.db.Sql;
import com.coreframework.util.AppConfig;
import com.yihu.jk.action.ArticleAction;
import com.yihu.jk.enums.ArticleSqlNameEnum;
import com.yihu.jk.enums.CategorySqlNameEnum;
import com.yihu.jk.enums.MyDatabaseEnum;
@ -18,12 +19,14 @@ import com.yihu.jk.vo.Article;
import com.yihu.jk.vo.ArticleStatistic;
import com.yihu.jk.vo.Category;
import com.yihu.jk.vo.OrgArticleVo;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
@Component
public class ArticleDao {
	private CategoryDao dao = new CategoryDao();
	static Logger log = Logger.getLogger(ArticleDao.class.getName());
	public List<ArticleStatistic> getArticleList(ArticleStatistic vo, int start, int pageSize) throws SQLException {
		Sql sql = DB.me().createSql(ArticleSqlNameEnum.getArticleList);
		StringBuffer param = new StringBuffer();
@ -548,6 +551,44 @@ public class ArticleDao {
		StringBuffer param = new StringBuffer();
		StringBuffer param2 = new StringBuffer();
		StringBuffer pageParam = new StringBuffer();
//		if (StringUtil.isNotEmpty(vo.getOperatorRoleLevel())) {
//			param.append(" and OperatorRoleLevel < ? ");
//			sql.addParamValue(vo.getOperatorRoleLevel());
//		}
		if (StringUtil.isNotEmpty(vo.getOperatorId())) {
			param.append(" and OperatorId ='"+vo.getOperatorId()+"' ");
		}
		if("1".equals(vo.getOperatorRoleLevel())){//省
//			param.append(" and OperatorRoleCode like '"+vo.getOperatorRoleCode().substring(0,3)+"%' ");
		}else if("2".equals(vo.getOperatorRoleLevel())){//市
			pageParam.append(" or (OperatorRoleLevel= 1 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,2)+"0000' ) ");
		}else if("3".equals(vo.getOperatorRoleLevel())){//区
			pageParam.append(" or (OperatorRoleLevel= 1 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,2)+"0000' ) ");
			pageParam.append(" or (OperatorRoleLevel= 2 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,4)+"00' ) ");
		}else if("4".equals(vo.getOperatorRoleLevel())){//社区、机构
			pageParam.append(" or (OperatorRoleLevel= 1 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,2)+"0000' ) ");
			pageParam.append(" or (OperatorRoleLevel= 2 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,4)+"00' ) ");
			pageParam.append(" or (OperatorRoleLevel= 3 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,6)+"' ) ");
		}
		pageParam.append(" or (OperatorRoleLevel= "+vo.getOperatorRoleLevel()+" and OperatorRoleCode = '"+vo.getOperatorRoleCode()+"' ) ");
		if(pageParam.toString().startsWith(" or")){
			param.append("and ("+pageParam.toString().substring(3)+")");
		}
		if(StringUtil.isNotEmpty(vo.getOperatorRoleLevel())){
			param.append(" and (UserScope <= ? ");
            sql.addParamValue(Integer.valueOf(vo.getOperatorRoleLevel())-1);
        }else{
			param.append(" and (UserScope <= 3 ");
//
        }
        param.append(" or  ( OperatorId='"+userCode+"' and UserScope=4 and RoleType = "+vo.getRoleType()+"))");
		if(StringUtil.isNotEmpty(vo.getRoleType())) {
			param.append(" and RoleType = ? ");
			sql.addParamValue(vo.getRoleType());
		}
		if (StringUtil.isNotEmpty(vo.getFirstLevelCategoryId())) {
			param.append(" and FirstLevelCategoryId = ? ");
			sql.addParamValue(vo.getFirstLevelCategoryId());
@ -556,6 +597,9 @@ public class ArticleDao {
			param.append(" and SecondLevelCategoryId = ? ");
			sql.addParamValue(vo.getSecondLevelCategoryId());
		}
		if (StringUtil.isNotEmpty(vo.getArticleTitle())) {
			param.append(" and ArticleTitle like '%"+vo.getArticleTitle()+"%' ");
		}
		if (StringUtil.isNotEmpty(vo.getStartTime())) {
			param.append(" and m.InsertTime >= ? ");
			sql.addParamValue(vo.getStartTime());
@ -572,39 +616,10 @@ public class ArticleDao {
			param.append(" and IsAuthentication = ? ");
			sql.addParamValue(vo.getIsAuthentication().intValue());
		}
		if (StringUtil.isNotEmpty(vo.getOperatorRoleLevel())) {
			param.append(" and OperatorRoleLevel >= ? ");
			sql.addParamValue(vo.getOperatorRoleLevel());
		}
		if (StringUtil.isNotEmpty(vo.getArticleTitle())) {
			param.append(" and ArticleTitle like '%"+vo.getArticleTitle()+"%' ");
		}
		if (StringUtil.isNotEmpty(vo.getOperatorId())) {
			param.append(" and OperatorId ='"+vo.getOperatorId()+"' ");
		}
		if("1".equals(vo.getOperatorRoleLevel())){//省
			param.append(" and OperatorRoleCode like '"+vo.getOperatorRoleCode().substring(0,3)+"%' ");
		}else if("2".equals(vo.getOperatorRoleLevel())){//市
			param.append(" and OperatorRoleCode like '"+vo.getOperatorRoleCode().substring(0,4)+"%' ");
		}else if("3".equals(vo.getOperatorRoleLevel())){//区
			param.append(" and OperatorRoleCode like '"+vo.getOperatorRoleCode().substring(0,6)+"%' ");
		}else if("4".equals(vo.getOperatorRoleLevel())){//社区、机构
			param.append(" and OperatorRoleCode = '"+vo.getOperatorRoleCode()+"' ");
		}
		if(StringUtil.isNotEmpty(vo.getOperatorRoleLevel())){
			param.append(" and UserScope <= ? ");
            sql.addParamValue(Integer.valueOf(vo.getOperatorRoleLevel())-1);
        }else{
            sql.addParamValue(3);
        }
		if(StringUtil.isNotEmpty(vo.getRoleType())) {
			param.append(" and RoleType = ? ");
			sql.addParamValue(vo.getRoleType());
		}
        if(StringUtil.isNotEmpty(userCode)){
			param2.append(" and  a.UserId='"+userCode+"'");
			param.append(" or  ( OperatorId='"+userCode+"' and UserScope=4 and RoleType = "+vo.getRoleType()+")");
//			param.append(" or  ( OperatorId='"+userCode+"' and UserScope=4 and RoleType = "+vo.getRoleType()+")");
		}
//		pageParam.append(" limit ").append(start * pageSize + "," + pageSize);
		sql.addVar("@Condition", param.toString());
@ -628,6 +643,8 @@ public class ArticleDao {
//			result = dao.getCategoryList( temp, 0, 1000);
//			one.setSecondLevelCategoryName(result.get("CategoryName")+"");
//		}
		log.info("queryArticlePcList:"+sql.toString());
		System.out.printf("queryArticlePcList:"+sql.toString());
		return DB.me().queryForJson(MyDatabaseEnum.JkEduDB, sql, start, pageSize);
	}
@ -645,6 +662,41 @@ public class ArticleDao {
		StringBuffer param = new StringBuffer();
		StringBuffer param2 = new StringBuffer();
		StringBuffer pageParam = new StringBuffer();
//		if (StringUtil.isNotEmpty(vo.getOperatorRoleLevel())) {
//			param.append(" and OperatorRoleLevel < ? ");
//			sql.addParamValue(vo.getOperatorRoleLevel());
//		}
		if (StringUtil.isNotEmpty(vo.getOperatorId())) {
			param.append(" and OperatorId ='"+vo.getOperatorId()+"' ");
		}
		if("1".equals(vo.getOperatorRoleLevel())){//省
//			param.append(" and OperatorRoleCode like '"+vo.getOperatorRoleCode().substring(0,3)+"%' ");
		}else if("2".equals(vo.getOperatorRoleLevel())){//市
			pageParam.append(" or (OperatorRoleLevel= 1 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,2)+"0000' ) ");
		}else if("3".equals(vo.getOperatorRoleLevel())){//区
			pageParam.append(" or (OperatorRoleLevel= 1 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,2)+"0000' ) ");
			pageParam.append(" or (OperatorRoleLevel= 2 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,4)+"00' ) ");
		}else if("4".equals(vo.getOperatorRoleLevel())){//社区、机构
			pageParam.append(" or (OperatorRoleLevel= 1 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,2)+"0000' ) ");
			pageParam.append(" or (OperatorRoleLevel= 2 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,4)+"00' ) ");
			pageParam.append(" or (OperatorRoleLevel= 3 and OperatorRoleCode = '"+vo.getOperatorRoleCode().substring(0,6)+"' ) ");
		}
		pageParam.append(" or (OperatorRoleLevel= "+vo.getOperatorRoleLevel()+" and OperatorRoleCode = '"+vo.getOperatorRoleCode()+"' ) ");
		if(pageParam.toString().startsWith(" or")){
			param.append("and ("+pageParam.toString().substring(3)+")");
		}
		if(StringUtil.isNotEmpty(vo.getOperatorRoleLevel())){
			param.append(" and (UserScope <= ? ");
			sql.addParamValue(Integer.valueOf(vo.getOperatorRoleLevel())-1);
		}else{
            param.append(" and (UserScope <= 3 ");
		}
		param.append(" or  ( OperatorId='"+userCode+"' and UserScope=4 and RoleType = "+vo.getRoleType()+"))");
		if(StringUtil.isNotEmpty(vo.getRoleType())) {
			param.append(" and RoleType = ? ");
			sql.addParamValue(vo.getRoleType());
		}
		if (StringUtil.isNotEmpty(vo.getFirstLevelCategoryId())) {
			param.append(" and FirstLevelCategoryId = ? ");
			sql.addParamValue(vo.getFirstLevelCategoryId());
@ -653,6 +705,9 @@ public class ArticleDao {
			param.append(" and SecondLevelCategoryId = ? ");
			sql.addParamValue(vo.getSecondLevelCategoryId());
		}
		if (StringUtil.isNotEmpty(vo.getArticleTitle())) {
			param.append(" and ArticleTitle like '%"+vo.getArticleTitle()+"%' ");
		}
		if (StringUtil.isNotEmpty(vo.getStartTime())) {
			param.append(" and m.InsertTime >= ? ");
			sql.addParamValue(vo.getStartTime());
@ -669,45 +724,16 @@ public class ArticleDao {
			param.append(" and IsAuthentication = ? ");
			sql.addParamValue(vo.getIsAuthentication().intValue());
		}
		if (StringUtil.isNotEmpty(vo.getOperatorRoleLevel())) {
			param.append(" and OperatorRoleLevel >= ? ");
			sql.addParamValue(vo.getOperatorRoleLevel());
		}
		if (StringUtil.isNotEmpty(vo.getArticleTitle())) {
			param.append(" and ArticleTitle like '%"+vo.getArticleTitle()+"%' ");
		}
		if (StringUtil.isNotEmpty(vo.getOperatorId())) {
			param.append(" and OperatorId ='"+vo.getOperatorId()+"' ");
		}
		if("1".equals(vo.getOperatorRoleLevel())){//省
			param.append(" and OperatorRoleCode like '"+vo.getOperatorRoleCode().substring(0,3)+"%' ");
		}else if("2".equals(vo.getOperatorRoleLevel())){//市
			param.append(" and OperatorRoleCode like '"+vo.getOperatorRoleCode().substring(0,4)+"%' ");
		}else if("3".equals(vo.getOperatorRoleLevel())){//区
			param.append(" and OperatorRoleCode like '"+vo.getOperatorRoleCode().substring(0,6)+"%' ");
		}else if("4".equals(vo.getOperatorRoleLevel())){//社区、机构
			param.append(" and OperatorRoleCode = '"+vo.getOperatorRoleCode()+"' ");
		}
		if(StringUtil.isNotEmpty(vo.getOperatorRoleLevel())){
			param.append(" and UserScope <= ? ");
			sql.addParamValue(Integer.valueOf(vo.getOperatorRoleLevel())-1);
		}else{
			sql.addParamValue(3);
		}
		if(StringUtil.isNotEmpty(vo.getRoleType())) {
			param.append(" and RoleType = ? ");
			sql.addParamValue(vo.getRoleType());
		}
		if(StringUtil.isNotEmpty(userCode)){
			param2.append(" and  a.UserId='"+userCode+"'");
			param.append(" or  ( OperatorId='"+userCode+"' and UserScope=4 and RoleType = "+vo.getRoleType()+")");
		}
		pageParam.append(" limit ").append(start * pageSize + "," + pageSize);
		sql.addVar("@Condition", param.toString());
		sql.addVar("@Condition2", param2.toString());
		sql.addVar("@PageParam", pageParam.toString());
		log.info("queryArticleAPPList:"+sql.toString());
		System.out.printf("queryArticleAPPList:"+sql.toString());
		List<Article> list = DB.me().queryForBeanList(MyDatabaseEnum.JkEduDB, sql,Article.class);
		return list;
//		Category temp = null;