ESignTemplateControllerBean.java 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. package com.kingdee.eas.custom.esign.app;
  2. import com.kingdee.bos.dao.ormapping.CanNotDeleteException;
  3. import com.kingdee.eas.custom.esign.ESignTemplateInfo;
  4. import com.kingdee.shr.base.syssetting.BaseItemStateEnum;
  5. import org.apache.log4j.Logger;
  6. import com.kingdee.bos.*;
  7. import com.kingdee.bos.dao.IObjectPK;
  8. import com.kingdee.eas.common.EASBizException;
  9. import java.sql.Connection;
  10. public class ESignTemplateControllerBean extends AbstractESignTemplateControllerBean {
  11. private static Logger logger = Logger.getLogger(ESignTemplateControllerBean.class);
  12. /**
  13. * 检查电子签名模板是否可以删除
  14. *
  15. * @param ctx 业务上下文对象
  16. * @param pk 电子签名模板主键
  17. * @param cn 数据库连接对象
  18. * @throws CanNotDeleteException 当数据处于启用状态时抛出此异常,表示不允许删除
  19. */
  20. @Override
  21. protected void _canDelete(Context ctx, IObjectPK pk, Connection cn) throws CanNotDeleteException {
  22. super._canDelete(ctx, pk, cn);
  23. try {
  24. // 获取电子签名模板信息并检查状态
  25. ESignTemplateInfo info = getESignTemplateInfo(ctx, pk);
  26. BaseItemStateEnum state = info.getState();
  27. if (BaseItemStateEnum.ENABLE.equals(state)) {
  28. throw new CanNotDeleteException("启用的数据,不允许删除!");
  29. }
  30. } catch (BOSException e) {
  31. logger.error(e.getMessage(), e);
  32. throw new CanNotDeleteException(e);
  33. } catch (EASBizException e) {
  34. logger.error(e.getMessage(), e);
  35. throw new CanNotDeleteException(e);
  36. }
  37. }
  38. }