package com.vci.ubcs.code.controller;
|
|
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONObject;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
import com.vci.ubcs.code.dto.CodeFixedValueDTO;
|
import com.vci.ubcs.code.entity.CodeFixedValue;
|
import com.vci.ubcs.code.service.ICodeFixedValueService;
|
import com.vci.ubcs.code.vo.pagemodel.CodeFixedValueVO;
|
import com.vci.ubcs.starter.web.util.VciBaseUtil;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springblade.core.mp.support.Condition;
|
import org.springblade.core.mp.support.Query;
|
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 ludc
|
* @date 2022-01-24
|
*/
|
@RestController
|
@RequestMapping("/codeFixedValueController")
|
@Api(value = "固定码段的码值控制器", tags = "固定码段的码值控制器")
|
public class CodeFixedValueController {
|
|
/**
|
* 固定码段的码值 服务
|
*/
|
@Autowired
|
private ICodeFixedValueService codeFixedValueService;
|
|
/**
|
* 固定码段的码值列表
|
* @param codeFixedValueVO query 基础查询对象,包含查询条件,分页,排序等
|
* @return 固定码段的码值显示对象列表
|
*/
|
@GetMapping("/gridCodeFixedValue")
|
@ApiOperationSupport(order = 1)
|
@ApiOperation(value = "固定码段的码值列表", notes = "CodeFixedValueVO")
|
public R<IPage<CodeFixedValueVO>> gridCodeFixedValue(CodeFixedValueVO codeFixedValueVO, Query query){
|
return R.data(codeFixedValueService.gridCodeFixedValue(codeFixedValueVO, Condition.getPage(query.setAscs("orderNum"))));
|
}
|
|
/**
|
* 增加 固定码段的码值
|
* @param codeFixedValueDTO 固定码段的码值数据传输对象
|
* @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象
|
*/
|
@PostMapping( "/addSave")
|
public R addSave(@RequestBody CodeFixedValueDTO codeFixedValueDTO){
|
boolean resBoolean = codeFixedValueService.addSave(codeFixedValueDTO);
|
return R.status(resBoolean);
|
}
|
|
/**
|
* 修改 固定码段的码值
|
* @param codeFixedValueDTO 固定码段的码值数据传输对象
|
* @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象
|
*/
|
@PutMapping("/editSave")
|
public R editSave(@RequestBody CodeFixedValueDTO codeFixedValueDTO){
|
boolean resBoolean = codeFixedValueService.editSave(codeFixedValueDTO);
|
return R.status(resBoolean);
|
}
|
|
/**
|
* 删除固定码段的码值
|
* @param codeFixedValueDTO 固定码段的码值数据传输对象,oid和ts需要传输
|
* @return 删除结果反馈::success:成功,fail:失败
|
*/
|
@DeleteMapping( "/deleteData")
|
public R delCodeFixedValue(@Valid @RequestBody CodeFixedValueDTO codeFixedValueDTO) {
|
return codeFixedValueService.deleteCodeFixedValue(codeFixedValueDTO);
|
}
|
|
/**
|
* 主键获取固定码段的码值
|
* @param oid 主键
|
* @return 固定码段的码值显示对象
|
*/
|
@GetMapping("/getObjectByOid")
|
public R<CodeFixedValueVO> getObjectByOid(String oid){
|
CodeFixedValueVO codeFixedValueVO = codeFixedValueService.getObjectByOid(oid);
|
return R.data(codeFixedValueVO);
|
}
|
|
/**
|
* 主键批量获取固定码段的码值
|
* @param oids 主键,多个以逗号分隔,但是受性能影响,建议一次查询不超过10000个
|
* @return 固定码段的码值显示对象
|
*/
|
@GetMapping("/listDataByOids")
|
public R<Collection<CodeFixedValueVO>> listCodeFixedValueByOids(String oids){
|
Collection<CodeFixedValueVO> voCollection = codeFixedValueService.listCodeFixedValueByOids(VciBaseUtil.str2List(oids));
|
return R.data(voCollection);
|
}
|
|
/**
|
* 参照固定码段的码值列表
|
* @param codeFixedValueVO query 基础查询对象,包含查询条件,分页,排序等
|
* @return 固定码段的码值显示对象列表,生效的内容
|
*/
|
@GetMapping("/refDataGrid")
|
public R<IPage<CodeFixedValueVO>> refDataGridCodeFixedValue(CodeFixedValueVO codeFixedValueVO, Query query){
|
return R.data(codeFixedValueService.refDataGridCodeFixedValue(codeFixedValueVO,Condition.getPage(query.setAscs("ordernum"))));
|
}
|
|
/**
|
* 批量添加固定码段的码值,如果保存的集合中不存在已在数据库中的码值则删除。主要是保存码值的序号
|
* @param param 参数,包括dtoList 页面传输对象集合 codefixedsecoid 固定码段主键
|
* @return 执行结果
|
*/
|
@PostMapping("/saveOrder")
|
public R batchSave4Order(@RequestBody Map<String,Object> param){
|
JSONArray json = JSONArray.parseArray(String.valueOf(param.get("dtoList")));
|
List<CodeFixedValueDTO> dtoList = new ArrayList<>();
|
for (int i = 0; i < json.size(); i++) {
|
CodeFixedValueDTO codeFixedValueDTO = JSONObject.toJavaObject(JSONObject.parseObject(JSONObject.toJSONString(json.get(i))), CodeFixedValueDTO.class);
|
dtoList.add(codeFixedValueDTO);
|
}
|
String codefixedsecoid = (String) param.get("codeFixedSecOid");
|
VciBaseUtil.alertNotNull(codefixedsecoid,"固定码段的主键");
|
if (CollectionUtils.isEmpty(dtoList)){
|
return R.status(codeFixedValueService.batchDeleteBySecOid(codefixedsecoid));
|
}
|
return codeFixedValueService.batchSave4Order(dtoList,codefixedsecoid);
|
}
|
|
}
|