package com.vci.web.controller;
|
|
import com.vci.starter.web.annotation.controller.VciUnCheckRight;
|
import com.vci.starter.web.annotation.log.VciBusinessLog;
|
import com.vci.starter.web.pagemodel.*;
|
import com.vci.web.dto.*;
|
import com.vci.web.pageModel.ReferConfigVO;
|
import com.vci.web.pageModel.UIFormDataVO;
|
import com.vci.web.query.UIDataGridQuery;
|
import com.vci.web.query.UIFormQuery;
|
import com.vci.web.query.UITreeQuery;
|
import com.vci.web.query.UITreeRootQuery;
|
import com.vci.web.service.UIDataServiceI;
|
import org.omg.CORBA.PUBLIC_MEMBER;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.util.CollectionUtils;
|
import org.springframework.web.bind.annotation.*;
|
import plm.bs.bom.clientobject.ClientBusinessObject;
|
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* ui定义的数据查询
|
* @author weidy
|
* @date 2021/3/3
|
*/
|
@RestController
|
@RequestMapping("/uiDataController")
|
@VciBusinessLog(modelName="UI上下文")
|
public class WebUIDataController {
|
|
/**
|
* 界面的数据服务
|
*/
|
@Autowired
|
private UIDataServiceI uiDataService;
|
|
/**
|
* 列表查询
|
* @param dataGridQuery 查询对象
|
* @return 列表数据
|
*/
|
@PostMapping("/dataGridQuery")
|
@VciUnCheckRight
|
@VciBusinessLog(operateName = "列表数据的查询",description = "${param.btmname}里的${param.tableDefineId}")
|
public DataGrid dataGrid(UIDataGridQuery dataGridQuery){
|
return uiDataService.getDataForGrid(dataGridQuery);
|
}
|
|
/**
|
* 表单的数据查询
|
* @param formQuery 表单查询对象
|
* @return 表单的数据
|
*/
|
@PostMapping("/dataFormQuery")
|
@VciBusinessLog(operateName = "表单的查询",description = "${param.btmname}里的${param.formDefineId}")
|
public BaseResult<UIFormDataVO> getDataForForm(UIFormQuery formQuery){
|
return BaseResult.success(uiDataService.getDataForForm(formQuery));
|
}
|
|
/**
|
* 树的数据查询
|
* @param treeQuery 树查询对象
|
* @return 树的数据
|
*/
|
@PostMapping("/getDataForTree")
|
@VciUnCheckRight
|
@VciBusinessLog(operateName = "树的查询",description = "${param.btmname}")
|
public List<Tree> getDataForTree(UITreeQuery treeQuery){
|
return uiDataService.getDataForTree(treeQuery);
|
}
|
|
/**
|
* 添加数据。前端使用JSON提交
|
* @param formDataDTO 表单
|
* @return 执行的结果
|
*/
|
@PostMapping("/addSave")
|
@VciBusinessLog(operateName = "添加数据",description = "${param.btmname}")
|
public BaseResult<Map<String,Object>> addSave(@RequestBody FormDataDTO formDataDTO){
|
return uiDataService.addSave(formDataDTO);
|
}
|
|
/**
|
* 添加链接类型数据。前端使用JSON提交
|
* @param formLinkDataDTO 表单数据
|
* @return 执行的结果
|
*/
|
@PostMapping("/linkAddSave")
|
@VciBusinessLog(operateName = "添加链接数据",description = "${param.linkType}")
|
public BaseResult<String> linkAddSave(@RequestBody FormLinkDataDTO formLinkDataDTO){
|
return uiDataService.linkAddSave(formLinkDataDTO);
|
}
|
|
/**
|
* 修改数据,前端使用JSON提交
|
* @param formDataDTO 表单
|
* @return 执行的结果
|
*/
|
@PutMapping("/editSave")
|
@VciBusinessLog(operateName = "修改数据",description = "${param.btmname}里的${param.oid}")
|
public BaseResult<Map<String,Object>> editSave(@RequestBody FormDataDTO formDataDTO){
|
return uiDataService.editSave(formDataDTO);
|
}
|
|
/**
|
* 修改链接类型的数据,前端使用JSON提交
|
* @param formLinkDataDTO 表单的数据对象
|
* @return 执行结果
|
*/
|
@VciBusinessLog(operateName = "修改链接类型数据",description = "${param.linkType}里的${param.oid}")
|
@PutMapping("/linkEditSave")
|
public BaseResult linkEditSave(@RequestBody FormLinkDataDTO formLinkDataDTO){
|
return uiDataService.linkEditSave(formLinkDataDTO);
|
}
|
|
/**
|
* 数据升版,前端使用JSON提交
|
* @param formDataDTO 表单数据
|
* @return 执行的结果
|
*/
|
@PutMapping("/upRevision")
|
@VciBusinessLog(operateName = "数据升版",description = "${param.btmname}里的${param.copyFromVersion}")
|
public BaseResult<Map<String,Object>> upRevision(@RequestBody FormDataDTO formDataDTO){
|
return uiDataService.upRevision(formDataDTO);
|
}
|
|
/**
|
* 删除数据
|
* @param deleteDataDTO 删除的数据,需要有oid和ts
|
* @return 执行的结果
|
*/
|
@DeleteMapping("/deleteData")
|
@VciBusinessLog(operateName = "删除数据",description = "${param.dataList.0.btmname}的${param.dataList.${join}.oid}")
|
public BaseResult deleteData(@RequestBody DeleteDataDTO deleteDataDTO){
|
return uiDataService.batchDelete(deleteDataDTO);
|
}
|
|
/**
|
* 删除链接类型数据
|
* @param deleteLinkDataDTO 删除的数据
|
* @return 执行的结果
|
*/
|
@DeleteMapping("/linkDeleteData")
|
@VciBusinessLog(operateName = "删除数据",description = "${param.dataList.0.linkType}的${param.dataList.${join}.oid}")
|
public BaseResult linkDeleteData(@RequestBody DeleteLinkDataDTO deleteLinkDataDTO){
|
return uiDataService.batchLinkDelete(deleteLinkDataDTO);
|
}
|
|
/**
|
* 默认的参照列表
|
* @param referConfigVO 参照的配置信息
|
* @return 执行的结果
|
*/
|
@GetMapping("/defaultReferDataGrid")
|
@VciBusinessLog(operateName = "获取参照的列表数据",description = "")
|
public DataGrid defaultReferDataGrid(ReferConfigVO referConfigVO,PageHelper pageHelper){
|
return uiDataService.referDataGrid(referConfigVO,pageHelper);
|
}
|
|
/**
|
* 默认的树形参照列表
|
* @param referConfigVO 参照的配置信息
|
* @return 执行的结果
|
*/
|
@VciBusinessLog(operateName = "获取参照的树形数据",description = "")
|
@GetMapping("/defaultReferTree")
|
public List<Tree> defaultReferTree(ReferConfigVO referConfigVO){
|
return uiDataService.referTree(referConfigVO);
|
}
|
|
/**
|
* 表单的数据查询
|
* @param btmname 业务类型的信息
|
* @param oid 业务数据的主键
|
* @return 业务数据的属性信息
|
*/
|
@GetMapping("/getDataAttr")
|
@VciBusinessLog(operateName = "获取当前业务数据的全部属性",description = "")
|
public BaseResult getDataAttr(String btmname , String oid){
|
List<Map<String,String>> dataMapList = uiDataService.getDataAttr(btmname, oid);
|
if (CollectionUtils.isEmpty(dataMapList)){
|
return BaseResult.fail("查询数据为空");
|
}
|
BaseResult re = BaseResult.success();
|
re.setData(dataMapList);
|
return re;
|
}
|
}
|