feat: 修改

lh_dev_fifo
chenhc 9 months ago
parent 9c7219c728
commit 87bf601366

@ -0,0 +1,121 @@
package com.glxp.api.controller.dev;
import cn.hutool.core.util.IdUtil;
import com.github.pagehelper.PageInfo;
import com.glxp.api.annotation.AuthRuleAnnotation;
import com.glxp.api.annotation.Log;
import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.constant.BusinessType;
import com.glxp.api.constant.FileConstant;
import com.glxp.api.controller.BaseController;
import com.glxp.api.entity.dev.DeviceAssetContractEntity;
import com.glxp.api.req.dev.PostDeviceContractRequest;
import com.glxp.api.req.inv.FilterInvContractRequest;
import com.glxp.api.req.system.DeleteDeviceFileRequest;
import com.glxp.api.res.PageSimpleResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.dev.DeviceAssetContractService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.io.File;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.util.List;
/**
*
*/
@Slf4j
@RestController
public class DeviceAssetContractController extends BaseController {
@Value("${file_path}")
private String filePath;
@Resource
private DeviceAssetContractService deviceAssetContractService;
@Resource
private CustomerService customerService;
@AuthRuleAnnotation("")
@GetMapping("/inv/device/contract/filter")
public BaseResponse filterDeviceContract(FilterInvContractRequest filterInvContractRequest) {
List<DeviceAssetContractEntity> deviceAssetContractEntityList
= deviceAssetContractService.filterDeviceContract(filterInvContractRequest);
PageInfo<DeviceAssetContractEntity> pageInfo;
pageInfo = new PageInfo<>(deviceAssetContractEntityList);
PageSimpleResponse<DeviceAssetContractEntity> pageSimpleResponse = new PageSimpleResponse<>();
pageSimpleResponse.setTotal(pageInfo.getTotal());
pageSimpleResponse.setList(deviceAssetContractEntityList);
return ResultVOUtils.success(pageSimpleResponse);
}
@AuthRuleAnnotation("")
@PostMapping("/inv/info/insertDeviceContract")
@Log(title = "资质证书", businessType = BusinessType.INSERT)
public BaseResponse insertDeviceContract(@RequestBody DeviceAssetContractEntity deviceAssetContractEntity) {
String userId = customerService.getUserId()+ "";
LocalDate now = LocalDate.now();
deviceAssetContractEntity.setCreateTime(now);
deviceAssetContractEntity.setUpdateTime(now);
deviceAssetContractEntity.setCreateUser(userId);
deviceAssetContractEntity.setUpdateUser(userId);
deviceAssetContractEntity.setStatus(0);
deviceAssetContractEntity.setId(IdUtil.getSnowflakeNextId());
boolean b = deviceAssetContractService.insertDeviceContract(deviceAssetContractEntity);
return ResultVOUtils.success("成功");
}
@AuthRuleAnnotation("")
@PostMapping("/inv/info/deleteDeviceContract")
public BaseResponse deleteDeviceContract(@RequestBody DeleteDeviceFileRequest deleteDeviceFileRequest) {
boolean b = deviceAssetContractService.deleteById(deleteDeviceFileRequest.getId());
String URL = filePath + FileConstant.COMMON_FILE_PATH + deleteDeviceFileRequest.getFilePath();
File file = new File(URL);
if (file.exists() && file.isFile()) {
file.delete();
}
return ResultVOUtils.success("成功");
}
@AuthRuleAnnotation("")
@PostMapping("/inv/info/updateDeviceContract")
@Log(title = "资质证书", businessType = BusinessType.UPDATE)
public BaseResponse updateDeviceContract(@RequestBody PostDeviceContractRequest postDeviceContractRequest) {
DeviceAssetContractEntity deviceAssetContractEntity = new DeviceAssetContractEntity();
BeanUtils.copyProperties(postDeviceContractRequest, deviceAssetContractEntity);
LocalDateTime localDateTime1 = postDeviceContractRequest.getVailDate().atStartOfDay();
LocalDateTime localDateTime2= postDeviceContractRequest.getExpireDate().atStartOfDay();
Instant instant = localDateTime1.toInstant(ZoneOffset.UTC);
Instant instant2 = localDateTime2.toInstant(ZoneOffset.UTC);
long milliseconds = instant.toEpochMilli();
long milliseconds2 = instant2.toEpochMilli();
if (postDeviceContractRequest.getVailDate() != null && postDeviceContractRequest.getExpireDate() != null) {
if (milliseconds > milliseconds2) {
return ResultVOUtils.error( "生效期不能小于失效期!");
}
}
String userId = customerService.getUserId()+ "";
LocalDate now = LocalDate.now();
deviceAssetContractEntity.setUpdateTime(now);
deviceAssetContractEntity.setUpdateUser(userId);
boolean b = deviceAssetContractService.updateDeviceContract(deviceAssetContractEntity);
if (b){
return ResultVOUtils.success("修改成功");
}else {
return ResultVOUtils.error("修改失败!");
}
}
}

@ -0,0 +1,25 @@
package com.glxp.api.dao.dev;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.glxp.api.entity.dev.DeviceAssetContractEntity;
import com.glxp.api.req.inv.FilterInvContractRequest;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
@Mapper
public interface DeviceAssetContractMapper extends BaseMapper<DeviceAssetContractEntity> {
List<DeviceAssetContractEntity> filterCompanyContract(FilterInvContractRequest filterInvContractRequest);
boolean deleteById(String id);
boolean updateDeviceContract(DeviceAssetContractEntity deviceAssetContractEntity);
}

@ -0,0 +1,105 @@
package com.glxp.api.entity.dev;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDate;
@Data
@TableName(value = "device_asset_contract")
public class DeviceAssetContractEntity implements Serializable {
/**
* ID
*/
@TableId(value = "id", type = IdType.INPUT)
private Long id;
/**
*
*/
@TableField(value = "devCodeFk")
private String devCodeFk;
/**
*
*/
@TableField(value = "`name`")
private String name;
/**
*
*/
@TableField(value = "code")
private String code;
/**
*
*/
@TableField(value = "filePath")
private String filePath;
/**
*
*/
@TableField(value = "vailDate")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate vailDate;
/**
*
*/
@TableField(value = "expireDate")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate expireDate;
/**
*
*/
@TableField(value = "`status`")
private Integer status;
/**
* 12
*/
@TableField(value = "`type`")
private Integer type;
/**
*
*/
@TableField(value = "remark")
private String remark;
/**
*
*/
@TableField(value = "`createUser`")
private String createUser;
/**
*
*/
@TableField(value = "createTime")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate createTime;
/**
*
*/
@TableField(value = "updateUser")
private String updateUser;
/**
*
*/
@TableField(value = "updateTime")
@JsonFormat(pattern = "yyyy-MM-dd")
private LocalDate updateTime;
private static final long serialVersionUID = 1L;
}

@ -0,0 +1,11 @@
package com.glxp.api.req.dev;
import com.glxp.api.entity.dev.DeviceAssetCertEntity;
import lombok.Data;
@Data
public class PostDeviceContractRequest extends DeviceAssetCertEntity {
private int repeatUpload;
}

@ -0,0 +1,99 @@
package com.glxp.api.req.inv;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.glxp.api.util.page.ListPageRequest;
import lombok.Data;
import java.time.LocalDateTime;
/**
*
*/
@Data
public class FilterInvContractRequest extends ListPageRequest {
/**
*
*/
@TableId(value = "id")
private Long id;
/**
*
*/
@TableField(value = "devCodeFk")
private String devCodeFk;
/**
*
*/
@TableField(value = "name")
private String name;
/**
*
*/
@TableField(value = "code")
private String code;
/**
*
*/
@TableField(value = "filePath")
private String filePath;
/**
*
*/
@TableField(value = "vailDate")
private LocalDateTime vailDate;
/**
*
*/
@TableField(value = "expireDate")
private LocalDateTime expireDate;
/**
*
*/
@TableField(value = "status")
private Integer status;
/**
* 12
*/
@TableField(value = "type")
private Integer type;
/**
*
*/
@TableField(value = "remark")
private String remark;
/**
*
*/
@TableField(value = "createUser")
private String createUser;
/**
*
*/
@TableField(value = "createTime")
private LocalDateTime createTime;
/**
*
*/
@TableField(value = "updateUser")
private String updateUser;
/**
*
*/
@TableField(value = "updateTime")
private LocalDateTime updateTime;
}

@ -0,0 +1,34 @@
package com.glxp.api.service.dev;
import com.baomidou.mybatisplus.extension.service.IService;
import com.glxp.api.entity.dev.DeviceAssetContractEntity;
import com.glxp.api.req.inv.FilterInvContractRequest;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public interface DeviceAssetContractService extends IService<DeviceAssetContractEntity> {
List<DeviceAssetContractEntity> filterDeviceContract(FilterInvContractRequest filterInvContractRequest);
boolean insertDeviceContract(DeviceAssetContractEntity deviceAssetCertEntity);
boolean deleteById(String id);
boolean updateDeviceContract(DeviceAssetContractEntity deviceAssetContractEntity);
}

@ -0,0 +1,54 @@
package com.glxp.api.service.dev.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.glxp.api.dao.dev.DeviceAssetContractMapper;
import com.glxp.api.entity.dev.DeviceAssetContractEntity;
import com.glxp.api.req.inv.FilterInvContractRequest;
import com.glxp.api.service.dev.DeviceAssetContractService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Collections;
import java.util.List;
@Slf4j
@Service
@Transactional(rollbackFor = Exception.class)
public class DeviceAssetContractServiceImpl extends ServiceImpl<DeviceAssetContractMapper, DeviceAssetContractEntity> implements DeviceAssetContractService {
@Resource
DeviceAssetContractMapper deviceAssetContractMapper;
@Override
public List<DeviceAssetContractEntity> filterDeviceContract(FilterInvContractRequest filterInvContractRequest) {
if (filterInvContractRequest == null) {
return Collections.emptyList();
}
if (filterInvContractRequest.getPage() != null) {
int offset = (filterInvContractRequest.getPage() - 1) * filterInvContractRequest.getLimit();
PageHelper.offsetPage(offset, filterInvContractRequest.getLimit());
}
return deviceAssetContractMapper.filterCompanyContract(filterInvContractRequest);
}
@Override
public boolean insertDeviceContract(DeviceAssetContractEntity deviceAssetContractEntity) {
return deviceAssetContractMapper.insert(deviceAssetContractEntity) > 0 ? true : false;
}
@Override
public boolean deleteById(String id) {
return deviceAssetContractMapper.deleteById(id);
}
@Override
public boolean updateDeviceContract(DeviceAssetContractEntity deviceAssetContractEntity) {
return deviceAssetContractMapper.updateDeviceContract(deviceAssetContractEntity);
}
}

@ -0,0 +1,81 @@
<?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.glxp.api.dao.dev.DeviceAssetContractMapper">
<resultMap id="BaseResultMap" type="com.glxp.api.entity.dev.DeviceAssetContractEntity">
<!--@mbg.generated-->
<!--@Table device_asset_contract-->
<id column="id" jdbcType="BIGINT" property="id" />
<result column="devCodeFk" jdbcType="VARCHAR" property="devCodeFk" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="code" jdbcType="VARCHAR" property="code" />
<result column="filePath" jdbcType="LONGVARCHAR" property="filePath" />
<result column="vailDate" jdbcType="TIMESTAMP" property="vailDate" />
<result column="expireDate" jdbcType="TIMESTAMP" property="expireDate" />
<result column="status" jdbcType="TINYINT" property="status" />
<result column="type" jdbcType="TINYINT" property="type" />
<result column="remark" jdbcType="VARCHAR" property="remark" />
<result column="createUser" jdbcType="VARCHAR" property="createUser" />
<result column="createTime" jdbcType="TIMESTAMP" property="createTime" />
<result column="updateUser" jdbcType="VARCHAR" property="updateUser" />
<result column="updateTime" jdbcType="TIMESTAMP" property="updateTime" />
</resultMap>
<sql id="Base_Column_List">
<!--@mbg.generated-->
id, devCodeFk, `name`, code, filePath, vailDate, expireDate, `status`, `type`, remark,
`createUser`, createTime, updateUser, updateTime
</sql>
<select id="filterCompanyContract" parameterType="com.glxp.api.req.inv.FilterInvContractRequest"
resultType="com.glxp.api.entity.dev.DeviceAssetContractEntity">
select * from device_asset_contract
<where>
devCodeFk = #{devCodeFk}
<!-- <if test="devCodeFk != '' and devCodeFk!=null">-->
<!-- and devCodeFk = #{devCodeFk}-->
<!-- </if>-->
<if test="name != '' and name!=null">
and name = #{name}
</if>
<if test="code != '' and code!=null">
and code = #{code}
</if>
<if test="status != '' and status!=null">
and status = #{status}
</if>
<if test="type != '' and type!=null">
and `type` = #{type}
</if>
</where>
ORDER BY id DESC
</select>
<delete id="deleteById" parameterType="Map">
DELETE
FROM device_asset_contract
WHERE id = #{id}
</delete>
<update id="updateDeviceContract" parameterType="com.glxp.api.entity.dev.DeviceAssetContractEntity">
UPDATE device_asset_contract
<trim prefix="set" suffixOverrides=",">
<if test="name != null">name=#{name},</if>
<if test="devCodeFk != null">devCodeFk=#{devCodeFk},</if>
<if test="filePath != null">filePath=#{filePath},</if>
<if test="remark != null">remark=#{remark},</if>
vailDate=#{vailDate},
expireDate=#{expireDate},
<if test="type != null">`type`=#{type},</if>
<if test="code != null">`code`=#{code},</if>
<if test="status != null">`status`=#{status},</if>
<if test="updateUser != null">`updateUser`=#{updateUser},</if>
<if test="updateTime != null">`updateTime`=#{updateTime},</if>
</trim>
WHERE id = #{id}
</update>
</mapper>

@ -3892,3 +3892,22 @@ CREATE TABLE IF NOT EXISTS `sys_msg_todo` (
`remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
CREATE TABLE IF NOT EXISTS `device_asset_contract` (
`id` bigint NOT NULL,
`devCodeFk` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '设备资产编码外键',
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '证书名称',
`code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '证书编码',
`filePath` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '文件路径',
`vailDate` datetime DEFAULT NULL COMMENT '生效期',
`expireDate` datetime DEFAULT NULL COMMENT '失效期',
`status` tinyint DEFAULT NULL COMMENT '证书状态',
`type` tinyint DEFAULT NULL COMMENT '证书类型1资质证书2技术材料',
`remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注说明',
`createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人',
`createTime` datetime DEFAULT NULL COMMENT '创建时间',
`updateUser` varchar(255) DEFAULT NULL COMMENT '更新人',
`updateTime` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC;
Loading…
Cancel
Save