15928045575 2 лет назад
Родитель
Сommit
f292549786

+ 76 - 0
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/controller/DeviceModelController.java

@@ -0,0 +1,76 @@
+package com.sckw.slope.detection.controller;
+
+import com.alibaba.fastjson2.JSONObject;
+import com.sckw.core.annotation.Log;
+import com.sckw.core.annotation.RepeatSubmit;
+import com.sckw.core.web.response.HttpResult;
+import com.sckw.slope.detection.model.param.DeviceModelQuery;
+import com.sckw.slope.detection.model.param.DeviceModelAdd;
+import com.sckw.slope.detection.service.DeviceModelService;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotBlank;
+import jakarta.validation.constraints.NotNull;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.http.HttpResponse;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * @author sky
+ * @description 设备Model controller
+ * @date 2023-10-30 17:10:24
+ */
+@Slf4j
+@RestController
+@RequestMapping("/deviceModel")
+public class DeviceModelController {
+
+
+    @Autowired
+    DeviceModelService deviceModelService;
+
+    @Log(description = "设备型号删除")
+    @RepeatSubmit(interval = 3000, message = "两次请求间隔未超过3秒")
+    @RequestMapping(name = "设备型号删除", value = "/dels", method = RequestMethod.GET)
+    public HttpResult dels(@RequestParam("ids") @NotBlank(message = "设备id不能为空") String ids) {
+        log.info("设备型号删除 delete param:{}", ids);
+        return deviceModelService.dels(ids);
+    }
+
+
+    @Log(description = "设备型号查询-分页")
+    @RepeatSubmit(interval = 3000, message = "两次请求间隔未超过3秒")
+    @RequestMapping(name = "设备型号查询-分页", value = "/select", method = RequestMethod.POST)
+    public HttpResult select(@Valid @RequestBody DeviceModelQuery deviceModelQuery, HttpResponse response) {
+        log.info("设备型号查询 select param:{}", JSONObject.toJSONString(deviceModelQuery));
+        return HttpResult.ok(deviceModelService.select(deviceModelQuery, response));
+    }
+
+    @Log(description = "设备型号新增")
+    @RepeatSubmit(interval = 3000, message = "两次请求间隔未超过3秒")
+    @RequestMapping(name = "设备型号新增", value = "/add", method = RequestMethod.POST)
+    public HttpResult add(@Valid @RequestBody DeviceModelAdd deviceModelAdd, HttpServletRequest response) {
+        log.info("设备型号新增 add param:{}", JSONObject.toJSONString(deviceModelAdd));
+        return deviceModelService.add(deviceModelAdd, response);
+    }
+
+    @Log(description = "设备型号详情")
+    @RepeatSubmit(interval = 3000, message = "两次请求间隔未超过3秒")
+    @RequestMapping(name = "设备型号详情", value = "/detail", method = RequestMethod.GET)
+    public HttpResult detail(@RequestParam("id") @NotNull(message = "数据id不能为空") long id, HttpServletRequest response) {
+        log.info("设备型号详情 detail param:{}", id);
+        return deviceModelService.detail(id, response);
+    }
+
+
+    @Log(description = "设备型号编辑")
+    //@RepeatSubmit(interval = 3000, message = "两次请求间隔未超过3秒")
+    @RequestMapping(name = "设备型号编辑", value = "/update", method = RequestMethod.POST)
+    public HttpResult update(@Valid @RequestBody DeviceModelAdd deviceModelAdd, HttpServletRequest response) {
+        log.info("设备型号编辑 update param:{}", JSONObject.toJSONString(deviceModelAdd));
+        return deviceModelService.update(deviceModelAdd, response);
+    }
+}

+ 8 - 0
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/dao/mysql/KwsDeviceModelMapper.java

@@ -3,7 +3,13 @@ package com.sckw.slope.detection.dao.mysql;
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.sckw.slope.detection.model.dos.mysql.KwsDeviceModel;
+import com.sckw.slope.detection.model.param.DeviceModelQuery;
+import com.sckw.slope.detection.model.param.DeviceQuery;
+import com.sckw.slope.detection.model.vo.DeviceModelVo;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
 
 @Mapper
 @DS("mysql")
@@ -19,4 +25,6 @@ public interface KwsDeviceModelMapper extends BaseMapper<KwsDeviceModel> {
     int updateByPrimaryKeySelective(KwsDeviceModel record);
 
     int updateByPrimaryKey(KwsDeviceModel record);
+
+    List<DeviceModelVo> selectListAll(@Param("deviceModelQuery") DeviceModelQuery deviceModelQuery);
 }

+ 11 - 4
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/model/dos/mysql/KwsDeviceModel.java

@@ -1,9 +1,11 @@
 package com.sckw.slope.detection.model.dos.mysql;
 
+import cn.hutool.core.date.DateTime;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 
 import java.io.Serializable;
+import java.time.LocalDateTime;
 import java.util.Date;
 
 /**
@@ -56,7 +58,7 @@ public class KwsDeviceModel implements Serializable {
     /**
      * 状态
      */
-    private Byte status;
+    private Integer status;
 
     /**
      * 创建人
@@ -66,7 +68,7 @@ public class KwsDeviceModel implements Serializable {
     /**
      * 创建时间
      */
-    private Date createTime;
+    private LocalDateTime createTime;
 
     /**
      * 修改人
@@ -76,12 +78,17 @@ public class KwsDeviceModel implements Serializable {
     /**
      * 修改时间
      */
-    private Date updateTime;
+    private LocalDateTime updateTime;
 
     /**
      * 删除标识
      */
-    private Byte delFlag;
+    private Integer delFlag;
+
+    /**
+     * 删除标识
+     */
+    private String mountainId;
 
     private static final long serialVersionUID = 1L;
 

+ 60 - 0
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/model/param/DeviceModelAdd.java

@@ -0,0 +1,60 @@
+package com.sckw.slope.detection.model.param;
+
+import cn.hutool.core.date.DateTime;
+import lombok.Data;
+
+/**
+ * @author sky
+ * @description 设备model查询
+ * @date 2023-10-31 15:10:14
+ */
+@Data
+public class DeviceModelAdd {
+
+    private Long id;
+
+    /**
+     * 矿山id
+     */
+    private Integer mountainId;
+
+    /**
+     * 型号识别码
+     */
+    private String identifyCode;
+
+    /**
+     * 设备类型
+     */
+    private String deviceType;
+
+    /**
+     * 型号名称
+     */
+    private String name;
+
+    /**
+     * 厂商
+     */
+    private String manufacturer;
+
+    /**
+     * 厂商联系人
+     */
+    private String manufacturerContacts;
+
+    /**
+     * 厂商联系电话
+     */
+    private String manufacturerPhone;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 状态
+     */
+    private Integer status;
+}

+ 21 - 0
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/model/param/DeviceModelQuery.java

@@ -0,0 +1,21 @@
+package com.sckw.slope.detection.model.param;
+
+import lombok.Data;
+
+/**
+ * @author sky
+ * @description 设备model查询
+ * @date 2023-10-31 15:10:14
+ */
+@Data
+public class DeviceModelQuery {
+
+    /**
+     * 型号名称
+     */
+    private String name;
+
+    private int page;
+
+    private int pageSize;
+}

+ 82 - 0
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/model/vo/DeviceModelVo.java

@@ -0,0 +1,82 @@
+package com.sckw.slope.detection.model.vo;
+
+import cn.hutool.core.date.DateTime;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.Date;
+
+/**
+ * @author sky
+ * @description vo
+ * @date 2023-10-30 13:10:38
+ */
+@Data
+public class DeviceModelVo implements Serializable {
+    private Long id;
+
+    /**
+     * 矿山id
+     */
+    private Integer mountainId;
+
+    /**
+     * 型号识别码
+     */
+    private String identifyCode;
+
+    /**
+     * 设备类型
+     */
+    private String deviceType;
+
+    /**
+     * 型号名称
+     */
+    private String name;
+
+    /**
+     * 厂商
+     */
+    private String manufacturer;
+
+    /**
+     * 厂商联系人
+     */
+    private String manufacturerContacts;
+
+    /**
+     * 厂商联系电话
+     */
+    private String manufacturerPhone;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+    /**
+     * 状态
+     */
+    private Integer status;
+
+    /**
+     * 状态文字
+     */
+    private String statusText;
+
+    /**
+     * 创建人
+     */
+    private Long create_by;
+
+    /**
+     * 创建时间
+     */
+    private DateTime create_time;
+
+
+    private static final long serialVersionUID = 1L;
+}

+ 132 - 0
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/service/DeviceModelService.java

@@ -0,0 +1,132 @@
+package com.sckw.slope.detection.service;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
+import com.sckw.core.exception.BusinessException;
+import com.sckw.core.model.constant.NumberConstant;
+import com.sckw.core.model.enums.DeviceEnum;
+import com.sckw.core.model.page.PageRes;
+import com.sckw.core.utils.StringUtils;
+import com.sckw.core.web.response.HttpResult;
+import com.sckw.slope.detection.dao.mysql.KwsDeviceModelMapper;
+import com.sckw.slope.detection.model.dos.mysql.KwsDevice;
+import com.sckw.slope.detection.model.dos.mysql.KwsDeviceModel;
+import com.sckw.slope.detection.model.dos.mysql.KwsProjectArea;
+import com.sckw.slope.detection.model.dos.mysql.KwsProjectDevice;
+import com.sckw.slope.detection.model.dto.HeaderData;
+import com.sckw.slope.detection.model.param.DeviceModelAdd;
+import com.sckw.slope.detection.model.param.DeviceModelQuery;
+import com.sckw.slope.detection.model.vo.DeviceModelVo;
+import com.sckw.slope.detection.model.vo.DeviceVo;
+import com.sckw.slope.detection.model.vo.ProjectVo;
+import jakarta.servlet.http.HttpServletRequest;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.http.HttpResponse;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import java.time.LocalDateTime;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @author sky
+ * @description 设备model service
+ * @date 2023-10-31 10:10:27
+ */
+@Slf4j
+@Service
+public class DeviceModelService {
+
+    @Autowired
+    CommonService commonService;
+
+    @Autowired
+    KwsDeviceModelMapper kwsDeviceModelMapper;
+
+    /**
+     * 项目管理分页查询
+     *
+     * @param deviceModelQuery 请求分页
+     * @param response        http流
+     * @return 返回值
+     */
+    public PageRes select(DeviceModelQuery deviceModelQuery, HttpResponse response) {
+        PageHelper.startPage(deviceModelQuery.getPage(), deviceModelQuery.getPageSize());
+        List<DeviceModelVo> list = kwsDeviceModelMapper.selectListAll(deviceModelQuery);
+        PageInfo<DeviceModelVo> pageInfo = new PageInfo<>(list);
+        if (CollectionUtils.isEmpty(list)) {
+            return PageRes.build(pageInfo, list);
+        }
+        for (DeviceModelVo vo : list) {
+            vo.setStatusText(DeviceEnum.getName(vo.getStatus()));
+        }
+
+        return PageRes.build(pageInfo, list);
+    }
+
+    /**
+     * 设备型号新增
+     *
+     * @param deviceModelAdd 请求参数
+     * @param request       http流
+     * @return 返回值
+     */
+    @Transactional
+    public HttpResult add(DeviceModelAdd deviceModelAdd, HttpServletRequest request) {
+        HeaderData headerData = commonService.getHeaderData(request);
+        KwsDeviceModel deviceModel = new KwsDeviceModel();
+        BeanUtils.copyProperties(deviceModelAdd, deviceModel);
+        LocalDateTime now = LocalDateTime.now();
+        deviceModel.setCreateBy(Long.parseLong(headerData.getCreateBy()));
+        deviceModel.setCreateTime(now);
+        deviceModel.setStatus(DeviceEnum.IDENTIFYING.getCode());
+        deviceModel.setUpdateBy(Long.parseLong(headerData.getUpdateBy()));
+        deviceModel.setUpdateTime(now);
+        deviceModel.setDelFlag(NumberConstant.ZERO);
+        deviceModel.setMountainId(headerData.getCompanyId());
+        kwsDeviceModelMapper.insert(deviceModel);
+        return HttpResult.ok();
+    }
+
+    public HttpResult detail(Long id, HttpServletRequest response) {
+        KwsDeviceModel device = kwsDeviceModelMapper.selectOne(new LambdaQueryWrapper<KwsDeviceModel>()
+                .eq(KwsDeviceModel::getId, id));
+        DeviceModelVo vo = new DeviceModelVo();
+        BeanUtils.copyProperties(device, vo);
+        vo.setStatusText(DeviceEnum.getName(vo.getStatus()));
+
+        return HttpResult.ok(vo);
+    }
+
+
+
+    @Transactional
+    public HttpResult update(DeviceModelAdd deviceAdd, HttpServletRequest response) {
+        KwsDeviceModel device = new KwsDeviceModel();
+        BeanUtils.copyProperties(deviceAdd, device);
+        device.setId(deviceAdd.getId());
+        LocalDateTime now = LocalDateTime.now();
+        device.setUpdateBy(Long.parseLong(commonService.getHeaderData(response).getUpdateBy()));
+        device.setUpdateTime(now);
+        kwsDeviceModelMapper.updateById(device);
+        return HttpResult.ok();
+    }
+
+    @Transactional
+    public HttpResult dels(String ids) {
+        List<Long> list = StringUtils.splitStrToList(ids, Long.class);
+        int update = kwsDeviceModelMapper.update(null, new LambdaUpdateWrapper<KwsDeviceModel>()
+                .in(KwsDeviceModel::getId, list)
+                .set(KwsDeviceModel::getDelFlag, NumberConstant.ONE));
+        if (update < 1) {
+            throw new BusinessException("删除型号异常");
+        }
+        return HttpResult.ok("删除型号成功");
+    }
+}

+ 1 - 1
slope-modules/slope-detection/src/main/java/com/sckw/slope/detection/service/DeviceService.java

@@ -62,7 +62,7 @@ public class DeviceService {
         List<Long> list = StringUtils.splitStrToList(ids, Long.class);
         int update = deviceMapper.update(null, new LambdaUpdateWrapper<KwsDevice>()
                 .in(KwsDevice::getId, list)
-                .set(KwsDevice::getDelFlag, "1"));
+                .set(KwsDevice::getDelFlag, NumberConstant.ONE));
         if (update < 1) {
             throw new BusinessException("删除设备异常");
         }

+ 13 - 4
slope-modules/slope-detection/src/main/resources/mapper/mysql/KwsDeviceModelMapper.xml

@@ -12,7 +12,7 @@
     <result column="manufacturer_contacts" jdbcType="VARCHAR" property="manufacturerContacts" />
     <result column="manufacturer_phone" jdbcType="VARCHAR" property="manufacturerPhone" />
     <result column="remark" jdbcType="VARCHAR" property="remark" />
-      <result column="company_id" jdbcType="VARCHAR" property="companyId" />
+      <result column="mountainId" jdbcType="VARCHAR" property="mountainId" />
     <result column="status" jdbcType="TINYINT" property="status" />
     <result column="create_by" jdbcType="BIGINT" property="createBy" />
     <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
@@ -23,8 +23,17 @@
   <sql id="Base_Column_List">
     <!--@mbg.generated-->
     id, identify_code, device_type, `name`, manufacturer, manufacturer_contacts, manufacturer_phone, 
-    remark, `status`, create_by, create_time, update_by, update_time, del_flag,company_id
+    remark, `status`, create_by, create_time, update_by, update_time, del_flag,mountain_id
   </sql>
+  <select id="selectListAll" resultType="com.sckw.slope.detection.model.vo.DeviceModelVo">
+    select
+        <include refid="Base_Column_List" />
+    from kws_device_model
+    where del_flag = 0
+    <if test="deviceModelQuery.name != null and deviceModelQuery.name != ''">
+      and name like concat('%', #{deviceModelQuery.name}, '%')
+    </if>
+  </select>
   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
     <!--@mbg.generated-->
     select 
@@ -43,12 +52,12 @@
       `name`, manufacturer, manufacturer_contacts, 
       manufacturer_phone, remark, `status`, 
       create_by, create_time, update_by, 
-      update_time, del_flag)
+      update_time, del_flag,mountain_id)
     values (#{id,jdbcType=BIGINT}, #{identifyCode,jdbcType=VARCHAR}, #{deviceType,jdbcType=VARCHAR}, 
       #{name,jdbcType=VARCHAR}, #{manufacturer,jdbcType=VARCHAR}, #{manufacturerContacts,jdbcType=VARCHAR}, 
       #{manufacturerPhone,jdbcType=VARCHAR}, #{remark,jdbcType=VARCHAR}, #{status,jdbcType=TINYINT}, 
       #{createBy,jdbcType=BIGINT}, #{createTime,jdbcType=TIMESTAMP}, #{updateBy,jdbcType=BIGINT}, 
-      #{updateTime,jdbcType=TIMESTAMP}, #{delFlag,jdbcType=TINYINT})
+      #{updateTime,jdbcType=TIMESTAMP}, #{delFlag,jdbcType=TINYINT},#{mountainId,jdbcType=VARCHAR})
   </insert>
   <insert id="insertSelective" parameterType="com.sckw.slope.detection.model.dos.mysql.KwsDeviceModel">
     <!--@mbg.generated-->