package cn.com.goldenwater.dcproj.service.impl.fjsdu; import cn.com.goldenwater.core.service.AbstractCrudService; import cn.com.goldenwater.dcproj.constants.FjConstants; import cn.com.goldenwater.dcproj.dao.BisInspFjsduDao; import cn.com.goldenwater.dcproj.dao.BisInspFjsduImgrDao; import cn.com.goldenwater.dcproj.model.BisInspFjsdu; import cn.com.goldenwater.dcproj.model.BisInspFjsduImgr; import cn.com.goldenwater.dcproj.param.BisInspFjsduImgrParam; import cn.com.goldenwater.dcproj.service.BisInspFjsduImgrService; import cn.com.goldenwater.id.util.UuidUtil; import cn.com.goldenwater.target.CheckException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.Date; import java.util.Objects; /** * @author lhc * @date 2023年12月18日 */ @Service @Transactional public class BisInspFjsduImgrServiceImpl extends AbstractCrudService implements BisInspFjsduImgrService { @Autowired private BisInspFjsduImgrDao bisInspFjsduImgrDao; @Autowired private BisInspFjsduDao bisInspFjsduDao; public BisInspFjsduImgrServiceImpl(BisInspFjsduImgrDao bisInspFjsduImgrDao) { super(bisInspFjsduImgrDao); this.bisInspFjsduImgrDao = bisInspFjsduImgrDao; } @Override public int insert(BisInspFjsduImgr bisInspFjsduImgr) { String uuid = UuidUtil.uuid(); // 生成uuid bisInspFjsduImgr.setId(uuid); bisInspFjsduImgr.setIntm(new Date()); bisInspFjsduImgr.setUptm(new Date()); bisInspFjsduImgr.setDataStat("0"); int rows = this.bisInspFjsduImgrDao.insert(bisInspFjsduImgr); scoreProcessing(bisInspFjsduImgr); return rows; } @Override public int update(BisInspFjsduImgr bisInspFjsduImgr) { bisInspFjsduImgr.setUptm(new Date()); scoreProcessing(bisInspFjsduImgr); int rows = this.bisInspFjsduImgrDao.update(bisInspFjsduImgr); return rows; } @Override public int delete(String id) { return this.bisInspFjsduImgrDao.delete(id); } /** * 标准分值 450 * 分数处理 * * @param obj 对象 */ private void scoreProcessing(BisInspFjsduImgr obj) { Double total1 = 0.0;//合计 Double lac1 = 0.0;//缺项合计 if(obj.getF411()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF411(); } if(obj.getF412()==null){ lac1 = lac1 + 5.0; }else{ total1= total1+obj.getF412(); } if(obj.getF413()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF413(); } if(obj.getF414()==null){ lac1 = lac1 + 5.0; }else{ total1= total1+obj.getF414(); } if(obj.getF415()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF415(); } if(obj.getF416()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF416(); } if(obj.getF417()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF417(); } if(obj.getF418()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF418(); } if(obj.getF419()==null){ lac1 = lac1 + 40.0; }else{ total1= total1+obj.getF419(); } if(obj.getF4110()==null){ lac1 = lac1 + 15.0; }else{ total1= total1+obj.getF4110(); } if(obj.getF4111()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF4111(); } if(obj.getF4112()==null){ lac1 = lac1 + 2.0; }else{ total1= total1+obj.getF4112(); } if(obj.getF421()==null){ lac1 = lac1 + 20.0; }else{ total1= total1+obj.getF421(); } if(obj.getF422()==null){ lac1 = lac1 + 20.0; }else{ total1= total1+obj.getF422(); } if(obj.getF423()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF423(); } if(obj.getF424()==null){ lac1 = lac1 + 5.0; }else{ total1= total1+obj.getF424(); } if(obj.getF425()==null){ lac1 = lac1 + 5.0; }else{ total1= total1+obj.getF425(); } if(obj.getF426()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF426(); } if(obj.getF427()==null){ lac1 = lac1 + 15.0; }else{ total1= total1+obj.getF427(); } if(obj.getF428()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF428(); } if(obj.getF429()==null){ lac1 = lac1 + 35.0; }else{ total1= total1+obj.getF429(); } if(obj.getF4210()==null){ lac1 = lac1 + 35.0; }else{ total1= total1+obj.getF4210(); } if(obj.getF4211()==null){ lac1 = lac1 + 15.0; }else{ total1= total1+obj.getF4211(); } if(obj.getF4212()==null){ lac1 = lac1 + 15.0; }else{ total1= total1+obj.getF4212(); } if(obj.getF4213()==null){ lac1 = lac1 + 15.0; }else{ total1= total1+obj.getF4213(); } if(obj.getF4214()==null){ lac1 = lac1 + 15.0; }else{ total1= total1+obj.getF4214(); } if(obj.getF4215()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF4215(); } if(obj.getF4216()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF4216(); } if(obj.getF4217()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF4217(); } if(obj.getF4218()==null){ lac1 = lac1 + 7.0; }else{ total1= total1+obj.getF4218(); } if(obj.getF4219()==null){ lac1 = lac1 + 10.0; }else{ total1= total1+obj.getF4219(); } if(obj.getF4220()==null){ lac1 = lac1 + 5.0; }else{ total1= total1+obj.getF4220(); } if(obj.getF431()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF431(); } if(obj.getF432()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF432(); } if(obj.getF433()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF433(); } if(obj.getF434()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF434(); } if(obj.getF435()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF435(); } if(obj.getF436()==null){ lac1 = lac1 + 2.0; }else{ total1= total1+obj.getF436(); } if(obj.getF437()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF437(); } if(obj.getF438()==null){ lac1 = lac1 + 2.0; }else{ total1= total1+obj.getF438(); } if(obj.getF439()==null){ lac1 = lac1 + 2.0; }else{ total1= total1+obj.getF439(); } if(obj.getF4310()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF4310(); } if(obj.getF4311()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF4311(); } if(obj.getF441()==null){ lac1 = lac1 + 3.0; }else{ total1= total1+obj.getF441(); } if(obj.getF442()==null){ lac1 = lac1 + 12.0; }else{ total1= total1+obj.getF442(); } if(obj.getF443()==null){ lac1 = lac1 + 5.0; }else{ total1= total1+obj.getF443(); } BisInspFjsdu rgstr = bisInspFjsduDao.get(obj.getRgstrId()); if (rgstr == null) { throw new CheckException("未找到此登记表"); } //算总分和缺项、评分率 Double tatl = judge(total1)+ judge(rgstr.getSystemTatl())+judge(rgstr.getTrgtTatl())+judge(rgstr.getTvetTatl()) + judge(rgstr.getSafdlTatl())+judge(rgstr.getEmTatl())+judge(rgstr.getAmTatl())+judge(rgstr.getCimtTatl()); Double lacSoc = judge(lac1)+ judge(rgstr.getSystemLac())+judge(rgstr.getTrgtLac())+judge(rgstr.getTvetLac()) + judge(rgstr.getSafdlLac())+judge(rgstr.getEmLac())+judge(rgstr.getAmLac())+judge(rgstr.getCimtLac()); BisInspFjsdu bisInspFjsdu = new BisInspFjsdu(); bisInspFjsdu.setId(rgstr.getId()); bisInspFjsdu.setImgrTatl(total1); bisInspFjsdu.setImgrLac(lac1); bisInspFjsdu.setImgrStat(obj.getState()); //设置总分和评定得分 if(tatl!=null || tatl != 0){ bisInspFjsdu.setTatl(Math.round(tatl*10.0)/10.0); Double soc = FjConstants.FJSDU_STANDARD_TOTAL_SCORE-lacSoc; if(soc!=null && soc != 0){ Double ratSoc = tatl/(FjConstants.FJSDU_STANDARD_TOTAL_SCORE-lacSoc)*100; bisInspFjsdu.setRatSoc(Math.round(ratSoc*10.0)/10.0); } } bisInspFjsdu.setState("1"); bisInspFjsdu.setUptm(new Date()); bisInspFjsduDao.update(bisInspFjsdu); } private Double judge(Double value) { if (Objects.isNull(value)) { return 0.0; } return value; } }