| | |
| | | /* |
| | | * Copyright (c) 2018-2028, Chill Zhuang All rights reserved. |
| | | * |
| | | * Redistribution and use in source and binary forms, with or without |
| | | * modification, are permitted provided that the following conditions are met: |
| | | * |
| | | * Redistributions of source code must retain the above copyright notice, |
| | | * this list of conditions and the following disclaimer. |
| | | * Redistributions in binary form must reproduce the above copyright |
| | | * notice, this list of conditions and the following disclaimer in the |
| | | * documentation and/or other materials provided with the distribution. |
| | | * Neither the name of the dreamlu.net developer nor the names of its |
| | | * contributors may be used to endorse or promote products derived from |
| | | * this software without specific prior written permission. |
| | | * Author: Chill 庄骞 (smallchill@163.com) |
| | | */ |
| | | package com.vci.ubcs.code.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.toolkit.SqlHelper; |
| | | import com.vci.ubcs.code.entity.CodeSynonymEntity; |
| | | import com.vci.ubcs.code.mapper.CodeSynonymMapper; |
| | | import com.vci.ubcs.code.service.ICodeSynonymService; |
| | | import com.vci.ubcs.code.vo.CodeSynonymVO; |
| | | import com.vci.ubcs.code.wrapper.CodeSynonymWrapper; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import io.swagger.annotations.ApiParam; |
| | | import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
| | | import lombok.AllArgsConstructor; |
| | | import javax.validation.Valid; |
| | | |
| | | import com.vci.ubcs.code.service.CodeSynonymServiceI; |
| | | import com.vci.starter.web.pagemodel.BaseQueryObject; |
| | | import com.vci.starter.web.pagemodel.BaseResult; |
| | | import com.vci.starter.web.pagemodel.DataGrid; |
| | | import com.vci.starter.web.util.VciBaseUtil; |
| | | import com.vci.ubcs.code.dto.CodeSynonymDTO; |
| | | import com.vci.ubcs.code.vo.pagemodel.CodeSynonymVO; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.mp.support.Query; |
| | | import org.springblade.core.tool.api.R; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.Collection; |
| | | |
| | | import org.springblade.core.boot.ctrl.BladeController; |
| | | |
| | | /** |
| | | * 同义词配置控制器 |
| | | * 近义词维护 控制器 |
| | | * |
| | | * @author weidy |
| | | * @date 2022-02-17 |
| | | * @author yuxc |
| | | * @since 2023-04-04 |
| | | */ |
| | | @RestController |
| | | @RequestMapping("/codeSynonymController") |
| | | public class CodeSynonymController { |
| | | /** |
| | | * 同义词配置 服务 |
| | | */ |
| | | @Autowired |
| | | private CodeSynonymServiceI codeSynonymService; |
| | | @AllArgsConstructor |
| | | @RequestMapping("/codeSynonym") |
| | | @Api(value = "近义词维护", tags = "近义词维护接口") |
| | | public class CodeSynonymController extends BladeController { |
| | | |
| | | /** |
| | | * 同义词配置列表 |
| | | * @param baseQueryObject 基础查询对象,包含查询条件,分页,排序等 |
| | | * @return 同义词配置显示对象列表 |
| | | */ |
| | | @GetMapping("/gridCodeSynonym") |
| | | public DataGrid<CodeSynonymVO> gridCodeSynonym(BaseQueryObject baseQueryObject){ |
| | | if(baseQueryObject == null){ |
| | | baseQueryObject = new BaseQueryObject(); |
| | | } |
| | | return codeSynonymService.gridCodeSynonym(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper()); |
| | | } |
| | | /** |
| | | * 增加 同义词配置 |
| | | * @param codeSynonymDTO 同义词配置数据传输对象 |
| | | * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象 |
| | | */ |
| | | @PostMapping( "/addSave") |
| | | public BaseResult<CodeSynonymVO> addSave(@RequestBody CodeSynonymDTO codeSynonymDTO){ |
| | | CodeSynonymVO codeSynonymVO = codeSynonymService.addSave(codeSynonymDTO); |
| | | return BaseResult.success(codeSynonymVO); |
| | | } |
| | | private final ICodeSynonymService codeSynonymService; |
| | | |
| | | /** |
| | | * 修改 同义词配置 |
| | | * @param codeSynonymDTO 同义词配置数据传输对象 |
| | | * @return 执行结果,success为true表示成功,msg是失败的提示信息,obj是添加完成后的显示对象 |
| | | */ |
| | | @PutMapping("/editSave") |
| | | public BaseResult<CodeSynonymVO> editSave(@RequestBody CodeSynonymDTO codeSynonymDTO){ |
| | | CodeSynonymVO codeSynonymVO = codeSynonymService.editSave(codeSynonymDTO); |
| | | return BaseResult.success(codeSynonymVO); |
| | | } |
| | | CodeSynonymMapper codeSynonymMapper; |
| | | |
| | | /** |
| | | * 近义词维护 详情 |
| | | */ |
| | | @GetMapping("/detail") |
| | | @ApiOperationSupport(order = 1) |
| | | @ApiOperation(value = "详情", notes = "codeSynonym") |
| | | public R<CodeSynonymVO> detail(CodeSynonymEntity codeSynonym) { |
| | | CodeSynonymEntity detail = codeSynonymMapper.selectOne(Condition.getQueryWrapper(codeSynonym)); |
| | | return R.data(CodeSynonymWrapper.build().entityVO(detail)); |
| | | } |
| | | /** |
| | | * 近义词维护 分页 |
| | | */ |
| | | @GetMapping("/list") |
| | | @ApiOperationSupport(order = 2) |
| | | @ApiOperation(value = "分页", notes = "传入codeSynonym") |
| | | public R<IPage<CodeSynonymVO>> list(CodeSynonymEntity codeSynonym, Query query) { |
| | | IPage<CodeSynonymEntity> pages = codeSynonymMapper.selectPage(Condition.getPage(query), Condition.getQueryWrapper(codeSynonym)); |
| | | return R.data(CodeSynonymWrapper.build().pageVO(pages)); |
| | | } |
| | | |
| | | /** |
| | | * 删除同义词配置 |
| | | * @param codeSynonymDTO 同义词配置数据传输对象,oid和ts需要传输 |
| | | * @return 删除结果反馈::success:成功,fail:失败 |
| | | */ |
| | | @DeleteMapping( "/deleteData") |
| | | public BaseResult delCodeSynonym( CodeSynonymDTO codeSynonymDTO) { |
| | | return codeSynonymService.deleteCodeSynonym(codeSynonymDTO); |
| | | } |
| | | /** |
| | | * 近义词维护 自定义分页 |
| | | */ |
| | | @GetMapping("/page") |
| | | @ApiOperationSupport(order = 3) |
| | | @ApiOperation(value = "分页", notes = "传入codeSynonym") |
| | | public R<IPage<CodeSynonymVO>> page(CodeSynonymVO codeSynonym, Query query) { |
| | | IPage<CodeSynonymVO> pages = codeSynonymService.selectPlCodeSynonymPage(Condition.getPage(query), codeSynonym); |
| | | return R.data(pages); |
| | | } |
| | | |
| | | /** |
| | | * 主键获取同义词配置 |
| | | * @param oid 主键 |
| | | * @return 同义词配置显示对象 |
| | | */ |
| | | @GetMapping("/getObjectByOid") |
| | | public BaseResult<CodeSynonymVO> getObjectByOid(String oid){ |
| | | CodeSynonymVO codeSynonymVO = codeSynonymService.getObjectByOid(oid); |
| | | return BaseResult.success(codeSynonymVO); |
| | | } |
| | | /** |
| | | * 近义词维护 新增 |
| | | */ |
| | | @PostMapping("/save") |
| | | @ApiOperationSupport(order = 4) |
| | | @ApiOperation(value = "新增", notes = "传入codeSynonym") |
| | | public R save(@Valid @RequestBody CodeSynonymEntity codeSynonym) { |
| | | return R.status(SqlHelper.retBool(codeSynonymMapper.insert(codeSynonym))); |
| | | } |
| | | |
| | | /** |
| | | * 主键批量获取同义词配置 |
| | | * @param oids 主键,多个以逗号分隔,但是受性能影响,建议一次查询不超过10000个 |
| | | * @return 同义词配置显示对象 |
| | | */ |
| | | @GetMapping("/listDataByOids") |
| | | public BaseResult<CodeSynonymVO> listCodeSynonymByOids(String oids){ |
| | | Collection<CodeSynonymVO> voCollection = codeSynonymService.listCodeSynonymByOids(VciBaseUtil.str2List(oids)); |
| | | BaseResult baseResult = BaseResult.success(); |
| | | baseResult.setData(voCollection); |
| | | return baseResult; |
| | | } |
| | | /** |
| | | * 近义词维护 修改 |
| | | */ |
| | | @PostMapping("/update") |
| | | @ApiOperationSupport(order = 5) |
| | | @ApiOperation(value = "修改", notes = "传入codeSynonym") |
| | | public R update(@Valid @RequestBody CodeSynonymEntity codeSynonym) { |
| | | return R.status(SqlHelper.retBool(codeSynonymMapper.updateById(codeSynonym))); |
| | | } |
| | | |
| | | /** |
| | | * 近义词维护 新增或修改 |
| | | */ |
| | | @PostMapping("/submit") |
| | | @ApiOperationSupport(order = 6) |
| | | @ApiOperation(value = "新增或修改", notes = "传入codeSynonym") |
| | | public R submit(@Valid @RequestBody CodeSynonymEntity codeSynonym) { |
| | | if(codeSynonym.getOid() != null){ |
| | | return R.status(SqlHelper.retBool(codeSynonymMapper.updateById(codeSynonym))); |
| | | } |
| | | return R.status(SqlHelper.retBool(codeSynonymMapper.insert(codeSynonym))); |
| | | // return R.status(plCodeSynonymService.saveOrUpdate(plCodeSynonym)); |
| | | } |
| | | |
| | | /** |
| | | * 近义词维护 删除 |
| | | */ |
| | | @PostMapping("/remove") |
| | | @ApiOperationSupport(order = 7) |
| | | @ApiOperation(value = "逻辑删除", notes = "传入oids") |
| | | public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String oids) { |
| | | return R.status(SqlHelper.retBool(codeSynonymMapper.deleteBatchIds(Func.toLongList(oids)))); |
| | | } |
| | | |
| | | /** |
| | | * 参照同义词配置列表 |
| | | * @param baseQueryObject 基础查询对象,包含查询条件,分页,排序等 |
| | | * @return 同义词配置显示对象列表,生效的内容 |
| | | */ |
| | | @GetMapping("/refDataGrid") |
| | | public DataGrid<CodeSynonymVO> refDataGridCodeSynonym(BaseQueryObject baseQueryObject){ |
| | | if(baseQueryObject == null){ |
| | | baseQueryObject = new BaseQueryObject(); |
| | | } |
| | | return codeSynonymService.refDataGridCodeSynonym(baseQueryObject.getConditionMap(),baseQueryObject.getPageHelper()); |
| | | } |
| | | |
| | | } |