From c9636fac907618dd11c35ee26842dec13fb6811d Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Mon, 25 Mar 2024 10:57:41 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E8=A7=A3=E5=86=B3=E4=B8=80=E4=BB=B6?= =?UTF-8?q?=E6=9F=A5=E9=87=8D=20=E5=88=9B=E5=BB=BA=E5=AE=A1=E6=A0=B8?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=92=8C=E6=AF=94=E5=AF=B9=E7=9B=B8=E4=BC=BC?= =?UTF-8?q?=E5=BA=A6=E7=BB=93=E6=9E=9C=E6=9C=89=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/OcrTaskPackageController.java | 21 -- .../controller/OcrUsersearchController.java | 304 ++++++++++++++++++ .../impl/OcrCheckDuplicateServiceImpl.java | 8 +- .../impl/OcrTaskchildPictureServiceImpl.java | 26 +- 4 files changed, 321 insertions(+), 38 deletions(-) create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrUsersearchController.java diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskPackageController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskPackageController.java index f813d6f..1d671a2 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskPackageController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrTaskPackageController.java @@ -1,42 +1,21 @@ package cn.jyjz.xiaoyao.ocr.controller; -import cn.jyjz.xiaoyao.abase.service.FtperrorService; -import cn.jyjz.xiaoyao.admin.service.UserService; -import cn.jyjz.xiaoyao.common.base.config.XiaoyaoConfig; import cn.jyjz.xiaoyao.common.base.controller.BaseController; import cn.jyjz.xiaoyao.common.base.service.UserTokenService; import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil; import cn.jyjz.xiaoyao.common.base.vo.ResultVo; import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; import cn.jyjz.xiaoyao.common.base.vo.UserToken; -import cn.jyjz.xiaoyao.ocr.dataobject.OcrCheckDuplicate; -import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskPackage; import cn.jyjz.xiaoyao.ocr.dto.OcrTaskPackageDto; -import cn.jyjz.xiaoyao.ocr.service.IOcrCheckDuplicateResultService; -import cn.jyjz.xiaoyao.ocr.service.IOcrCheckDuplicateService; import cn.jyjz.xiaoyao.ocr.service.IOcrTaskPackageService; -import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; -import cn.jyjz.xiaoyao.ocr.util.SearchConfigEnum; -import cn.jyjz.xiaoyao.ocr.util.SearchParaFormatting; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import io.swagger.annotations.ApiImplicitParam; -import io.swagger.annotations.ApiImplicitParams; -import io.swagger.annotations.ApiOperation; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.*; - import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; /** *

diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrUsersearchController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrUsersearchController.java new file mode 100644 index 0000000..599a5a2 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrUsersearchController.java @@ -0,0 +1,304 @@ +package cn.jyjz.xiaoyao.ocr.controller; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil; +import cn.jyjz.xiaoyao.common.base.vo.UserToken; +import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrConfiguration; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrUsersearch; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrUsersearchchild; +import cn.jyjz.xiaoyao.ocr.service.OcrUsersearchService; +import cn.jyjz.xiaoyao.ocr.service.OcrUsersearchchildService; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.annotations.*; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; + +import cn.jyjz.xiaoyao.admin.service.UserService; +import cn.jyjz.xiaoyao.common.base.service.UserTokenService; +import cn.jyjz.xiaoyao.common.base.controller.BaseController; +import cn.jyjz.xiaoyao.common.base.param.ParamterPage; +import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery; +import cn.jyjz.xiaoyao.common.base.vo.ResultVo; +import cn.jyjz.xiaoyao.common.base.vo.ResultVoUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +@Api(tags="ocr-过滤条件管理") +@RestController +@RequestMapping("/ocr/ocrUsersearch") +public class OcrUsersearchController extends BaseController{ + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + @Resource + private OcrUsersearchService ocrUsersearchService; + @Resource + private OcrUsersearchchildService ocrUsersearchchildService; + @Resource + private UserTokenService userTokenService; + @Resource + private UserService userService; + + /** + * 分页列表查询 + * + * @param pageNo + * @param pageSize + * @param request + * @return + */ + @ApiOperation(value="过滤条件列表", notes="过滤条件列表") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true) + }) + @GetMapping(value = "/list") + public ResultVo> queryPageList(@RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + @RequestParam(name="type") @ApiParam(value = "类型(首页为0,终审为1)", required = true) Integer type, + HttpServletRequest request) { + //获取当前登录人 + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + + ParamterPage paramterPage = new ParamterPage(); + paramterPage.setPagesize(pageSize); + paramterPage.setStart(pageNo); + + + //租户主键,由前端页面传送 + String tenantId = request.getHeader("X-Tenant-Id"); + + if(StringUtils.isBlank(tenantId)){ + return ResultVoUtil.error("租户主键不能为空"); + } + OcrUsersearch ocrUsersearch = new OcrUsersearch(); + SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); + + QueryWrapper queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,ocrUsersearch); + + queryWrapper.eq("USERID",userToken.getUserid()); + queryWrapper.eq("TENANTID",tenantId); + queryWrapper.eq("TYPE",type); + queryWrapper.orderByDesc(Arrays.asList("IZTOP","REORDER")); + + IPage pageList = ocrUsersearchService.selectSearchListPage(paramterPage, queryWrapper); + + + for(OcrUsersearch ocrUsersearch1:pageList.getRecords()){ + List ocrUsersearchchildList = ocrUsersearchchildService.selectByMainId(ocrUsersearch1.getId().toString()); + ocrUsersearch1.setOcrUsersearchchildList(ocrUsersearchchildList); + } + + return ResultVoUtil.success(pageList); + } + + /** + * 添加 + * + * @param ocrUsersearch + * @return + */ + @ApiOperation(value="添加过滤条件", notes="添加过滤条件") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true) + }) + @PostMapping(value = "/add") + public ResultVo add(@RequestBody OcrUsersearch ocrUsersearch, HttpServletRequest req) { + + //租户主键,由前端页面传送 + String tenantId = req.getHeader("X-Tenant-Id"); + + if(StringUtils.isBlank(tenantId)){ + return ResultVoUtil.error("租户主键不能为空"); + } + + //获取当前登录人 + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req)); + + ocrUsersearch.setUserid(Long.parseLong(userToken.getUserid())); + ocrUsersearch.setCreatetime(System.currentTimeMillis()); + ocrUsersearch.setCreateby(userToken.getLoginname()); + ocrUsersearch.setTenantid(Long.parseLong(tenantId)); + ocrUsersearch.setReorder(this.ocrUsersearchService.getReorder(ocrUsersearch.getUserid(),ocrUsersearch.getType())); + ocrUsersearch.setType(ocrUsersearch.getType()); + if(null != ocrUsersearch.getId()){ + this.ocrUsersearchService.removeByIds(ocrUsersearch.getId().toString()); + } + + this.ocrUsersearchService.save(ocrUsersearch); + + if(null != ocrUsersearch.getOcrUsersearchchildList()){ + for(OcrUsersearchchild ocrUsersearchchild:ocrUsersearch.getOcrUsersearchchildList()){ + ocrUsersearchchild.setUsersearchid(ocrUsersearch.getId()); + } + this.ocrUsersearchchildService.saveBatch(ocrUsersearch.getOcrUsersearchchildList()); + } + return ResultVoUtil.success("添加成功!"); + } + /** + * 修改 + * + * @param ocrUsersearch + * @return + */ + @ApiOperation(value="修改过滤条件", notes="修改过滤条件") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true) + }) + @PostMapping(value = "/edit") + public ResultVo edit(@RequestBody OcrUsersearch ocrUsersearch, HttpServletRequest req) { + + //租户主键,由前端页面传送 + String tenantId = req.getHeader("X-Tenant-Id"); + + if(StringUtils.isBlank(tenantId)){ + return ResultVoUtil.error("租户主键不能为空"); + } + OcrUsersearch old = this.ocrUsersearchService.getById(ocrUsersearch.getId()); + if(null == old){ + return ResultVoUtil.error("数据错误。"); + } + + //获取当前登录人 + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(req)); + + ocrUsersearch.setUserid(old.getUserid()); + ocrUsersearch.setCreatetime(old.getCreatetime()); + ocrUsersearch.setCreateby(old.getCreateby()); + ocrUsersearch.setTenantid(old.getTenantid()); + ocrUsersearch.setReorder(old.getReorder()); + ocrUsersearch.setIztop(old.getIztop()); + ocrUsersearch.setUpdateby(userToken.getLoginname()); + ocrUsersearch.setUpdatetime(System.currentTimeMillis()); + + + if(null != ocrUsersearch.getId()){ + this.ocrUsersearchService.removeChildByIds(ocrUsersearch.getId().toString()); + } + + this.ocrUsersearchService.updateById(ocrUsersearch); + + if(null != ocrUsersearch.getOcrUsersearchchildList()){ + for(OcrUsersearchchild ocrUsersearchchild:ocrUsersearch.getOcrUsersearchchildList()){ + ocrUsersearchchild.setUsersearchid(ocrUsersearch.getId()); + } + this.ocrUsersearchchildService.saveBatch(ocrUsersearch.getOcrUsersearchchildList()); + } + return ResultVoUtil.success("添加成功!"); + } + /** + * 调整顺序 + * + * @return + */ + @ApiOperation(value="调整顺序", notes="调整顺序") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true), + @ApiImplicitParam(paramType = "path",name = "searchid", value = "个人过滤主键", required = true), + @ApiImplicitParam(paramType = "path",name = "reorder", value = "排序数值,数值越大越靠前", required = true) + }) + @GetMapping(value = "/reorder") + public ResultVo reorder( HttpServletRequest req , + @RequestParam(name="searchid", required = true) String searchid, + @RequestParam(name="reorder", defaultValue="1") Integer reorder) { + + OcrUsersearch old = this.ocrUsersearchService.getById(searchid); + if(null == old){ + return ResultVoUtil.error("数据错误。"); + } + + old.setReorder(reorder); + + return this.ocrUsersearchService.updateById(old)?ResultVoUtil.success():ResultVoUtil.error(); + + } + /** + * 收藏 + * + * @return + */ + @ApiOperation(value="收藏", notes="收藏") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true), + @ApiImplicitParam(paramType = "path",name = "searchid", value = "个人过滤主键", required = true) + }) + @GetMapping(value = "/collect") + public ResultVo collect( HttpServletRequest req) { + String searchid = req.getParameter("searchid"); + + OcrUsersearch old = this.ocrUsersearchService.getById(searchid); + if(null == old){ + return ResultVoUtil.error("数据错误。"); + } + + old.setIztop(1); + + return this.ocrUsersearchService.updateById(old)?ResultVoUtil.success():ResultVoUtil.error(); + + } + /** + * 取消收藏 + * + * @return + */ + @ApiOperation(value="取消收藏", notes="取消收藏") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true), + @ApiImplicitParam(paramType = "path",name = "searchid", value = "个人过滤主键", required = true) + }) + @GetMapping(value = "/collectreset") + public ResultVo collectreset(HttpServletRequest req) { + String searchid = req.getParameter("searchid"); + OcrUsersearch old = this.ocrUsersearchService.getById(searchid); + if(null == old){ + return ResultVoUtil.error("数据错误。"); + } + + old.setIztop(0); + + return this.ocrUsersearchService.updateById(old)?ResultVoUtil.success():ResultVoUtil.error(); + + } + /** + * 批量删除 + * + * @param ids + * @return + */ + @ApiOperation(value="批量删除过滤条件-通过id", notes="批量删除过滤条件-通过id") + @GetMapping(value = "/deleteBatch") + public ResultVo deleteBatch(@RequestParam(name="ids",required=true) String ids) { + return this.ocrUsersearchService.removeByIds(ids)?ResultVoUtil.success("批量删除成功!"):ResultVoUtil.error(); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "ocr_usersearch-通过id查询") + @ApiOperation(value="查询过滤条件详情-通过id", notes="查询过滤条件详情-通过id") + @GetMapping(value = "/queryById") + public ResultVo queryById(@RequestParam(name="id",required=true) String id) { + OcrUsersearch ocrUsersearch = ocrUsersearchService.getById(id); + List list = ocrUsersearchchildService.selectByMainId(id); + ocrUsersearch.setOcrUsersearchchildList(list); + if(ocrUsersearch==null) { + return ResultVoUtil.error("未找到对应数据"); + } + return ResultVoUtil.success(ocrUsersearch); + } +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateServiceImpl.java index 55eb172..9fd25b1 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrCheckDuplicateServiceImpl.java @@ -70,7 +70,7 @@ public class OcrCheckDuplicateServiceImpl extends ServiceImpl