Advertisement
Guest User

Untitled

a guest
Nov 12th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.93 KB | None | 0 0
  1. import com.haulmont.cuba.core.Persistence
  2. import com.haulmont.cuba.core.Transaction
  3. import com.haulmont.cuba.core.global.AppBeans
  4. import com.haulmont.nissan.entity.DocumentHR
  5. import com.haulmont.nissan.enums.PositionCategory
  6. import com.haulmont.nissan.services.NissanTaskmanService
  7. import com.haulmont.thesis.core.app.TaskWorker
  8. import com.haulmont.workflow.core.entity.CardRole
  9.  
  10. final DocumentHR document = card
  11. final def taskmanService = AppBeans.get(NissanTaskmanService.class)
  12. final def taskWorker = AppBeans.get(TaskWorker.class)
  13.  
  14. final def docKindCode = document.getDocKind().getCode()
  15. final def positionCategory = document.getPositionCategory()
  16.  
  17. final def patternName
  18. switch (docKindCode) {
  19. case 'SZ PS': patternName = 'Оформление заявления о переводе'; break
  20. case 'SZ IAD': patternName = 'Оформление изменений атрибутов должности'; break
  21. case { it == 'ZP' && positionCategory == PositionCategory.DIRECT }: patternName = 'Подбор персонала'; break
  22. default: patternName = null; break
  23. }
  24.  
  25. if (patternName != null) {
  26. final def taskPattern = taskmanService.findPatternByName(patternName, "cloning")
  27. if (taskPattern == null) {
  28. taskmanService.createAndCommitTask()
  29. } else {
  30. Persistence persistence = AppBeans.get(Persistence.NAME)
  31. Transaction tx = persistence.createTransaction()
  32. try {
  33. task = taskmanService.commitFromPattern(taskPattern)
  34. for (CardRole cr : task.getRoles()) {
  35. persistence.getEntityManager().persist(cr)
  36. }
  37. task.setRoles(null)
  38. tx.commit()
  39. }
  40. finally {
  41. tx.end()
  42. }
  43.  
  44. tx = persistence.createTransaction()
  45. try {
  46. taskWorker.startTaskProcess(task)
  47. tx.commit()
  48. }
  49. finally {
  50. tx.end()
  51. }
  52. }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement