package com.pashanhoo.destroy.service.impl; import com.baomidou.mybatisplus.core.toolkit.IdWorker; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.pashanhoo.archive.entity.vo.DgArchivesSearchRequest; import com.pashanhoo.archive.service.DgArchivesService; import com.pashanhoo.common.Result; import com.pashanhoo.destroy.entity.DgArchivesDestructionConverter; import com.pashanhoo.destroy.entity.DgArchivesDestructionDO; import com.pashanhoo.destroy.entity.vo.*; import com.pashanhoo.archive.entity.DgArchivesDO; import com.pashanhoo.destroy.entity.vo.AddDgArchivesDestructionRequest; import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionDetailVO; import com.pashanhoo.destroy.entity.vo.DgArchivesDestructionSearchRequest; import com.pashanhoo.destroy.entity.vo.UpdateDgArchivesDestructionRequest; import com.pashanhoo.destroy.mapper.DgArchivesDestructionMapper; import com.pashanhoo.destroy.service.DgArchivesDestructionService; import com.pashanhoo.destroycatalog.entity.DgDestructionCatalogConverter; import com.pashanhoo.destroycatalog.entity.DgDestructionCatalogDO; import com.pashanhoo.destroycatalog.entity.vo.AddDgDestructionCatalogRequest; import com.pashanhoo.destroycatalog.service.DgDestructionCatalogService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.math.BigDecimal; import java.util.List; /** * <p> * 档案销毁 服务实现类 * </p> * * @author * @since 2021-11-05 */ @Service public class DgArchivesDestructionServiceImpl extends ServiceImpl<DgArchivesDestructionMapper, DgArchivesDestructionDO> implements DgArchivesDestructionService { @Autowired private DgArchivesDestructionConverter dgarchivesdestructionConverter; @Autowired private DgArchivesDestructionMapper dgarchivesdestructionMapper; @Autowired private DgDestructionCatalogService catalogService; @Autowired private DgDestructionCatalogConverter catalogConverter; @Autowired private DgArchivesService archivesService; /** * 新增记录 * @param request * @return */ @Override public Result insertDgArchivesDestruction(AddDgArchivesDestructionRequest request) { DgArchivesDestructionDO dgarchivesdestructionDO = dgarchivesdestructionConverter.addRequest2DO(request); String id= IdWorker.get32UUID(); dgarchivesdestructionDO.setBsmDestruction(id); this.save(dgarchivesdestructionDO); return Result.ok(id); } @Override public Result showArchivesForDestruction(DgArchivesSearchRequest request) { request.setDazt(new BigDecimal("4")); return Result.ok(archivesService.searchDgArchivesList(request)); } /** * 根据主键查询记录详情 * @param id * @return */ @Override public DgArchivesDestructionDetailVO getDgArchivesDestructionDetailById(String id) { DgArchivesDestructionDO dgarchivesdestructionDO = this.getById(id); return dgarchivesdestructionConverter.do2DetailVO(dgarchivesdestructionDO); } /** * 修改单条记录 * @param request * @return */ @Override public boolean updateDgArchivesDestruction(UpdateDgArchivesDestructionRequest request) { DgArchivesDestructionDO dgarchivesdestructionDO = dgarchivesdestructionConverter.updateRequest2DO(request); return this.updateById(dgarchivesdestructionDO); } /** * 根据条件进行列表查询 * @param request * @return */ @Override public Result searchDgArchivesDestructionList(DgArchivesDestructionSearchRequest request) { PageHelper.startPage(request.getCurrentPage(), request.getPageSize()); List<DgArchivesDestructionListVO> jyListVOList = dgarchivesdestructionMapper.selectXhResult(request); PageInfo<DgArchivesDestructionListVO> pageInfo = new PageInfo<DgArchivesDestructionListVO>(jyListVOList); return Result.ok(pageInfo); } @Override @Transactional(rollbackFor = Exception.class) public Result deleteDgArchivesDestruction(String bsm_destruction) { //删除销毁记录表数据 dgarchivesdestructionMapper.deleteById(bsm_destruction); //删除档案销毁目录数据 catalogService.deleteDestructionCatalog(bsm_destruction); //修改档案信息表状态 dgarchivesdestructionMapper.updateArchivesStatus(bsm_destruction,"4"); return Result.ok(); } @Override public Result queryArchivesInfo(String bsm_destruction) { return Result.ok(dgarchivesdestructionMapper.queryArchivesInfo(bsm_destruction)); } @Override public Result deleteDestructionArchivescataLog(String bsmArchives) { catalogService.deleteDestructionCatalog(bsmArchives); return Result.ok(); } @Override public Result addDestructionArchivesInfo(List<AddDgDestructionCatalogRequest> archivesList) { List<DgDestructionCatalogDO> list=catalogConverter.addRequestList2DO(archivesList); catalogService.saveBatch(list); return Result.ok(); } @Override public Result updateArchivesStateByDestruction(String bsm_destruction) { //修改档案信息表状态 dgarchivesdestructionMapper.updateArchivesStatus(bsm_destruction,"6"); return Result.ok(); } @Override public Result updateStateByArchives(List<String> idList) { dgarchivesdestructionMapper.updateArchivesStatusBatch(idList,"6"); return Result.ok(); } /** * 根据销毁清册编号获取左侧档案号菜单 * * @param xhqcbh 销毁清册编号 * @return */ @Override public List getDestroyLeftMenu(String xhqcbh) { List<DgArchivesDO> dgArchivesDestructionDOS = dgarchivesdestructionMapper.getDestroyLeftMenu(xhqcbh); return dgArchivesDestructionDOS; } }