diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/controller/InputApplyDetailsController.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/controller/InputApplyDetailsController.java new file mode 100644 index 00000000..a81f5fd7 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/controller/InputApplyDetailsController.java @@ -0,0 +1,113 @@ +package com.bonus.material.input.controller; + +import java.util.List; +import javax.servlet.http.HttpServletResponse; +import com.bonus.common.log.enums.OperaType; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.PutMapping; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; +import com.bonus.common.log.annotation.SysLog; +import com.bonus.common.security.annotation.RequiresPermissions; +import com.bonus.material.input.domain.InputApplyDetails; +import com.bonus.material.input.service.IInputApplyDetailsService; +import com.bonus.common.core.web.controller.BaseController; +import com.bonus.common.core.web.domain.AjaxResult; +import com.bonus.common.core.utils.poi.ExcelUtil; +import com.bonus.common.core.web.page.TableDataInfo; + +/** + * 入库任务详细Controller + * + * @author xsheng + * @date 2024-09-26 + */ +@Api(tags = "入库任务详细接口") +@RestController +@RequestMapping("/details") +public class InputApplyDetailsController extends BaseController +{ + @Autowired + private IInputApplyDetailsService inputApplyDetailsService; + + /** + * 查询入库任务详细列表 + */ + @ApiOperation(value = "查询入库任务详细列表") + @RequiresPermissions("input:details:list") + @GetMapping("/list") + public TableDataInfo list(InputApplyDetails inputApplyDetails) + { + startPage(); + List list = inputApplyDetailsService.selectInputApplyDetailsList(inputApplyDetails); + return getDataTable(list); + } + + /** + * 导出入库任务详细列表 + */ + @ApiOperation(value = "导出入库任务详细列表") + @RequiresPermissions("input:details:export") + @SysLog(title = "入库任务详细", businessType = OperaType.EXPORT, logType = 1,module = "仓储管理->导出入库任务详细") + @PostMapping("/export") + public void export(HttpServletResponse response, InputApplyDetails inputApplyDetails) + { + List list = inputApplyDetailsService.selectInputApplyDetailsList(inputApplyDetails); + ExcelUtil util = new ExcelUtil(InputApplyDetails.class); + util.exportExcel(response, list, "入库任务详细数据"); + } + + /** + * 获取入库任务详细详细信息 + */ + @ApiOperation(value = "获取入库任务详细详细信息") + @RequiresPermissions("input:details:query") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") Long id) + { + return success(inputApplyDetailsService.selectInputApplyDetailsById(id)); + } + + /** + * 新增入库任务详细 + */ + @ApiOperation(value = "新增入库任务详细") + @RequiresPermissions("input:details:add") + @SysLog(title = "入库任务详细", businessType = OperaType.INSERT, logType = 1,module = "仓储管理->新增入库任务详细") + @PostMapping + public AjaxResult add(@RequestBody InputApplyDetails inputApplyDetails) + { + return toAjax(inputApplyDetailsService.insertInputApplyDetails(inputApplyDetails)); + } + + /** + * 修改入库任务详细 + */ + @ApiOperation(value = "修改入库任务详细") + @RequiresPermissions("input:details:edit") + @SysLog(title = "入库任务详细", businessType = OperaType.UPDATE, logType = 1,module = "仓储管理->修改入库任务详细") + @PutMapping + public AjaxResult edit(@RequestBody InputApplyDetails inputApplyDetails) + { + return toAjax(inputApplyDetailsService.updateInputApplyDetails(inputApplyDetails)); + } + + /** + * 删除入库任务详细 + */ + @ApiOperation(value = "删除入库任务详细") + @RequiresPermissions("input:details:remove") + @SysLog(title = "入库任务详细", businessType = OperaType.DELETE, logType = 1,module = "仓储管理->删除入库任务详细") + @DeleteMapping("/{ids}") + public AjaxResult remove(@PathVariable Long[] ids) + { + return toAjax(inputApplyDetailsService.deleteInputApplyDetailsByIds(ids)); + } +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/domain/InputApplyDetails.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/domain/InputApplyDetails.java new file mode 100644 index 00000000..d7ede1b7 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/domain/InputApplyDetails.java @@ -0,0 +1,61 @@ +package com.bonus.material.input.domain; + +import com.bonus.common.core.annotation.Excel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.ToString; +import com.bonus.common.core.web.domain.BaseEntity; + +/** + * 入库任务详细对象 input_apply_details + * + * @author xsheng + * @date 2024-09-26 + */ + + +@Data +@ToString +public class InputApplyDetails extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** ID */ + private Long id; + + /** 任务ID */ + @Excel(name = "任务ID") + @ApiModelProperty(value = "任务ID") + private Long taskId; + + /** 机具ID */ + @Excel(name = "机具ID") + @ApiModelProperty(value = "机具ID") + private Long maId; + + /** 规格ID */ + @Excel(name = "规格ID") + @ApiModelProperty(value = "规格ID") + private Long typeId; + + /** 上级任务ID */ + @Excel(name = "上级任务ID") + @ApiModelProperty(value = "上级任务ID") + private Long parentId; + + /** 入库数量 */ + @Excel(name = "入库数量") + @ApiModelProperty(value = "入库数量") + private Long inputNum; + + /** 入库类型(1新购,2退料,3修试后,4盘点) */ + @Excel(name = "入库类型", readConverterExp = "1=新购,2退料,3修试后,4盘点") + private String inputType; + + /** 数据所属组织 */ + @Excel(name = "数据所属组织") + @ApiModelProperty(value = "数据所属组织") + private Long companyId; + + +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/mapper/InputApplyDetailsMapper.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/mapper/InputApplyDetailsMapper.java new file mode 100644 index 00000000..788b1427 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/mapper/InputApplyDetailsMapper.java @@ -0,0 +1,61 @@ +package com.bonus.material.input.mapper; + +import java.util.List; +import com.bonus.material.input.domain.InputApplyDetails; + +/** + * 入库任务详细Mapper接口 + * + * @author xsheng + * @date 2024-09-26 + */ +public interface InputApplyDetailsMapper +{ + /** + * 查询入库任务详细 + * + * @param id 入库任务详细主键 + * @return 入库任务详细 + */ + public InputApplyDetails selectInputApplyDetailsById(Long id); + + /** + * 查询入库任务详细列表 + * + * @param inputApplyDetails 入库任务详细 + * @return 入库任务详细集合 + */ + public List selectInputApplyDetailsList(InputApplyDetails inputApplyDetails); + + /** + * 新增入库任务详细 + * + * @param inputApplyDetails 入库任务详细 + * @return 结果 + */ + public int insertInputApplyDetails(InputApplyDetails inputApplyDetails); + + /** + * 修改入库任务详细 + * + * @param inputApplyDetails 入库任务详细 + * @return 结果 + */ + public int updateInputApplyDetails(InputApplyDetails inputApplyDetails); + + /** + * 删除入库任务详细 + * + * @param id 入库任务详细主键 + * @return 结果 + */ + public int deleteInputApplyDetailsById(Long id); + + /** + * 批量删除入库任务详细 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteInputApplyDetailsByIds(Long[] ids); +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/service/IInputApplyDetailsService.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/service/IInputApplyDetailsService.java new file mode 100644 index 00000000..72dbb495 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/service/IInputApplyDetailsService.java @@ -0,0 +1,61 @@ +package com.bonus.material.input.service; + +import java.util.List; +import com.bonus.material.input.domain.InputApplyDetails; + +/** + * 入库任务详细Service接口 + * + * @author xsheng + * @date 2024-09-26 + */ +public interface IInputApplyDetailsService +{ + /** + * 查询入库任务详细 + * + * @param id 入库任务详细主键 + * @return 入库任务详细 + */ + public InputApplyDetails selectInputApplyDetailsById(Long id); + + /** + * 查询入库任务详细列表 + * + * @param inputApplyDetails 入库任务详细 + * @return 入库任务详细集合 + */ + public List selectInputApplyDetailsList(InputApplyDetails inputApplyDetails); + + /** + * 新增入库任务详细 + * + * @param inputApplyDetails 入库任务详细 + * @return 结果 + */ + public int insertInputApplyDetails(InputApplyDetails inputApplyDetails); + + /** + * 修改入库任务详细 + * + * @param inputApplyDetails 入库任务详细 + * @return 结果 + */ + public int updateInputApplyDetails(InputApplyDetails inputApplyDetails); + + /** + * 批量删除入库任务详细 + * + * @param ids 需要删除的入库任务详细主键集合 + * @return 结果 + */ + public int deleteInputApplyDetailsByIds(Long[] ids); + + /** + * 删除入库任务详细信息 + * + * @param id 入库任务详细主键 + * @return 结果 + */ + public int deleteInputApplyDetailsById(Long id); +} diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/service/impl/InputApplyDetailsServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/service/impl/InputApplyDetailsServiceImpl.java new file mode 100644 index 00000000..ee1ed7b6 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/input/service/impl/InputApplyDetailsServiceImpl.java @@ -0,0 +1,96 @@ +package com.bonus.material.input.service.impl; + +import java.util.List; +import com.bonus.common.core.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import com.bonus.material.input.mapper.InputApplyDetailsMapper; +import com.bonus.material.input.domain.InputApplyDetails; +import com.bonus.material.input.service.IInputApplyDetailsService; + +/** + * 入库任务详细Service业务层处理 + * + * @author xsheng + * @date 2024-09-26 + */ +@Service +public class InputApplyDetailsServiceImpl implements IInputApplyDetailsService +{ + @Autowired + private InputApplyDetailsMapper inputApplyDetailsMapper; + + /** + * 查询入库任务详细 + * + * @param id 入库任务详细主键 + * @return 入库任务详细 + */ + @Override + public InputApplyDetails selectInputApplyDetailsById(Long id) + { + return inputApplyDetailsMapper.selectInputApplyDetailsById(id); + } + + /** + * 查询入库任务详细列表 + * + * @param inputApplyDetails 入库任务详细 + * @return 入库任务详细 + */ + @Override + public List selectInputApplyDetailsList(InputApplyDetails inputApplyDetails) + { + return inputApplyDetailsMapper.selectInputApplyDetailsList(inputApplyDetails); + } + + /** + * 新增入库任务详细 + * + * @param inputApplyDetails 入库任务详细 + * @return 结果 + */ + @Override + public int insertInputApplyDetails(InputApplyDetails inputApplyDetails) + { + inputApplyDetails.setCreateTime(DateUtils.getNowDate()); + return inputApplyDetailsMapper.insertInputApplyDetails(inputApplyDetails); + } + + /** + * 修改入库任务详细 + * + * @param inputApplyDetails 入库任务详细 + * @return 结果 + */ + @Override + public int updateInputApplyDetails(InputApplyDetails inputApplyDetails) + { + inputApplyDetails.setUpdateTime(DateUtils.getNowDate()); + return inputApplyDetailsMapper.updateInputApplyDetails(inputApplyDetails); + } + + /** + * 批量删除入库任务详细 + * + * @param ids 需要删除的入库任务详细主键 + * @return 结果 + */ + @Override + public int deleteInputApplyDetailsByIds(Long[] ids) + { + return inputApplyDetailsMapper.deleteInputApplyDetailsByIds(ids); + } + + /** + * 删除入库任务详细信息 + * + * @param id 入库任务详细主键 + * @return 结果 + */ + @Override + public int deleteInputApplyDetailsById(Long id) + { + return inputApplyDetailsMapper.deleteInputApplyDetailsById(id); + } +} diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/input/InputApplyDetailsMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/input/InputApplyDetailsMapper.xml new file mode 100644 index 00000000..d6efb256 --- /dev/null +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/input/InputApplyDetailsMapper.xml @@ -0,0 +1,105 @@ + + + + + + + + + + + + + + + + + + + + + select id, task_id, ma_id, type_id, parent_id, input_num, input_type, create_by, create_time, update_by, update_time, remark, company_id from input_apply_details + + + + + + + + insert into input_apply_details + + task_id, + ma_id, + type_id, + parent_id, + input_num, + input_type, + create_by, + create_time, + update_by, + update_time, + remark, + company_id, + + + #{taskId}, + #{maId}, + #{typeId}, + #{parentId}, + #{inputNum}, + #{inputType}, + #{createBy}, + #{createTime}, + #{updateBy}, + #{updateTime}, + #{remark}, + #{companyId}, + + + + + update input_apply_details + + task_id = #{taskId}, + ma_id = #{maId}, + type_id = #{typeId}, + parent_id = #{parentId}, + input_num = #{inputNum}, + input_type = #{inputType}, + create_by = #{createBy}, + create_time = #{createTime}, + update_by = #{updateBy}, + update_time = #{updateTime}, + remark = #{remark}, + company_id = #{companyId}, + + where id = #{id} + + + + delete from input_apply_details where id = #{id} + + + + delete from input_apply_details where id in + + #{id} + + + \ No newline at end of file