RegionsController.java 5.66 KB
   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
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
 141
 142
 143
 144
 145
 146
 147
 148
 149
 150
 151
 152
 153
 154
 155
 156
 157
 158
 159
 160
 161
 162
 163
 164
 165
 166
package com.lyms.talkonlineweb.controller;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.lyms.talkonlineweb.domain.LymsDict;
import com.lyms.talkonlineweb.domain.LymsHdepart;
import com.lyms.talkonlineweb.domain.LymsUser;
import com.lyms.talkonlineweb.domain.Regions;
import com.lyms.talkonlineweb.result.BaseResponse;
import com.lyms.talkonlineweb.service.LymsDictService;
import com.lyms.talkonlineweb.service.RegionsService;
import com.lyms.talkonlineweb.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
* 获取区域
*/
@RestController
public class RegionsController {

@Autowired
private RegionsService regionsService;

@Autowired
private LymsDictService lymsDictService;

@GetMapping("getRegions")
public BaseResponse getRegions(Regions regions){
BaseResponse baseResponse=new BaseResponse();
List<Regions> regionsList=regionsService.list(Wrappers.query(regions));
baseResponse.setObject(regionsList);
return baseResponse;
}

/**
* 获取字典数据
* @param dict
* @return
*/
@GetMapping("getDict")
public BaseResponse getDict(LymsDict dict){
BaseResponse baseResponse=new BaseResponse();
List<LymsDict> dictList=lymsDictService.list(Wrappers.query(dict));
baseResponse.setObject(dictList);
return baseResponse;
}

/**
* 添加或修改字典数据
* @param dict
* @return
*/
@PostMapping("saveDict")
public BaseResponse saveDict(@RequestBody LymsDict dict){
BaseResponse baseResponse=new BaseResponse();
boolean f=lymsDictService.saveOrUpdate(dict);
baseResponse.setErrorcode(f==true?0:1);
return baseResponse;
}

/**
* 删除字典数据
* @param did
* @return
*/
@GetMapping("delDict")
public BaseResponse saveDict(int did){
BaseResponse baseResponse=new BaseResponse();
boolean f=lymsDictService.removeById(did);
baseResponse.setErrorcode(f==true?0:1);
return baseResponse;
}

/**
* 字典列表展示
* @param dict
* @param current
* @param size
* @return
*/
@GetMapping("sltDict")
public BaseResponse sltDepartLst(LymsDict dict, int current, int size){
BaseResponse baseResponse=new BaseResponse();
Page<LymsDict> page=new Page<>(current,size);
QueryWrapper query=new QueryWrapper();
query.orderByDesc("sort");
if(null!=dict.getVtype()){
query.eq("vtype", dict.getVtype());
}
if(StringUtil.isNotEmpty(dict.getValue())){
query.like("value", dict.getValue());
}
if(null!=dict.getCode()){
query.eq("code", dict.getCode());
}
Page<LymsDict> departPage=lymsDictService.page(page,query);
baseResponse.setObject(departPage);

return baseResponse;
}

/**
* PC-查询同vtype类型,字典编码是否重复
* @param vtype 所属类型
* @param code 编码
* @param value 取值
* @param id 修改时用
* @return true 可以使用,false已经存在
*/
@GetMapping("getDictByParam")
public BaseResponse getDictByParam(Integer vtype, Integer code,String value, @RequestParam(required = false) Integer id){
BaseResponse baseResponse=new BaseResponse();
try {
Map<String, Boolean> map= new HashMap<>();
map.put("code", true);map.put("value", true);
QueryWrapper<LymsDict> queryWrapper=new QueryWrapper<>();
queryWrapper.eq("vtype", vtype);
queryWrapper.eq("code", code).or().eq("value",value );
if(null!=id){//修改的时候判断是否重复
QueryWrapper<LymsDict> queryWrapper2=new QueryWrapper<>();
queryWrapper2.eq("id", id);
LymsDict dict2=lymsDictService.getOne(queryWrapper2);
List<LymsDict> dictlist=lymsDictService.list(queryWrapper);
if(CollectionUtils.isNotEmpty(dictlist)){
if(null!=code && !dict2.getCode().equals(code)){
for (LymsDict dict : dictlist) {
if(dict.getCode().equals(code)){
map.put("code", false);
}
}
}
if(StringUtil.isNotEmpty(value) && !dict2.getValue().equals(value)){
for (LymsDict dict : dictlist) {
if(dict.getValue().equals(value)){
map.put("value", false);
}
}
}
}
baseResponse.setObject(map);
}else {
LymsDict dict=lymsDictService.getOne(queryWrapper);
if(null!=code && dict.getCode().equals(code)){
map.put("code", false);
}
if(StringUtil.isNotEmpty(value) && value.equals(dict.getValue())){
map.put("value", false);
}
baseResponse.setObject(map);
}
baseResponse.setErrormsg("成功");
} catch (Exception e) {
baseResponse.setErrormsg("失败");
e.printStackTrace();
}
return baseResponse;
}

}