예제 #1
0
 def genernate_xiezuozu_content(self, webpart):
     cache_key = "sbj" + str(self.subject.subjectId) + "_" + str(webpart.getSubjectWebpartId()) + self.cacheKeyFix
     content = cache.get(cache_key)
     if content != None:
         request.setAttribute(cache_key, content)
         return
     
     map = HashMap()
     qry = GroupQuery("""  g.groupName,g.groupId, g.groupIcon, g.groupTitle, g.createDate, g.groupIntroduce """)
     qry.subjectId = self.metaSubjectId
     qry.gradeId = self.metaGradeId
     new_group_list = qry.query_map(4)
     map.put("new_group_list", new_group_list)
     
     qry = GroupQuery("""  g.groupName,g.groupIcon, g.createDate, g.groupId, g.groupTitle, g.groupIntroduce """)
     qry.subjectId = self.metaSubjectId
     qry.gradeId = self.metaGradeId
     qry.orderType = 8
     hot_group_list = qry.query_map(4)
     map.put("hot_group_list", hot_group_list)
     
     Qry = GroupQuery("""  g.groupName,g.groupId, g.groupIcon, g.groupTitle, g.createDate, g.groupIntroduce """)
     qry.subjectId = self.metaSubjectId
     qry.gradeId = self.metaGradeId
     qry.isRecommend = True
     rcmd_group_list = qry.query_map(4)
     map.put("rcmd_group_list", rcmd_group_list)   
 
     map.put("subject", self.subject)
     map.put("SubjectRootUrl", self.subjectRootUrl)
     map.put("webpart", webpart)
     map.put("unitId", self.unitId)
     content = self.templateProcessor.processTemplate(map, "/WEB-INF/subjectpage/" + self.templateName + "/xiezuozu.ftl", "utf-8")
     request.setAttribute(cache_key, content)
     cache.put(cache_key, content)
예제 #2
0
    def query_group_list(self):
        qry = GroupQuery(
            """ g.groupId, g.groupIcon, g.groupTitle, g.createDate, g.userCount,g.parentId,
              g.visitCount, g.articleCount, g.topicCount, g.resourceCount, g.groupIntroduce,g.XKXDName,g.XKXDId,
              g.groupTags, subj.subjectName, grad.gradeName, sc.name as scName """
        )
        qry.subjectId = self.params.getIntParamZeroAsNull('subjectId')
        qry.categoryId = self.params.getIntParamZeroAsNull('categoryId')
        qry.gradeId = self.params.getIntParamZeroAsNull('gradeId')
        qry.k = self.params.getStringParam("k")
        if self.qrytype != None:
            if self.qrytype == "best":
                qry.isBestGroup = True
            if self.qrytype == "rcmd":
                qry.isRecommend = True
            if self.qrytype == "hot":
                qry.orderType = GroupQuery.ORDER_BY_VISITCOUNT_DESC
            if self.qrytype == "new":
                qry.orderType = GroupQuery.ORDER_BY_ID_DESC

        pager = self.createPager()

        pager.totalRows = qry.count()
        group_list = qry.query_map(pager)
        request.setAttribute("group_list", group_list)
        #print "group_list = ", group_list
        request.setAttribute("pager", pager)
        request.setAttribute("subjectId", qry.subjectId)
        request.setAttribute("categoryId", qry.categoryId)
        request.setAttribute("gradeId", qry.gradeId)
        request.setAttribute("k", qry.k)
예제 #3
0
 def get_group_list(self): 
   qry = GroupQuery("""  subj.subjectId, g.createUserId, g.groupId, g.groupIcon, g.groupTitle, g.createDate,
                         u.loginName, u.nickName, g.userCount, g.visitCount, g.articleCount, g.topicCount, 
                           g.resourceCount, g.groupTitle , g.groupIntroduce """)
   
   pager = self.createPager()
   
   # 根据页面参数处理.
   type = self.params.getStringParam("type")
   if type == "rcmd":
     qry.isRecommend = True
   elif type == "hot":
     qry.orderType = GroupQuery.ORDER_BY_VISITCOUNT_DESC
   elif type == "rcmd":
     qry.isRecommend = True
   else:
     type = "new"
   
   
    
   request.setAttribute("type", type)
   
   qry.subjectId = self.get_current_subjectId()
   qry.gradeId = self.get_current_gradeId()
   
   qry.k = self.params.getStringParam("k")
   #qry.sysCateId = self.params.getIntParamZeroAsNull("categoryId")
   
   pager.totalRows = qry.count()
   group_list = qry.query_map(pager)
   request.setAttribute("group_list", group_list)
   request.setAttribute("pager", pager)
예제 #4
0
 def get_rcmd_list(self):
   qry = GroupQuery("""  subj.subjectId, g.groupId, g.groupIcon,  g.groupTitle, g.createDate, g.groupIntroduce """)
   qry.isRecommend = True
   qry.subjectId = self.get_current_subjectId()
   qry.gradeId = self.get_current_gradeId()
   rcmd_list = qry.query_map(4)
   request.setAttribute("rcmd_list", rcmd_list)
예제 #5
0
    def query_group_list(self):
        qry = GroupQuery(
            """ g.groupId, g.groupIcon, g.groupTitle, g.createDate, g.userCount,
              g.visitCount, g.articleCount, g.topicCount, g.resourceCount, g.groupIntroduce,
              g.groupTags, subj.subjectName, grad.gradeName, sc.name as scName """
        )
        qry.subjectId = self.params.getIntParamZeroAsNull('subjectId')
        qry.categoryId = self.categoryId
        qry.gradeId = self.params.getIntParamZeroAsNull('gradeId')
        qry.searchtype = self.params.getStringParam('searchtype')
        qry.kk = self.params.getStringParam("k")

        pager = self.createPager()

        pager.totalRows = qry.count()
        group_list = qry.query_map(pager)
        request.setAttribute("group_list", group_list)
        ggg = []
        for gg in group_list:
            gid = gg["groupId"]
            subqry = GroupQuery(
                """ g.groupId, g.groupIcon, g.groupTitle, g.createDate, g.userCount,
                  g.visitCount, g.articleCount, g.topicCount, g.resourceCount, g.groupIntroduce,
                  g.groupTags """)
            subqry.parentId = gid
            subgroup_list = subqry.query_map()
            ggg.append(subgroup_list)

        request.setAttribute("subgroups", ggg)
        request.setAttribute("pager", pager)
        request.setAttribute("subjectId", qry.subjectId)
        request.setAttribute("categoryId", qry.categoryId)
        request.setAttribute("gradeId", qry.gradeId)
        request.setAttribute("searchtype", qry.searchtype)
        request.setAttribute("k", qry.kk)
예제 #6
0
    def list(self):
        # 构造查询对象.
        qry = GroupQuery(
            """ g.groupId, g.groupName, g.groupTitle, g.groupIcon, g.createDate, g.subjectId, g.gradeId, 
          g.createUserId, g.groupTags, g.groupIntroduce, g.groupState, g.userCount, g.visitCount,g.XKXDName,g.XKXDId, 
          g.isBestGroup, g.isRecommend, u.nickName, u.loginName, sc.name as categoryName 
          """)
        qry.groupState = None  # 缺省为列出所有.

        # 获得限定参数.
        # print "params = ", self.params
        type = self.params.getStringParam("type")
        request.setAttribute("type", type)
        request.setAttribute("typeTitle", self.typeToTitle(type))

        if type == "unaudit":
            qry.groupState = Group.GROUP_STATE_WAIT_AUDIT
            qry.parentId = None
        elif type == "locked":
            qry.groupState = Group.GROUP_STATE_LOCKED
        elif type == "deleted":
            qry.groupState = Group.GROUP_STATE_DELETED
        elif type == "hided":
            qry.groupState = Group.GROUP_STATE_HIDED
        elif type == "best":
            qry.isBestGroup = True
        elif type == "rcmd":
            qry.isRecommend = True

        qry.k = self.params.getStringParam("k", None)
        request.setAttribute("k", qry.k)
        qry.categoryId = self.params.getIntParamZeroAsNull("sc")

        #print "qry.categoryId="+str(qry.categoryId)

        request.setAttribute("sc", qry.categoryId)
        #多学科多学段导致的问题无法使用下面的方法搜索
        qry.subjectId = self.params.getIntParamZeroAsNull("subj")
        qry.gradeId = self.params.getIntParamZeroAsNull("gradeId")

        qry.parentId = None

        #print "qry.gradeId="+str(qry.gradeId)
        #print "qry.subjectId="+str(qry.subjectId)

        request.setAttribute("subj", qry.subjectId)
        request.setAttribute("gradeId", qry.gradeId)

        # 构造分页并查询数据.
        pager = self.createPager()
        pager.totalRows = qry.count()
        group_list = qry.query_map(pager)

        request.setAttribute("group_list", group_list)
        request.setAttribute("pager", pager)
        self.putGroupCategoryTree()
        self.putSubjectList()
        self.putGradeList()
        return "/WEB-INF/ftl/admin/group_list.ftl"
예제 #7
0
 def get_new_group_list(self):
   qry = GroupQuery("""  subj.subjectId, g.createUserId, g.groupId, g.groupIcon, g.groupTitle, g.createDate,
                         u.loginName, u.nickName """)
   qry.orderType = 1
   qry.subjectId = self.get_current_subjectId()
   qry.gradeId = self.get_current_gradeId()
   new_group_list = qry.query_map(4)
   request.setAttribute("new_group_list", new_group_list)
예제 #8
0
 def get_new_group_list(self):
     qry = GroupQuery(
         """  g.groupId, g.groupIcon, g.groupTitle, g.createDate, g.groupIntroduce """
     )
     qry.subjectId = self.get_current_subjectId()
     qry.gradeId = self.get_current_gradeId()
     new_group_list = qry.query_map(3)
     request.setAttribute("new_group_list", new_group_list)