单位类型管理导出和查询接口重写

This commit is contained in:
hongchao 2024-12-27 13:12:16 +08:00
parent 8e6d9f754e
commit 9cd74b5bc1
6 changed files with 283 additions and 0 deletions

View File

@ -0,0 +1,74 @@
package com.bonus.material.basic.controller;
import com.bonus.common.core.utils.poi.ExcelUtil;
import com.bonus.common.core.web.controller.BaseController;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.core.web.page.TableDataInfo;
import com.bonus.common.log.annotation.SysLog;
import com.bonus.common.log.enums.OperaType;
import com.bonus.common.security.annotation.InnerAuth;
import com.bonus.common.security.annotation.RequiresPermissions;
import com.bonus.common.security.annotation.RequiresPermissionsOrInnerAuth;
import com.bonus.material.basic.domain.BmUnit;
import com.bonus.material.basic.domain.BmUnitType;
import com.bonus.material.basic.service.IBmUnitTypeService;
import com.bonus.material.common.annotation.PreventRepeatSubmit;
import com.bonus.system.api.domain.SysDictData;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
/**
* 单位类型管理Controller
*
* @author hongchao
* @date 2024-12-27
*/
@Api(tags = "单位类型管理接口")
@RestController
@RequestMapping("/bm_unit_type")
@Slf4j
public class BmUnitTypeController extends BaseController
{
@Autowired
private IBmUnitTypeService bmUnitTypeService;
@RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("system:dict:list"))
@GetMapping("/list")
@SysLog(title = "字典管理", businessType = OperaType.QUERY,logType = 0,module = "系统管理->字典管理")
public TableDataInfo list(BmUnitType bmUnitType) {
try{
startPage();
List<BmUnitType> list = bmUnitTypeService.selectBmUnitTypeDataList(bmUnitType);
return getDataTable(list);
}catch (Exception e){
log.error(e.toString(),e);
}
return getDataTableError(new ArrayList<>());
}
/**
* 导出往来单位管理列表
*/
@ApiOperation(value = "导出单位类型管理列表")
@PreventRepeatSubmit
@RequiresPermissions("basic:unit:export")
@SysLog(title = "往来单位管理", businessType = OperaType.EXPORT, logType = 1,module = "仓储管理->导出单位类型管理")
@PostMapping("/export")
public void export(HttpServletResponse response, BmUnitType bmUnitType)
{
List<BmUnitType> list = bmUnitTypeService.selectBmUnitTypeDataList(bmUnitType);
ExcelUtil<BmUnitType> util = new ExcelUtil<BmUnitType>(BmUnitType.class);
util.exportExcel(response, list, "单位类型管理数据");
}
}

View File

@ -0,0 +1,66 @@
package com.bonus.material.basic.domain;
import com.alibaba.fastjson2.annotation.JSONField;
import com.bonus.common.core.annotation.Excel;
import com.bonus.common.core.web.domain.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.Date;
/**
* 单位类型管理对象 bm_unit_type
*
* @author hongchao
* @date 2024-12-27
*/
@Data
@ToString
public class BmUnitType
{
private static final long serialVersionUID = 1L;
@Excel(name = "序号", isSequence = true, type = Excel.Type.EXPORT)
int sequence;
/** 字典编码 */
@ApiModelProperty(value = "字典编码")
private Long dictCode;
/** 单位类型名称 */
@Excel(name = "单位类型名称")
private String dictLabel;
/** 字典键值 */
@Excel(name = "字典键值")
private String dictValue;
/** 字典排序 */
@Excel(name = "字典排序")
private Long dictSort;
/** 字典类型 */
@ApiModelProperty(value = "字典类型")
private String dictType;
/** 状态0正常 1停用 */
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
private String status;
/** 备注 */
@Excel(name = "备注")
private String remark;
/** 创建时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "创建时间")
private String createTime;
}

View File

@ -0,0 +1,27 @@
package com.bonus.material.basic.mapper;
import com.bonus.material.basic.domain.BmUnit;
import com.bonus.material.basic.domain.BmUnitType;
import com.bonus.system.api.domain.SysDictData;
import java.util.List;
/**
* 单位类型管理Mapper接口
*
* @author hongchao
* @date 2024-12-27
*/
public interface BmUnitTypeMapper
{
/**
* 根据条件分页查询字典数据
*
* @param dictData 字典数据信息
* @return 字典数据集合信息
*/
public List<BmUnitType> selectBmUnitTypeDataList(BmUnitType dictData);
}

View File

@ -0,0 +1,25 @@
package com.bonus.material.basic.service;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.material.basic.domain.BmUnitType;
import com.bonus.system.api.domain.SysDictData;
import java.util.List;
/**
* 单位类型管理Service接口
*
* @author hongchao
* @date 2024-12-27
*/
public interface IBmUnitTypeService
{
/**
* 根据条件分页查询字典数据
*
* @param bmUnitType 字典数据信息
* @return 字典数据集合信息
*/
public List<BmUnitType> selectBmUnitTypeDataList(BmUnitType bmUnitType);
}

View File

@ -0,0 +1,59 @@
package com.bonus.material.basic.service.impl;
import cn.hutool.core.util.PhoneUtil;
import com.alibaba.nacos.common.utils.CollectionUtils;
import com.bonus.common.biz.enums.HttpCodeEnum;
import com.bonus.common.core.constant.SecurityConstants;
import com.bonus.common.core.utils.DateUtils;
import com.bonus.common.core.utils.StringUtils;
import com.bonus.common.core.utils.encryption.Sm4Utils;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.security.utils.SecurityUtils;
import com.bonus.material.basic.domain.BmUnit;
import com.bonus.material.basic.domain.BmUnitType;
import com.bonus.material.basic.mapper.BmUnitMapper;
import com.bonus.material.basic.mapper.BmUnitTypeMapper;
import com.bonus.material.basic.service.IBmUnitService;
import com.bonus.material.basic.service.IBmUnitTypeService;
import com.bonus.material.purchase.config.RemoteConfig;
import com.bonus.system.api.RemoteDeptService;
import com.bonus.system.api.domain.SysDept;
import com.bonus.system.api.domain.SysDictData;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
/**
* 单位类型管理Service业务层处理
*
* @author hongchao
* @date 2024-12-27
*/
@Service
@Slf4j
public class BmUnitTypeServiceImpl implements IBmUnitTypeService
{
@Autowired
private BmUnitTypeMapper bmUnitTypeMapper;
/**
* 查询单位类型管理列表
*
* @param bmUnitType 单位类型管理
* @return 单位类型管理
*/
@Override
public List<BmUnitType> selectBmUnitTypeDataList(BmUnitType bmUnitType)
{
return bmUnitTypeMapper.selectBmUnitTypeDataList(bmUnitType);
}
}

View File

@ -0,0 +1,32 @@
<?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.bonus.material.basic.mapper.BmUnitTypeMapper">
<resultMap type="com.bonus.material.basic.domain.BmUnitType" id="BmUnitTypeResult">
<id property="dictCode" column="dict_code" />
<result property="dictSort" column="dict_sort" />
<result property="dictLabel" column="dict_label" />
<result property="dictValue" column="dict_value" />
<result property="dictType" column="dict_type" />
<result property="status" column="status" />
<result property="createTime" column="create_time" />
<result property="remark" column="remark" />
</resultMap>
<select id="selectBmUnitTypeDataList" parameterType="com.bonus.material.basic.domain.BmUnitType" resultMap="BmUnitTypeResult">
select dict_code, dict_sort, dict_label, dict_value, dict_type, status, create_time, remark
from sys_dict_data
<where>
<if test="dictType != null and dictType != ''">
AND dict_type = #{dictType}
</if>
<if test="dictLabel != null and dictLabel != ''">
AND dict_label like concat('%', #{dictLabel}, '%')
</if>
</where>
order by dict_sort asc
</select>
</mapper>