package com.glxp.api.util.udi; import com.glxp.api.entity.inout.IoCodeTempEntity; import com.glxp.api.res.basic.UdiRelevanceResponse; import com.glxp.api.service.basic.UdiRelevanceService; import org.springframework.stereotype.Service; import javax.annotation.Resource; @Service public class UdiCalCountUtil { @Resource UdiRelevanceService udiRelevanceService; // public int getActCount(Long relId) { // UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(relId); // return getActCount(udiRelevanceResponse); // } public int getActCount(UdiRelevanceResponse udiRelevanceResponse) { //启用使用单元 if (udiRelevanceResponse.getUseDy()) { if (udiRelevanceResponse.getDiType() == 1) { if (udiRelevanceResponse.getZxxsbzbhsydysl() == null || udiRelevanceResponse.getZxxsbzbhsydysl() == 0) { udiRelevanceResponse.setZxxsbzbhsydysl(1); } return udiRelevanceResponse.getZxxsbzbhsydysl(); } else if (udiRelevanceResponse.getDiType() == 4) { if (udiRelevanceResponse.getBhzxxsbzsl() == 0) { udiRelevanceResponse.setBhzxxsbzsl(1); } if (udiRelevanceResponse.getZxxsbzbhsydysl() == null || udiRelevanceResponse.getZxxsbzbhsydysl() == 0) { udiRelevanceResponse.setZxxsbzbhsydysl(1); } return udiRelevanceResponse.getBhzxxsbzsl() * udiRelevanceResponse.getZxxsbzbhsydysl(); } else { return udiRelevanceResponse.getBhzxxsbzsl(); } } else {//不启用使用单元 if (udiRelevanceResponse.getDiType() == 1) { return 1; } else if (udiRelevanceResponse.getDiType() == 4) { if (udiRelevanceResponse.getBhzxxsbzsl() == 0) { udiRelevanceResponse.setBhzxxsbzsl(1); } return udiRelevanceResponse.getBhzxxsbzsl(); } else { return udiRelevanceResponse.getBhzxxsbzsl(); } } } public int getActCount(IoCodeTempEntity codeTempEntity) { if (codeTempEntity.getRelId() != null) { UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectGroupById(codeTempEntity.getRelId()); int count = getActCount(udiRelevanceResponse); return codeTempEntity.getCount() * count; } return 1; } public int getActCount(String nameCode) { UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByNameCode(nameCode); int count = getActCount(udiRelevanceResponse); return count; } public int getActCountByRelId(String relId) { UdiRelevanceResponse udiRelevanceResponse = udiRelevanceService.selectByRelId(relId); int count = getActCount(udiRelevanceResponse); return count; } /** * 获取流通实际数量 * * @return */ public int getCirActCount(UdiRelevanceResponse udiRelevanceResponse) { if (udiRelevanceResponse.getBhltcjsl() == null || udiRelevanceResponse.getBhltcjsl() == 0) return 1; else return udiRelevanceResponse.getBhltcjsl(); } /** * 获取使用实际数量 * * @return */ public int getUseActCount(UdiRelevanceResponse udiRelevanceResponse) { if (udiRelevanceResponse.getBhsycjsl() == null || udiRelevanceResponse.getBhsycjsl() == 0) return 1; else return udiRelevanceResponse.getBhsycjsl(); } }