后台调用编码规则

来源:互联网 发布:淘宝开店一个月没生意 编辑:程序博客网 时间:2024/05/22 04:47
        // 如果单据编码为空,则调用编码规则生成一个编码,否则不能通过verifyNumber方法的校验          if (com.kingdee.util.StringUtils.isEmpty(billInfo.getNumber())) {              IMetaDataLoader imeataLoader = MetaDataLoaderFactory.getLocalMetaDataLoader(ctx);              BusinessObjectInfo objInfo = imeataLoader.getBusinessObject(billInfo.getBOSType());              String orgType = objInfo.getExtendedProperty("OrgType");              if (StringUtils.isEmpty(orgType)) {                  orgType = "NONE";              }              _setAutoNumberByOrg(ctx, billInfo, orgType);          }  

protected void setAutoNumberByOrg(Context ctx, ObjectBaseInfo model,              String orgType) throws CodingRuleException, EASBizException,              BOSException {          String sysNumber = null;            if (!StringUtils.isEmpty(orgType) && !"NONE".equalsIgnoreCase(orgType) && ContextUtil.getCurrentOrgUnit(ctx, OrgType.getEnum(orgType)) != null) {              sysNumber = FrameWorkUtils.getCodeRuleServer(ctx, model, ContextUtil.getCurrentOrgUnit(ctx, OrgType.getEnum(orgType)).getString("id"));          } else if (ContextUtil.getCurrentOrgUnit(ctx) != null) {             sysNumber = FrameWorkUtils.getCodeRuleServer(ctx, model, ContextUtil.getCurrentOrgUnit(ctx).getString("id"));          }          if (!StringUtils.isEmpty(sysNumber)) {              model.setString("number", sysNumber);          }      }  

// 如果单据编码为空,需要调用编码规则生成编码
protected void _setAutoNumberByOrg(Context ctx, ObjectBaseInfo editData, String orgType)          throws EASBizException, BOSException {        if (editData == null)          return;      if (editData.getString("number") == null) {          String companyID = null;          if (!com.kingdee.util.StringUtils.isEmpty(orgType)                  && !"NONE".equalsIgnoreCase(orgType)                  && ContextUtil.getCurrentOrgUnit(ctx, com.kingdee.eas.basedata.org.OrgType                          .getEnum(orgType)) != null) {              companyID = ContextUtil.getCurrentOrgUnit(ctx, OrgType.getEnum(orgType)).getString(                      "id");          } else if (ContextUtil.getCurrentOrgUnit(ctx) != null) {              companyID = ((OrgUnitInfo) ContextUtil.getCurrentOrgUnit(ctx)).getString("id");          }          ICodingRuleManager iCodingRuleManager = CodingRuleManagerFactory.getLocalInstance(ctx);          if (iCodingRuleManager.isExist(editData, companyID)) {                 if (iCodingRuleManager.isAddView(editData, companyID)) {             editData.setString("number", iCodingRuleManager.getNumber(editData, companyID));                 }          }      }    }  

原创粉丝点击