Fanadia_Friska

EditEmployeeJob

Sep 4th, 2016
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.79 KB | None | 0 0
  1. package org.jleaf.pos2.bo.employee;
  2.  
  3. import org.jleaf.core.BusinessFunction;
  4. import org.jleaf.core.BusinessTransaction;
  5. import org.jleaf.core.DefaultBusinessTransaction;
  6. import org.jleaf.core.Dto;
  7. import org.jleaf.core.annotation.Info;
  8. import org.jleaf.core.annotation.InfoIn;
  9. import org.jleaf.core.annotation.InfoOut;
  10. import org.jleaf.pos2.PosComboIdMasterConstans;
  11. import org.jleaf.pos2.dao.EmployeeJobDao;
  12. import org.jleaf.pos2.entity.EmployeeJob;
  13. import org.jleaf.pos2.util.PosUtil;
  14. import org.jleaf.util.GsonUtil;
  15. import org.jleaf.util.ValidationUtil;
  16. import org.slf4j.Logger;
  17. import org.slf4j.LoggerFactory;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.beans.factory.annotation.Qualifier;
  20. import org.springframework.stereotype.Service;
  21.  
  22. /**
  23. * Business Transactions: Edit EmployeeJob
  24. *
  25. * @author Desinta Aditiya , 1 August 2016
  26. */
  27. // @formatter:off
  28. @Service
  29. @InfoIn(value = {
  30. @Info(name = "partnerCode", description = "Partner code", type = String.class, required = true),
  31. @Info(name = "employeeJob ", description = "Employee job ", type = String.class, required = true),
  32. @Info(name = "username", description = "Username", type = String.class, required = true),
  33. @Info(name = "version", description = "Version", type = String.class, required = true),
  34. @Info(name = "userLoginName", description = "user login name", type = String.class),
  35. @Info(name = "roleLoginId", description = "role login id", type = Long.class),
  36. @Info(name = "roleLoginName", description = "role login name", type = String.class),
  37. @Info(name = "datetime", description = "date time", type = String.class) })
  38. @InfoOut(value = {
  39. @Info(name = "partnerCode", description = "Partner code", type = String.class, required = true),
  40. @Info(name = "employeeJob ", description = "Employee job ", type = String.class, required = true),
  41. @Info(name = "username", description = "Username", type = String.class, required = true),
  42. @Info(name = "version", description = "Version", type = String.class, required = true),
  43. @Info(name = "createDatetime ", description = "Create datetime ", type = String.class, required = true),
  44. @Info(name = "updateDatetime", description = "Update datetime", type = String.class, required = true),
  45. @Info(name = "createUsername", description = "Create username", type = String.class, required = true),
  46. @Info(name = "updateUsername", description = "Update username", type = String.class, required = true) })
  47. public class EditEmployeeJob extends DefaultBusinessTransaction implements
  48. BusinessTransaction {
  49. private static final Logger log = LoggerFactory
  50. .getLogger(EditEmployeeJob.class);
  51.  
  52. @Autowired
  53. EmployeeJobDao employeeJobDao;
  54.  
  55. @Autowired
  56. @Qualifier("valComboValueByCode")
  57. BusinessFunction valComboValueByCode;
  58.  
  59. @Autowired
  60. @Qualifier("findEmployeeJobById")
  61. BusinessFunction findEmployeeJobById;
  62.  
  63. // referensi ke master partner
  64. @Autowired
  65. @Qualifier("findPartnerById")
  66. BusinessFunction findPartnerById;
  67.  
  68. @Autowired
  69. @Qualifier("findUserByIndex")
  70. BusinessFunction findUserByIndex;
  71.  
  72. @Override
  73. public String getDescription() {
  74. return "Edit Employee Job";
  75. }
  76.  
  77. @Override
  78. public Dto prepare(Dto inputDto, Dto originalDto) throws Exception {
  79.  
  80. ValidationUtil.valBlankOrNull(inputDto, "partnerCode");
  81. ValidationUtil.valBlankOrNull(inputDto, "employeeJob");
  82. //ValidationUtil.valBlankOrNull(inputDto, "username");
  83. ValidationUtil.valBlankOrNull(inputDto, "version");
  84. ValidationUtil.valBlankOrNull(inputDto, "userLoginName");
  85. ValidationUtil.valBlankOrNull(inputDto, "roleLoginId");
  86. ValidationUtil.valBlankOrNull(inputDto, "roleLoginName");
  87. ValidationUtil.valBlankOrNull(inputDto, "datetime");
  88.  
  89. String partnerCode = inputDto.getString("partnerCode").trim()
  90. .toUpperCase();
  91. String employeeJob = inputDto.getString("employeeJob").trim()
  92. .toUpperCase();
  93. Long version = inputDto.getLong("version");
  94.  
  95. String userLoginName = inputDto.getString("userLoginName");
  96. Long roleLoginId = inputDto.getLong("roleLoginId");
  97. String roleLoginName = inputDto.getString("roleLoginName");
  98. String datetime = inputDto.getString("datetime");
  99.  
  100. Dto employeeJobDto = findEmployeeJobById.execute(new Dto().put(
  101. "partnerCode", partnerCode));
  102.  
  103. log.debug("isi employeeJobDto : "+employeeJobDto);
  104.  
  105. String username = employeeJobDto.getString("username");
  106.  
  107.  
  108. // Validation employeeJob id must exists
  109. findPartnerById.execute(new Dto().put("partnerCode", partnerCode));
  110.  
  111. // Validation employeeJob must be suitable with combo YES NO
  112. Dto paramEmployeeJobDto = new Dto();
  113. paramEmployeeJobDto.put("comboId",
  114. PosComboIdMasterConstans.COMBO_EMPLOYEEJOB);
  115. paramEmployeeJobDto.put("code", employeeJob);
  116. paramEmployeeJobDto.put("varName", "employeeJob");
  117.  
  118. log.debug("paramEmployeeJobDto:" + paramEmployeeJobDto);
  119. valComboValueByCode.execute(paramEmployeeJobDto);
  120.  
  121. // BF find UserByIndex
  122. Dto inputDtoForFindUserByIndex = new Dto();
  123. inputDtoForFindUserByIndex.put("name", username);
  124.  
  125. Dto userDto = findUserByIndex.execute(inputDtoForFindUserByIndex);
  126.  
  127. Dto editEmployeeJobDto = employeeJobDto;
  128. editEmployeeJobDto.put("employeeJob", employeeJob);
  129. editEmployeeJobDto.put("username", username);
  130. editEmployeeJobDto.put("version", version);
  131.  
  132. PosUtil.prepareUpdateAudit(editEmployeeJobDto, userLoginName, datetime);
  133.  
  134. inputDto.put("editEmployeeJobDto", editEmployeeJobDto);
  135.  
  136. return null;
  137. }
  138.  
  139. @Override
  140. public Dto process(Dto inputDto, Dto originalDto) throws Exception {
  141.  
  142. Dto editEmployeeJobDto = inputDto.getDto("editEmployeeJobDto");
  143.  
  144. EmployeeJob employeeJob = GsonUtil.fromDto(editEmployeeJobDto,
  145. EmployeeJob.class);
  146. employeeJobDao.merge(employeeJob.getPartnerCode(), employeeJob); // persist(employeeJob);
  147. return new Dto(employeeJob);
  148.  
  149. }
  150.  
  151. }
Advertisement
Add Comment
Please, Sign In to add comment