소스 검색

大屏管理代码优化

fuyuchuan 1 일 전
부모
커밋
cf85e5df99

+ 13 - 4
service-iot/service-iot-biz/src/main/java/com/usky/iot/controller/web/BaseScreenController.java

@@ -37,7 +37,7 @@ public class BaseScreenController {
      * @return
      */
     @PostMapping("/add")
-    public ApiResult<Void> add(@RequestBody BaseScreen baseScreen){
+    public ApiResult<Void> add(@RequestBody BaseScreen baseScreen) {
         baseScreenService.add(baseScreen);
         return ApiResult.success();
     }
@@ -48,7 +48,7 @@ public class BaseScreenController {
      * @return
      */
     @PutMapping("/edit")
-    public ApiResult<Void> edit(@RequestBody BaseScreen baseScreen){
+    public ApiResult<Void> edit(@RequestBody BaseScreen baseScreen) {
         baseScreenService.update(baseScreen);
         return ApiResult.success();
     }
@@ -62,9 +62,18 @@ public class BaseScreenController {
     @Log(title = "大屏查看列表", businessType = BusinessType.OTHER)
     @GetMapping("/screenList")
     public ApiResult<List<BaseScreen>> screenList(@RequestParam(value = "screenGroup", required = false) Integer screenGroup,
-                                                     @RequestParam(value = "id") Integer id)
-    {
+                                                  @RequestParam(value = "id", required = false) Integer id) {
         return ApiResult.success(baseScreenService.screenList(screenGroup, id));
     }
+
+    /**
+     * 删除
+     * @param id
+     * @return
+     */
+    @DeleteMapping("/remove")
+    public ApiResult<Void> remove(@RequestParam("id") Integer id) {
+        return baseScreenService.removeById(id) ? ApiResult.success() : ApiResult.error("删除失败!");
+    }
 }
 

+ 5 - 0
service-iot/service-iot-biz/src/main/java/com/usky/iot/domain/BaseScreen.java

@@ -62,6 +62,11 @@ public class BaseScreen implements Serializable {
      */
     private Integer orderNum;
 
+    /**
+     * 缩略图URL
+     */
+    private String thumbnailUrl;
+
     /**
      * 备注
      */

+ 31 - 4
service-iot/service-iot-biz/src/main/java/com/usky/iot/service/impl/BaseScreenServiceImpl.java

@@ -3,6 +3,7 @@ package com.usky.iot.service.impl;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.usky.common.core.bean.CommonPage;
+import com.usky.common.core.exception.BusinessException;
 import com.usky.common.security.utils.SecurityUtils;
 import com.usky.iot.domain.BaseFacilityDevice;
 import com.usky.iot.domain.BaseGgpFacility;
@@ -11,6 +12,7 @@ import com.usky.iot.domain.DmpDeviceInfo;
 import com.usky.iot.mapper.BaseScreenMapper;
 import com.usky.iot.service.BaseScreenService;
 import com.usky.common.mybatis.core.AbstractCrudService;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 
 import java.text.SimpleDateFormat;
@@ -37,6 +39,7 @@ public class BaseScreenServiceImpl extends AbstractCrudService<BaseScreenMapper,
         baseScreen.setCreatedBy(SecurityUtils.getUsername());
         baseScreen.setCreatedTime(LocalDateTime.now());
         baseScreen.setTenantId(SecurityUtils.getTenantId());
+        this.checkRequiredData(baseScreen);
         return this.save(baseScreen);
     }
 
@@ -44,16 +47,40 @@ public class BaseScreenServiceImpl extends AbstractCrudService<BaseScreenMapper,
     public void update(BaseScreen baseScreen) {
         baseScreen.setUpdatedTime(LocalDateTime.now());
         baseScreen.setUpdatedBy(SecurityUtils.getUsername());
+        this.checkRequiredData(baseScreen);
         this.updateById(baseScreen);
     }
 
     @Override
-    public List<BaseScreen> screenList(Integer screenGroup,Integer id) {
+    public List<BaseScreen> screenList(Integer screenGroup, Integer id) {
         LambdaQueryWrapper<BaseScreen> lambdaQuery = Wrappers.lambdaQuery();
-        lambdaQuery.eq(id != null,BaseScreen::getId,id)
-        .eq(screenGroup != null,BaseScreen::getScreenGroup,screenGroup)
-        .eq(BaseScreen::getTenantId,SecurityUtils.getTenantId());
+        lambdaQuery.eq(id != null, BaseScreen::getId, id)
+                .eq(screenGroup != null, BaseScreen::getScreenGroup, screenGroup)
+                .eq(BaseScreen::getTenantId, SecurityUtils.getTenantId());
         List<BaseScreen> list = this.list(lambdaQuery);
         return list;
     }
+
+    /**
+     * 必填数据校验
+     */
+    private void checkRequiredData(BaseScreen baseScreen) {
+
+        if (StringUtils.isBlank(baseScreen.getScreenTitle())) {
+            throw new BusinessException("大屏标题不能为空!");
+        }
+
+        if (StringUtils.isBlank(baseScreen.getScreenCode())) {
+            throw new BusinessException("大屏编号不能为空!");
+        }
+
+        if (baseScreen.getScreenGroup() == null) {
+            throw new BusinessException("分组不能为空!");
+        }
+
+        if (baseScreen.getIsDefault() == null) {
+            throw new BusinessException("是否默认不能为空!");
+        }
+    }
+
 }

+ 15 - 14
service-iot/service-iot-biz/src/main/resources/mapper/iot/BaseScreenMapper.xml

@@ -4,20 +4,21 @@
 
     <!-- 通用查询映射结果 -->
     <resultMap id="BaseResultMap" type="com.usky.iot.domain.BaseScreen">
-        <id column="id" property="id" />
-        <result column="screen_code" property="screenCode" />
-        <result column="screen_title" property="screenTitle" />
-        <result column="screen_subtitle" property="screenSubtitle" />
-        <result column="screen_group" property="screenGroup" />
-        <result column="is_default" property="isDefault" />
-        <result column="screen_address" property="screenAddress" />
-        <result column="order_num" property="orderNum" />
-        <result column="remark" property="remark" />
-        <result column="created_by" property="createdBy" />
-        <result column="created_time" property="createdTime" />
-        <result column="updated_by" property="updatedBy" />
-        <result column="updated_time" property="updatedTime" />
-        <result column="tenant_id" property="tenantId" />
+        <id column="id" property="id"/>
+        <result column="screen_code" property="screenCode"/>
+        <result column="screen_title" property="screenTitle"/>
+        <result column="screen_subtitle" property="screenSubtitle"/>
+        <result column="screen_group" property="screenGroup"/>
+        <result column="is_default" property="isDefault"/>
+        <result column="screen_address" property="screenAddress"/>
+        <result column="order_num" property="orderNum"/>
+        <result column="thumbnail_url" property="thumbnailUrl"/>
+        <result column="remark" property="remark"/>
+        <result column="created_by" property="createdBy"/>
+        <result column="created_time" property="createdTime"/>
+        <result column="updated_by" property="updatedBy"/>
+        <result column="updated_time" property="updatedTime"/>
+        <result column="tenant_id" property="tenantId"/>
     </resultMap>
 
 </mapper>