diff --git a/src/main/java/com/bonus/gzgqj/business/app/entity/MachinesVo.java b/src/main/java/com/bonus/gzgqj/business/app/entity/MachinesVo.java index efaeb92..7c17120 100644 --- a/src/main/java/com/bonus/gzgqj/business/app/entity/MachinesVo.java +++ b/src/main/java/com/bonus/gzgqj/business/app/entity/MachinesVo.java @@ -1,5 +1,6 @@ package com.bonus.gzgqj.business.app.entity; +import com.bonus.gzgqj.business.plan.entity.PageInfo; import lombok.Data; import java.util.List; @@ -9,7 +10,7 @@ import java.util.List; * @author 黑子 */ @Data -public class MachinesVo { +public class MachinesVo extends PageInfo { /** * 设备id */ diff --git a/src/main/java/com/bonus/gzgqj/business/bases/controller/PartApplyWebController.java b/src/main/java/com/bonus/gzgqj/business/bases/controller/PartApplyWebController.java new file mode 100644 index 0000000..c866b9d --- /dev/null +++ b/src/main/java/com/bonus/gzgqj/business/bases/controller/PartApplyWebController.java @@ -0,0 +1,116 @@ +package com.bonus.gzgqj.business.bases.controller; + +import com.bonus.gzgqj.business.app.entity.MachinesVo; +import com.bonus.gzgqj.business.app.entity.PartApplyAppVo; +import com.bonus.gzgqj.business.app.service.PartApplyAppServiceImp; +import com.bonus.gzgqj.business.bases.entity.PaTypeVo; +import com.bonus.gzgqj.business.bases.entity.PartCheckVo; +import com.bonus.gzgqj.business.bases.service.PartApplyWebServiceImp; +import com.bonus.gzgqj.manager.webResult.ServerResponse; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import java.util.List; + +/** + * + * web领料申请 + * + * @author 黑子 + */ +@RestController +@RequestMapping("/base/partApply") +@Slf4j +public class PartApplyWebController { + + @Autowired + private PartApplyWebServiceImp service; + /** + * 配件申请-设备 下拉选集合 + * @param dto + * @return + */ + @GetMapping("getDevList") + public PageInfo getDevList(MachinesVo dto) { + PageHelper.startPage(dto.getPageNum(),dto.getPageSize()); + List list = service.getDevList(dto); + PageInfo pageInfo = new PageInfo<>(list); + return pageInfo; + } + + /** + * 依据设备下拉选 -查询 使用单位 + * @param dto + * @return + */ + @GetMapping("getProInfo") + public ServerResponse getProInfo(MachinesVo dto) { + return service.getProInfo(dto); + } + + + /** + * 查询配件下拉选集合 + * @param dto + * @return + */ + @GetMapping("getPaTypeList") + public PageInfo getPaTypeList(PaTypeVo dto) { + PageHelper.startPage(dto.getPageNum(),dto.getPageSize()); + List list = service.getPaTypeList(dto); + PageInfo pageInfo = new PageInfo<>(list); + return pageInfo; + } + + + /** + * 新增配件信息接口 + * @param dto + * @return + */ + @PostMapping("addPartApply") + public ServerResponse addPartApply(@RequestBody PartApplyAppVo dto) { + return service.addPartApply(dto); + } + + /** + * 配件申请记录-查询 + * @param dto + * @return + */ + @GetMapping("getPartApplyList") + public PageInfo getPartApplyList(PartApplyAppVo dto) { + PageHelper.startPage(dto.getPageNum(),dto.getPageSize()); + List list = service.getPartApplyList(dto);; + PageInfo pageInfo = new PageInfo<>(list); + return pageInfo; + } + + + /** + * 配件申请记录-详情 + * @param dto + * @return + */ + @GetMapping("getPartApplyDetails") + public ServerResponse getPartApplyDetails(PartApplyAppVo dto) { + return service.getPartApplyDetails(dto); + } + + /** + * 图片文件上传 + * @return + */ + @PostMapping("uploadImage") + public ServerResponse uploadImage(HttpServletRequest request) { + return service.uploadImage(request); + } + + + + +} diff --git a/src/main/java/com/bonus/gzgqj/business/bases/entity/PaTypeVo.java b/src/main/java/com/bonus/gzgqj/business/bases/entity/PaTypeVo.java index 6ccff9e..a8524a4 100644 --- a/src/main/java/com/bonus/gzgqj/business/bases/entity/PaTypeVo.java +++ b/src/main/java/com/bonus/gzgqj/business/bases/entity/PaTypeVo.java @@ -1,6 +1,7 @@ package com.bonus.gzgqj.business.bases.entity; import cn.afterturn.easypoi.excel.annotation.Excel; +import com.bonus.gzgqj.business.plan.entity.PageInfo; import lombok.Data; /** @@ -8,7 +9,7 @@ import lombok.Data; * @author 黑子 */ @Data -public class PaTypeVo { +public class PaTypeVo extends PageInfo { @Excel(name = "序号", width = 10.0, orderNum = "0") diff --git a/src/main/java/com/bonus/gzgqj/business/bases/service/PartApplyWebServiceImp.java b/src/main/java/com/bonus/gzgqj/business/bases/service/PartApplyWebServiceImp.java new file mode 100644 index 0000000..66e0a3a --- /dev/null +++ b/src/main/java/com/bonus/gzgqj/business/bases/service/PartApplyWebServiceImp.java @@ -0,0 +1,228 @@ +package com.bonus.gzgqj.business.bases.service; + +import com.bonus.gzgqj.business.app.entity.MachinesVo; +import com.bonus.gzgqj.business.app.entity.PartApplyAppVo; +import com.bonus.gzgqj.business.app.entity.PartApplyDetailAppVo; +import com.bonus.gzgqj.business.app.mapper.PartApplyAppMapper; +import com.bonus.gzgqj.business.bases.entity.PaTypeVo; +import com.bonus.gzgqj.business.plan.entity.FileUploadVo; +import com.bonus.gzgqj.business.utils.FileUploadService; +import com.bonus.gzgqj.manager.common.util.DateTimeHelper; +import com.bonus.gzgqj.manager.common.util.StringHelper; +import com.bonus.gzgqj.manager.common.util.StringUtils; +import com.bonus.gzgqj.manager.common.util.UserUtil; +import com.bonus.gzgqj.manager.webResult.ServerResponse; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.servlet.http.HttpServletRequest; +import java.util.ArrayList; +import java.util.List; +import java.util.Objects; + +/** + * @author 黑子 + * app 配件申请 + */ +@Service +@Slf4j +public class PartApplyWebServiceImp { + + @Autowired + private PartApplyAppMapper mapper; + + @Autowired + private FileUploadService uploadService; + + /** + * 查询设备接口 + * + * @param dto + * @return + */ + public List getDevList(MachinesVo dto) { + try { + List list = mapper.getDevList(dto); + return list; + } catch (Exception e) { + log.error(e.toString(), e); + } + return new ArrayList<>(); + } + + /** + * 获取使用单位 + * + * @param dto + * @return + */ + public ServerResponse getProInfo(MachinesVo dto) { + try { + MachinesVo machinesVo = mapper.getWfRecordList(dto); + if (machinesVo != null){ + return ServerResponse.createSuccess(machinesVo); + } + } catch (Exception e) { + log.error(e.toString(), e); + } + return ServerResponse.createSuccess(new ArrayList()); + } + + /** + * 查询配件下拉选集合 + * + * @param dto + * @return + */ + public List getPaTypeList(PaTypeVo dto) { + try { + List list = mapper.getPaTypeList(dto); + return list; + } catch (Exception e) { + log.error(e.toString(), e); + } + return new ArrayList(); + } + + /** + * 新增配件信息 + * + * @param dto + * @return + */ + public ServerResponse addPartApply(PartApplyAppVo dto) { + try { + Long userId = Objects.requireNonNull(UserUtil.getLoginUser()).getUserId(); + String userName = UserUtil.getLoginUser().getUsername(); + if (StringHelper.isEmpty(dto.getCreator())) { + dto.setCreator(userId.toString()); + dto.setUpdater(userId.toString()); + } + if (StringHelper.isEmpty(dto.getUserName())) { + dto.setUserName(userName); + } + List list = dto.getDetailsList(); + if (list == null || list.size() < 1) { + return ServerResponse.createErroe("请上传配件明细"); + } + if (StringHelper.isNotEmpty(dto.getDeviceId())) { + MachinesVo voo = mapper.getDevInfoById(dto.getDeviceId()); + dto.setDevType(voo.getType()); + } + + String code = getCode(); + dto.setCode(code); + final int[] applyNum = {0}; + list.forEach(vo -> { + applyNum[0] = applyNum[0] + vo.getApplyNum(); + }); + dto.setApplyNum(applyNum[0]); + dto.setStatus("1"); + dto.setStatusType("2"); + int num = mapper.addPartApply(dto); + if (num < 1) { + return ServerResponse.createErroe("配件申请失败"); + } + int num2 = mapper.insertDetails(list, dto); + if (num2 == list.size()) { + return ServerResponse.createSuccess("申请成功", "申请成功"); + } + + } catch (Exception e) { + log.error(e.toString(), e); + } + return ServerResponse.createErroe("配件申请失败"); + + } + + /** + * 获取编码 + * + * @return + */ + private String getCode() { + try { + int num = mapper.getSqList(); + num++; + String year = "XS-" + DateTimeHelper.getNowDay(); + if (num < 10) { + return year + "-00" + num; + } else if (num < 100) { + return year + "-0" + num; + } + return year + "-" + num; + + } catch (Exception e) { + log.error(e.toString(), e); + } + return "XF-0000000000"; + } + + /** + * 上传图片 + * + * @param request + * @param + * @return + */ + public ServerResponse uploadImage(HttpServletRequest request) { + try { + String id = request.getParameter("recordId"); + String bast64 = request.getParameter("bast64"); + + if (StringHelper.isEmpty(bast64)) { + return ServerResponse.createErroe("请先上传文件"); + } + List fileList = uploadService.uploadImageBast64(bast64, id, "t_part_apply", "使用照片"); + if (StringUtils.isEmpty(fileList) || fileList.size() < 1) { + return ServerResponse.createErroe("文件上传失败"); + } + return ServerResponse.createSuccess("文件上传成功", "文件上传成功"); + } catch (Exception e) { + log.error(e.toString(), e); + } + return ServerResponse.createErroe("文件上传失败"); + } + + /** + * 配件申请记录查询 + * + * @param dto + * @return + */ + public List getPartApplyList(PartApplyAppVo dto) { + try { + List list = mapper.getPartApplyList(dto); + return list; + } catch (Exception e) { + log.error(e.toString(), e); + } + return new ArrayList(); + + } + + /** + * 配件申请详情 + * + * @param dto + * @return + */ + public ServerResponse getPartApplyDetails(PartApplyAppVo dto) { + try { + if (StringHelper.isEmpty(dto.getId())) { + return ServerResponse.createErroe("清先选择记录"); + } + PartApplyAppVo vo = mapper.getPartApplyDetails(dto); + List flieList = uploadService.getFileList(dto.getId(), "t_part_apply", "使用照片"); + vo.setFileList(flieList); + List details = mapper.getDetailsList(dto); + vo.setDetailsList(details); + return ServerResponse.createSuccess("查询成功", vo); + + } catch (Exception e) { + log.error(e.toString(), e); + } + return ServerResponse.createSuccess("查询失败", new ArrayList()); + } +} diff --git a/src/main/resources/mappers/app/PartApplyAppMapper.xml b/src/main/resources/mappers/app/PartApplyAppMapper.xml index b92a099..24106c1 100644 --- a/src/main/resources/mappers/app/PartApplyAppMapper.xml +++ b/src/main/resources/mappers/app/PartApplyAppMapper.xml @@ -11,7 +11,7 @@ dev_code, dev_type, - pro_id , + pro_id, pro_name, apply_num,status_type)values( @@ -23,8 +23,7 @@ #{proId}, - #{proName} - ,#{applyNum},#{statusType}) + #{proName},#{applyNum},#{statusType}) @@ -38,21 +37,27 @@ @@ -126,14 +131,13 @@ and ( tpa.code like concat('%',#{keyWord},'%') or - tpa.user_name like concat('%',#{keyWord},'%') or - tpa.remark like concat('%',#{keyWord},'%') or - tpa.pro_name like concat('%',#{keyWord},'%') + tpa.user_name like concat('%',#{keyWord},'%') ) + + and STR_TO_DATE(tpa.create_time, '%Y-%m-%d') between STR_TO_DATE(#{startDay} ,'%Y-%m-%d') AND STR_TO_DATE(#{endDay},'%Y-%m-%d') + - -