Ejemplo n.º 1
0
  /** 测试根据企业名称和区县ID取得企业信息 */
  @SuppressWarnings("unchecked")
  public void testGetCorpByName() {
    Corp corp = generateCorp("新龙公司", "时代方舟", county);
    corpManager.save(corp);
    Map corpRst = reportManager.getCorpMapByName("新龙公司", county.getId());

    assertNotNull(corpRst);
    assertEquals("新龙公司", corpRst.get("name"));
  }
Ejemplo n.º 2
0
 /** 构建部门编号 */
 private static String buildSerialNo(Dept parent, Integer serial) {
   if (parent == null) {
     return StringUtil.zeroPadding(serial, 2);
   } else {
     return new StringBuffer(100)
         .append(parent.getSerialNo())
         .append(",")
         .append(StringUtil.zeroPadding(serial, 2))
         .toString();
   }
 }
Ejemplo n.º 3
0
 /** 构建第一个部门的编号 */
 private static String buildFirstSerialNo(Dept parent) {
   if (parent == null) {
     return DeptConstants.FIRST_SERIAL_NO;
   } else {
     return new StringBuffer(100)
         .append(parent.getSerialNo())
         .append(",")
         .append(DeptConstants.FIRST_SERIAL_NO)
         .toString();
   }
 }
Ejemplo n.º 4
0
  /** 测试根据区县ID取得该区县下所有的企业 */
  public void testGetCorpOfCounty() {
    Corp corp1 = generateCorp("新龙公司", "时代方舟A座", county);
    corp1.setBusinessLicense("2010011089");
    Corp corp2 = generateCorp("WIFI", "时代方舟B座", county);
    corpManager.save(corp1);
    corpManager.save(corp2);
    String[] corpRst = reportManager.getCorpOfCounty(county.getId());

    assertNotNull(corpRst);
    assertTrue(corpRst.length >= 2);
  }
Ejemplo n.º 5
0
  /** 测试根据任务ID取得该任务的详细信息 */
  public void testGetTaskDetailOfTask() {
    Task task = generateTask("测试任务及详细");
    TaskDetail taskDetail = generateTaskDetail("测试任务明细");
    taskDetail.setTask(task);
    taskDetail.setDept(county);
    taskManager.save(task);
    taskManager.getDao().save(taskDetail);
    TaskDetail taskDetailRst = reportManager.getTaskDetailOfTask(task.getId(), county.getId());

    assertNotNull(taskDetailRst);
  }
Ejemplo n.º 6
0
  /**
   * 返回给定部门的部门编号
   *
   * @param parentDept 给定部门
   */
  public String getSerialNo(final Dept dept) {
    Assert.notNull(dept, "The given Dept must not be null.");
    String serialNo = null;
    if (dept.getParentDept() != null) { // 如果有上级部门
      List serialNos =
          getDao()
              .query(
                  "select d.serialNo from Dept d "
                      + "where d.parentDept = ? order by d.serialNo desc",
                  dept.getParentDept());
      if (serialNos == null || serialNos.isEmpty()) { // 如果同级部门
        serialNo = buildFirstSerialNo(dept.getParentDept());
      } else { // 有同级级部门
        String maxSerialNo = (String) serialNos.get(0); // 同级部门最大编号
        // 找出同级部门最大编号的最后两位
        final String[] splited =
            org.springframework.util.StringUtils.commaDelimitedListToStringArray(maxSerialNo);
        if (splited == null || splited.length == 0) { // 同级部门没有编号
          serialNo = buildFirstSerialNo(dept.getParentDept());
        } else { // 计算当前部门编号
          Integer serial = StringUtil.getNumFromSerial(splited[splited.length - 1]);
          serialNo =
              dept.getParentDept().getSerialNo() + "," + StringUtil.zeroPadding((serial + 1), 2);
        }
      }
    } else { // 如果没有上级部门
      serialNo = this.getTopDeptSerialNo();
      dept.setSerialNo(serialNo);
    }

    logger.debug("Create serial No." + serialNo);
    return serialNo;
  }
Ejemplo n.º 7
0
 /** 重设所有部门编号。 */
 @Transactional
 public void updateAllSerialNo() {
   List<Dept> tops = getDao().query("from Dept d where d.parentDept is null");
   Map serialMap = new HashMap(100); // 用于存放部门ID-SerialNo
   // 计算所有部门编号,并将部门ID-部门编号的对应关系存入serialMap
   Integer serial = null;
   for (Dept top : tops) {
     serial = this.getSerial(top, serial);
     // String serialNo = getSerialNo(top);
     top.setSerialNo(buildSerialNo(null, serial));
     serialMap.put(top.getId(), buildSerialNo(null, serial));
     // getDao().saveObject(top);
     if (top.getChildDepts().size() > 0) {
       this.updateChildrenSerialNo(top, serialMap);
     }
   }
   // 批量更新部门编号
   Set<Integer> ids = serialMap.keySet();
   for (Integer id : ids) {
     Dept dept = get(id);
     getDao().evict(dept);
     dept.setSerialNo((String) serialMap.get(id));
     getDao().getHibernateTemplate().update(dept);
   }
 }
Ejemplo n.º 8
0
 /** 更新所有子部门的SerialNo */
 @Transactional
 public void updateChildrenSerialNo(Dept parent, Map serialMap) {
   logger.debug("Update " + parent.getName() + "'s children serial No.");
   Set<Dept> children = parent.getChildDepts();
   Integer serial = null;
   for (Dept child : children) {
     serial = this.getSerial(child, serial);
     child.setSerialNo(buildSerialNo(parent, serial));
     serialMap.put(child.getId(), buildSerialNo(parent, serial));
     // getDao().saveObject(child);
     if (child.getChildDepts().size() > 0) {
       updateChildrenSerialNo(child, serialMap);
     }
   }
 }