BizModelServiceImpl.java 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. package com.jjt.biz.service.impl;
  2. import com.jjt.biz.domain.BizModel;
  3. import com.jjt.biz.domain.BizModelDetail;
  4. import com.jjt.biz.domain.BizObj;
  5. import com.jjt.biz.domain.BizObjMetrics;
  6. import com.jjt.biz.mapper.BizModelMapper;
  7. import com.jjt.biz.service.IBizModelDetailService;
  8. import com.jjt.biz.service.IBizModelService;
  9. import com.jjt.biz.service.IHlBaseService;
  10. import com.jjt.common.utils.DateUtils;
  11. import org.springframework.stereotype.Service;
  12. import javax.annotation.Resource;
  13. import java.util.List;
  14. /**
  15. * 业务模型Service业务层处理
  16. *
  17. * @author jjt
  18. * @date 2024-08-26
  19. */
  20. @Service
  21. public class BizModelServiceImpl implements IBizModelService {
  22. @Resource
  23. private BizModelMapper bizModelMapper;
  24. @Resource
  25. private IBizModelDetailService modelDetailService;
  26. @Resource
  27. private IHlBaseService hlBaseService;
  28. /**
  29. * 查询业务模型
  30. *
  31. * @param modelId 业务模型主键
  32. * @return 业务模型
  33. */
  34. @Override
  35. public BizModel selectBizModelByModelId(Long modelId) {
  36. return bizModelMapper.selectBizModelByModelId(modelId);
  37. }
  38. /**
  39. * 查询业务模型列表
  40. *
  41. * @param bizModel 业务模型
  42. * @return 业务模型
  43. */
  44. @Override
  45. public List<BizModel> selectBizModelList(BizModel bizModel) {
  46. return bizModelMapper.selectBizModelList(bizModel);
  47. }
  48. /**
  49. * 新增业务模型
  50. *
  51. * @param bizModel 业务模型
  52. * @return 结果
  53. */
  54. @Override
  55. public int insertBizModel(BizModel bizModel) {
  56. bizModel.setCreateTime(DateUtils.getNowDate());
  57. int r = bizModelMapper.insertBizModel(bizModel);
  58. hlBaseService.insertHlBase4ModelId(bizModel.getModelId());
  59. return r;
  60. }
  61. /**
  62. * 修改业务模型
  63. *
  64. * @param bizModel 业务模型
  65. * @return 结果
  66. */
  67. @Override
  68. public int updateBizModel(BizModel bizModel) {
  69. bizModel.setUpdateTime(DateUtils.getNowDate());
  70. return bizModelMapper.updateBizModel(bizModel);
  71. }
  72. /**
  73. * 批量删除业务模型
  74. *
  75. * @param modelIds 需要删除的业务模型主键
  76. * @return 结果
  77. */
  78. @Override
  79. public int deleteBizModelByModelIds(Long[] modelIds) {
  80. for (Long modelId : modelIds) {
  81. hlBaseService.deleteHlBase4ModelId(modelId);
  82. }
  83. return bizModelMapper.deleteBizModelByModelIds(modelIds);
  84. }
  85. /**
  86. * 删除业务模型信息
  87. *
  88. * @param modelId 业务模型主键
  89. * @return 结果
  90. */
  91. @Override
  92. public int deleteBizModelByModelId(Long modelId) {
  93. return bizModelMapper.deleteBizModelByModelId(modelId);
  94. }
  95. /**
  96. * 选择业务对象
  97. *
  98. * @param modelId 模型ID
  99. * @return 结果
  100. */
  101. @Override
  102. public List<BizObj> selectObjList(Long modelId) {
  103. return bizModelMapper.selectObjList(modelId);
  104. }
  105. /**
  106. * 添加业务对象
  107. *
  108. * @param modelId 模型ID
  109. * @param objIds 业务对象列表
  110. * @return 结果
  111. */
  112. @Override
  113. public int insertObj(Long modelId, Long[] objIds) {
  114. if (objIds.length == 0) {
  115. return 1;
  116. }
  117. int total = 100;
  118. int avg = total / objIds.length;
  119. int use = 0;
  120. for (int i = 0; i < objIds.length; i++) {
  121. BizModelDetail detail = new BizModelDetail();
  122. detail.setModelId(modelId);
  123. detail.setObjId(objIds[i]);
  124. if (i == objIds.length - 1 && total - use != avg) {
  125. avg = total - use;
  126. }
  127. detail.setHlScore(avg);
  128. modelDetailService.insertBizModelDetail(detail);
  129. use += avg;
  130. }
  131. return 0;
  132. }
  133. /**
  134. * 根据模型ID查询指标
  135. *
  136. * @param modelId 模型ID
  137. * @return 结果
  138. */
  139. @Override
  140. public List<BizObjMetrics> selectBizModelMetricsList(Long modelId) {
  141. return bizModelMapper.selectBizModelMetricsList(modelId);
  142. }
  143. }