diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java index 97c383e0..6ca260ac 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/constant/MaterialConstants.java @@ -109,9 +109,6 @@ public class MaterialConstants { */ public static final Integer TEN_CONSTANT = 10; - // 营业执照 FILE_TYPE - public static final Long FILE_TYPE_YINGYEZHIZHAO = 4L; - // 物资厂家管理任务类型 TASK_TYPE public static final Long TASK_TYPE_WUZI_CHANGJIA = 9L; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmFileInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmFileInfoController.java index b3655c5d..f3bc711a 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmFileInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/controller/BmFileInfoController.java @@ -44,7 +44,7 @@ public class BmFileInfoController extends BaseController 列表 */ @ApiOperation(value = "查询附件列表") - @RequiresPermissions("basic:info:list") + @RequiresPermissions("basic:file:manage") @GetMapping("/list") public TableDataInfo list(BmFileInfo bmFileInfo) { @@ -59,7 +59,7 @@ public class BmFileInfoController extends BaseController */ @ApiOperation(value = "导出附件列表") @PreventRepeatSubmit - @RequiresPermissions("basic:info:export") + @RequiresPermissions("basic:file:manage") @SysLog(title = "附件", businessType = OperaType.EXPORT, logType = 1,module = "仓储管理->导出附件") @PostMapping("/export") public void export(HttpServletResponse response, BmFileInfo bmFileInfo) @@ -74,7 +74,7 @@ public class BmFileInfoController extends BaseController 详细信息 */ @ApiOperation(value = "获取附件详细信息") - @RequiresPermissions("basic:info:query") + @RequiresPermissions("basic:file:manage") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { @@ -87,7 +87,7 @@ public class BmFileInfoController extends BaseController */ @ApiOperation(value = "新增附件") @PreventRepeatSubmit - @RequiresPermissions("basic:info:add") + @RequiresPermissions("basic:file:manage") @SysLog(title = "附件", businessType = OperaType.INSERT, logType = 1,module = "仓储管理->新增附件") @PostMapping public AjaxResult add(@RequestBody BmFileInfo bmFileInfo) @@ -101,7 +101,7 @@ public class BmFileInfoController extends BaseController */ @ApiOperation(value = "修改附件") @PreventRepeatSubmit - @RequiresPermissions("basic:info:edit") + @RequiresPermissions("basic:file:manage") @SysLog(title = "附件", businessType = OperaType.UPDATE, logType = 1,module = "仓储管理->修改附件") @PutMapping public AjaxResult edit(@RequestBody BmFileInfo bmFileInfo) @@ -115,7 +115,7 @@ public class BmFileInfoController extends BaseController */ @ApiOperation(value = "删除附件") @PreventRepeatSubmit - @RequiresPermissions("basic:info:remove") + @RequiresPermissions("basic:file:manage") @SysLog(title = "附件", businessType = OperaType.DELETE, logType = 1,module = "仓储管理->删除附件") @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/domain/BmFileInfo.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/domain/BmFileInfo.java index 709b00ba..24cc05c1 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/domain/BmFileInfo.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/domain/BmFileInfo.java @@ -29,6 +29,11 @@ public class BmFileInfo extends BaseEntity @ApiModelProperty(value = "任务类型") private Long taskType; + /** 任务id */ + @Excel(name = "任务id") + @ApiModelProperty(value = "任务id") + private Long taskId; + /** 模块id */ @Excel(name = "模块id") @ApiModelProperty(value = "模块id") diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmFileInfoMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmFileInfoMapper.java index 75d56c9f..0d3f6f64 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmFileInfoMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/mapper/BmFileInfoMapper.java @@ -2,6 +2,7 @@ package com.bonus.material.basic.mapper; import java.util.List; import com.bonus.material.basic.domain.BmFileInfo; +import org.apache.ibatis.annotations.Param; /** * 附件Mapper接口 @@ -32,6 +33,8 @@ public interface BmFileInfoMapper { */ int insertBmFileInfo(BmFileInfo bmFileInfo); + int insertBmFileInfos(@Param("list") List bmFileInfos); + /** * 修改附件 * diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/IBmFileInfoService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/IBmFileInfoService.java index 0e3ecefe..d36d2d35 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/IBmFileInfoService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/IBmFileInfoService.java @@ -44,6 +44,8 @@ public interface IBmFileInfoService */ public int insertBmFileInfo(BmFileInfo bmFileInfo); + public int insertBmFileInfos(List bmFileInfos); + /** * 修改附件 diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmFileInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmFileInfoServiceImpl.java index 9fb79cb3..376112e4 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmFileInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/basic/service/impl/BmFileInfoServiceImpl.java @@ -66,6 +66,13 @@ public class BmFileInfoServiceImpl implements IBmFileInfoService return bmFileInfoMapper.insertBmFileInfo(bmFileInfo); } + @Override + public int insertBmFileInfos(List bmFileInfos) + { + bmFileInfos.stream().forEach(o -> o.setCreateTime(DateUtils.getNowDate())); + return bmFileInfoMapper.insertBmFileInfos(bmFileInfos); + } + /** * 修改附件 diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/controller/PartTypeController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/controller/PartTypeController.java index f986f9c7..a1c8e1a4 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/controller/PartTypeController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/controller/PartTypeController.java @@ -1,12 +1,21 @@ package com.bonus.material.ma.controller; +import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; import javax.servlet.http.HttpServletResponse; + +import cn.hutool.core.convert.Convert; +import com.bonus.common.biz.config.ListPagingUtil; +import com.bonus.common.core.utils.ServletUtils; import com.bonus.common.log.enums.OperaType; import com.bonus.material.common.annotation.PreventRepeatSubmit; +import com.bonus.material.ma.domain.vo.MaTypeVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.commons.lang3.BooleanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; @@ -48,6 +57,28 @@ public class PartTypeController extends BaseController return partTypeService.selectPartTypeList(partType); } + /** + * 根据左列表类型id查询右表格 + * + * @param partType + * @return + */ + @ApiOperation(value = "根据左列表类型id查询右表格") + @GetMapping("/getListByPartType") + public AjaxResult getListByPartType(PartType partType) { + List parentIds = partTypeService.selectParentId(partType); + if (CollectionUtils.isEmpty(parentIds)) { + return AjaxResult.success(new ArrayList<>()); + } + List maTypeVos = new ArrayList<>(); + Integer pageIndex = Convert.toInt(ServletUtils.getParameter("pageNum"), 1); + Integer pageSize = Convert.toInt(ServletUtils.getParameter("pageSize"), 10); + for (Integer parentId : parentIds) { + maTypeVos.addAll(partTypeService.getListByParentId(parentId.longValue(), partType)); + } + return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, maTypeVos)); + } + @ApiOperation(value = "配件类型所属上级树") @RequiresPermissions("ma:type:query") @GetMapping("/getPartTree") diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/controller/TypeController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/controller/TypeController.java index 01f022de..407b4d45 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/controller/TypeController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/controller/TypeController.java @@ -79,16 +79,11 @@ public class TypeController extends BaseController { for (Integer parentId : parentIds) { maTypeVos.addAll(typeService.getListByParentId(parentId.longValue(), maTypeVo)); } - List updatedMaTypeVos = maTypeVos.stream() - .map(obj -> { - obj.setHouseId(maTypeVo.getHouseId()); - return obj; - }).collect(Collectors.toList()); if (BooleanUtils.isTrue(maTypeVo.getDisplayBindRelationship())) { - List finalMaTypeVos = typeService.getMyTypeAndBindUsers(updatedMaTypeVos); + List finalMaTypeVos = typeService.getMyTypeAndBindUsers(maTypeVos); return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, finalMaTypeVos)); } else { - return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, updatedMaTypeVos)); + return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, maTypeVos)); } } @@ -153,6 +148,34 @@ public class TypeController extends BaseController { util.exportExcel(response, list, "物资类型管理数据"); } + /** + * 导出物资类型管理列表(库管员) + */ + @ApiOperation(value = "导出物资类型列表(库管员)") + @PreventRepeatSubmit + @RequiresPermissions("ma:type:export") + @SysLog(title = "物资类型管理(库管员)", businessType = OperaType.EXPORT, module = "仓储管理->导出物资类型(库管员)") + @PostMapping("/export4Keeper") + public void export4Keeper(HttpServletResponse response, Type type) { + List list = typeService.selectTypeList4Keeper(type); + ExcelUtil util = new ExcelUtil(Type.class); + util.exportExcel(response, list, "物资类型管理数据(库管员)"); + } + + /** + * 导出物资类型管理列表(维修员) + */ + @ApiOperation(value = "导出物资类型列表(维修员)") + @PreventRepeatSubmit + @RequiresPermissions("ma:type:export") + @SysLog(title = "物资类型管理(维修员)", businessType = OperaType.EXPORT, module = "仓储管理->导出物资类型(维修员)") + @PostMapping("/export4Repair") + public void export4Repair(HttpServletResponse response, Type type) { + List list = typeService.selectTypeList4Repair(type); + ExcelUtil util = new ExcelUtil(Type.class); + util.exportExcel(response, list, "物资类型管理数据(维修员)"); + } + /** * 获取物资类型管理详细信息 */ diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/domain/Type.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/domain/Type.java index 4e3af21f..937046b3 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/domain/Type.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/domain/Type.java @@ -35,6 +35,14 @@ public class Type extends BaseEntity { @ApiModelProperty(value = "类型名称") private String typeName; + /** 库管员昵称 */ + @ApiModelProperty(value = "库管员昵称") + private String keeperNickName; + + /** 维修员昵称 */ + @ApiModelProperty(value = "维修员昵称") + private String repairNickName; + /** 仓库名称 */ @ApiModelProperty(value = "物资仓库名称") private String houseName; diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/mapper/PartTypeMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/mapper/PartTypeMapper.java index d6c03b93..f8910016 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/mapper/PartTypeMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/mapper/PartTypeMapper.java @@ -4,6 +4,8 @@ import java.util.List; import com.bonus.common.biz.domain.TreeNode; import com.bonus.material.ma.domain.PartType; +import com.bonus.material.ma.domain.vo.MaTypeVo; +import org.apache.ibatis.annotations.Param; /** * 配件类型管理Mapper接口 @@ -87,4 +89,12 @@ public interface PartTypeMapper * @return */ int selectPart(Long id); + + /** + * 根据level层级和typeID 查询父级ID + * @param partType + */ + List selectParentId(PartType partType); + + List getListByTypeName(@Param("paId") Long id, @Param("type") PartType partType); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/mapper/TypeMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/mapper/TypeMapper.java index ebdcc70d..e9e4b029 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/mapper/TypeMapper.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/mapper/TypeMapper.java @@ -59,6 +59,10 @@ public interface TypeMapper { */ List selectTypeList(Type type); + List selectTypeList4Keeper(Type type); + + List selectTypeList4Repair(Type type); + /** * 查询物资类型列表 -- 并且查询当前节点的父级节点名称 diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/IPartTypeService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/IPartTypeService.java index 8255fc1a..0f99d4b5 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/IPartTypeService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/IPartTypeService.java @@ -4,6 +4,7 @@ import java.util.List; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.material.ma.domain.PartType; +import com.bonus.material.ma.domain.vo.MaTypeVo; /** * 配件类型管理Service接口 @@ -66,4 +67,8 @@ public interface IPartTypeService * @return */ List getTypeList(PartType partType); + + List selectParentId(PartType partType); + + List getListByParentId(Long id, PartType type); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/ITypeService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/ITypeService.java index 1e36e423..34472b5c 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/ITypeService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/ITypeService.java @@ -44,6 +44,10 @@ public interface ITypeService { */ List selectTypeList(Type type); + List selectTypeList4Keeper(Type type); + + List selectTypeList4Repair(Type type); + List selectTypeListAndParentInfo(Type type); diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/PartTypeServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/PartTypeServiceImpl.java index 020d6d6c..a7ad207e 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/PartTypeServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/PartTypeServiceImpl.java @@ -10,6 +10,7 @@ import com.bonus.common.biz.enums.HttpCodeEnum; import com.bonus.common.core.utils.DateUtils; import com.bonus.common.core.web.domain.AjaxResult; import com.bonus.common.security.utils.SecurityUtils; +import com.bonus.material.ma.domain.vo.MaTypeVo; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -183,4 +184,13 @@ public class PartTypeServiceImpl implements IPartTypeService return partTypeMapper.getTypeList(partType); } + @Override + public List selectParentId(PartType partType) { + return partTypeMapper.selectParentId(partType); + } + + @Override + public List getListByParentId(Long id, PartType type) { + return partTypeMapper.getListByTypeName(id, type); + } } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/SupplierInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/SupplierInfoServiceImpl.java index 15e67fd6..d058e7e3 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/SupplierInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/SupplierInfoServiceImpl.java @@ -48,7 +48,6 @@ public class SupplierInfoServiceImpl implements ISupplierInfoService { BmFileInfo bmFileInfo = new BmFileInfo(); bmFileInfo.setModelId(supplierInfo.getSupplierId()); bmFileInfo.setTaskType(MaterialConstants.TASK_TYPE_WUZI_CHANGJIA); - bmFileInfo.setFileType(MaterialConstants.FILE_TYPE_YINGYEZHIZHAO); List fileInfos = bmFileInfoMapper.selectBmFileInfoList(bmFileInfo); supplierInfo.setBmFileInfos(fileInfos); return supplierInfo; @@ -110,7 +109,6 @@ public class SupplierInfoServiceImpl implements ISupplierInfoService { BmFileInfo bmFileInfoToDelete = new BmFileInfo(); bmFileInfoToDelete.setModelId(supplierInfo.getSupplierId()); bmFileInfoToDelete.setTaskType(MaterialConstants.TASK_TYPE_WUZI_CHANGJIA); - bmFileInfoToDelete.setFileType(MaterialConstants.FILE_TYPE_YINGYEZHIZHAO); bmFileInfoMapper.deleteBmFileInfoByBizInfo(bmFileInfoToDelete); if (CollectionUtils.isEmpty(supplierInfo.getBmFileInfos())) { return AjaxResult.success("修改任务成功,无营业执照附件"); @@ -143,7 +141,6 @@ public class SupplierInfoServiceImpl implements ISupplierInfoService { bmFileInfoToDelete = new BmFileInfo(); bmFileInfoToDelete.setModelId(supplierIds[i]); bmFileInfoToDelete.setTaskType(MaterialConstants.TASK_TYPE_WUZI_CHANGJIA); - bmFileInfoToDelete.setFileType(MaterialConstants.FILE_TYPE_YINGYEZHIZHAO); bmFileInfoMapper.deleteBmFileInfoByBizInfo(bmFileInfoToDelete); } return supplierInfoMapper.deleteSupplierInfoBySupplierIds(supplierIds); diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/TypeServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/TypeServiceImpl.java index 5efa5a31..d7b3cbfb 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/TypeServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/ma/service/impl/TypeServiceImpl.java @@ -132,6 +132,48 @@ public class TypeServiceImpl implements ITypeService { return typeMapper.selectTypeList(type); } + /** + * 查询物资类型管理列表(库管员) + * + * @param type 物资类型管理(库管员) + * @return 物资类型管理(库管员) + */ + @Override + public List selectTypeList4Keeper(Type type) { + if (type != null ) { + if (StringUtils.isEmpty(type.getDelFlag())) { + // 如果没赋值,则默认查询正常数据状态 + type.setDelFlag(String.valueOf(DataCodeEnum.NORMAL.getCode())); + } + // 如果是顶级节点,则查询所有子节点 + if ("0".equals(type.getLevel())) { + type.setLevel(null); + } + } + return typeMapper.selectTypeList4Keeper(type); + } + + /** + * 查询物资类型管理列表(维修员) + * + * @param type 物资类型管理(维修员) + * @return 物资类型管理(维修员) + */ + @Override + public List selectTypeList4Repair(Type type) { + if (type != null ) { + if (StringUtils.isEmpty(type.getDelFlag())) { + // 如果没赋值,则默认查询正常数据状态 + type.setDelFlag(String.valueOf(DataCodeEnum.NORMAL.getCode())); + } + // 如果是顶级节点,则查询所有子节点 + if ("0".equals(type.getLevel())) { + type.setLevel(null); + } + } + return typeMapper.selectTypeList4Repair(type); + } + /** * 查询物资类型管理列表 -- 并获取父级信息 * diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java index 9611c33e..eb9ed653 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseCheckInfoController.java @@ -84,9 +84,9 @@ public class PurchaseCheckInfoController extends BaseController { @RequiresPermissions("purchase:info:edit") @SysLog(title = "新购验收任务", businessType = OperaType.UPDATE, module = "物资新购->修改新购验收任务") @PutMapping - public AjaxResult edit(@RequestBody PurchaseCheckInfo purchaseCheckInfo) { + public AjaxResult edit(@RequestBody PurchaseCheckDto purchaseCheckDto) { try { - return toAjax(purchaseCheckInfoService.updatePurchaseCheckInfo(purchaseCheckInfo)); + return toAjax(purchaseCheckInfoService.updatePurchaseCheckInfo(purchaseCheckDto)); } catch (Exception e) { return error("系统错误, " + e.getMessage()); } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseNoticePersonController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseNoticePersonController.java index 7aa32225..04f4c1da 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseNoticePersonController.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/controller/PurchaseNoticePersonController.java @@ -45,7 +45,7 @@ public class PurchaseNoticePersonController extends BaseController { * 查询新购短信通知人员列表 */ @ApiOperation(value = "查询新购短信通知人员列表") - @RequiresPermissions("purchase:person:list") + @RequiresPermissions("purchase:person:notice") @GetMapping("/list") public TableDataInfo list(PurchaseNoticePerson purchaseNoticePerson) { List list = purchaseNoticePersonService.selectPurchaseNoticePersonList(purchaseNoticePerson); @@ -56,7 +56,7 @@ public class PurchaseNoticePersonController extends BaseController { * 查询新购短信通知人员列表 */ @ApiOperation(value = "查询等待选择的新购短信通知人员列表") - @RequiresPermissions("purchase:person:list") + @RequiresPermissions("purchase:person:notice") @GetMapping("/listUnSelected") public TableDataInfo listUnSelected() { List list = purchaseNoticePersonService.getUnSelectedUserList(); @@ -68,7 +68,7 @@ public class PurchaseNoticePersonController extends BaseController { */ @ApiOperation(value = "导出新购短信通知人员列表") @PreventRepeatSubmit - @RequiresPermissions("purchase:person:export") + @RequiresPermissions("purchase:person:notice") @SysLog(title = "新购短信通知人员", businessType = OperaType.EXPORT, module = "物资新购->导出新购短信通知人员") @PostMapping("/export") public void export(HttpServletResponse response, PurchaseNoticePerson purchaseNoticePerson) { @@ -81,7 +81,7 @@ public class PurchaseNoticePersonController extends BaseController { * 获取新购短信通知人员详细信息 */ @ApiOperation(value = "获取新购短信通知人员详细信息") - @RequiresPermissions("purchase:person:query") + @RequiresPermissions("purchase:person:notice") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { return success(purchaseNoticePersonService.selectPurchaseNoticePersonById(id)); @@ -92,7 +92,7 @@ public class PurchaseNoticePersonController extends BaseController { */ @ApiOperation(value = "新增新购短信通知人员") @PreventRepeatSubmit - @RequiresPermissions("purchase:person:add") + @RequiresPermissions("purchase:person:notice") @SysLog(title = "新购短信通知人员", businessType = OperaType.INSERT, module = "物资新购->新增新购短信通知人员") @PostMapping public AjaxResult add(@RequestBody PurchaseNoticePerson purchaseNoticePerson) { @@ -108,7 +108,7 @@ public class PurchaseNoticePersonController extends BaseController { */ @ApiOperation(value = "批量新增新购短信通知人员") @PreventRepeatSubmit - @RequiresPermissions("purchase:person:add") + @RequiresPermissions("purchase:person:notice") @SysLog(title = "批量新增新购短信通知人员", businessType = OperaType.INSERT, module = "物资新购->批量新增新购短信通知人员") @PostMapping("/batchAddNoticePerson") public AjaxResult batchAddNoticePerson(@RequestBody List purchaseNoticePersonList) { @@ -124,7 +124,7 @@ public class PurchaseNoticePersonController extends BaseController { */ @ApiOperation(value = "批量发送短信") @PreventRepeatSubmit - @RequiresPermissions("purchase:person:edit") + @RequiresPermissions("purchase:person:notice") @SysLog(title = "批量发送短信", businessType = OperaType.UPDATE, module = "物资新购->批量发送短信") @PutMapping("/batchSendSms") public AjaxResult batchSendSms(@NotNull @Valid @RequestBody PurchaseNoticePersonDto purchaseNoticePersonDto) { @@ -136,7 +136,7 @@ public class PurchaseNoticePersonController extends BaseController { */ @ApiOperation(value = "修改新购短信通知人员") @PreventRepeatSubmit - @RequiresPermissions("purchase:person:edit") + @RequiresPermissions("purchase:person:notice") @SysLog(title = "新购短信通知人员", businessType = OperaType.UPDATE, module = "物资新购->修改新购短信通知人员") @PutMapping public AjaxResult edit(@RequestBody PurchaseNoticePerson purchaseNoticePerson) { @@ -152,7 +152,7 @@ public class PurchaseNoticePersonController extends BaseController { */ @ApiOperation(value = "删除新购短信通知人员") @PreventRepeatSubmit - @RequiresPermissions("purchase:person:remove") + @RequiresPermissions("purchase:person:notice") @SysLog(title = "新购短信通知人员", businessType = OperaType.DELETE, module = "物资新购->删除新购短信通知人员") @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/PurchaseCheckDetails.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/PurchaseCheckDetails.java index 4c4b13cc..0a595f2b 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/PurchaseCheckDetails.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/PurchaseCheckDetails.java @@ -2,6 +2,9 @@ package com.bonus.material.purchase.domain; import java.math.BigDecimal; import java.util.Date; +import java.util.List; + +import com.bonus.material.basic.domain.BmFileInfo; import com.fasterxml.jackson.annotation.JsonFormat; import com.bonus.common.core.annotation.Excel; import io.swagger.annotations.ApiModelProperty; @@ -134,5 +137,12 @@ public class PurchaseCheckDetails extends BaseEntity { @ApiModelProperty(value = "数据所属组织") private Long companyId; + /** 是否是固定资产编号(0 否,1 是) */ + @ApiModelProperty(value = "是否是固定资产编号(0 否,1 是)") + private String fixCode; + /** 验收附件列表 */ + @Excel(name = "验收附件列表") + @ApiModelProperty(value = "验收附件列表") + private List bmFileInfos; } diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/dto/PurchaseDto.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/dto/PurchaseDto.java index 86aaefae..b45dffd2 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/dto/PurchaseDto.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/domain/dto/PurchaseDto.java @@ -74,8 +74,8 @@ public class PurchaseDto { @ApiModelProperty(value = "提交绑定数据集合") private List dtoList; - /** 是否是固定资产编号(0,是 1,否) */ - @ApiModelProperty(value = "是否是固定资产编号(0,是 1,否)") + /** 是否是固定资产编号(0 否,1 是) */ + @ApiModelProperty(value = "是否是固定资产编号(0 否,1 是)") private String fixCode; /** 编号类型 */ diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java index 7d39fa8f..b5775f58 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/IPurchaseCheckInfoService.java @@ -53,10 +53,10 @@ public interface IPurchaseCheckInfoService { /** * 修改新购验收任务 * - * @param purchaseCheckInfo 新购验收任务 + * @param purchaseCheckDto 新购验收任务 * @return 结果 */ - int updatePurchaseCheckInfo(PurchaseCheckInfo purchaseCheckInfo); + boolean updatePurchaseCheckInfo(PurchaseCheckDto purchaseCheckDto); /** * 批量删除新购验收任务 diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java index a9480ee6..4e9c7c34 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/purchase/service/impl/PurchaseCheckInfoServiceImpl.java @@ -12,6 +12,9 @@ import java.util.stream.Collectors; import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.utils.DateUtils; import com.bonus.common.core.web.domain.AjaxResult; +import com.bonus.common.security.utils.SecurityUtils; +import com.bonus.material.basic.domain.BmFileInfo; +import com.bonus.material.basic.mapper.BmFileInfoMapper; import com.bonus.material.purchase.config.PurchaseTaskEnum; import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.dto.PurchaseCheckDto; @@ -29,6 +32,7 @@ import com.bonus.material.purchase.service.IPurchaseCheckInfoService; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.TransactionStatus; import org.springframework.transaction.support.DefaultTransactionDefinition; +import org.springframework.util.CollectionUtils; import javax.annotation.Resource; @@ -54,6 +58,9 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { @Resource private TmTaskMapper tmTaskMapper; + @Resource + BmFileInfoMapper bmFileInfoMapper; + /** * 查询新购验收任务 * @@ -160,6 +167,7 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { public AjaxResult insertPurchaseCheckInfo(PurchaseCheckDto purchaseCheckInfo) { // 赋值创建时间 purchaseCheckInfo.getPurchaseCheckInfo().setCreateTime(DateUtils.getNowDate()); + purchaseCheckInfo.getPurchaseCheckInfo().setCreateBy(SecurityUtils.getLoginUser().getUsername()); try { // 查询新购任务当月最大单号 Integer thisMonthMaxOrder = tmTaskMapper.getMonthMaxOrderByDate(DateUtils.getCurrentYear(), DateUtils.getCurrentMonth(), Long.valueOf(PurchaseTaskEnum.PURCHASE_TASK_STATUS_WAIT_NOTICE.getTaskTypeId())); @@ -188,6 +196,17 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { }); // 批量插入详情数据 boolean purchaseCheckDetailsListAddResult = purchaseCheckDetailsMapper.insertPurchaseCheckDetailsList(purchaseCheckInfo.getPurchaseCheckDetailsList()) > 0; + + // 批量插入附件列表 + List purchaseCheckDetailsList = purchaseCheckInfo.getPurchaseCheckDetailsList(); + for (PurchaseCheckDetails purchaseCheckDetails : purchaseCheckDetailsList) { + List bmFileInfos = purchaseCheckDetails.getBmFileInfos(); + if (!CollectionUtils.isEmpty(bmFileInfos)) { + bmFileInfos.stream().forEach(o -> o.setTaskId(taskId)); + bmFileInfoMapper.insertBmFileInfos(bmFileInfos); + } + } + if (purchaseCheckDetailsListAddResult) { transactionManager.commit(transactionStatus); return AjaxResult.success("新增任务成功"); @@ -283,14 +302,20 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService { /** * 修改新购验收任务 * - * @param purchaseCheckInfo 新购验收任务 + * @param purchaseCheckDto 新购验收任务 * @return 结果 */ @Override - public int updatePurchaseCheckInfo(PurchaseCheckInfo purchaseCheckInfo) { - purchaseCheckInfo.setUpdateTime(DateUtils.getNowDate()); + public boolean updatePurchaseCheckInfo(PurchaseCheckDto purchaseCheckDto) { + purchaseCheckDto.getPurchaseCheckInfo().setUpdateTime(DateUtils.getNowDate()); + purchaseCheckDto.getPurchaseCheckInfo().setUpdateBy(SecurityUtils.getUsername()); try { - return purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckInfo); + List purchaseCheckDetailsList = purchaseCheckDto.getPurchaseCheckDetailsList(); + for (PurchaseCheckDetails purchaseCheckDetails : purchaseCheckDetailsList) { + purchaseCheckDetailsMapper.updatePurchaseCheckDetails(purchaseCheckDetails); + } + purchaseCheckInfoMapper.updatePurchaseCheckInfo(purchaseCheckDto.getPurchaseCheckInfo()); + return true; } catch (Exception e) { throw new ServiceException("错误信息描述"); } diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmFileInfoMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmFileInfoMapper.xml index 15e24530..c816ebc5 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmFileInfoMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmFileInfoMapper.xml @@ -6,6 +6,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -15,17 +16,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - select id, task_type, model_id, name, url, file_type, create_by, create_time from bm_file_info + select id, task_type, task_id, model_id, name, url, file_type, create_by, create_time from bm_file_info @@ -38,6 +41,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" insert into bm_file_info task_type, + task_id, model_id, name, url, @@ -47,6 +51,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{taskType}, + #{taskId}, #{modelId}, #{name}, #{url}, @@ -56,10 +61,26 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + INSERT INTO bm_file_info(task_type,task_id,model_id,name,url,file_type,create_by,create_time) + VALUES + + (#{item.taskType}, + #{item.taskId}, + #{item.modelId}, + #{item.name}, + #{item.url}, + #{item.fileType}, + #{item.createBy}, + #{item.createTime}) + + + update bm_file_info task_type = #{taskType}, + task_id = #{taskId}, model_id = #{modelId}, name = #{name}, url = #{url}, @@ -85,6 +106,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" delete from bm_file_info and task_type = #{taskType} + and task_id = #{taskId} and model_id = #{modelId} and file_type = #{fileType} diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/PartTypeMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/PartTypeMapper.xml index d77654a4..b253e837 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/PartTypeMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/PartTypeMapper.xml @@ -151,4 +151,46 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" update ma_part_type set del_flag = '2' where pa_id = #{id} + + + \ No newline at end of file diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/TypeMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/TypeMapper.xml index 72f157ac..79f672e5 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/TypeMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/ma/TypeMapper.xml @@ -8,7 +8,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + @@ -99,31 +102,55 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + @@ -132,6 +134,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" file_name, file_url, company_id, + fix_code, #{taskId}, @@ -158,6 +161,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{fileName}, #{fileUrl}, #{companyId}, + #{fixCode}, @@ -188,6 +192,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" file_name = #{fileName}, file_url = #{fileUrl}, company_id = #{companyId}, + fix_code = #{fixCode}, where id = #{id} @@ -227,14 +232,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" purchase_num,check_num,bind_num,check_result,supplier_id, status,production_time,create_by,create_time,update_by, update_time,remark,check_url_name,check_url,input_num, - input_status,input_time,file_name,file_url,company_id) + input_status,input_time,file_name,file_url,company_id,fix_code) values (#{item.taskId},#{item.typeId},#{item.purchasePrice},#{item.purchaseTaxPrice}, #{item.purchaseNum},#{item.checkNum},#{item.bindNum},#{item.checkResult},#{item.supplierId}, #{item.status},#{item.productionTime},#{item.createBy},#{item.createTime},#{item.updateBy}, #{item.updateTime},#{item.remark},#{item.checkUrlName},#{item.checkUrl},#{item.inputNum}, - #{item.inputStatus},#{item.inputTime},#{item.fileName},#{item.fileUrl},#{item.companyId}) + #{item.inputStatus},#{item.inputTime},#{item.fileName},#{item.fileUrl},#{item.companyId},#{item.fixCode})