package cn.com.goldenwater.dcproj.service.impl; import cn.com.goldenwater.core.service.AbstractCrudService; import cn.com.goldenwater.dcproj.dao.BisInspRvgmSysDao; import cn.com.goldenwater.dcproj.model.BisInspRvgmSys; import cn.com.goldenwater.dcproj.param.BisInspRvgmSysParam; import cn.com.goldenwater.dcproj.service.BisInspRvgmRgstrService; import cn.com.goldenwater.dcproj.service.BisInspRvgmSysService; 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.HashMap; import java.util.Map; import java.util.Optional; /** * @author lhc * @date 2021-4-1 */ @Service @Transactional public class BisInspRvgmSysServiceImpl extends AbstractCrudService implements BisInspRvgmSysService { @Autowired private BisInspRvgmSysDao bisInspRvgmSysDao; @Autowired private BisInspRvgmRgstrService bisInspRvgmRgstrService; public BisInspRvgmSysServiceImpl(BisInspRvgmSysDao bisInspRvgmSysDao) { super(bisInspRvgmSysDao); this.bisInspRvgmSysDao = bisInspRvgmSysDao; } @Override public int insert(BisInspRvgmSys bisInspRvgmSys) { String uuid = UuidUtil.uuid(); // 生成uuid bisInspRvgmSys.setId(uuid); bisInspRvgmSys.setIntm(new Date()); bisInspRvgmSys.setUptm(new Date()); bisInspRvgmSys.setDataStat("0"); return this.bisInspRvgmSysDao.insert(bisInspRvgmSys); } @Override public int update(BisInspRvgmSys bisInspRvgmSys) { // 获取子表 BisInspRvgmSys child = get(bisInspRvgmSys.getRgstrId()); Optional.ofNullable(child).orElseThrow(() -> new CheckException("未找到此登记表下的子表")); // 更新子表 bisInspRvgmSys.setId(child.getId()); bisInspRvgmSys.setUptm(new Date()); int ret = bisInspRvgmSysDao.update(bisInspRvgmSys); // 更新登记表状态 Map map = new HashMap<>(3); map.put("rgstrId", bisInspRvgmSys.getRgstrId()); map.put("param", "sys"); map.put("state", bisInspRvgmSys.getState()); bisInspRvgmRgstrService.updateState(map); return ret; } @Override public int delete(String id) { return this.bisInspRvgmSysDao.delete(id); } }