Selaa lähdekoodia

物资柜代码初始化 + 物资类型代码开发

车车 1 vuosi sitten
vanhempi
sitoutus
e94b9171b2
27 muutettua tiedostoa jossa 2171 lisäystä ja 0 poistoa
  1. 120 0
      ktg-iscs/src/main/java/com/ktg/iscs/controller/IsMaterialsTypeController.java
  2. 74 0
      ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterials.java
  3. 47 0
      ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterialsCabinet.java
  4. 69 0
      ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterialsLoan.java
  5. 61 0
      ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterialsRestitutionRules.java
  6. 67 0
      ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterialsType.java
  7. 7 0
      ktg-iscs/src/main/java/com/ktg/iscs/domain/IsWorkarea.java
  8. 65 0
      ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsCabinetMapper.java
  9. 65 0
      ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsLoanMapper.java
  10. 65 0
      ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsMapper.java
  11. 65 0
      ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsRestitutionRulesMapper.java
  12. 65 0
      ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsTypeMapper.java
  13. 63 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsCabinetService.java
  14. 63 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsLoanService.java
  15. 63 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsRestitutionRulesService.java
  16. 63 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsService.java
  17. 63 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsTypeService.java
  18. 102 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsCabinetServiceImpl.java
  19. 102 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsLoanServiceImpl.java
  20. 102 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsRestitutionRulesServiceImpl.java
  21. 102 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsServiceImpl.java
  22. 118 0
      ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsTypeServiceImpl.java
  23. 95 0
      ktg-iscs/src/main/resources/mapper/IsMaterialsCabinetMapper.xml
  24. 115 0
      ktg-iscs/src/main/resources/mapper/IsMaterialsLoanMapper.xml
  25. 125 0
      ktg-iscs/src/main/resources/mapper/IsMaterialsMapper.xml
  26. 105 0
      ktg-iscs/src/main/resources/mapper/IsMaterialsRestitutionRulesMapper.xml
  27. 120 0
      ktg-iscs/src/main/resources/mapper/IsMaterialsTypeMapper.xml

+ 120 - 0
ktg-iscs/src/main/java/com/ktg/iscs/controller/IsMaterialsTypeController.java

@@ -0,0 +1,120 @@
+package com.ktg.iscs.controller;
+
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ktg.common.annotation.Log;
+import com.ktg.common.core.controller.BaseController;
+import com.ktg.common.enums.BusinessType;
+import com.ktg.common.pojo.CommonResult;
+import com.ktg.common.utils.poi.ExcelUtil;
+import com.ktg.iscs.domain.IsMaterialsType;
+import com.ktg.iscs.service.IIsMaterialsTypeService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.Parameters;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 物资类型Controller
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Api(tags = "物资类型")
+@RestController
+@RequestMapping("/iscs/type")
+public class IsMaterialsTypeController extends BaseController
+{
+    @Autowired
+    private IIsMaterialsTypeService isMaterialsTypeService;
+
+    /**
+     * 查询物资类型分页
+     */
+    @ApiOperation("查询物资类型-分页")
+    @Parameters({
+            @Parameter(name = "page", description = "Page"),
+            @Parameter(name = "isMaterialsType", description = "实体参数")
+    })
+    @PreAuthorize("@ss.hasPermi('iscs:type:list')")
+    @GetMapping("/getIsMaterialsTypePage")
+    public CommonResult<Page<IsMaterialsType>> getIsMaterialsTypePage(Page<IsMaterialsType> page, IsMaterialsType isMaterialsType)
+    {
+        Page<IsMaterialsType> result = isMaterialsTypeService.page(page, Wrappers.<IsMaterialsType>lambdaQuery()
+                .like(StringUtils.isNotBlank(isMaterialsType.getMaterialsTypeCode()), IsMaterialsType::getMaterialsTypeCode, isMaterialsType.getMaterialsTypeCode())
+                .like(StringUtils.isNotBlank(isMaterialsType.getMaterialsTypeName()), IsMaterialsType::getMaterialsTypeName, isMaterialsType.getMaterialsTypeName())
+                .eq(StringUtils.isNotBlank(isMaterialsType.getEnableFlag()), IsMaterialsType::getEnableFlag, isMaterialsType.getEnableFlag())
+                .orderByDesc(IsMaterialsType::getMaterialsTypeId));
+        return CommonResult.success(result);
+    }
+
+    /**
+     * 导出物资类型列表
+     */
+    @ApiOperation("导出物资类型列表")
+    @Parameter(name = "isMaterialsType", description = "实体参数")
+    @PreAuthorize("@ss.hasPermi('iscs:type:export')")
+    @Log(title = "物资类型", businessType = BusinessType.EXPORT)
+    @PostMapping("/exportIsMaterialsType")
+    public void exportIsMaterialsType(HttpServletResponse response, IsMaterialsType isMaterialsType)
+    {
+        List<IsMaterialsType> list = isMaterialsTypeService.selectIsMaterialsTypeList(isMaterialsType);
+        ExcelUtil<IsMaterialsType> util = new ExcelUtil<IsMaterialsType>(IsMaterialsType.class);
+        util.exportExcel(response, list, "物资类型数据");
+    }
+
+    /**
+     * 获取物资类型详细信息
+     */
+    @ApiOperation("获取物资类型详细信息")
+    @Parameter(name = "materialsTypeId", description = "materialsTypeId")
+    @PreAuthorize("@ss.hasPermi('iscs:type:query')")
+    @GetMapping(value = "/selectIsMaterialsTypeById")
+    public CommonResult<IsMaterialsType> selectIsMaterialsTypeById(Long materialsTypeId)
+    {
+        return CommonResult.success(isMaterialsTypeService.selectIsMaterialsTypeByMaterialsTypeId(materialsTypeId));
+    }
+
+    /**
+     * 新增物资类型
+     */
+    @ApiOperation("新增物资类型")
+    @PreAuthorize("@ss.hasPermi('iscs:type:add')")
+    @Log(title = "物资类型", businessType = BusinessType.INSERT)
+    @PostMapping("/insertIsMaterialsType")
+    public CommonResult<Boolean> insertIsMaterialsType(@RequestBody @Parameter(name = "isMaterialsType", description = "新增数据类,放到body") IsMaterialsType isMaterialsType)
+    {
+        return CommonResult.success(isMaterialsTypeService.insertIsMaterialsType(isMaterialsType) == 1);
+    }
+
+    /**
+     * 修改物资类型
+     */
+    @ApiOperation("修改物资类型")
+    @PreAuthorize("@ss.hasPermi('iscs:type:edit')")
+    @Log(title = "物资类型", businessType = BusinessType.UPDATE)
+    @PostMapping("/updateIsMaterialsType")
+    public CommonResult<Boolean> updateIsMaterialsType(@RequestBody @Parameter(name = "isMaterialsType", description = "修改数据类,放到body") IsMaterialsType isMaterialsType)
+    {
+        return CommonResult.success(isMaterialsTypeService.updateIsMaterialsType(isMaterialsType) == 1);
+    }
+
+    /**
+     * 删除物资类型
+     */
+    @ApiOperation("删除物资类型")
+    @PreAuthorize("@ss.hasPermi('iscs:type:remove')")
+    @Log(title = "物资类型", businessType = BusinessType.DELETE)
+	@PostMapping("/deleteIsMaterialsTypeByMaterialsTypeIds")
+    public CommonResult<Boolean> deleteIsMaterialsTypeByMaterialsTypeIds(String materialsTypeIds)
+    {
+        return CommonResult.success(isMaterialsTypeService.deleteIsMaterialsTypeByMaterialsTypeIds(materialsTypeIds) != 0);
+    }
+}

+ 74 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterials.java

@@ -0,0 +1,74 @@
+package com.ktg.iscs.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ktg.common.annotation.Excel;
+import com.ktg.common.core.domain.model.BaseBean;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * 物资对象 is_materials
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class IsMaterials extends BaseBean
+{
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "物资ID")
+    @TableId(type = IdType.AUTO)
+    private Long materialsId;
+
+    @ApiModelProperty(value = "物资编号")
+    @Excel(name = "物资编号")
+    private String materialsCode;
+
+    @ApiModelProperty(value = "物资名称")
+    @Excel(name = "物资名称")
+    private String materialsName;
+
+    @ApiModelProperty(value = "物资类型ID")
+    private Long materialsTypeId;
+
+    @ApiModelProperty(value = "区域ID")
+    @Excel(name = "区域ID")
+    private Long workareaId;
+
+    @ApiModelProperty(value = "物资柜ID")
+    @Excel(name = "物资柜ID")
+    private Long materialsCabinetId;
+
+    @ApiModelProperty(value = "可用寿命")
+    @Excel(name = "可用寿命")
+    private String serviceLife;
+
+    @ApiModelProperty(value = "剩余寿命")
+    @Excel(name = "剩余寿命")
+    private String availableLife;
+
+    @ApiModelProperty(value = "可用次数")
+    @Excel(name = "可用次数")
+    private Long serviceTimes;
+
+    @ApiModelProperty(value = "剩余次数")
+    @Excel(name = "剩余次数")
+    private Long availableTimes;
+
+    @ApiModelProperty(value = "启用时间")
+    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")
+    @Excel(name = "启用时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date startTime;
+
+    @ApiModelProperty(value = "删除标志(0代表存在 2代表删除)")
+    private String delFlag;
+
+
+}

+ 47 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterialsCabinet.java

@@ -0,0 +1,47 @@
+package com.ktg.iscs.domain;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.ktg.common.annotation.Excel;
+import com.ktg.common.core.domain.model.BaseBean;
+
+/**
+ * 物资柜对象 is_materials_cabinet
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class IsMaterialsCabinet extends BaseBean
+{
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "物资柜ID")
+    @TableId(type = IdType.AUTO)
+    private Long cabinetId;
+
+    @ApiModelProperty(value = "物资柜编号")
+    @Excel(name = "物资柜编号")
+    private String cabinetCode;
+
+    @ApiModelProperty(value = "物资柜名称")
+    @Excel(name = "物资柜名称")
+    private String cabinetName;
+
+    @ApiModelProperty(value = "硬件ID")
+    @Excel(name = "硬件ID")
+    private Long hardwareId;
+
+    @ApiModelProperty(value = "区域ID")
+    @Excel(name = "区域ID")
+    private Long workareaId;
+
+    @ApiModelProperty(value = "删除标志(0代表存在 2代表删除)")
+    private String delFlag;
+
+
+}

+ 69 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterialsLoan.java

@@ -0,0 +1,69 @@
+package com.ktg.iscs.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ktg.common.annotation.Excel;
+import com.ktg.common.core.domain.model.BaseBean;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * 物资借出对象 is_materials_loan
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class IsMaterialsLoan extends BaseBean
+{
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "出借记录ID")
+    @TableId(type = IdType.AUTO)
+    private Long materialsLoanId;
+
+    @ApiModelProperty(value = "物资ID")
+    @Excel(name = "物资ID")
+    private Long materialsId;
+
+    @ApiModelProperty(value = "领取人ID")
+    @Excel(name = "领取人ID")
+    private Long loanUserId;
+
+    @ApiModelProperty(value = "领取柜ID")
+    @Excel(name = "领取柜ID")
+    private Long loanFromId;
+
+    @ApiModelProperty(value = "领取时间")
+    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")
+    @Excel(name = "领取时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date loanTime;
+
+    @ApiModelProperty(value = "提醒时间")
+    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")
+    @Excel(name = "提醒时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date reminderTime;
+
+    @ApiModelProperty(value = "归还人ID")
+    @Excel(name = "归还人ID")
+    private Long restitutionUserId;
+
+    @ApiModelProperty(value = "归还柜ID")
+    @Excel(name = "归还柜ID")
+    private Long restitutionToId;
+
+    @ApiModelProperty(value = "归还时间")
+    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")
+    @Excel(name = "归还时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date restitutionTime;
+
+    @ApiModelProperty(value = "删除标志(0代表存在 2代表删除)")
+    private String delFlag;
+
+
+}

+ 61 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterialsRestitutionRules.java

@@ -0,0 +1,61 @@
+package com.ktg.iscs.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ktg.common.annotation.Excel;
+import com.ktg.common.core.domain.model.BaseBean;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * 物资借出规则对象 is_materials_restitution_rules
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class IsMaterialsRestitutionRules extends BaseBean
+{
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "物资规则ID")
+    @TableId(type = IdType.AUTO)
+    private Long ruleId;
+
+    @ApiModelProperty(value = "物资规则编号")
+    @Excel(name = "物资规则编号")
+    private Long materialsTypeId;
+
+    @ApiModelProperty(value = "是否需要归还")
+    @Excel(name = "是否需要归还")
+    private Integer restitutionRequired;
+
+    @ApiModelProperty(value = "是否归还原位")
+    @Excel(name = "是否归还原位")
+    private Integer restorationRequired;
+
+    @ApiModelProperty(value = "出借时长")
+    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")
+    @Excel(name = "出借时长", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date loanDuration;
+
+    @ApiModelProperty(value = "提醒时间")
+    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")
+    @Excel(name = "提醒时间", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date reminderTime;
+
+    @ApiModelProperty(value = "超时报警")
+    @JsonFormat(timezone="GMT+8", pattern = "yyyy-MM-dd")
+    @Excel(name = "超时报警", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date timeoutAlarm;
+
+    @ApiModelProperty(value = "删除标志(0代表存在 2代表删除)")
+    private String delFlag;
+
+
+}

+ 67 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/IsMaterialsType.java

@@ -0,0 +1,67 @@
+package com.ktg.iscs.domain;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.ktg.common.annotation.Excel;
+import com.ktg.common.core.domain.model.BaseBean;
+
+/**
+ * 物资类型对象 is_materials_type
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class IsMaterialsType extends BaseBean
+{
+    private static final long serialVersionUID = 1L;
+
+    @ApiModelProperty(value = "物资类型ID")
+    @TableId(type = IdType.AUTO)
+    private Long materialsTypeId;
+
+    @ApiModelProperty(value = "物资类型编号")
+    @Excel(name = "物资类型编号")
+    private String materialsTypeCode;
+
+    @ApiModelProperty(value = "物资类型名称")
+    @Excel(name = "物资类型名称")
+    private String materialsTypeName;
+
+    @ApiModelProperty(value = "父类型ID")
+    @Excel(name = "父类型ID")
+    private Long parentId;
+
+    @ApiModelProperty(value = "所有父节点ID,各值之间用逗号分隔")
+    @Excel(name = "所有父节点ID,各值之间用逗号分隔")
+    private String ancestors;
+
+    @ApiModelProperty(value = "是否启用")
+    @Excel(name = "是否启用")
+    private String enableFlag;
+
+    @ApiModelProperty(value = "可用寿命")
+    @Excel(name = "可用寿命")
+    private String serviceLife;
+
+    @ApiModelProperty(value = "剩余寿命")
+    @Excel(name = "剩余寿命")
+    private String availableLife;
+
+    @ApiModelProperty(value = "可用次数")
+    @Excel(name = "可用次数")
+    private Long serviceTimes;
+
+    @ApiModelProperty(value = "剩余次数")
+    @Excel(name = "剩余次数")
+    private Long availableTimes;
+
+    @ApiModelProperty(value = "删除标志(0代表存在 2代表删除)")
+    private String delFlag;
+
+
+}

+ 7 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/IsWorkarea.java

@@ -1,6 +1,7 @@
 package com.ktg.iscs.domain;
 
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.ktg.common.annotation.Excel;
 import com.ktg.common.core.domain.model.BaseBean;
@@ -8,6 +9,9 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * 工作区域对象 is_workarea
  *
@@ -63,4 +67,7 @@ public class IsWorkarea extends BaseBean
     @ApiModelProperty(value = "显示顺序")
     private Integer orderNum;
 
+    @TableField(exist = false)
+    private List<?> children = new ArrayList<>();
+
 }

+ 65 - 0
ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsCabinetMapper.java

@@ -0,0 +1,65 @@
+package com.ktg.iscs.mapper;
+
+import com.ktg.common.mapper.BaseMapperX;
+import com.ktg.iscs.domain.IsMaterialsCabinet;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 物资柜Mapper接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Mapper
+public interface IsMaterialsCabinetMapper extends BaseMapperX<IsMaterialsCabinet>
+{
+    /**
+     * 查询物资柜
+     *
+     * @param cabinetId 物资柜主键
+     * @return 物资柜
+     */
+    IsMaterialsCabinet selectIsMaterialsCabinetByCabinetId(Long cabinetId);
+
+    /**
+     * 查询物资柜列表
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 物资柜集合
+     */
+    List<IsMaterialsCabinet> selectIsMaterialsCabinetList(IsMaterialsCabinet isMaterialsCabinet);
+
+    /**
+     * 新增物资柜
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 结果
+     */
+    int insertIsMaterialsCabinet(IsMaterialsCabinet isMaterialsCabinet);
+
+    /**
+     * 修改物资柜
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 结果
+     */
+    int updateIsMaterialsCabinet(IsMaterialsCabinet isMaterialsCabinet);
+
+    /**
+     * 删除物资柜
+     *
+     * @param cabinetId 物资柜主键
+     * @return 结果
+     */
+    int deleteIsMaterialsCabinetByCabinetId(Long cabinetId);
+
+    /**
+     * 批量删除物资柜
+     *
+     * @param cabinetIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsCabinetByCabinetIds(Long[] cabinetIds);
+}

+ 65 - 0
ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsLoanMapper.java

@@ -0,0 +1,65 @@
+package com.ktg.iscs.mapper;
+
+import com.ktg.common.mapper.BaseMapperX;
+import com.ktg.iscs.domain.IsMaterialsLoan;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 物资借出Mapper接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Mapper
+public interface IsMaterialsLoanMapper extends BaseMapperX<IsMaterialsLoan>
+{
+    /**
+     * 查询物资借出
+     *
+     * @param materialsLoanId 物资借出主键
+     * @return 物资借出
+     */
+    IsMaterialsLoan selectIsMaterialsLoanByMaterialsLoanId(Long materialsLoanId);
+
+    /**
+     * 查询物资借出列表
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 物资借出集合
+     */
+    List<IsMaterialsLoan> selectIsMaterialsLoanList(IsMaterialsLoan isMaterialsLoan);
+
+    /**
+     * 新增物资借出
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 结果
+     */
+    int insertIsMaterialsLoan(IsMaterialsLoan isMaterialsLoan);
+
+    /**
+     * 修改物资借出
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 结果
+     */
+    int updateIsMaterialsLoan(IsMaterialsLoan isMaterialsLoan);
+
+    /**
+     * 删除物资借出
+     *
+     * @param materialsLoanId 物资借出主键
+     * @return 结果
+     */
+    int deleteIsMaterialsLoanByMaterialsLoanId(Long materialsLoanId);
+
+    /**
+     * 批量删除物资借出
+     *
+     * @param materialsLoanIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsLoanByMaterialsLoanIds(Long[] materialsLoanIds);
+}

+ 65 - 0
ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsMapper.java

@@ -0,0 +1,65 @@
+package com.ktg.iscs.mapper;
+
+import com.ktg.common.mapper.BaseMapperX;
+import com.ktg.iscs.domain.IsMaterials;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 物资Mapper接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Mapper
+public interface IsMaterialsMapper extends BaseMapperX<IsMaterials>
+{
+    /**
+     * 查询物资
+     *
+     * @param materialsId 物资主键
+     * @return 物资
+     */
+    IsMaterials selectIsMaterialsByMaterialsId(Long materialsId);
+
+    /**
+     * 查询物资列表
+     *
+     * @param isMaterials 物资
+     * @return 物资集合
+     */
+    List<IsMaterials> selectIsMaterialsList(IsMaterials isMaterials);
+
+    /**
+     * 新增物资
+     *
+     * @param isMaterials 物资
+     * @return 结果
+     */
+    int insertIsMaterials(IsMaterials isMaterials);
+
+    /**
+     * 修改物资
+     *
+     * @param isMaterials 物资
+     * @return 结果
+     */
+    int updateIsMaterials(IsMaterials isMaterials);
+
+    /**
+     * 删除物资
+     *
+     * @param materialsId 物资主键
+     * @return 结果
+     */
+    int deleteIsMaterialsByMaterialsId(Long materialsId);
+
+    /**
+     * 批量删除物资
+     *
+     * @param materialsIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsByMaterialsIds(Long[] materialsIds);
+}

+ 65 - 0
ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsRestitutionRulesMapper.java

@@ -0,0 +1,65 @@
+package com.ktg.iscs.mapper;
+
+import com.ktg.common.mapper.BaseMapperX;
+import com.ktg.iscs.domain.IsMaterialsRestitutionRules;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 物资借出规则Mapper接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Mapper
+public interface IsMaterialsRestitutionRulesMapper extends BaseMapperX<IsMaterialsRestitutionRules>
+{
+    /**
+     * 查询物资借出规则
+     *
+     * @param ruleId 物资借出规则主键
+     * @return 物资借出规则
+     */
+    IsMaterialsRestitutionRules selectIsMaterialsRestitutionRulesByRuleId(Long ruleId);
+
+    /**
+     * 查询物资借出规则列表
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 物资借出规则集合
+     */
+    List<IsMaterialsRestitutionRules> selectIsMaterialsRestitutionRulesList(IsMaterialsRestitutionRules isMaterialsRestitutionRules);
+
+    /**
+     * 新增物资借出规则
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 结果
+     */
+    int insertIsMaterialsRestitutionRules(IsMaterialsRestitutionRules isMaterialsRestitutionRules);
+
+    /**
+     * 修改物资借出规则
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 结果
+     */
+    int updateIsMaterialsRestitutionRules(IsMaterialsRestitutionRules isMaterialsRestitutionRules);
+
+    /**
+     * 删除物资借出规则
+     *
+     * @param ruleId 物资借出规则主键
+     * @return 结果
+     */
+    int deleteIsMaterialsRestitutionRulesByRuleId(Long ruleId);
+
+    /**
+     * 批量删除物资借出规则
+     *
+     * @param ruleIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsRestitutionRulesByRuleIds(Long[] ruleIds);
+}

+ 65 - 0
ktg-iscs/src/main/java/com/ktg/iscs/mapper/IsMaterialsTypeMapper.java

@@ -0,0 +1,65 @@
+package com.ktg.iscs.mapper;
+
+import com.ktg.common.mapper.BaseMapperX;
+import com.ktg.iscs.domain.IsMaterialsType;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 物资类型Mapper接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Mapper
+public interface IsMaterialsTypeMapper extends BaseMapperX<IsMaterialsType>
+{
+    /**
+     * 查询物资类型
+     *
+     * @param materialsTypeId 物资类型主键
+     * @return 物资类型
+     */
+    IsMaterialsType selectIsMaterialsTypeByMaterialsTypeId(Long materialsTypeId);
+
+    /**
+     * 查询物资类型列表
+     *
+     * @param isMaterialsType 物资类型
+     * @return 物资类型集合
+     */
+    List<IsMaterialsType> selectIsMaterialsTypeList(IsMaterialsType isMaterialsType);
+
+    /**
+     * 新增物资类型
+     *
+     * @param isMaterialsType 物资类型
+     * @return 结果
+     */
+    int insertIsMaterialsType(IsMaterialsType isMaterialsType);
+
+    /**
+     * 修改物资类型
+     *
+     * @param isMaterialsType 物资类型
+     * @return 结果
+     */
+    int updateIsMaterialsType(IsMaterialsType isMaterialsType);
+
+    /**
+     * 删除物资类型
+     *
+     * @param materialsTypeId 物资类型主键
+     * @return 结果
+     */
+    int deleteIsMaterialsTypeByMaterialsTypeId(Long materialsTypeId);
+
+    /**
+     * 批量删除物资类型
+     *
+     * @param materialsTypeIds 需要删除的数据主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsTypeByMaterialsTypeIds(Long[] materialsTypeIds);
+}

+ 63 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsCabinetService.java

@@ -0,0 +1,63 @@
+package com.ktg.iscs.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ktg.iscs.domain.IsMaterialsCabinet;
+
+import java.util.List;
+
+/**
+ * 物资柜Service接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+public interface IIsMaterialsCabinetService extends IService<IsMaterialsCabinet>
+{
+    /**
+     * 查询物资柜
+     *
+     * @param cabinetId 物资柜主键
+     * @return 物资柜
+     */
+    IsMaterialsCabinet selectIsMaterialsCabinetByCabinetId(Long cabinetId);
+
+    /**
+     * 查询物资柜列表
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 物资柜集合
+     */
+    List<IsMaterialsCabinet> selectIsMaterialsCabinetList(IsMaterialsCabinet isMaterialsCabinet);
+
+    /**
+     * 新增物资柜
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 结果
+     */
+    int insertIsMaterialsCabinet(IsMaterialsCabinet isMaterialsCabinet);
+
+    /**
+     * 修改物资柜
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 结果
+     */
+    int updateIsMaterialsCabinet(IsMaterialsCabinet isMaterialsCabinet);
+
+    /**
+     * 批量删除物资柜
+     *
+     * @param cabinetIds 需要删除的物资柜主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsCabinetByCabinetIds(String cabinetIds);
+
+    /**
+     * 删除物资柜信息
+     *
+     * @param cabinetId 物资柜主键
+     * @return 结果
+     */
+    int deleteIsMaterialsCabinetByCabinetId(Long cabinetId);
+}

+ 63 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsLoanService.java

@@ -0,0 +1,63 @@
+package com.ktg.iscs.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ktg.iscs.domain.IsMaterialsLoan;
+
+import java.util.List;
+
+/**
+ * 物资借出Service接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+public interface IIsMaterialsLoanService extends IService<IsMaterialsLoan>
+{
+    /**
+     * 查询物资借出
+     *
+     * @param materialsLoanId 物资借出主键
+     * @return 物资借出
+     */
+    IsMaterialsLoan selectIsMaterialsLoanByMaterialsLoanId(Long materialsLoanId);
+
+    /**
+     * 查询物资借出列表
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 物资借出集合
+     */
+    List<IsMaterialsLoan> selectIsMaterialsLoanList(IsMaterialsLoan isMaterialsLoan);
+
+    /**
+     * 新增物资借出
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 结果
+     */
+    int insertIsMaterialsLoan(IsMaterialsLoan isMaterialsLoan);
+
+    /**
+     * 修改物资借出
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 结果
+     */
+    int updateIsMaterialsLoan(IsMaterialsLoan isMaterialsLoan);
+
+    /**
+     * 批量删除物资借出
+     *
+     * @param materialsLoanIds 需要删除的物资借出主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsLoanByMaterialsLoanIds(String materialsLoanIds);
+
+    /**
+     * 删除物资借出信息
+     *
+     * @param materialsLoanId 物资借出主键
+     * @return 结果
+     */
+    int deleteIsMaterialsLoanByMaterialsLoanId(Long materialsLoanId);
+}

+ 63 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsRestitutionRulesService.java

@@ -0,0 +1,63 @@
+package com.ktg.iscs.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ktg.iscs.domain.IsMaterialsRestitutionRules;
+
+import java.util.List;
+
+/**
+ * 物资借出规则Service接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+public interface IIsMaterialsRestitutionRulesService extends IService<IsMaterialsRestitutionRules>
+{
+    /**
+     * 查询物资借出规则
+     *
+     * @param ruleId 物资借出规则主键
+     * @return 物资借出规则
+     */
+    IsMaterialsRestitutionRules selectIsMaterialsRestitutionRulesByRuleId(Long ruleId);
+
+    /**
+     * 查询物资借出规则列表
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 物资借出规则集合
+     */
+    List<IsMaterialsRestitutionRules> selectIsMaterialsRestitutionRulesList(IsMaterialsRestitutionRules isMaterialsRestitutionRules);
+
+    /**
+     * 新增物资借出规则
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 结果
+     */
+    int insertIsMaterialsRestitutionRules(IsMaterialsRestitutionRules isMaterialsRestitutionRules);
+
+    /**
+     * 修改物资借出规则
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 结果
+     */
+    int updateIsMaterialsRestitutionRules(IsMaterialsRestitutionRules isMaterialsRestitutionRules);
+
+    /**
+     * 批量删除物资借出规则
+     *
+     * @param ruleIds 需要删除的物资借出规则主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsRestitutionRulesByRuleIds(String ruleIds);
+
+    /**
+     * 删除物资借出规则信息
+     *
+     * @param ruleId 物资借出规则主键
+     * @return 结果
+     */
+    int deleteIsMaterialsRestitutionRulesByRuleId(Long ruleId);
+}

+ 63 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsService.java

@@ -0,0 +1,63 @@
+package com.ktg.iscs.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ktg.iscs.domain.IsMaterials;
+
+import java.util.List;
+
+/**
+ * 物资Service接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+public interface IIsMaterialsService extends IService<IsMaterials>
+{
+    /**
+     * 查询物资
+     *
+     * @param materialsId 物资主键
+     * @return 物资
+     */
+    IsMaterials selectIsMaterialsByMaterialsId(Long materialsId);
+
+    /**
+     * 查询物资列表
+     *
+     * @param isMaterials 物资
+     * @return 物资集合
+     */
+    List<IsMaterials> selectIsMaterialsList(IsMaterials isMaterials);
+
+    /**
+     * 新增物资
+     *
+     * @param isMaterials 物资
+     * @return 结果
+     */
+    int insertIsMaterials(IsMaterials isMaterials);
+
+    /**
+     * 修改物资
+     *
+     * @param isMaterials 物资
+     * @return 结果
+     */
+    int updateIsMaterials(IsMaterials isMaterials);
+
+    /**
+     * 批量删除物资
+     *
+     * @param materialsIds 需要删除的物资主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsByMaterialsIds(String materialsIds);
+
+    /**
+     * 删除物资信息
+     *
+     * @param materialsId 物资主键
+     * @return 结果
+     */
+    int deleteIsMaterialsByMaterialsId(Long materialsId);
+}

+ 63 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsTypeService.java

@@ -0,0 +1,63 @@
+package com.ktg.iscs.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ktg.iscs.domain.IsMaterialsType;
+
+import java.util.List;
+
+/**
+ * 物资类型Service接口
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+public interface IIsMaterialsTypeService extends IService<IsMaterialsType>
+{
+    /**
+     * 查询物资类型
+     *
+     * @param materialsTypeId 物资类型主键
+     * @return 物资类型
+     */
+    IsMaterialsType selectIsMaterialsTypeByMaterialsTypeId(Long materialsTypeId);
+
+    /**
+     * 查询物资类型列表
+     *
+     * @param isMaterialsType 物资类型
+     * @return 物资类型集合
+     */
+    List<IsMaterialsType> selectIsMaterialsTypeList(IsMaterialsType isMaterialsType);
+
+    /**
+     * 新增物资类型
+     *
+     * @param isMaterialsType 物资类型
+     * @return 结果
+     */
+    int insertIsMaterialsType(IsMaterialsType isMaterialsType);
+
+    /**
+     * 修改物资类型
+     *
+     * @param isMaterialsType 物资类型
+     * @return 结果
+     */
+    int updateIsMaterialsType(IsMaterialsType isMaterialsType);
+
+    /**
+     * 批量删除物资类型
+     *
+     * @param materialsTypeIds 需要删除的物资类型主键集合
+     * @return 结果
+     */
+    int deleteIsMaterialsTypeByMaterialsTypeIds(String materialsTypeIds);
+
+    /**
+     * 删除物资类型信息
+     *
+     * @param materialsTypeId 物资类型主键
+     * @return 结果
+     */
+    int deleteIsMaterialsTypeByMaterialsTypeId(Long materialsTypeId);
+}

+ 102 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsCabinetServiceImpl.java

@@ -0,0 +1,102 @@
+package com.ktg.iscs.service.impl;
+
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ktg.common.core.text.Convert;
+import com.ktg.common.utils.DateUtils;
+import com.ktg.iscs.domain.IsMaterialsCabinet;
+import com.ktg.iscs.mapper.IsMaterialsCabinetMapper;
+import com.ktg.iscs.service.IIsMaterialsCabinetService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 物资柜Service业务层处理
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Service
+public class IsMaterialsCabinetServiceImpl extends ServiceImpl<IsMaterialsCabinetMapper, IsMaterialsCabinet> implements IIsMaterialsCabinetService
+{
+    @Autowired
+    private IsMaterialsCabinetMapper isMaterialsCabinetMapper;
+
+    /**
+     * 查询物资柜
+     *
+     * @param cabinetId 物资柜主键
+     * @return 物资柜
+     */
+    @Override
+    public IsMaterialsCabinet selectIsMaterialsCabinetByCabinetId(Long cabinetId)
+    {
+        return isMaterialsCabinetMapper.selectIsMaterialsCabinetByCabinetId(cabinetId);
+    }
+
+    /**
+     * 查询物资柜列表
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 物资柜
+     */
+    @Override
+    public List<IsMaterialsCabinet> selectIsMaterialsCabinetList(IsMaterialsCabinet isMaterialsCabinet)
+    {
+        return isMaterialsCabinetMapper.selectIsMaterialsCabinetList(isMaterialsCabinet);
+    }
+
+    /**
+     * 新增物资柜
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 结果
+     */
+    @Override
+    public int insertIsMaterialsCabinet(IsMaterialsCabinet isMaterialsCabinet)
+    {
+        isMaterialsCabinet.setCreateTime(DateUtils.getNowDate());
+        return isMaterialsCabinetMapper.insertIsMaterialsCabinet(isMaterialsCabinet);
+    }
+
+    /**
+     * 修改物资柜
+     *
+     * @param isMaterialsCabinet 物资柜
+     * @return 结果
+     */
+    @Override
+    public int updateIsMaterialsCabinet(IsMaterialsCabinet isMaterialsCabinet)
+    {
+        isMaterialsCabinet.setUpdateTime(DateUtils.getNowDate());
+        return isMaterialsCabinetMapper.updateIsMaterialsCabinet(isMaterialsCabinet);
+    }
+
+    /**
+     * 批量删除物资柜
+     *
+     * @param cabinetIds 需要删除的物资柜主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsCabinetByCabinetIds(String cabinetIds)
+    {
+        Assert.notBlank(cabinetIds, "请选择需要删除的数据!");
+        Long[] longIds = Convert.toLongArray(cabinetIds);
+        return isMaterialsCabinetMapper.deleteIsMaterialsCabinetByCabinetIds(longIds);
+    }
+
+    /**
+     * 删除物资柜信息
+     *
+     * @param cabinetId 物资柜主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsCabinetByCabinetId(Long cabinetId)
+    {
+        return isMaterialsCabinetMapper.deleteIsMaterialsCabinetByCabinetId(cabinetId);
+    }
+}

+ 102 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsLoanServiceImpl.java

@@ -0,0 +1,102 @@
+package com.ktg.iscs.service.impl;
+
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ktg.common.core.text.Convert;
+import com.ktg.common.utils.DateUtils;
+import com.ktg.iscs.domain.IsMaterialsLoan;
+import com.ktg.iscs.mapper.IsMaterialsLoanMapper;
+import com.ktg.iscs.service.IIsMaterialsLoanService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 物资借出Service业务层处理
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Service
+public class IsMaterialsLoanServiceImpl extends ServiceImpl<IsMaterialsLoanMapper, IsMaterialsLoan> implements IIsMaterialsLoanService
+{
+    @Autowired
+    private IsMaterialsLoanMapper isMaterialsLoanMapper;
+
+    /**
+     * 查询物资借出
+     *
+     * @param materialsLoanId 物资借出主键
+     * @return 物资借出
+     */
+    @Override
+    public IsMaterialsLoan selectIsMaterialsLoanByMaterialsLoanId(Long materialsLoanId)
+    {
+        return isMaterialsLoanMapper.selectIsMaterialsLoanByMaterialsLoanId(materialsLoanId);
+    }
+
+    /**
+     * 查询物资借出列表
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 物资借出
+     */
+    @Override
+    public List<IsMaterialsLoan> selectIsMaterialsLoanList(IsMaterialsLoan isMaterialsLoan)
+    {
+        return isMaterialsLoanMapper.selectIsMaterialsLoanList(isMaterialsLoan);
+    }
+
+    /**
+     * 新增物资借出
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 结果
+     */
+    @Override
+    public int insertIsMaterialsLoan(IsMaterialsLoan isMaterialsLoan)
+    {
+        isMaterialsLoan.setCreateTime(DateUtils.getNowDate());
+        return isMaterialsLoanMapper.insertIsMaterialsLoan(isMaterialsLoan);
+    }
+
+    /**
+     * 修改物资借出
+     *
+     * @param isMaterialsLoan 物资借出
+     * @return 结果
+     */
+    @Override
+    public int updateIsMaterialsLoan(IsMaterialsLoan isMaterialsLoan)
+    {
+        isMaterialsLoan.setUpdateTime(DateUtils.getNowDate());
+        return isMaterialsLoanMapper.updateIsMaterialsLoan(isMaterialsLoan);
+    }
+
+    /**
+     * 批量删除物资借出
+     *
+     * @param materialsLoanIds 需要删除的物资借出主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsLoanByMaterialsLoanIds(String materialsLoanIds)
+    {
+        Assert.notBlank(materialsLoanIds, "请选择需要删除的数据!");
+        Long[] longIds = Convert.toLongArray(materialsLoanIds);
+        return isMaterialsLoanMapper.deleteIsMaterialsLoanByMaterialsLoanIds(longIds);
+    }
+
+    /**
+     * 删除物资借出信息
+     *
+     * @param materialsLoanId 物资借出主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsLoanByMaterialsLoanId(Long materialsLoanId)
+    {
+        return isMaterialsLoanMapper.deleteIsMaterialsLoanByMaterialsLoanId(materialsLoanId);
+    }
+}

+ 102 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsRestitutionRulesServiceImpl.java

@@ -0,0 +1,102 @@
+package com.ktg.iscs.service.impl;
+
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ktg.common.core.text.Convert;
+import com.ktg.common.utils.DateUtils;
+import com.ktg.iscs.domain.IsMaterialsRestitutionRules;
+import com.ktg.iscs.mapper.IsMaterialsRestitutionRulesMapper;
+import com.ktg.iscs.service.IIsMaterialsRestitutionRulesService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 物资借出规则Service业务层处理
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Service
+public class IsMaterialsRestitutionRulesServiceImpl extends ServiceImpl<IsMaterialsRestitutionRulesMapper, IsMaterialsRestitutionRules> implements IIsMaterialsRestitutionRulesService
+{
+    @Autowired
+    private IsMaterialsRestitutionRulesMapper isMaterialsRestitutionRulesMapper;
+
+    /**
+     * 查询物资借出规则
+     *
+     * @param ruleId 物资借出规则主键
+     * @return 物资借出规则
+     */
+    @Override
+    public IsMaterialsRestitutionRules selectIsMaterialsRestitutionRulesByRuleId(Long ruleId)
+    {
+        return isMaterialsRestitutionRulesMapper.selectIsMaterialsRestitutionRulesByRuleId(ruleId);
+    }
+
+    /**
+     * 查询物资借出规则列表
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 物资借出规则
+     */
+    @Override
+    public List<IsMaterialsRestitutionRules> selectIsMaterialsRestitutionRulesList(IsMaterialsRestitutionRules isMaterialsRestitutionRules)
+    {
+        return isMaterialsRestitutionRulesMapper.selectIsMaterialsRestitutionRulesList(isMaterialsRestitutionRules);
+    }
+
+    /**
+     * 新增物资借出规则
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 结果
+     */
+    @Override
+    public int insertIsMaterialsRestitutionRules(IsMaterialsRestitutionRules isMaterialsRestitutionRules)
+    {
+        isMaterialsRestitutionRules.setCreateTime(DateUtils.getNowDate());
+        return isMaterialsRestitutionRulesMapper.insertIsMaterialsRestitutionRules(isMaterialsRestitutionRules);
+    }
+
+    /**
+     * 修改物资借出规则
+     *
+     * @param isMaterialsRestitutionRules 物资借出规则
+     * @return 结果
+     */
+    @Override
+    public int updateIsMaterialsRestitutionRules(IsMaterialsRestitutionRules isMaterialsRestitutionRules)
+    {
+        isMaterialsRestitutionRules.setUpdateTime(DateUtils.getNowDate());
+        return isMaterialsRestitutionRulesMapper.updateIsMaterialsRestitutionRules(isMaterialsRestitutionRules);
+    }
+
+    /**
+     * 批量删除物资借出规则
+     *
+     * @param ruleIds 需要删除的物资借出规则主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsRestitutionRulesByRuleIds(String ruleIds)
+    {
+        Assert.notBlank(ruleIds, "请选择需要删除的数据!");
+        Long[] longIds = Convert.toLongArray(ruleIds);
+        return isMaterialsRestitutionRulesMapper.deleteIsMaterialsRestitutionRulesByRuleIds(longIds);
+    }
+
+    /**
+     * 删除物资借出规则信息
+     *
+     * @param ruleId 物资借出规则主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsRestitutionRulesByRuleId(Long ruleId)
+    {
+        return isMaterialsRestitutionRulesMapper.deleteIsMaterialsRestitutionRulesByRuleId(ruleId);
+    }
+}

+ 102 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsServiceImpl.java

@@ -0,0 +1,102 @@
+package com.ktg.iscs.service.impl;
+
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ktg.common.core.text.Convert;
+import com.ktg.common.utils.DateUtils;
+import com.ktg.iscs.domain.IsMaterials;
+import com.ktg.iscs.mapper.IsMaterialsMapper;
+import com.ktg.iscs.service.IIsMaterialsService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 物资Service业务层处理
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Service
+public class IsMaterialsServiceImpl extends ServiceImpl<IsMaterialsMapper, IsMaterials> implements IIsMaterialsService
+{
+    @Autowired
+    private IsMaterialsMapper isMaterialsMapper;
+
+    /**
+     * 查询物资
+     *
+     * @param materialsId 物资主键
+     * @return 物资
+     */
+    @Override
+    public IsMaterials selectIsMaterialsByMaterialsId(Long materialsId)
+    {
+        return isMaterialsMapper.selectIsMaterialsByMaterialsId(materialsId);
+    }
+
+    /**
+     * 查询物资列表
+     *
+     * @param isMaterials 物资
+     * @return 物资
+     */
+    @Override
+    public List<IsMaterials> selectIsMaterialsList(IsMaterials isMaterials)
+    {
+        return isMaterialsMapper.selectIsMaterialsList(isMaterials);
+    }
+
+    /**
+     * 新增物资
+     *
+     * @param isMaterials 物资
+     * @return 结果
+     */
+    @Override
+    public int insertIsMaterials(IsMaterials isMaterials)
+    {
+        isMaterials.setCreateTime(DateUtils.getNowDate());
+        return isMaterialsMapper.insertIsMaterials(isMaterials);
+    }
+
+    /**
+     * 修改物资
+     *
+     * @param isMaterials 物资
+     * @return 结果
+     */
+    @Override
+    public int updateIsMaterials(IsMaterials isMaterials)
+    {
+        isMaterials.setUpdateTime(DateUtils.getNowDate());
+        return isMaterialsMapper.updateIsMaterials(isMaterials);
+    }
+
+    /**
+     * 批量删除物资
+     *
+     * @param materialsIds 需要删除的物资主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsByMaterialsIds(String materialsIds)
+    {
+        Assert.notBlank(materialsIds, "请选择需要删除的数据!");
+        Long[] longIds = Convert.toLongArray(materialsIds);
+        return isMaterialsMapper.deleteIsMaterialsByMaterialsIds(longIds);
+    }
+
+    /**
+     * 删除物资信息
+     *
+     * @param materialsId 物资主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsByMaterialsId(Long materialsId)
+    {
+        return isMaterialsMapper.deleteIsMaterialsByMaterialsId(materialsId);
+    }
+}

+ 118 - 0
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsTypeServiceImpl.java

@@ -0,0 +1,118 @@
+package com.ktg.iscs.service.impl;
+
+import cn.hutool.core.lang.Assert;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ktg.common.core.text.Convert;
+import com.ktg.common.utils.DateUtils;
+import com.ktg.iscs.domain.IsMaterials;
+import com.ktg.iscs.domain.IsMaterialsType;
+import com.ktg.iscs.mapper.IsMaterialsTypeMapper;
+import com.ktg.iscs.service.IIsMaterialsService;
+import com.ktg.iscs.service.IIsMaterialsTypeService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * 物资类型Service业务层处理
+ *
+ * @author cgj
+ * @date 2024-11-08
+ */
+@Service
+public class IsMaterialsTypeServiceImpl extends ServiceImpl<IsMaterialsTypeMapper, IsMaterialsType> implements IIsMaterialsTypeService
+{
+    @Autowired
+    private IsMaterialsTypeMapper isMaterialsTypeMapper;
+    @Autowired
+    private IIsMaterialsService iIsMaterialsService;
+
+    /**
+     * 查询物资类型
+     *
+     * @param materialsTypeId 物资类型主键
+     * @return 物资类型
+     */
+    @Override
+    public IsMaterialsType selectIsMaterialsTypeByMaterialsTypeId(Long materialsTypeId)
+    {
+        return isMaterialsTypeMapper.selectIsMaterialsTypeByMaterialsTypeId(materialsTypeId);
+    }
+
+    /**
+     * 查询物资类型列表
+     *
+     * @param isMaterialsType 物资类型
+     * @return 物资类型
+     */
+    @Override
+    public List<IsMaterialsType> selectIsMaterialsTypeList(IsMaterialsType isMaterialsType)
+    {
+        return isMaterialsTypeMapper.selectIsMaterialsTypeList(isMaterialsType);
+    }
+
+    /**
+     * 新增物资类型
+     *
+     * @param isMaterialsType 物资类型
+     * @return 结果
+     */
+    @Override
+    public int insertIsMaterialsType(IsMaterialsType isMaterialsType)
+    {
+        isMaterialsType.setCreateTime(DateUtils.getNowDate());
+        return isMaterialsTypeMapper.insertIsMaterialsType(isMaterialsType);
+    }
+
+    /**
+     * 修改物资类型
+     *
+     * @param isMaterialsType 物资类型
+     * @return 结果
+     */
+    @Override
+    public int updateIsMaterialsType(IsMaterialsType isMaterialsType)
+    {
+        isMaterialsType.setUpdateTime(DateUtils.getNowDate());
+        return isMaterialsTypeMapper.updateIsMaterialsType(isMaterialsType);
+    }
+
+    /**
+     * 批量删除物资类型
+     *
+     * @param materialsTypeIds 需要删除的物资类型主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsTypeByMaterialsTypeIds(String materialsTypeIds)
+    {
+        Assert.notBlank(materialsTypeIds, "请选择需要删除的数据!");
+        Long[] longIds = Convert.toLongArray(materialsTypeIds);
+        // 检查删除时下面有没有物资,有的话不可以删除
+        List<IsMaterials> materialsList = iIsMaterialsService.list(Wrappers.<IsMaterials>lambdaQuery()
+                .in(IsMaterials::getMaterialsTypeId, longIds));
+        if (!materialsList.isEmpty()) {
+            List<Long> materialsTypeIdList = materialsList.stream().map(IsMaterials::getMaterialsTypeId).collect(Collectors.toList());
+            List<IsMaterialsType> isMaterialsTypes = listByIds(materialsTypeIdList);
+            String collect = isMaterialsTypes.stream().map(IsMaterialsType::getMaterialsTypeName).collect(Collectors.joining(","));
+            Assert.isTrue(false, collect + "分类下有物资,不可删除!");
+
+        }
+        return isMaterialsTypeMapper.deleteIsMaterialsTypeByMaterialsTypeIds(longIds);
+    }
+
+    /**
+     * 删除物资类型信息
+     *
+     * @param materialsTypeId 物资类型主键
+     * @return 结果
+     */
+    @Override
+    public int deleteIsMaterialsTypeByMaterialsTypeId(Long materialsTypeId)
+    {
+        return isMaterialsTypeMapper.deleteIsMaterialsTypeByMaterialsTypeId(materialsTypeId);
+    }
+}

+ 95 - 0
ktg-iscs/src/main/resources/mapper/IsMaterialsCabinetMapper.xml

@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ktg.iscs.mapper.IsMaterialsCabinetMapper">
+    
+    <resultMap type="IsMaterialsCabinet" id="IsMaterialsCabinetResult">
+        <result property="cabinetId"    column="cabinet_id"    />
+        <result property="cabinetCode"    column="cabinet_code"    />
+        <result property="cabinetName"    column="cabinet_name"    />
+        <result property="hardwareId"    column="hardware_id"    />
+        <result property="workareaId"    column="workarea_id"    />
+        <result property="remark"    column="remark"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="updateBy"    column="update_by"    />
+    </resultMap>
+
+    <sql id="selectIsMaterialsCabinetVo">
+        select cabinet_id, cabinet_code, cabinet_name, hardware_id, workarea_id, remark, del_flag, create_by, create_time, update_time, update_by from is_materials_cabinet
+    </sql>
+
+    <select id="selectIsMaterialsCabinetList" parameterType="IsMaterialsCabinet" resultMap="IsMaterialsCabinetResult">
+        <include refid="selectIsMaterialsCabinetVo"/>
+        <where>  
+            <if test="cabinetCode != null  and cabinetCode != ''"> and cabinet_code = #{cabinetCode}</if>
+            <if test="cabinetName != null  and cabinetName != ''"> and cabinet_name like concat('%', #{cabinetName}, '%')</if>
+            <if test="hardwareId != null "> and hardware_id = #{hardwareId}</if>
+            <if test="workareaId != null "> and workarea_id = #{workareaId}</if>
+        </where>
+    </select>
+    
+    <select id="selectIsMaterialsCabinetByCabinetId" parameterType="Long" resultMap="IsMaterialsCabinetResult">
+        <include refid="selectIsMaterialsCabinetVo"/>
+        where cabinet_id = #{cabinetId}
+    </select>
+        
+    <insert id="insertIsMaterialsCabinet" parameterType="IsMaterialsCabinet" useGeneratedKeys="true" keyProperty="cabinetId">
+        insert into is_materials_cabinet
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="cabinetCode != null and cabinetCode != ''">cabinet_code,</if>
+            <if test="cabinetName != null and cabinetName != ''">cabinet_name,</if>
+            <if test="hardwareId != null">hardware_id,</if>
+            <if test="workareaId != null">workarea_id,</if>
+            <if test="remark != null">remark,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="updateBy != null">update_by,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="cabinetCode != null and cabinetCode != ''">#{cabinetCode},</if>
+            <if test="cabinetName != null and cabinetName != ''">#{cabinetName},</if>
+            <if test="hardwareId != null">#{hardwareId},</if>
+            <if test="workareaId != null">#{workareaId},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+         </trim>
+    </insert>
+
+    <update id="updateIsMaterialsCabinet" parameterType="IsMaterialsCabinet">
+        update is_materials_cabinet
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="cabinetCode != null and cabinetCode != ''">cabinet_code = #{cabinetCode},</if>
+            <if test="cabinetName != null and cabinetName != ''">cabinet_name = #{cabinetName},</if>
+            <if test="hardwareId != null">hardware_id = #{hardwareId},</if>
+            <if test="workareaId != null">workarea_id = #{workareaId},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+        </trim>
+        where cabinet_id = #{cabinetId}
+    </update>
+
+    <delete id="deleteIsMaterialsCabinetByCabinetId" parameterType="Long">
+        delete from is_materials_cabinet where cabinet_id = #{cabinetId}
+    </delete>
+
+    <delete id="deleteIsMaterialsCabinetByCabinetIds" parameterType="String">
+        delete from is_materials_cabinet where cabinet_id in 
+        <foreach item="cabinetId" collection="array" open="(" separator="," close=")">
+            #{cabinetId}
+        </foreach>
+    </delete>
+</mapper>

+ 115 - 0
ktg-iscs/src/main/resources/mapper/IsMaterialsLoanMapper.xml

@@ -0,0 +1,115 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ktg.iscs.mapper.IsMaterialsLoanMapper">
+    
+    <resultMap type="IsMaterialsLoan" id="IsMaterialsLoanResult">
+        <result property="materialsLoanId"    column="materials_loan_id"    />
+        <result property="materialsId"    column="materials_id"    />
+        <result property="loanUserId"    column="loan_user_id"    />
+        <result property="loanFromId"    column="loan_from_id"    />
+        <result property="loanTime"    column="loan_time"    />
+        <result property="reminderTime"    column="reminder_time"    />
+        <result property="restitutionUserId"    column="restitution_user_id"    />
+        <result property="restitutionToId"    column="restitution_to_id"    />
+        <result property="restitutionTime"    column="restitution_time"    />
+        <result property="remark"    column="remark"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="updateBy"    column="update_by"    />
+    </resultMap>
+
+    <sql id="selectIsMaterialsLoanVo">
+        select materials_loan_id, materials_id, loan_user_id, loan_from_id, loan_time, reminder_time, restitution_user_id, restitution_to_id, restitution_time, remark, del_flag, create_by, create_time, update_time, update_by from is_materials_loan
+    </sql>
+
+    <select id="selectIsMaterialsLoanList" parameterType="IsMaterialsLoan" resultMap="IsMaterialsLoanResult">
+        <include refid="selectIsMaterialsLoanVo"/>
+        <where>  
+            <if test="materialsId != null "> and materials_id = #{materialsId}</if>
+            <if test="loanUserId != null "> and loan_user_id = #{loanUserId}</if>
+            <if test="loanFromId != null "> and loan_from_id = #{loanFromId}</if>
+            <if test="loanTime != null "> and loan_time = #{loanTime}</if>
+            <if test="reminderTime != null "> and reminder_time = #{reminderTime}</if>
+            <if test="restitutionUserId != null "> and restitution_user_id = #{restitutionUserId}</if>
+            <if test="restitutionToId != null "> and restitution_to_id = #{restitutionToId}</if>
+            <if test="restitutionTime != null "> and restitution_time = #{restitutionTime}</if>
+        </where>
+    </select>
+    
+    <select id="selectIsMaterialsLoanByMaterialsLoanId" parameterType="Long" resultMap="IsMaterialsLoanResult">
+        <include refid="selectIsMaterialsLoanVo"/>
+        where materials_loan_id = #{materialsLoanId}
+    </select>
+        
+    <insert id="insertIsMaterialsLoan" parameterType="IsMaterialsLoan" useGeneratedKeys="true" keyProperty="materialsLoanId">
+        insert into is_materials_loan
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="materialsId != null">materials_id,</if>
+            <if test="loanUserId != null">loan_user_id,</if>
+            <if test="loanFromId != null">loan_from_id,</if>
+            <if test="loanTime != null">loan_time,</if>
+            <if test="reminderTime != null">reminder_time,</if>
+            <if test="restitutionUserId != null">restitution_user_id,</if>
+            <if test="restitutionToId != null">restitution_to_id,</if>
+            <if test="restitutionTime != null">restitution_time,</if>
+            <if test="remark != null">remark,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="updateBy != null">update_by,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="materialsId != null">#{materialsId},</if>
+            <if test="loanUserId != null">#{loanUserId},</if>
+            <if test="loanFromId != null">#{loanFromId},</if>
+            <if test="loanTime != null">#{loanTime},</if>
+            <if test="reminderTime != null">#{reminderTime},</if>
+            <if test="restitutionUserId != null">#{restitutionUserId},</if>
+            <if test="restitutionToId != null">#{restitutionToId},</if>
+            <if test="restitutionTime != null">#{restitutionTime},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+         </trim>
+    </insert>
+
+    <update id="updateIsMaterialsLoan" parameterType="IsMaterialsLoan">
+        update is_materials_loan
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="materialsId != null">materials_id = #{materialsId},</if>
+            <if test="loanUserId != null">loan_user_id = #{loanUserId},</if>
+            <if test="loanFromId != null">loan_from_id = #{loanFromId},</if>
+            <if test="loanTime != null">loan_time = #{loanTime},</if>
+            <if test="reminderTime != null">reminder_time = #{reminderTime},</if>
+            <if test="restitutionUserId != null">restitution_user_id = #{restitutionUserId},</if>
+            <if test="restitutionToId != null">restitution_to_id = #{restitutionToId},</if>
+            <if test="restitutionTime != null">restitution_time = #{restitutionTime},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+        </trim>
+        where materials_loan_id = #{materialsLoanId}
+    </update>
+
+    <delete id="deleteIsMaterialsLoanByMaterialsLoanId" parameterType="Long">
+        delete from is_materials_loan where materials_loan_id = #{materialsLoanId}
+    </delete>
+
+    <delete id="deleteIsMaterialsLoanByMaterialsLoanIds" parameterType="String">
+        delete from is_materials_loan where materials_loan_id in 
+        <foreach item="materialsLoanId" collection="array" open="(" separator="," close=")">
+            #{materialsLoanId}
+        </foreach>
+    </delete>
+</mapper>

+ 125 - 0
ktg-iscs/src/main/resources/mapper/IsMaterialsMapper.xml

@@ -0,0 +1,125 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ktg.iscs.mapper.IsMaterialsMapper">
+
+    <resultMap type="IsMaterials" id="IsMaterialsResult">
+        <result property="materialsId"    column="materials_id"    />
+        <result property="materialsCode"    column="materials_code"    />
+        <result property="materialsName"    column="materials_name"    />
+        <result property="workareaId"    column="workarea_id"    />
+        <result property="materialsTypeId"    column="materials_type_id"    />
+        <result property="materialsCabinetId"    column="materials_cabinet_id"    />
+        <result property="serviceLife"    column="service_life"    />
+        <result property="availableLife"    column="available_life"    />
+        <result property="serviceTimes"    column="service_times"    />
+        <result property="availableTimes"    column="available_times"    />
+        <result property="startTime"    column="start_time"    />
+        <result property="remark"    column="remark"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="updateBy"    column="update_by"    />
+    </resultMap>
+
+    <sql id="selectIsMaterialsVo">
+        select materials_id, materials_code, materials_name, materials_type_id, workarea_id, materials_cabinet_id, service_life, available_life, service_times, available_times, start_time, remark, del_flag, create_by, create_time, update_time, update_by from is_materials
+    </sql>
+
+    <select id="selectIsMaterialsList" parameterType="IsMaterials" resultMap="IsMaterialsResult">
+        <include refid="selectIsMaterialsVo"/>
+        <where>
+            <if test="materialsCode != null  and materialsCode != ''"> and materials_code = #{materialsCode}</if>
+            <if test="materialsName != null  and materialsName != ''"> and materials_name like concat('%', #{materialsName}, '%')</if>
+            <if test="materialsTypeId != null "> and materials_type_id = #{materialsTypeId}</if>
+            <if test="workareaId != null "> and workarea_id = #{workareaId}</if>
+            <if test="materialsCabinetId != null "> and materials_cabinet_id = #{materialsCabinetId}</if>
+            <if test="serviceLife != null  and serviceLife != ''"> and service_life = #{serviceLife}</if>
+            <if test="availableLife != null  and availableLife != ''"> and available_life = #{availableLife}</if>
+            <if test="serviceTimes != null "> and service_times = #{serviceTimes}</if>
+            <if test="availableTimes != null "> and available_times = #{availableTimes}</if>
+            <if test="startTime != null "> and start_time = #{startTime}</if>
+        </where>
+    </select>
+
+    <select id="selectIsMaterialsByMaterialsId" parameterType="Long" resultMap="IsMaterialsResult">
+        <include refid="selectIsMaterialsVo"/>
+        where materials_id = #{materialsId}
+    </select>
+
+    <insert id="insertIsMaterials" parameterType="IsMaterials" useGeneratedKeys="true" keyProperty="materialsId">
+        insert into is_materials
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="materialsCode != null and materialsCode != ''">materials_code,</if>
+            <if test="materialsName != null and materialsName != ''">materials_name,</if>
+            <if test="materialsTypeId != null">materials_type_id,</if>
+            <if test="workareaId != null">workarea_id,</if>
+            <if test="materialsCabinetId != null">materials_cabinet_id,</if>
+            <if test="serviceLife != null">service_life,</if>
+            <if test="availableLife != null">available_life,</if>
+            <if test="serviceTimes != null">service_times,</if>
+            <if test="availableTimes != null">available_times,</if>
+            <if test="startTime != null">start_time,</if>
+            <if test="remark != null">remark,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="updateBy != null">update_by,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="materialsCode != null and materialsCode != ''">#{materialsCode},</if>
+            <if test="materialsName != null and materialsName != ''">#{materialsName},</if>
+            <if test="materialsTypeId != null">materials_type_id,</if>
+            <if test="workareaId != null">#{workareaId},</if>
+            <if test="materialsCabinetId != null">#{materialsCabinetId},</if>
+            <if test="serviceLife != null">#{serviceLife},</if>
+            <if test="availableLife != null">#{availableLife},</if>
+            <if test="serviceTimes != null">#{serviceTimes},</if>
+            <if test="availableTimes != null">#{availableTimes},</if>
+            <if test="startTime != null">#{startTime},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+         </trim>
+    </insert>
+
+    <update id="updateIsMaterials" parameterType="IsMaterials">
+        update is_materials
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="materialsCode != null and materialsCode != ''">materials_code = #{materialsCode},</if>
+            <if test="materialsName != null and materialsName != ''">materials_name = #{materialsName},</if>
+            <if test="materialsTypeId != null">materials_type_id = #{materialsTypeId},</if>
+            <if test="workareaId != null">workarea_id = #{workareaId},</if>
+            <if test="materialsCabinetId != null">materials_cabinet_id = #{materialsCabinetId},</if>
+            <if test="serviceLife != null">service_life = #{serviceLife},</if>
+            <if test="availableLife != null">available_life = #{availableLife},</if>
+            <if test="serviceTimes != null">service_times = #{serviceTimes},</if>
+            <if test="availableTimes != null">available_times = #{availableTimes},</if>
+            <if test="startTime != null">start_time = #{startTime},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+        </trim>
+        where materials_id = #{materialsId}
+    </update>
+
+    <delete id="deleteIsMaterialsByMaterialsId" parameterType="Long">
+        delete from is_materials where materials_id = #{materialsId}
+    </delete>
+
+    <delete id="deleteIsMaterialsByMaterialsIds" parameterType="String">
+        delete from is_materials where materials_id in
+        <foreach item="materialsId" collection="array" open="(" separator="," close=")">
+            #{materialsId}
+        </foreach>
+    </delete>
+</mapper>

+ 105 - 0
ktg-iscs/src/main/resources/mapper/IsMaterialsRestitutionRulesMapper.xml

@@ -0,0 +1,105 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ktg.iscs.mapper.IsMaterialsRestitutionRulesMapper">
+    
+    <resultMap type="IsMaterialsRestitutionRules" id="IsMaterialsRestitutionRulesResult">
+        <result property="ruleId"    column="rule_id"    />
+        <result property="materialsTypeId"    column="materials_type_id"    />
+        <result property="restitutionRequired"    column="restitution_required"    />
+        <result property="restorationRequired"    column="restoration_required"    />
+        <result property="loanDuration"    column="loan_duration"    />
+        <result property="reminderTime"    column="reminder_time"    />
+        <result property="timeoutAlarm"    column="timeout_alarm"    />
+        <result property="remark"    column="remark"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="updateBy"    column="update_by"    />
+    </resultMap>
+
+    <sql id="selectIsMaterialsRestitutionRulesVo">
+        select rule_id, materials_type_id, restitution_required, restoration_required, loan_duration, reminder_time, timeout_alarm, remark, del_flag, create_by, create_time, update_time, update_by from is_materials_restitution_rules
+    </sql>
+
+    <select id="selectIsMaterialsRestitutionRulesList" parameterType="IsMaterialsRestitutionRules" resultMap="IsMaterialsRestitutionRulesResult">
+        <include refid="selectIsMaterialsRestitutionRulesVo"/>
+        <where>  
+            <if test="materialsTypeId != null "> and materials_type_id = #{materialsTypeId}</if>
+            <if test="restitutionRequired != null "> and restitution_required = #{restitutionRequired}</if>
+            <if test="restorationRequired != null "> and restoration_required = #{restorationRequired}</if>
+            <if test="loanDuration != null "> and loan_duration = #{loanDuration}</if>
+            <if test="reminderTime != null "> and reminder_time = #{reminderTime}</if>
+            <if test="timeoutAlarm != null "> and timeout_alarm = #{timeoutAlarm}</if>
+        </where>
+    </select>
+    
+    <select id="selectIsMaterialsRestitutionRulesByRuleId" parameterType="Long" resultMap="IsMaterialsRestitutionRulesResult">
+        <include refid="selectIsMaterialsRestitutionRulesVo"/>
+        where rule_id = #{ruleId}
+    </select>
+        
+    <insert id="insertIsMaterialsRestitutionRules" parameterType="IsMaterialsRestitutionRules" useGeneratedKeys="true" keyProperty="ruleId">
+        insert into is_materials_restitution_rules
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="materialsTypeId != null">materials_type_id,</if>
+            <if test="restitutionRequired != null">restitution_required,</if>
+            <if test="restorationRequired != null">restoration_required,</if>
+            <if test="loanDuration != null">loan_duration,</if>
+            <if test="reminderTime != null">reminder_time,</if>
+            <if test="timeoutAlarm != null">timeout_alarm,</if>
+            <if test="remark != null">remark,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="updateBy != null">update_by,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="materialsTypeId != null">#{materialsTypeId},</if>
+            <if test="restitutionRequired != null">#{restitutionRequired},</if>
+            <if test="restorationRequired != null">#{restorationRequired},</if>
+            <if test="loanDuration != null">#{loanDuration},</if>
+            <if test="reminderTime != null">#{reminderTime},</if>
+            <if test="timeoutAlarm != null">#{timeoutAlarm},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+         </trim>
+    </insert>
+
+    <update id="updateIsMaterialsRestitutionRules" parameterType="IsMaterialsRestitutionRules">
+        update is_materials_restitution_rules
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="materialsTypeId != null">materials_type_id = #{materialsTypeId},</if>
+            <if test="restitutionRequired != null">restitution_required = #{restitutionRequired},</if>
+            <if test="restorationRequired != null">restoration_required = #{restorationRequired},</if>
+            <if test="loanDuration != null">loan_duration = #{loanDuration},</if>
+            <if test="reminderTime != null">reminder_time = #{reminderTime},</if>
+            <if test="timeoutAlarm != null">timeout_alarm = #{timeoutAlarm},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+        </trim>
+        where rule_id = #{ruleId}
+    </update>
+
+    <delete id="deleteIsMaterialsRestitutionRulesByRuleId" parameterType="Long">
+        delete from is_materials_restitution_rules where rule_id = #{ruleId}
+    </delete>
+
+    <delete id="deleteIsMaterialsRestitutionRulesByRuleIds" parameterType="String">
+        delete from is_materials_restitution_rules where rule_id in 
+        <foreach item="ruleId" collection="array" open="(" separator="," close=")">
+            #{ruleId}
+        </foreach>
+    </delete>
+</mapper>

+ 120 - 0
ktg-iscs/src/main/resources/mapper/IsMaterialsTypeMapper.xml

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ktg.iscs.mapper.IsMaterialsTypeMapper">
+    
+    <resultMap type="IsMaterialsType" id="IsMaterialsTypeResult">
+        <result property="materialsTypeId"    column="materials_type_id"    />
+        <result property="materialsTypeCode"    column="materials_type_code"    />
+        <result property="materialsTypeName"    column="materials_type_name"    />
+        <result property="parentId"    column="parent_id"    />
+        <result property="ancestors"    column="ancestors"    />
+        <result property="enableFlag"    column="enable_flag"    />
+        <result property="serviceLife"    column="service_life"    />
+        <result property="availableLife"    column="available_life"    />
+        <result property="serviceTimes"    column="service_times"    />
+        <result property="availableTimes"    column="available_times"    />
+        <result property="remark"    column="remark"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="updateBy"    column="update_by"    />
+    </resultMap>
+
+    <sql id="selectIsMaterialsTypeVo">
+        select materials_type_id, materials_type_code, materials_type_name, parent_id, ancestors, enable_flag, service_life, available_life, service_times, available_times, remark, del_flag, create_by, create_time, update_time, update_by from is_materials_type
+    </sql>
+
+    <select id="selectIsMaterialsTypeList" parameterType="IsMaterialsType" resultMap="IsMaterialsTypeResult">
+        <include refid="selectIsMaterialsTypeVo"/>
+        <where>  
+            <if test="materialsTypeCode != null  and materialsTypeCode != ''"> and materials_type_code = #{materialsTypeCode}</if>
+            <if test="materialsTypeName != null  and materialsTypeName != ''"> and materials_type_name like concat('%', #{materialsTypeName}, '%')</if>
+            <if test="parentId != null "> and parent_id = #{parentId}</if>
+            <if test="ancestors != null  and ancestors != ''"> and ancestors = #{ancestors}</if>
+            <if test="enableFlag != null  and enableFlag != ''"> and enable_flag = #{enableFlag}</if>
+            <if test="serviceLife != null  and serviceLife != ''"> and service_life = #{serviceLife}</if>
+            <if test="availableLife != null  and availableLife != ''"> and available_life = #{availableLife}</if>
+            <if test="serviceTimes != null "> and service_times = #{serviceTimes}</if>
+            <if test="availableTimes != null "> and available_times = #{availableTimes}</if>
+        </where>
+    </select>
+    
+    <select id="selectIsMaterialsTypeByMaterialsTypeId" parameterType="Long" resultMap="IsMaterialsTypeResult">
+        <include refid="selectIsMaterialsTypeVo"/>
+        where materials_type_id = #{materialsTypeId}
+    </select>
+        
+    <insert id="insertIsMaterialsType" parameterType="IsMaterialsType" useGeneratedKeys="true" keyProperty="materialsTypeId">
+        insert into is_materials_type
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="materialsTypeCode != null and materialsTypeCode != ''">materials_type_code,</if>
+            <if test="materialsTypeName != null and materialsTypeName != ''">materials_type_name,</if>
+            <if test="parentId != null">parent_id,</if>
+            <if test="ancestors != null and ancestors != ''">ancestors,</if>
+            <if test="enableFlag != null and enableFlag != ''">enable_flag,</if>
+            <if test="serviceLife != null">service_life,</if>
+            <if test="availableLife != null">available_life,</if>
+            <if test="serviceTimes != null">service_times,</if>
+            <if test="availableTimes != null">available_times,</if>
+            <if test="remark != null">remark,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="updateBy != null">update_by,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="materialsTypeCode != null and materialsTypeCode != ''">#{materialsTypeCode},</if>
+            <if test="materialsTypeName != null and materialsTypeName != ''">#{materialsTypeName},</if>
+            <if test="parentId != null">#{parentId},</if>
+            <if test="ancestors != null and ancestors != ''">#{ancestors},</if>
+            <if test="enableFlag != null and enableFlag != ''">#{enableFlag},</if>
+            <if test="serviceLife != null">#{serviceLife},</if>
+            <if test="availableLife != null">#{availableLife},</if>
+            <if test="serviceTimes != null">#{serviceTimes},</if>
+            <if test="availableTimes != null">#{availableTimes},</if>
+            <if test="remark != null">#{remark},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+         </trim>
+    </insert>
+
+    <update id="updateIsMaterialsType" parameterType="IsMaterialsType">
+        update is_materials_type
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="materialsTypeCode != null and materialsTypeCode != ''">materials_type_code = #{materialsTypeCode},</if>
+            <if test="materialsTypeName != null and materialsTypeName != ''">materials_type_name = #{materialsTypeName},</if>
+            <if test="parentId != null">parent_id = #{parentId},</if>
+            <if test="ancestors != null and ancestors != ''">ancestors = #{ancestors},</if>
+            <if test="enableFlag != null and enableFlag != ''">enable_flag = #{enableFlag},</if>
+            <if test="serviceLife != null">service_life = #{serviceLife},</if>
+            <if test="availableLife != null">available_life = #{availableLife},</if>
+            <if test="serviceTimes != null">service_times = #{serviceTimes},</if>
+            <if test="availableTimes != null">available_times = #{availableTimes},</if>
+            <if test="remark != null">remark = #{remark},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+        </trim>
+        where materials_type_id = #{materialsTypeId}
+    </update>
+
+    <delete id="deleteIsMaterialsTypeByMaterialsTypeId" parameterType="Long">
+        delete from is_materials_type where materials_type_id = #{materialsTypeId}
+    </delete>
+
+    <delete id="deleteIsMaterialsTypeByMaterialsTypeIds" parameterType="String">
+        delete from is_materials_type where materials_type_id in 
+        <foreach item="materialsTypeId" collection="array" open="(" separator="," close=")">
+            #{materialsTypeId}
+        </foreach>
+    </delete>
+</mapper>