| | |
| | | import com.github.pagehelper.PageHelper; |
| | | import com.github.pagehelper.PageInfo; |
| | | import com.whyc.constant.UserOperation; |
| | | import com.whyc.dto.CodeFilesDto; |
| | | import com.whyc.dto.FileDirPath; |
| | | import com.whyc.dto.Response; |
| | | import com.whyc.dto.SoftDto; |
| | | import com.whyc.mapper.SoftcodeMapper; |
| | | import com.whyc.mapper.SoftwareMapper; |
| | | import com.whyc.pojo.Softcode; |
| | | import com.whyc.pojo.Software; |
| | | import com.whyc.util.ActionUtil; |
| | | import com.whyc.util.CommonUtil; |
| | |
| | | import java.io.*; |
| | | import java.net.URLEncoder; |
| | | import java.text.ParseException; |
| | | import java.time.LocalDate; |
| | | import java.time.LocalDateTime; |
| | | import java.time.LocalTime; |
| | | import java.time.ZoneId; |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.LinkedList; |
| | | import java.util.List; |
| | |
| | | public class SoftwareService { |
| | | @Autowired(required = false) |
| | | private SoftwareMapper mapper; |
| | | |
| | | @Autowired(required = false) |
| | | private SoftcodeMapper codeMapper; |
| | | |
| | | @Autowired |
| | | private DocLogService logService; |
| | |
| | | public Response getAllSoftware(Integer lockFlag, String fileName, String applyMaterialCode, String applyModel, String owner, String boardNumber |
| | | ,String version, int pageCurr, int pageSize) { |
| | | PageHelper.startPage(pageCurr,pageSize); |
| | | List list=mapper.getFileUrl(lockFlag,fileName,applyMaterialCode,applyModel,owner,boardNumber,version); |
| | | List<SoftDto> list=mapper.getFileUrl(lockFlag,fileName,applyMaterialCode,applyModel,owner,boardNumber,version); |
| | | //根据软件名称查询是否存在源码(0:否,1:存在) |
| | | for (SoftDto dto:list) { |
| | | QueryWrapper wrapper=new QueryWrapper(); |
| | | wrapper.eq("file_name",dto.getFileName()); |
| | | wrapper.last("limit 1"); |
| | | Softcode code=codeMapper.selectOne(wrapper); |
| | | if(code!=null){ |
| | | dto.setCodeNum(code.getNum()); |
| | | dto.setCodeFlag(1); |
| | | dto.setCodeName(code.getCodeName()); |
| | | }else{ |
| | | dto.setCodeNum(0); |
| | | dto.setCodeFlag(0); |
| | | dto.setCodeName(""); |
| | | } |
| | | } |
| | | PageInfo pageInfo=new PageInfo(list); |
| | | return new Response().setII(1,list.size()>0,pageInfo,"软件信息返回"); |
| | | } |
| | |
| | | return new Response().set(1,flag>0,"件id实现软件删除"); |
| | | } |
| | | |
| | | //根据板号和物料编码查询软件记录 |
| | | public Response getSoftwareByBoardAndMaterialCode(String board, String materialCode) { |
| | | //查询日期三天内的所有上传软件 |
| | | public Response getFileNameByCreateTime(String createTime) { |
| | | //获取endtime的三天前的时间 |
| | | LocalDate createDay= LocalDate.parse(createTime); |
| | | LocalDateTime end = createDay.atTime(LocalTime.MAX); |
| | | Date endtime=Date.from(end.atZone(ZoneId.systemDefault()).toInstant()); |
| | | //获取createTime的三天前的时间 |
| | | LocalDate threeDaysAgo = createDay.minusDays(3); |
| | | LocalDateTime startOfDay = threeDaysAgo.atStartOfDay(); |
| | | Date starttime=Date.from(startOfDay.atZone(ZoneId.systemDefault()).toInstant()); |
| | | |
| | | QueryWrapper wrapper=new QueryWrapper(); |
| | | wrapper.eq("board_number",board); |
| | | wrapper.eq("apply_material_code",materialCode); |
| | | List<Software> softwareList = mapper.selectList(wrapper); |
| | | return new Response().setII(1,softwareList!=null,softwareList,"根据板号和物料编码查询软件记录"); |
| | | wrapper.select("distinct file_name","type","version","based_version","owner","filing_date","create_time"); |
| | | wrapper.ge("create_time",starttime); |
| | | wrapper.le("create_time",endtime); |
| | | wrapper.eq("owner",ActionUtil.getUser().getName()); |
| | | List<Software> list=mapper.selectList(wrapper); |
| | | //获取list中fileName的集合 |
| | | //List<String> nameList = list.stream().map(Software::getFileName).collect(Collectors.toList()); |
| | | return new Response().setII(1,list!=null,list,"查询日期三天内的所有上传软件"); |
| | | } |
| | | //查询当前owner的未上传源码记录 |
| | | public Response getFileNameByOwnerWithCode(String owner) { |
| | | List<Software> list=mapper.getFileNameByOwnerWithCode(owner); |
| | | return new Response().setII(1,list!=null,list,"查询当前owner的未上传源码记录"); |
| | | } |
| | | //批量添加源码包 |
| | | public Response setCodeByFileNmaes(CodeFilesDto dto) { |
| | | QueryWrapper wrapper=new QueryWrapper(); |
| | | wrapper.eq("num",dto.getNum()); |
| | | wrapper.last("limit 1"); |
| | | Softcode softcode=codeMapper.selectOne(wrapper); |
| | | if(softcode==null){ |
| | | return new Response().set(1,false,"源码包不存在"); |
| | | }else{ |
| | | //获取list中fileName的集合 |
| | | List<String> nameList = dto.getFileNames(); |
| | | List<Softcode> softcodeList=new ArrayList<>(); |
| | | for (String fileName : nameList) { |
| | | Softcode s=new Softcode(); |
| | | s.setFileName(fileName); |
| | | s.setCodeUrl(softcode.getCodeUrl()); |
| | | s.setCodeName(softcode.getCodeName()); |
| | | s.setCreateTime(new Date()); |
| | | softcodeList.add(s); |
| | | } |
| | | codeMapper.insertBatchSomeColumn(softcodeList); |
| | | return new Response().set(1,true,"批量添加源码包"); |
| | | } |
| | | } |
| | | } |