道路线索应急巡查系统服务后台
feiyu02
2025-09-30 84569abda51ecf6c5549dec4cadee8d043422379
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
package com.flightfeather.grid.service.impl
 
import com.flightfeather.grid.domain.ds1.entity.GridScheme
import com.flightfeather.grid.domain.ds1.mapper.GridSchemeMapper
import com.flightfeather.grid.service.GridSchemeService
import com.flightfeather.grid.vo.BaseResponse
import org.springframework.stereotype.Service
import tk.mybatis.mapper.entity.Example
import java.util.*
 
@Service
class GridSchemeServiceImpl(val gridSchemeMapper: GridSchemeMapper) : GridSchemeService {
 
    override fun getAllSchemes(): BaseResponse<List<GridScheme?>> {
        val res = gridSchemeMapper.selectByExample(Example(GridScheme::class.java).apply {
            createCriteria().andEqualTo("gsDelete", false)
            orderBy("gsId")
        })
        return BaseResponse(true, data = res)
    }
 
    override fun createScheme(gridScheme: GridScheme): BaseResponse<Boolean> {
        gridSchemeMapper.selectByExample(Example(GridScheme::class.java).apply {
            createCriteria().andEqualTo("gsName", gridScheme.gsName)
        }).takeIf { it.isNotEmpty() }?.run { return BaseResponse(false, "方案名称已存在") }
 
        gridScheme.gsDelete = false
        gridScheme.gsCreateTime = Date()
        val res = gridSchemeMapper.insert(gridScheme)
        return if (res == 1) {
            BaseResponse(true, "方案创建成功")
        } else {
            BaseResponse(false, "数据库插入失败")
        }
    }
 
    override fun updateScheme(gridScheme: GridScheme): BaseResponse<Boolean> {
        val res = gridSchemeMapper.updateByPrimaryKeySelective(gridScheme)
        return if (res == 1) {
            BaseResponse(true, "方案更新成功")
        } else {
            BaseResponse(false, "数据库更新失败")
        }
    }
 
    override fun deleteScheme(id: String): BaseResponse<Boolean> {
        val grid = gridSchemeMapper.selectByPrimaryKey(id) ?: return BaseResponse(false, "方案不存在")
        grid.gsDelete = true
        val res = gridSchemeMapper.updateByPrimaryKeySelective(grid)
        return if (res == 1) {
            BaseResponse(true, "方案删除成功")
        } else {
            BaseResponse(false, "数据库更新失败")
        }
    }
}