package com.jjt.biz.service.impl; import com.jjt.biz.domain.BizModel; import com.jjt.biz.domain.BizModelDetail; import com.jjt.biz.domain.BizObj; import com.jjt.biz.domain.BizObjMetrics; import com.jjt.biz.mapper.BizModelMapper; import com.jjt.biz.service.IBizModelDetailService; import com.jjt.biz.service.IBizModelService; import com.jjt.biz.service.IHlBaseService; import com.jjt.common.utils.DateUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.List; /** * 业务模型Service业务层处理 * * @author jjt * @date 2024-08-26 */ @Service public class BizModelServiceImpl implements IBizModelService { @Resource private BizModelMapper bizModelMapper; @Resource private IBizModelDetailService modelDetailService; @Resource private IHlBaseService hlBaseService; /** * 查询业务模型 * * @param modelId 业务模型主键 * @return 业务模型 */ @Override public BizModel selectBizModelByModelId(Long modelId) { return bizModelMapper.selectBizModelByModelId(modelId); } /** * 查询业务模型列表 * * @param bizModel 业务模型 * @return 业务模型 */ @Override public List selectBizModelList(BizModel bizModel) { return bizModelMapper.selectBizModelList(bizModel); } /** * 新增业务模型 * * @param bizModel 业务模型 * @return 结果 */ @Override public int insertBizModel(BizModel bizModel) { bizModel.setCreateTime(DateUtils.getNowDate()); int r = bizModelMapper.insertBizModel(bizModel); hlBaseService.insertHlBase4ModelId(bizModel.getModelId()); return r; } /** * 修改业务模型 * * @param bizModel 业务模型 * @return 结果 */ @Override public int updateBizModel(BizModel bizModel) { bizModel.setUpdateTime(DateUtils.getNowDate()); return bizModelMapper.updateBizModel(bizModel); } /** * 批量删除业务模型 * * @param modelIds 需要删除的业务模型主键 * @return 结果 */ @Override public int deleteBizModelByModelIds(Long[] modelIds) { for (Long modelId : modelIds) { hlBaseService.deleteHlBase4ModelId(modelId); } return bizModelMapper.deleteBizModelByModelIds(modelIds); } /** * 删除业务模型信息 * * @param modelId 业务模型主键 * @return 结果 */ @Override public int deleteBizModelByModelId(Long modelId) { return bizModelMapper.deleteBizModelByModelId(modelId); } /** * 选择业务对象 * * @param modelId 模型ID * @return 结果 */ @Override public List selectObjList(Long modelId) { return bizModelMapper.selectObjList(modelId); } /** * 添加业务对象 * * @param modelId 模型ID * @param objIds 业务对象列表 * @return 结果 */ @Override public int insertObj(Long modelId, Long[] objIds) { if (objIds.length == 0) { return 1; } int total = 100; int avg = total / objIds.length; int use = 0; for (int i = 0; i < objIds.length; i++) { BizModelDetail detail = new BizModelDetail(); detail.setModelId(modelId); detail.setObjId(objIds[i]); if (i == objIds.length - 1 && total - use != avg) { avg = total - use; } detail.setHlScore(avg); modelDetailService.insertBizModelDetail(detail); use += avg; } return 0; } /** * 根据模型ID查询指标 * * @param modelId 模型ID * @return 结果 */ @Override public List selectBizModelMetricsList(Long modelId) { return bizModelMapper.selectBizModelMetricsList(modelId); } }