package com.vci.ubcs.code.controller;
|
|
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONObject;
|
import com.vci.ubcs.code.dto.CodeClassifyValueDTO;
|
import com.vci.ubcs.code.service.ICodeClassifyValueService;
|
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyValueVO;
|
import com.vci.ubcs.starter.revision.model.TreeQueryObject;
|
|
import com.vci.ubcs.starter.web.pagemodel.Tree;
|
import com.vci.ubcs.starter.web.util.VciBaseUtil;
|
import org.springblade.core.tool.api.R;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.util.CollectionUtils;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.validation.Valid;
|
import java.util.ArrayList;
|
import java.util.Collection;
|
import java.util.List;
|
import java.util.Map;
|
|
|
/**
|
* 分类码段的码值控制器
|
*
|
* @author weidy
|
* @date 2022-01-24
|
*/
|
@RestController
|
@RequestMapping("/codeClassifyValueController")
|
public class CodeClassifyValueController {
|
/**
|
* 分类码段的码值 服务
|
*/
|
@Autowired
|
private ICodeClassifyValueService codeClassifyValueService;
|
|
/**
|
* 分类码段的码值树
|
* @param treeQueryObject 树形查询对象
|
* @return 分类码段的码值显示树
|
*/
|
@GetMapping("/treeCodeClassifyValue")
|
public List<Tree> treeCodeClassifyValue(TreeQueryObject treeQueryObject) {
|
return codeClassifyValueService.treeCodeClassifyValue(treeQueryObject);
|
}
|
|
/**
|
* 增加 分类码段的码值
|
* @param codeClassifyValueDTO 分类码段的码值数据传输对象
|
* @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象
|
*/
|
@PostMapping( "/addSave")
|
public R<CodeClassifyValueVO> addSave(@RequestBody CodeClassifyValueDTO codeClassifyValueDTO){
|
return R.status(codeClassifyValueService.addSave(codeClassifyValueDTO));
|
}
|
|
/**
|
* 修改 分类码段的码值
|
* @param codeClassifyValueDTO 分类码段的码值数据传输对象
|
* @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象
|
*/
|
@PutMapping("/editSave")
|
public R<CodeClassifyValueVO> editSave(@RequestBody CodeClassifyValueDTO codeClassifyValueDTO){
|
return R.status(codeClassifyValueService.editSave(codeClassifyValueDTO));
|
}
|
|
/**
|
* 检查 分类码段的码值是否删除
|
* @param codeClassifyValueDTO 分类码段的码值数据传输对象,必须要有oid和ts属性
|
* @return 执行结果 success为true为可以删除,false表示有数据引用,obj为true表示有下级
|
*/
|
@PostMapping( "/checkIsCanDelete")
|
public R checkIsCanDelete( CodeClassifyValueDTO codeClassifyValueDTO) {
|
return codeClassifyValueService.checkIsCanDelete(codeClassifyValueDTO);
|
}
|
|
/**
|
* 删除分类码段的码值
|
* @param codeClassifyValueDTO 分类码段的码值数据传输对象,oid和ts需要传输
|
* @return 删除结果反馈::success:成功,fail:失败
|
*/
|
@DeleteMapping( "/deleteData")
|
public R delCodeClassifyValue(@Valid @RequestBody CodeClassifyValueDTO codeClassifyValueDTO) {
|
return codeClassifyValueService.deleteCodeClassifyValue(codeClassifyValueDTO);
|
}
|
|
/**
|
* 主键获取分类码段的码值
|
* @param oid 主键
|
* @return 分类码段的码值显示对象
|
*/
|
@GetMapping("/getObjectByOid")
|
public R<CodeClassifyValueVO> getObjectByOid(String oid){
|
CodeClassifyValueVO codeClassifyValueVO = codeClassifyValueService.getObjectByOid(oid);
|
return R.data(codeClassifyValueVO);
|
}
|
|
/**
|
* 主键批量获取分类码段的码值
|
* @param oids 主键,多个以逗号分隔,但是受性能影响,建议一次查询不超过10000个
|
* @return 分类码段的码值显示对象
|
*/
|
@GetMapping("/listDataByOids")
|
public R<Collection<CodeClassifyValueVO>> listCodeClassifyValueByOids(String oids){
|
Collection<CodeClassifyValueVO> voCollection = codeClassifyValueService.listCodeClassifyValueByOids(VciBaseUtil.str2List(oids));
|
return R.data(voCollection);
|
}
|
|
/**
|
* 参照树 分类码段的码值
|
* @param treeQueryObject 树形查询对象
|
* @return 分类码段的码值显示树
|
*/
|
@GetMapping("/referTree")
|
public List<Tree> referTree(TreeQueryObject treeQueryObject) {
|
return codeClassifyValueService.referTree(treeQueryObject);
|
}
|
|
/**
|
* 保存页面上的分类码段码值,主要是保存序号用于排序。如果数据库中存在页面传输对象集合中不存在的值,则删除。
|
* @param param 参数,包括dtoList 页面传输对象集合 和codeclassifysecoid 分类码段主键
|
* @return 执行结果
|
*/
|
@PostMapping("/saveOrder")
|
public R saveOrder(@RequestBody Map<String,Object> param){
|
JSONArray json = JSONArray.parseArray(String.valueOf(param.get("dtoList")));
|
List<CodeClassifyValueDTO> dtoList = new ArrayList<>();
|
for (int i = 0; i < json.size(); i++) {
|
CodeClassifyValueDTO codeFixedValueDTO = JSONObject.toJavaObject(JSONObject.parseObject(JSONObject.toJSONString(json.get(i))), CodeClassifyValueDTO.class);
|
dtoList.add(codeFixedValueDTO);
|
}
|
String codeclassifysecoid = (String) param.get("codeclassifysecoid");
|
VciBaseUtil.alertNotNull(dtoList,"码值集合");
|
if (CollectionUtils.isEmpty(dtoList)){
|
return R.success("");
|
}
|
return codeClassifyValueService.batchSave4Order(dtoList,codeclassifysecoid);
|
}
|
|
}
|