From 13bf3e48ccca885793ab230ea156fc3336f0cc27 Mon Sep 17 00:00:00 2001 From: Vincent <19330835921@163.com> Date: Sun, 21 Apr 2024 21:20:43 +0800 Subject: [PATCH 01/36] =?UTF-8?q?fix:=20=E8=A1=A5=E5=85=A8=E6=97=B6?= =?UTF-8?q?=E9=97=B4=E5=8C=BA=E9=97=B4=E6=95=B0=E6=8D=AE=E5=A4=84=E7=90=86?= =?UTF-8?q?=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jyjz/xiaoyao/ocr/api/PrevailCloudApi.java | 2 ++ .../ocr/api/impl/PrevailCloudApiImpl.java | 30 +++++++++++++++++- .../ocr/controller/ApiTestController.java | 3 +- .../ocr/timerJob/PictureSourceTimerJob.java | 31 ++++++++++++------- 4 files changed, 52 insertions(+), 14 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/PrevailCloudApi.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/PrevailCloudApi.java index e43b173..0adf75f 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/PrevailCloudApi.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/PrevailCloudApi.java @@ -36,6 +36,8 @@ public interface PrevailCloudApi { */ boolean startImageDownloadMonitoring(String localImagePath) throws Exception; + List getAllPictureSourceResultApiPage(PictureSourceParameter pictureSourceParameter); + List getPictureSourceResultApiPage(PictureSourceParameter pictureSourceParameter); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java index dfce2df..fc6cd96 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java @@ -20,8 +20,9 @@ import cn.jyjz.xiaoyao.ocr.util.httputil.HttpMethod; import cn.jyjz.xiaoyao.ocr.util.httputil.HttpParamers; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.google.common.collect.Lists; import lombok.SneakyThrows; -import org.apache.commons.compress.utils.Lists; +import org.apache.commons.collections4.CollectionUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -220,6 +221,33 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { return true; } + @Override + public List getAllPictureSourceResultApiPage(PictureSourceParameter pictureSourceParameter) { + ApiPage apiPage = null; + List result = Lists.newArrayListWithCapacity(pictureSourceParameter.getPageSize()); + try { + apiPage = this.pullPictureSource(pictureSourceParameter); + } catch (Exception e) { + e.printStackTrace(); + } + + if (apiPage == null || CollectionUtils.isEmpty(apiPage.getRecords())) { + return result; + } + + result.addAll(apiPage.getRecords()); + + // 如果pageSize超过实际的数据量说明数据已经查完了 + if (apiPage.getRecords().size() < pictureSourceParameter.getPageSize()) { + return result; + } + + // 数据没查完就翻页 + pictureSourceParameter.setPageNo(pictureSourceParameter.getPageNo() + 1); + result.addAll(this.getAllPictureSourceResultApiPage(pictureSourceParameter)); + return result; + } + @Override public List getPictureSourceResultApiPage(PictureSourceParameter pictureSourceParameter) { ApiPage apiPage = null; diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java index 1b09325..3a86692 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java @@ -10,6 +10,7 @@ import cn.jyjz.xiaoyao.ocr.api.PrevailCloudApi; import cn.jyjz.xiaoyao.ocr.api.entity.PictureSourceParameter; import cn.jyjz.xiaoyao.ocr.api.entity.PictureSourceResult; import cn.jyjz.xiaoyao.ocr.api.utils.ApiConfig; +import cn.jyjz.xiaoyao.ocr.api.utils.ApiPage; import cn.jyjz.xiaoyao.ocr.thread.TaskQueue; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.google.common.collect.Maps; @@ -277,7 +278,7 @@ public class ApiTestController { pictureSourceParameter.setTenantNo(tenantNo); pictureSourceParameter.setAccountNo(accountNo); - List resultList = prevailCloudApi.getPictureSourceResultApiPage(pictureSourceParameter); + List resultList = prevailCloudApi.getAllPictureSourceResultApiPage(pictureSourceParameter); if (CollectionUtils.isEmpty(resultList)) { continue; } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java index 2db123e..297e99a 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java @@ -9,9 +9,9 @@ import cn.jyjz.xiaoyao.ocr.api.entity.PictureSourceParameter; import cn.jyjz.xiaoyao.ocr.api.entity.PictureSourceResult; import cn.jyjz.xiaoyao.ocr.thread.TaskQueue; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.google.common.collect.Lists; import com.google.common.collect.Maps; import org.apache.commons.collections4.CollectionUtils; -import org.apache.commons.compress.utils.Lists; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -87,6 +87,23 @@ public class PictureSourceTimerJob { } List totalList = Lists.newArrayList(); + totalList.addAll(this.pullData(departments, departmentMap, pictureSourceParameter)); + + int count = totalList.size(); + int size = 0; + for (PictureSourceResult pictureSourceResult : totalList) { + if (pictureSourceResult.getLivePhoto() != null) { + size++; + // 将可以处理数据放入处理队列中 + TaskQueue.pictureDisposePushData(pictureSourceResult); + } + } + + System.out.println("当前区间内图片总数:" + count + "条,可处理数据:" + size + "条"); + } + + private List pullData(List departments, Map departmentMap, PictureSourceParameter pictureSourceParameter) { + List totalList = Lists.newArrayListWithCapacity(pictureSourceParameter.getPageSize()); for (Department department : departments) { if (!departmentMap.containsKey(department.getParentid())) { continue; @@ -105,16 +122,6 @@ public class PictureSourceTimerJob { totalList.addAll(resultList); } - int count = totalList.size(); - int size = 0; - for (PictureSourceResult pictureSourceResult : totalList) { - if (pictureSourceResult.getLivePhoto() != null) { - size++; - // 将可以处理数据放入处理队列中 - TaskQueue.pictureDisposePushData(pictureSourceResult); - } - } - - System.out.println("当前区间内图片总数:" + count + "条,可处理数据:" + size + "条"); + return totalList; } } From ecf98f801a14f7ac119ce90c78296fd0ff132383 Mon Sep 17 00:00:00 2001 From: rongfeng Date: Sun, 21 Apr 2024 22:56:08 +0800 Subject: [PATCH 02/36] 1:ocr --- .../cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java index 6392080..c95983e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java @@ -363,7 +363,7 @@ public class OcrPictureController extends BaseController { private void filterScoreNoGroup(OcrPicture ocrPictureOne,Map> completeSimilarGroupMap){ //过滤阈值为100的,但是没有对应分类的图片 - if(Objects.nonNull(ocrPictureOne.getSimilarityscore())&&ocrPictureOne.getSimilarityscore()==100&&Objects.nonNull(ocrPictureOne.getCompleteSimilarGroupId())&&completeSimilarGroupMap.get(ocrPictureOne.getCompleteSimilarGroupId()).size()>1){ + if(Objects.nonNull(ocrPictureOne.getSimilarityscore())&&ocrPictureOne.getSimilarityscore()==100&&Objects.nonNull(ocrPictureOne.getCompleteSimilarGroupId())&&completeSimilarGroupMap.get(ocrPictureOne.getCompleteSimilarGroupId()).size()==1){ ocrPictureOne.setSimilarityscore(0); ocrPictureOne.setIsRepeat(1); } From ca34af9442b1bfc127210640d0a311c18757c2ab Mon Sep 17 00:00:00 2001 From: DELL Date: Mon, 22 Apr 2024 12:39:31 +0800 Subject: [PATCH 03/36] =?UTF-8?q?fix:=E8=A7=A3=E5=86=B3=E7=BB=88=E5=AE=A1?= =?UTF-8?q?=E7=BB=9F=E8=AE=A1bug=EF=BC=8C=E5=8E=9F=E5=9B=A0=E7=9A=84?= =?UTF-8?q?=E5=AE=A1=E6=89=B9=E8=8A=82=E7=82=B9=E5=AD=97=E6=AE=B5=E7=B1=BB?= =?UTF-8?q?=E5=9E=8B=E4=BF=AE=E6=94=B9=EF=BC=8C=E4=B8=8D=E5=86=8D=E6=98=AF?= =?UTF-8?q?=E6=95=B0=E5=AD=97=EF=BC=8C=E7=BB=88=E5=AE=A1=E8=8A=82=E7=82=B9?= =?UTF-8?q?=E5=8F=98=E4=B8=BAfinale=5Fjudgment?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/OcrSearchHistoryServiceImpl.java | 36 +++++++++++++++---- .../jyjz/xiaoyao/ocr/vo/OaUserApproveVo.java | 2 +- 2 files changed, 31 insertions(+), 7 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java index 077f320..7351d5e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrSearchHistoryServiceImpl.java @@ -127,19 +127,31 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl ocrTaskchildPictureApproList = new ArrayList<>(); //定义第一审批节点 String taskNodeOne = ""; + Integer taskNode = null; if (oaUserApproveVoList.size() > 0) { Map formIdToVoMap = new HashMap<>(); for (OaUserApproveVo vo : oaUserApproveVoList) { Long formId = vo.getFormId(); - Integer taskNode = vo.getTaskNode(); - if (!formIdToVoMap.containsKey(formId) || taskNode < formIdToVoMap.get(formId).getTaskNode()) { + String taskNodeStr = vo.getTaskNode(); + if ("finale_judgment".equals(taskNodeStr)) { + // 如果taskNode字段是"finale_judgment"字符串,将其转换为一个很大的数字 + vo.setTaskNode("100"); + taskNode = 100; + } else { + // 否则将其转换为Integer类型 + taskNode = Integer.parseInt(taskNodeStr); + } + if (!formIdToVoMap.containsKey(formId) || taskNode < Integer.parseInt(formIdToVoMap.get(formId).getTaskNode())) { formIdToVoMap.put(formId, vo); } } //获取该用户第一节点 Iterator> iterator = formIdToVoMap.entrySet().iterator(); Map.Entry firstEntry = iterator.next(); - taskNodeOne = Integer.toString(firstEntry.getValue().getTaskNode()); + taskNodeOne = firstEntry.getValue().getTaskNode(); + if("100".equals(taskNodeOne)){ + taskNodeOne = "finale_judgment"; + } //获取已经审批的任务ID List formIdList = new ArrayList<>(formIdToVoMap.keySet()); //查询该用户第一节点所有待审任务列表 @@ -221,19 +233,31 @@ public class OcrSearchHistoryServiceImpl extends ServiceImpl ocrTaskchildPictureApproList = new ArrayList<>(); //定义第一审批节点 String taskNodeOne = ""; + Integer taskNode = null; if (oaUserApproveVoList.size() > 0) { Map formIdToVoMap = new HashMap<>(); for (OaUserApproveVo vo : oaUserApproveVoList) { Long formId = vo.getFormId(); - Integer taskNode = vo.getTaskNode(); - if (!formIdToVoMap.containsKey(formId) || taskNode < formIdToVoMap.get(formId).getTaskNode()) { + String taskNodeStr = vo.getTaskNode(); + if ("finale_judgment".equals(taskNodeStr)) { + // 如果taskNode字段是"finale_judgment"字符串,将其转换为一个很大的数字 + vo.setTaskNode("100"); + taskNode = 100; + } else { + // 否则将其转换为Integer类型 + taskNode = Integer.parseInt(taskNodeStr); + } + if (!formIdToVoMap.containsKey(formId) || taskNode < Integer.parseInt(formIdToVoMap.get(formId).getTaskNode())) { formIdToVoMap.put(formId, vo); } } //获取该用户第一节点 Iterator> iterator = formIdToVoMap.entrySet().iterator(); Map.Entry firstEntry = iterator.next(); - taskNodeOne = Integer.toString(firstEntry.getValue().getTaskNode()); + taskNodeOne = firstEntry.getValue().getTaskNode(); + if("100".equals(taskNodeOne)){ + taskNodeOne = "finale_judgment"; + } //获取已经审批的任务ID List formIdList = new ArrayList<>(formIdToVoMap.keySet()); //查询该用户第一节点所有待审任务列表 diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OaUserApproveVo.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OaUserApproveVo.java index 262def6..d5a1889 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OaUserApproveVo.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OaUserApproveVo.java @@ -27,7 +27,7 @@ public class OaUserApproveVo implements Serializable { private Long formId; @Schema(description = "审批节点") - private Integer taskNode; + private String taskNode; @Schema(description = "审批节点名称") private String taskName; From 5dd2e0f1071d02bd31032f69f79211c0d6b2df14 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Mon, 22 Apr 2024 14:07:30 +0800 Subject: [PATCH 04/36] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E6=B6=88?= =?UTF-8?q?=E6=81=AF=E6=B2=A1=E6=9C=89=E8=BF=94=E5=9B=9E=E6=A0=87=E9=A2=98?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/cn/jyjz/xiaoyao/ocr/vo/OcrMsgVO.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrMsgVO.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrMsgVO.java index 7f68956..49acf11 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrMsgVO.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/vo/OcrMsgVO.java @@ -16,6 +16,22 @@ public class OcrMsgVO { */ private String id; + /** + * 标题 + */ + private String titile; + + /** + * 消息分类(1.审批通知,2.系统通知) + */ + private Integer msgCategory; + + + /** + * 接收人类型(1.用户,2.全部 3.部分用户) + */ + private Integer receiveUserType; + /** * 业务json */ From 9ff39fcb05360893a9f7e28b96bf30352d71f405 Mon Sep 17 00:00:00 2001 From: B1ackJack <9723189+b1ackjack@user.noreply.gitee.com> Date: Mon, 22 Apr 2024 17:37:19 +0800 Subject: [PATCH 05/36] =?UTF-8?q?fix:=20=E9=94=99=E8=AF=AF=E8=BF=87?= =?UTF-8?q?=E6=BB=A4=E4=BA=86=E9=83=A8=E5=88=86=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java | 8 -------- .../jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java | 4 ---- .../cn/jyjz/xiaoyao/ocr/timerJob/PullPictureDataJob.java | 4 ---- 3 files changed, 16 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java index 3a86692..1918120 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/ApiTestController.java @@ -142,10 +142,6 @@ public class ApiTestController { Map departmentMap = Maps.newHashMapWithExpectedSize(departments.size()); for (Department department : departments) { - if (department.getDlevel() == 0) { - continue; - } - departmentMap.put(department.getId(), department); } @@ -234,10 +230,6 @@ public class ApiTestController { Map departmentMap = Maps.newHashMapWithExpectedSize(departments.size()); for (Department department : departments) { - if (department.getDlevel() == 0) { - continue; - } - departmentMap.put(department.getId(), department); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java index 297e99a..85de326 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PictureSourceTimerJob.java @@ -79,10 +79,6 @@ public class PictureSourceTimerJob { Map departmentMap = Maps.newHashMapWithExpectedSize(departments.size()); for (Department department : departments) { - if (department.getDlevel() == 0) { - continue; - } - departmentMap.put(department.getId(), department); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PullPictureDataJob.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PullPictureDataJob.java index d2000d0..2a2bf79 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PullPictureDataJob.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/timerJob/PullPictureDataJob.java @@ -58,10 +58,6 @@ public class PullPictureDataJob { Map departmentMap = Maps.newHashMapWithExpectedSize(departments.size()); for (Department department : departments) { - if (department.getDlevel() == 0) { - continue; - } - departmentMap.put(department.getId(), department); } From 06acd7cea5a21056aee0d4cb4a26fe62e65fd8d0 Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Mon, 22 Apr 2024 19:07:24 +0800 Subject: [PATCH 06/36] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E7=AD=9B=E9=80=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/jyjz/xiaoyao/ocr/util/SearchConfigEnum.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchConfigEnum.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchConfigEnum.java index 75eb0d6..2faf1e2 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchConfigEnum.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/SearchConfigEnum.java @@ -35,7 +35,7 @@ public enum SearchConfigEnum { //提报人 UPUSERSEARCH("izupuser","upuserid"), //所属计划 - PLANSEARCH("izplan","planName"), + PLANSEARCH("izplan","planId"), //相似度 SIMISEARCH("izsimilarity","similarity_score"), //分类搜索 From c6b3a02a9562e6a211b74303ff12f3c620d7deef Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 22 Apr 2024 20:54:43 +0800 Subject: [PATCH 07/36] =?UTF-8?q?fix:=20=E4=BF=AE=E6=94=B9=E5=9B=BE?= =?UTF-8?q?=E9=89=B4=E7=9B=B8=E4=BC=BC=E5=BA=A6=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../flowable/service/impl/FlowTaskServiceImpl.java | 11 +++++++++++ .../resources/mapper/oa/OcrTaskchildPictureMapper.xml | 1 - 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index b660cad..4150259 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -1561,9 +1561,20 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask //补充历史状态名称,检查补充节点信息 for (OcrTaskchildPictureAppro ocrTaskchildPictureAppro : list) { + String assignee = ocrTaskchildPictureAppro.getAssignee(); //审批节点 当前如果没有历史操作,则将当前节点赋值到历史审批节点中. if (StringUtils.isBlank(ocrTaskchildPictureAppro.getTasknamehis())) { ocrTaskchildPictureAppro.setTasknamehis(ocrTaskchildPictureAppro.getTaskname()); + }else{ + if (assignee.contains(",")) { + String[] split = assignee.split(","); + for (int i = 0; i < split.length; i++) { + if (user.getLoginname().equals(split[i])) { + String[] taskIds = ocrTaskchildPictureAppro.getTasknamehis().split(","); + ocrTaskchildPictureAppro.setTasknamehis(taskIds[i]); + } + } + } } if (ocrTaskchildPictureAppro.getStatshis() != null) { diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml index 471eaec..6a8e0c8 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrTaskchildPictureMapper.xml @@ -935,7 +935,6 @@ FROM ocr_check_duplicate_result t1 LEFT JOIN ocr_picture t2 ON t1.picture_id = t2.ID LEFT JOIN ocr_taskchild_picture t3 ON t2.ID = t3.PICTUREID - left join ocr_picture_info t5 on t2.ID = t5.picture_id WHERE t1.check_duplicate_id = #{checkDuplicateId} and t2.suspiciousfile = 0 From ceff620235d2f3770da3b7ae00b2608573324a57 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Mon, 22 Apr 2024 22:33:40 +0800 Subject: [PATCH 08/36] =?UTF-8?q?fix:=20=E4=BC=98=E5=8C=96=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=8C=85=E4=B8=BB=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java | 6 +++++- .../src/main/resources/mapper/oa/OcrPictureMapper.xml | 2 -- .../main/resources/mapper/oa/OcrTaskchildPictureMapper.xml | 1 - 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java index 189d4ea..10b69d0 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPictureServiceImpl.java @@ -330,7 +330,11 @@ public class OcrPictureServiceImpl extends BaseServiceImpl().eq(OcrPictureInfo::getPictureId, ocrPicture.getId())); + ocrPicture.setPictureInfo(one); + if(ObjectUtil.isNotEmpty(one)){ + ocrPicture.getPictureInfo().setCreateTime(ocrPicture.getPhotoDateTimestamp()); + } return ocrPicture; } diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPictureMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPictureMapper.xml index 7c9805c..d499b25 100644 --- a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPictureMapper.xml +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPictureMapper.xml @@ -227,7 +227,6 @@ -
+ -
+ -
-
-
- - -
-
-
+ + + + + + + +
From a30a19a0f22ce0a295900b2250db36960639916b Mon Sep 17 00:00:00 2001 From: Administrator <17633119157@163.com> Date: Wed, 24 Apr 2024 14:59:16 +0800 Subject: [PATCH 15/36] =?UTF-8?q?1:bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htmlweb/web/backstage/oa/ocr/information/add.html | 6 +++--- htmlweb/web/backstage/oa/ocr/information/edit.html | 6 +++--- htmlweb/web/backstage/oa/ocr/information/list.html | 14 +++++++------- htmlweb/web/backstage/oa/ocr/picturelog/list.html | 4 +--- .../cn/jyjz/xiaoyao/ocr/util/ImageClassUtil.java | 6 +++--- 5 files changed, 17 insertions(+), 19 deletions(-) diff --git a/htmlweb/web/backstage/oa/ocr/information/add.html b/htmlweb/web/backstage/oa/ocr/information/add.html index 86474ee..2092258 100644 --- a/htmlweb/web/backstage/oa/ocr/information/add.html +++ b/htmlweb/web/backstage/oa/ocr/information/add.html @@ -36,9 +36,9 @@
diff --git a/htmlweb/web/backstage/oa/ocr/information/edit.html b/htmlweb/web/backstage/oa/ocr/information/edit.html index e3aa721..e12306f 100644 --- a/htmlweb/web/backstage/oa/ocr/information/edit.html +++ b/htmlweb/web/backstage/oa/ocr/information/edit.html @@ -37,9 +37,9 @@
diff --git a/htmlweb/web/backstage/oa/ocr/information/list.html b/htmlweb/web/backstage/oa/ocr/information/list.html index 9b3c45e..2ee64d1 100644 --- a/htmlweb/web/backstage/oa/ocr/information/list.html +++ b/htmlweb/web/backstage/oa/ocr/information/list.html @@ -21,9 +21,9 @@
@@ -70,7 +70,7 @@ $("#_mybutton").append(' '); } }); - _tableListPost = $('#Post_list').bootstrapTable({ + _tableListCommontword = $('#Post_list').bootstrapTable({ url: '${ctx}/ocr/field/page', pagination: true, //是否显示分页(*) pageNumber:1, //初始化加载第一页,默认第一页 @@ -101,13 +101,13 @@ formatter:function(value,oData,index) { var listOperation = ""; if(oData.reviewType == 0){ - listOperation = "终审"; + listOperation = "任务终审"; } else if(oData.reviewType == 1) { - listOperation = "工单"; + listOperation = "图鉴审批"; } else if(oData.reviewType == 2) { - listOperation = "一审二审"; + listOperation = "任务审核"; } else{ listOperation = "审核填报"; diff --git a/htmlweb/web/backstage/oa/ocr/picturelog/list.html b/htmlweb/web/backstage/oa/ocr/picturelog/list.html index a8dbdf8..eb1a258 100644 --- a/htmlweb/web/backstage/oa/ocr/picturelog/list.html +++ b/htmlweb/web/backstage/oa/ocr/picturelog/list.html @@ -69,7 +69,7 @@ $("#_mybutton").append(' '); } }); - _tableListPost = $('#Post_list').bootstrapTable({ + _tableListCommontword = $('#Post_list').bootstrapTable({ url: '${ctx}/ocr/picturelog/page', pagination: true, //是否显示分页(*) pageNumber:1, //初始化加载第一页,默认第一页 @@ -88,8 +88,6 @@ callStatus: $("#callStatus").val(), callTimeStart: params.callTimeStart, callTimeEnd: params.callTimeEnd, - //search_callStatus:'{"value":"' + $("#search_callStatus").val() + '","op":"equal","type":"string"}', - //search_callTime:'{"value":"' + $("#search_callTime").val() + '","op":"equal","type":"string"}', }; }, responseHandler:function(res){ diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/ImageClassUtil.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/ImageClassUtil.java index 0f2cc34..73f2d95 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/ImageClassUtil.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/util/ImageClassUtil.java @@ -95,15 +95,15 @@ public class ImageClassUtil { JSONObject jsonObjectSimi = JSON.parseObject(responseDataVi); if (null != jsonObjectSimi && jsonObjectSimi.getString("code").equals("0") && jsonObjectSimi.get("data") != null && jsonObjectSimi.getJSONArray("data").size() > 0) { ocrPictureLog.setCallStatus("1"); - ocrPictureLog.setCallMsg("req:"+jsonObjectVi.toJSONString()+"\nrep:"+responseDataVi); + ocrPictureLog.setCallMsg("请求信息:"+jsonObjectVi.toJSONString()+"\n响应信息:"+responseDataVi); } else { ocrPictureLog.setCallStatus("2"); - ocrPictureLog.setCallMsg("req:"+jsonObjectVi.toJSONString()+"\nrep:"+responseDataVi); + ocrPictureLog.setCallMsg("请求信息:"+jsonObjectVi.toJSONString()+"\n响应信息:"+responseDataVi); } } catch (Exception e) { logger.error("classify={}", e); ocrPictureLog.setCallStatus("3"); - ocrPictureLog.setCallMsg("req:"+jsonObjectVi.toJSONString()+"\nrep:"+responseDataVi+"Exception:"+e.getMessage()); + ocrPictureLog.setCallMsg("请求信息:"+jsonObjectVi.toJSONString()+"\n响应信息:"+responseDataVi+"Exception:"+e.getMessage()); } finally { ApplicationContext applicationContext = SpringUtil.getApplicationContext(); OcrPictureLogService ocrPictureLogService = applicationContext.getBean(OcrPictureLogService.class); From a1460528ec23db70b10cc71bed6fd5cccde750aa Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Wed, 24 Apr 2024 15:22:24 +0800 Subject: [PATCH 16/36] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E9=AB=98?= =?UTF-8?q?=E7=BA=A7=E6=A3=80=E7=B4=A2=EF=BC=8C=E8=AE=A1=E5=88=92=E6=B2=A1?= =?UTF-8?q?=E6=9C=89=E5=B8=A6=E5=87=BA=E6=9D=A5=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/service/impl/OcrUsersearchchildServiceImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java index 9834999..90a50ee 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java @@ -26,7 +26,7 @@ public class OcrUsersearchchildServiceImpl extends BaseServiceImpl selectByMainId(String mainId) { QueryWrapper queryWrapper = new QueryWrapper(); @@ -108,6 +108,10 @@ public class OcrUsersearchchildServiceImpl extends BaseServiceImpl Date: Wed, 24 Apr 2024 15:41:56 +0800 Subject: [PATCH 17/36] =?UTF-8?q?1:=E5=8E=BB=E9=87=8D=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/jyjz/xiaoyao/ocr/service/impl/OcrFieldServiceImpl.java | 1 + 1 file changed, 1 insertion(+) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrFieldServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrFieldServiceImpl.java index da56bfc..16a458e 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrFieldServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrFieldServiceImpl.java @@ -136,6 +136,7 @@ public class OcrFieldServiceImpl extends BaseServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(OcrField::getReviewType, ocrField.getReviewType()); queryWrapper.eq(OcrField::getName, name); queryWrapper.eq(OcrField::getDel, 0); OcrField ocrFieldOne = this.getOne(queryWrapper); From 1d3987b5c71f643f4963956d457b31d33bc014b4 Mon Sep 17 00:00:00 2001 From: Administrator <17633119157@163.com> Date: Wed, 24 Apr 2024 16:05:02 +0800 Subject: [PATCH 18/36] =?UTF-8?q?1:=E5=8E=BB=E9=87=8D=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htmlweb/web/backstage/oa/ocr/information/list.html | 4 ++-- htmlweb/web/backstage/oa/ocr/picturelog/list.html | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/htmlweb/web/backstage/oa/ocr/information/list.html b/htmlweb/web/backstage/oa/ocr/information/list.html index 2ee64d1..20352bd 100644 --- a/htmlweb/web/backstage/oa/ocr/information/list.html +++ b/htmlweb/web/backstage/oa/ocr/information/list.html @@ -70,7 +70,7 @@ $("#_mybutton").append(' '); } }); - _tableListCommontword = $('#Post_list').bootstrapTable({ + _tableListPost = $('#Post_list').bootstrapTable({ url: '${ctx}/ocr/field/page', pagination: true, //是否显示分页(*) pageNumber:1, //初始化加载第一页,默认第一页 @@ -84,7 +84,7 @@ return { sortorder: params.order, sortname: params.sort, - pagesize: params.limit, + pageSize: params.limit, start: (params.offset / params.limit) + 1, search_name:'{"value":"' + $("#search_name").val() + '","op":"equal","type":"string"}', search_reviewType:'{"value":"' + $("#search_reviewType").val() + '","op":"equal","type":"string"}', diff --git a/htmlweb/web/backstage/oa/ocr/picturelog/list.html b/htmlweb/web/backstage/oa/ocr/picturelog/list.html index eb1a258..aba3727 100644 --- a/htmlweb/web/backstage/oa/ocr/picturelog/list.html +++ b/htmlweb/web/backstage/oa/ocr/picturelog/list.html @@ -83,7 +83,7 @@ return { sortorder: params.order, sortname: params.sort, - pagesize: params.limit, + pageSize: params.limit, start: (params.offset / params.limit) + 1, callStatus: $("#callStatus").val(), callTimeStart: params.callTimeStart, From 84c7fee3170a1df3ab3c40d147fd21fec5c14501 Mon Sep 17 00:00:00 2001 From: DELL Date: Wed, 24 Apr 2024 17:19:09 +0800 Subject: [PATCH 19/36] =?UTF-8?q?fix:=E5=9B=BE=E7=89=87=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=A2=9E=E5=8A=A0=E8=BF=94=E5=9B=9E=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=EF=BC=8C=E5=9B=BE=E7=89=87=E7=9A=84=E5=AE=BD=E5=92=8C?= =?UTF-8?q?=E9=AB=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/controller/OcrPictureController.java | 18 ++++++++++++++++-- .../xiaoyao/ocr/dataobject/OcrPicture.java | 7 ++++++- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java index 79ae562..61d64ff 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrPictureController.java @@ -10,7 +10,9 @@ 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.OcrPicture; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrPictureInfo; import cn.jyjz.xiaoyao.ocr.dataobject.OcrTaskchildPicture; +import cn.jyjz.xiaoyao.ocr.service.OcrPictureInfoService; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; import cn.jyjz.xiaoyao.ocr.util.DataUtil; @@ -55,6 +57,8 @@ public class OcrPictureController extends BaseController { private UserService userService; @Resource private LogService logService; + @Resource + private OcrPictureInfoService ocrPictureInfoService; /** * 工单查询 @@ -333,11 +337,11 @@ public class OcrPictureController extends BaseController { Map> completeSimilarGroupMap = ocrPictures.stream().filter(s->Objects.nonNull(s.getCompleteSimilarGroupId())).collect(Collectors.groupingBy(OcrPicture::getCompleteSimilarGroupId)); for (OcrPicture ocrPictureOne : ocrPictures) { - filterScoreNoGroup(ocrPictureOne,completeSimilarGroupMap); + filterScoreNoGroup(ocrPictureOne, completeSimilarGroupMap); LambdaQueryWrapper ocrTaskchildPictureLambdaQueryWrapper = new LambdaQueryWrapper<>(); ocrTaskchildPictureLambdaQueryWrapper.eq(OcrTaskchildPicture::getPictureid, ocrPictureOne.getId()); OcrTaskchildPicture ocrTaskchildPicture = ocrTaskchildPictureService.getOne(ocrTaskchildPictureLambdaQueryWrapper); - if(ocrTaskchildPicture != null && ocrTaskchildPicture.getStates() != null){ + if (ocrTaskchildPicture != null && ocrTaskchildPicture.getStates() != null) { switch (ocrTaskchildPicture.getStates()) { case 1: ocrPictureOne.setField16("未提交"); @@ -354,7 +358,17 @@ public class OcrPictureController extends BaseController { } ocrPictureOne.setStates(ocrTaskchildPicture.getStates()); } + LambdaQueryWrapper ocrPictureInfoLambdaQueryWrapper = new LambdaQueryWrapper<>(); + ocrPictureInfoLambdaQueryWrapper.eq(OcrPictureInfo::getPictureId, ocrPictureOne.getId()); + OcrPictureInfo ocrPictureInfo = ocrPictureInfoService.getOne(ocrPictureInfoLambdaQueryWrapper); ocrPicturesNew.add(ocrPictureOne); + if (ocrPictureInfo != null && ocrPictureInfo.getImgMeasure() != null) { + String[] dimensions = ocrPictureInfo.getImgMeasure().split("x"); + if (dimensions.length == 2) { + ocrPictureOne.setWide(dimensions[0]); + ocrPictureOne.setHigh(dimensions[1]); + } + } } pageList.setRecords(ocrPicturesNew); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPicture.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPicture.java index 825399d..e785e50 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPicture.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPicture.java @@ -385,8 +385,13 @@ public class OcrPicture implements BaseDto, java.io.Serializable { @TableField(exist = false) private Integer isRepeatHis; + @ApiModelProperty(value = "图片信息-宽") + @TableField(exist = false) + private String wide; - + @ApiModelProperty(value = "图片信息-高") + @TableField(exist = false) + private String high; //保存当前登录用户的数据权限范围的搜索条件 @TableField(exist = false) From 08c48f193a5a136a40a5aa5b0677e9a1ee431a8b Mon Sep 17 00:00:00 2001 From: admin <149470858@qq.com> Date: Wed, 24 Apr 2024 23:59:02 +0800 Subject: [PATCH 20/36] =?UTF-8?q?=E5=A2=9E=E5=8A=A0menu=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htmlweb/web/backstage/oa/frontmenu/add.html | 150 +++++++++++ htmlweb/web/backstage/oa/frontmenu/edit.html | 166 ++++++++++++ htmlweb/web/backstage/oa/frontmenu/list.html | 201 ++++++++++++++ .../backstage/oa/frontmenu/userfrontmenu.html | 246 ++++++++++++++++++ .../jyjz/xiaoyao/admin/dataobject/User.java | 4 + .../controller/FrontmenuController.java | 113 ++++++++ .../controller/FrontmenuHtmlController.java | 69 +++++ .../controller/UserFrontmenuController.java | 104 ++++++++ .../UserFrontmenuHtmlController.java | 45 ++++ .../dataDao/FrontmenuMybatisDao.java | 11 + .../dataDao/UserFrontmenuMybatisDao.java | 11 + .../frontmenu/dataobject/Frontmenu.java | 103 ++++++++ .../frontmenu/dataobject/UserFrontmenu.java | 57 ++++ .../frontmenu/service/FrontmenuService.java | 11 + .../service/UserFrontmenuService.java | 26 ++ .../service/impl/FrontmenuServiceImpl.java | 20 ++ .../impl/UserFrontmenuServiceImpl.java | 64 +++++ .../resources/mapper/oa/SFrontmenuTMapper.xml | 57 ++++ .../mapper/oa/SUserFrontmenuTMapper.xml | 33 +++ .../src/main/resources/application-dev.yml | 22 +- 20 files changed, 1502 insertions(+), 11 deletions(-) create mode 100644 htmlweb/web/backstage/oa/frontmenu/add.html create mode 100644 htmlweb/web/backstage/oa/frontmenu/edit.html create mode 100644 htmlweb/web/backstage/oa/frontmenu/list.html create mode 100644 htmlweb/web/backstage/oa/frontmenu/userfrontmenu.html create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/FrontmenuController.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/FrontmenuHtmlController.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/UserFrontmenuController.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/UserFrontmenuHtmlController.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataDao/FrontmenuMybatisDao.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataDao/UserFrontmenuMybatisDao.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataobject/Frontmenu.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataobject/UserFrontmenu.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/FrontmenuService.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/UserFrontmenuService.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/impl/FrontmenuServiceImpl.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/impl/UserFrontmenuServiceImpl.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/SFrontmenuTMapper.xml create mode 100644 jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/SUserFrontmenuTMapper.xml diff --git a/htmlweb/web/backstage/oa/frontmenu/add.html b/htmlweb/web/backstage/oa/frontmenu/add.html new file mode 100644 index 0000000..89d6dd3 --- /dev/null +++ b/htmlweb/web/backstage/oa/frontmenu/add.html @@ -0,0 +1,150 @@ +<#include "/common/taglibs.html" /> + + + + + 前端菜单管理 + + + +<#include "/head/headaddedit.html" /> + + +
+
+
+
+
+
基本信息
+
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+ +
+
+
+ + +
+
+
+
+
+
+
+
+
+
+<#include "/head/footadd.html" /> + + + + diff --git a/htmlweb/web/backstage/oa/frontmenu/edit.html b/htmlweb/web/backstage/oa/frontmenu/edit.html new file mode 100644 index 0000000..546dd3d --- /dev/null +++ b/htmlweb/web/backstage/oa/frontmenu/edit.html @@ -0,0 +1,166 @@ +<#include "/common/taglibs.html" /> + + + + + 前端菜单管理 + +<#include "/head/headaddedit.html" /> + + +
+
+
+
+
+
基本信息
+
+
+
+
+ + +
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+ +
+ + +
+
+
+ + +
+
+
+
+
+
+
+
+
+
+<#include "/head/footadd.html" /> + + + + diff --git a/htmlweb/web/backstage/oa/frontmenu/list.html b/htmlweb/web/backstage/oa/frontmenu/list.html new file mode 100644 index 0000000..af3814e --- /dev/null +++ b/htmlweb/web/backstage/oa/frontmenu/list.html @@ -0,0 +1,201 @@ +<#include "/common/taglibs.html" /> + + + + + 前端菜单管理 + + + +<#include "/head/headlist.html" /> + + +
+
+
+
+
+
+ +
+ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<#include "/head/footlist.html" /> + + + + diff --git a/htmlweb/web/backstage/oa/frontmenu/userfrontmenu.html b/htmlweb/web/backstage/oa/frontmenu/userfrontmenu.html new file mode 100644 index 0000000..a83a7d9 --- /dev/null +++ b/htmlweb/web/backstage/oa/frontmenu/userfrontmenu.html @@ -0,0 +1,246 @@ +<#include "../../../common/taglibs.html" /> + + + + + + 管理员列表 + + + + <#include "/head/headlist.html" /> + + + + + +
+
+ +
+
+
+  +
+
+ +
+
+ +
+  搜索 +  重置 +
+
+
+ +
+ +
+ +
+ + +
+
+
+
+ + +
+ + +<#include "/head/footlist.html" /> + + + + + + + diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java index 91a55a1..a1e1662 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/dataobject/User.java @@ -184,6 +184,10 @@ public class User implements BaseDto,java.io.Serializable { //前端菜单展示列表权限 @TableField(exist = false) private List frontmenuTList = new ArrayList<>(); + + //临时保存集合使用 + @TableField(exist = false) + private List tempList = new ArrayList<>(); public UserToken getUserToken(){ diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/FrontmenuController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/FrontmenuController.java new file mode 100644 index 0000000..e5004e3 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/FrontmenuController.java @@ -0,0 +1,113 @@ +package cn.jyjz.xiaoyao.frontmenu.controller; + +import java.io.IOException; +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.frontmenu.dataobject.Frontmenu; +import cn.jyjz.xiaoyao.frontmenu.service.FrontmenuService; +import com.alibaba.fastjson.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +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; + +@RestController +@RequestMapping("/backstage/oa/frontmenu") +public class FrontmenuController extends BaseController{ + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private FrontmenuService frontmenuService; + + @Autowired + private UserTokenService userTokenService; + @Autowired + private UserService userService; + /** + *方法描述:返回json字符串,接受参数,dto名称以及分页信息 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @GetMapping("/list") + public ResultVo> listSFrontmenuT(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{ + SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + cn.jyjz.xiaoyao.admin.dataobject.User user = this.userService.getSessionUser(request); + Frontmenu sfrontmenut = new Frontmenu(); + sfrontmenut.setSearchQueryrolesShowleave(user.getSearchQueryrolesShowleave()); + QueryWrapper queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,sfrontmenut); + IPage page = this.frontmenuService.selectSearchListPage(paramterPage,queryWrapper);; + return ResultVoUtil.success(page); + } + + /** + *方法描述:保存添加数据 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @PostMapping("/save") + public ResultVo saveSFrontmenuT(HttpServletResponse response,HttpServletRequest request,Frontmenu tab) throws IOException{ + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + + this.frontmenuService.save(tab); + return ResultVoUtil.success(); + } + + /** + *方法描述:根据页面form传来的对象修改数据 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @PostMapping("/edit") + public ResultVo editSFrontmenuT(HttpServletResponse response,HttpServletRequest request,Frontmenu tab) throws IOException{ + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + this.frontmenuService.updateById(tab); + return ResultVoUtil.success(); + } + + /** + *方法描述:通过主键获得对象信息 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @GetMapping("/getdata/{id}") + @ResponseBody + public ResultVo getdateSFrontmenuT(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{ + Frontmenu dto = this.frontmenuService.selectDtoById(id); + if(null != dto){ + return ResultVoUtil.success(dto); + }else{ + return ResultVoUtil.error(); + } + } + + /** + *方法描述:根据id字符串组删除对象方法,例如1,2,3 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @GetMapping("/delmore") + @ResponseBody + public ResultVo delMoreSFrontmenuT(HttpServletResponse response,HttpServletRequest request) throws IOException{ + String ids = request.getParameter("id"); + this.frontmenuService.deleteByIdMore(ids); + return ResultVoUtil.success(); + } + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/FrontmenuHtmlController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/FrontmenuHtmlController.java new file mode 100644 index 0000000..a101567 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/FrontmenuHtmlController.java @@ -0,0 +1,69 @@ +package cn.jyjz.xiaoyao.frontmenu.controller; + +import java.io.IOException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import cn.jyjz.xiaoyao.frontmenu.service.FrontmenuService; +import com.alibaba.fastjson.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +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; + +@Controller +@RequestMapping("/backstage/oa/frontmenuHtml") +public class FrontmenuHtmlController extends BaseController{ + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private FrontmenuService frontmenuService; + + @Autowired + private UserTokenService userTokenService; + @Autowired + private UserService userService; + /** + *方法描述:跳转到列表页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @GetMapping("/toList") + public String toListSFrontmenuT(HttpServletResponse response,HttpServletRequest request){ + String resourceid = request.getParameter("resourceid"); + request.setAttribute("resourceid",resourceid); + return "/backstage/oa/frontmenu/list"; + } + + /** + *方法描述:跳转到保存页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @GetMapping("/toSave") + public String toSaveSFrontmenuT(HttpServletResponse response,HttpServletRequest request){ + String resourceid = request.getParameter("resourceid"); + request.setAttribute("resourceid",resourceid); + return "/backstage/oa/frontmenu/add"; + } + + /** + *方法描述:根据ID跳转到修改页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @GetMapping("/toEdit/{id}") + public String toEditSFrontmenuT(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){ + String resourceid = request.getParameter("resourceid"); + request.setAttribute("resourceid",resourceid); + request.setAttribute("id", id); + return "/backstage/oa/frontmenu/edit"; + } + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/UserFrontmenuController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/UserFrontmenuController.java new file mode 100644 index 0000000..64d4fa2 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/UserFrontmenuController.java @@ -0,0 +1,104 @@ +package cn.jyjz.xiaoyao.frontmenu.controller; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import cn.jyjz.xiaoyao.admin.dataobject.User; +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.frontmenu.dataobject.Frontmenu; +import cn.jyjz.xiaoyao.frontmenu.dataobject.UserFrontmenu; +import cn.jyjz.xiaoyao.frontmenu.service.UserFrontmenuService; +import com.alanpoi.common.util.StringUtils; +import com.alibaba.fastjson.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +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; + +@RestController +@RequestMapping("/backstage/oa/userfrontmenu") +public class UserFrontmenuController extends BaseController{ + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private UserFrontmenuService userFrontmenuService; + + @Autowired + private UserTokenService userTokenService; + @Autowired + private UserService userService; + /** + *方法描述:返回json字符串,接受参数,dto名称以及分页信息 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @GetMapping("/list") + public ResultVo> listUserFrontmenu(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{ + SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); + + User user = this.userService.getSessionUser(request); + QueryWrapper queryWrapper = SearchQueryFormat.queryStringFormat(searchQuery,user,"u."); + + queryWrapper.ne("u.ID",user.getId()); + + + IPage page = this.userService.selectSearchListPage(paramterPage,queryWrapper); + + for(User usermodel:page.getRecords()){ + //查询关联的菜单集合 + List list = this.userFrontmenuService.listByUserid(usermodel.getId().toString()); + usermodel.setTempList(list); + } + + return ResultVoUtil.success(page); + } + + /** + *方法描述:保存添加数据 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @PostMapping("/saveactiongrant") + public ResultVo saveSUserFrontmenuT(HttpServletResponse response,HttpServletRequest request) throws IOException{ + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + + //获取选中的前端菜单主键 + String menuids = request.getParameter("menuids"); + String userid = request.getParameter("userid"); + + if(StringUtils.isNotBlank(menuids)){ + String[] mids = menuids.split(","); + List userFrontmenuList = new ArrayList<>(); + for(String mid:mids){ + UserFrontmenu userFrontmenu = new UserFrontmenu(); + userFrontmenu.setMenuid(Long.parseLong(mid)); + userFrontmenu.setUserid(Long.parseLong(userid)); + userFrontmenuList.add(userFrontmenu); + } + + //保存之前先删除关联 + this.userFrontmenuService.removeByUserid(userid); + return this.userFrontmenuService.saveBatch(userFrontmenuList)?ResultVoUtil.success():ResultVoUtil.error(); + } + + return ResultVoUtil.error(); + } + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/UserFrontmenuHtmlController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/UserFrontmenuHtmlController.java new file mode 100644 index 0000000..5717960 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/controller/UserFrontmenuHtmlController.java @@ -0,0 +1,45 @@ +package cn.jyjz.xiaoyao.frontmenu.controller; + +import java.io.IOException; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import cn.jyjz.xiaoyao.frontmenu.service.UserFrontmenuService; +import com.alibaba.fastjson.JSONObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +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; + +@Controller +@RequestMapping("/backstage/oa/userfrontmenuHtml") +public class UserFrontmenuHtmlController extends BaseController{ + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private UserFrontmenuService userFrontmenuService; + + @Autowired + private UserTokenService userTokenService; + @Autowired + private UserService userService; + /** + *方法描述:跳转到列表页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2024-04-21 20:49:27 + **/ + @GetMapping("/showlist") + public String toListSUserFrontmenuT(HttpServletResponse response,HttpServletRequest request){ + + request.setAttribute("resourceid","3"); + return "/backstage/oa/frontmenu/userfrontmenu"; + } + + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataDao/FrontmenuMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataDao/FrontmenuMybatisDao.java new file mode 100644 index 0000000..55575ef --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataDao/FrontmenuMybatisDao.java @@ -0,0 +1,11 @@ +package cn.jyjz.xiaoyao.frontmenu.dataDao; + +import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +/** +* 数据持久化 +*/ +@Mapper +public interface FrontmenuMybatisDao extends BaseMapper { +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataDao/UserFrontmenuMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataDao/UserFrontmenuMybatisDao.java new file mode 100644 index 0000000..9867a02 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataDao/UserFrontmenuMybatisDao.java @@ -0,0 +1,11 @@ +package cn.jyjz.xiaoyao.frontmenu.dataDao; + +import cn.jyjz.xiaoyao.frontmenu.dataobject.UserFrontmenu; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +/** +* 数据持久化 +*/ +@Mapper +public interface UserFrontmenuMybatisDao extends BaseMapper { +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataobject/Frontmenu.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataobject/Frontmenu.java new file mode 100644 index 0000000..924869b --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataobject/Frontmenu.java @@ -0,0 +1,103 @@ +package cn.jyjz.xiaoyao.frontmenu.dataobject; + +import cn.jyjz.xiaoyao.common.mybatisplus.dto.BaseDto; +import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import java.util.Map; +import java.util.AbstractMap.SimpleEntry; +import java.util.stream.Stream; +import java.util.stream.Collectors; + + + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Schema(name = "前端菜单管理", title = "前端菜单管理") +@TableName(value = "s_frontmenu_t") +public class Frontmenu implements BaseDto,java.io.Serializable { + + private static final long serialVersionUID = -7176960824610287118L; + @Schema(description = "主键ID") + @TableId(value = "id",type = IdType.ASSIGN_ID) + @JsonSerialize(using = ToStringSerializer.class) + @TableField(value="id") + private Long id; + + @Schema(description = "null") + @TableField(value="name") + private String name; + + @Schema(description = "父级菜单ID") + @TableField(value="parentId") + private Integer parentid; + + @Schema(description = "null") + @TableField(value="resKey") + private String reskey; + + @Schema(description = "null") + @TableField(value="resUrl") + private String resurl; + + @Schema(description = "菜单级别") + @TableField(value="level") + private Integer level; + + @Schema(description = "null") + @TableField(value="icon") + private String icon; + + @Schema(description = "菜单排序") + @TableField(value="orderNum") + private Integer ordernum; + + @Schema(description = "菜单是否隐藏(0:否,1:是)") + @TableField(value="ishide") + private Integer ishide; + + @Schema(description = "null") + @TableField(value="description") + private String description; + + + //保存当前登录用户的数据权限范围的搜索条件 + @TableField(exist = false) + private SearchQuery searchQueryrolesShowleave; + + @TableField(exist = false) + private final Map query = Stream.of( + new SimpleEntry<>("LISTDEPT","deptid"), + new SimpleEntry<>("ID","id"), + new SimpleEntry<>("NAME","name"), + new SimpleEntry<>("PARENTID","parentid"), + new SimpleEntry<>("RESKEY","reskey"), + new SimpleEntry<>("RESURL","resurl"), + new SimpleEntry<>("LEVEL","level"), + new SimpleEntry<>("ICON","icon"), + new SimpleEntry<>("ORDERNUM","ordernum"), + new SimpleEntry<>("ISHIDE","ishide"), + new SimpleEntry<>("DESCRIPTION","description") + ) + .collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue)); + @Override + public String getQueryFiled(String filedname){ + String obj = null; + if(null != query && query.size() > 0){ + obj = query.get(filedname); + } + return obj; + } +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataobject/UserFrontmenu.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataobject/UserFrontmenu.java new file mode 100644 index 0000000..feebd83 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/dataobject/UserFrontmenu.java @@ -0,0 +1,57 @@ +package cn.jyjz.xiaoyao.frontmenu.dataobject; + +import cn.jyjz.xiaoyao.common.mybatisplus.dto.BaseDto; +import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import java.util.Map; +import java.util.AbstractMap.SimpleEntry; +import java.util.stream.Stream; +import java.util.stream.Collectors; + + + +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Schema(name = "用户和前端菜单关系表", title = "用户和前端菜单关系表") +@TableName(value = "s_user_frontmenu_t") +public class UserFrontmenu implements BaseDto,java.io.Serializable { + + private static final long serialVersionUID = 3139365577414759746L; + @Schema(description = "用户主键id") + @TableField(value="userId") + private Long userid; + + @Schema(description = "菜单ID") + @TableField(value="menuId") + private Long menuid; + + + //保存当前登录用户的数据权限范围的搜索条件 + @TableField(exist = false) + private SearchQuery searchQueryrolesShowleave; + + @TableField(exist = false) + private final Map query = Stream.of( + new SimpleEntry<>("listdept","deptid"), + new SimpleEntry<>("userId","userid"), + new SimpleEntry<>("menuId","menuid") + ) + .collect(Collectors.toMap(SimpleEntry::getKey, SimpleEntry::getValue)); + @Override + public String getQueryFiled(String filedname){ + String obj = null; + if(null != query && query.size() > 0){ + obj = query.get(filedname); + } + return obj; + } +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/FrontmenuService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/FrontmenuService.java new file mode 100644 index 0000000..3643e14 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/FrontmenuService.java @@ -0,0 +1,11 @@ +package cn.jyjz.xiaoyao.frontmenu.service; + +import java.util.List; +import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseService; +import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu; + +/** +* 业务层 +*/ +public interface FrontmenuService extends BaseService { +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/UserFrontmenuService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/UserFrontmenuService.java new file mode 100644 index 0000000..a9a9052 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/UserFrontmenuService.java @@ -0,0 +1,26 @@ +package cn.jyjz.xiaoyao.frontmenu.service; + +import java.util.List; +import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseService; +import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu; +import cn.jyjz.xiaoyao.frontmenu.dataobject.UserFrontmenu; + +/** +* 业务层 +*/ +public interface UserFrontmenuService extends BaseService { + + /** + * 根据用户主键,查询关联的菜单集合 + * @param userid + * @return + */ + public List listByUserid(String userid); + + /** + * 根据用户主键,删除已经关联的菜单集合 + * @param userid + * @return + */ + public boolean removeByUserid(String userid); +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/impl/FrontmenuServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/impl/FrontmenuServiceImpl.java new file mode 100644 index 0000000..e198f6f --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/impl/FrontmenuServiceImpl.java @@ -0,0 +1,20 @@ +package cn.jyjz.xiaoyao.frontmenu.service.impl; + +import cn.jyjz.xiaoyao.frontmenu.dataDao.FrontmenuMybatisDao; +import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu; +import cn.jyjz.xiaoyao.frontmenu.service.FrontmenuService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseServiceImpl; +import lombok.extern.slf4j.Slf4j; + +/** +* 业务层实现 +*/ +@Service +@Slf4j +public class FrontmenuServiceImpl extends BaseServiceImpl implements FrontmenuService { + @Autowired + private FrontmenuMybatisDao frontmenuMybatisDao; + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/impl/UserFrontmenuServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/impl/UserFrontmenuServiceImpl.java new file mode 100644 index 0000000..45efe33 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/frontmenu/service/impl/UserFrontmenuServiceImpl.java @@ -0,0 +1,64 @@ +package cn.jyjz.xiaoyao.frontmenu.service.impl; + +import cn.jyjz.xiaoyao.frontmenu.dataDao.UserFrontmenuMybatisDao; +import cn.jyjz.xiaoyao.frontmenu.dataobject.Frontmenu; +import cn.jyjz.xiaoyao.frontmenu.dataobject.UserFrontmenu; +import cn.jyjz.xiaoyao.frontmenu.service.FrontmenuService; +import cn.jyjz.xiaoyao.frontmenu.service.UserFrontmenuService; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseServiceImpl; +import lombok.extern.slf4j.Slf4j; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** +* 业务层实现 +*/ +@Service +@Slf4j +public class UserFrontmenuServiceImpl extends BaseServiceImpl implements UserFrontmenuService { + @Resource + private UserFrontmenuMybatisDao userFrontmenuMybatisDao; + + @Resource + private FrontmenuService frontmenuService; + /** + * 根据用户主键,查询关联的菜单集合 + * @param userid + * @return + */ + public List listByUserid(String userid){ + + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.eq("userId",userid); + List userFrontmenuList = this.userFrontmenuMybatisDao.selectList(queryWrapper); + + List list = null; + if(null != userFrontmenuList && !userFrontmenuList.isEmpty()){ + List ufidList = userFrontmenuList.stream().map(UserFrontmenu::getMenuid).collect(Collectors.toList()); + + QueryWrapper fmQuery = new QueryWrapper(); + fmQuery.in("id",ufidList); + list = this.frontmenuService.selectSearchList(fmQuery); + } + + return list; + } + + /** + * 根据用户主键,删除已经关联的菜单集合 + * @param userid + * @return + */ + public boolean removeByUserid(String userid){ + QueryWrapper queryWrapper = new QueryWrapper(); + queryWrapper.eq("userId",userid); + + return this.remove(queryWrapper); + } +} diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/SFrontmenuTMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/SFrontmenuTMapper.xml new file mode 100644 index 0000000..7bef3f8 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/SFrontmenuTMapper.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + id AS id, + name AS name, + parentId AS parentid, + resKey AS reskey, + resUrl AS resurl, + level AS level, + icon AS icon, + orderNum AS ordernum, + ishide AS ishide, + description AS description + + + + + + and id ${id.dataOp} ${id.likestar}#{id.value}${id.likeend} + and name ${name.dataOp} ${name.likestar}#{name.value}${name.likeend} + and parentId ${parentid.dataOp} ${parentid.likestar}#{parentid.value}${parentid.likeend} + and resKey ${reskey.dataOp} ${reskey.likestar}#{reskey.value}${reskey.likeend} + and resUrl ${resurl.dataOp} ${resurl.likestar}#{resurl.value}${resurl.likeend} + and level ${level.dataOp} ${level.likestar}#{level.value}${level.likeend} + and icon ${icon.dataOp} ${icon.likestar}#{icon.value}${icon.likeend} + and orderNum ${ordernum.dataOp} ${ordernum.likestar}#{ordernum.value}${ordernum.likeend} + and ishide ${ishide.dataOp} ${ishide.likestar}#{ishide.value}${ishide.likeend} + and description ${description.dataOp} ${description.likestar}#{description.value}${description.likeend} + and USERID ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend} + + and DEPARTID in + + #{item} + + + + + + order by ${page.sortname} ${page.sortorder} + limit ${page.start}, ${page.Pagesize} + + + + diff --git a/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/SUserFrontmenuTMapper.xml b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/SUserFrontmenuTMapper.xml new file mode 100644 index 0000000..4f4c5ff --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/SUserFrontmenuTMapper.xml @@ -0,0 +1,33 @@ + + + + + + + + + userId AS userid, + menuId AS menuid + + + + + + and userId ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend} + and menuId ${menuid.dataOp} ${menuid.likestar}#{menuid.value}${menuid.likeend} + and USERID ${userid.dataOp} ${userid.likestar}#{userid.value}${userid.likeend} + + and DEPARTID in + + #{item} + + + + + + order by ${page.sortname} ${page.sortorder} + limit ${page.start}, ${page.Pagesize} + + + + diff --git a/runstart/src/main/resources/application-dev.yml b/runstart/src/main/resources/application-dev.yml index ee6744b..6e69b10 100644 --- a/runstart/src/main/resources/application-dev.yml +++ b/runstart/src/main/resources/application-dev.yml @@ -22,16 +22,16 @@ spring: primary: master datasource: master: - url: jdbc:mysql://47.93.59.251:3306/ocrnew?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false + url: jdbc:mysql://127.0.0.1:3306/ocrnew?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false driver-class-name: com.mysql.cj.jdbc.Driver - username: ysltest - password: ysltest2024. + username: ocrnew + password: ocrnew type: com.alibaba.druid.pool.DruidDataSource slave: - url: jdbc:mysql://47.93.59.251:3306/ocrnew?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false + url: jdbc:mysql://127.0.0.1:3306/ocrnew?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false driver-class-name: com.mysql.cj.jdbc.Driver - username: ysltest - password: ysltest2024. + username: ocrnew + password: ocrnew type: com.alibaba.druid.pool.DruidDataSource druid: # 初始连接数 @@ -160,15 +160,15 @@ mybatis-plus: xiaoyao: web: #上传文件路径 - uploadPath: D:/Java/idea/IdeaWorkSpace/ocr/htmlweb/upload + uploadPath: D:/ideaWork/jeecg/ocr/htmlweb/upload #页面根路径 - frontPath: D:/Java/idea/IdeaWorkSpace/ocr/htmlweb + frontPath: D:/ideaWork/jeecg/ocr/htmlweb #js、css、图片存放路径 - staticPath: D:/Java/idea/IdeaWorkSpace/ocr/htmlweb/static + staticPath: D:/ideaWork/jeecg/ocr/htmlweb/static #页面模版路径 - webPath: D:/Java/idea/IdeaWorkSpace/ocr/htmlweb/web + webPath: D:/ideaWork/jeecg/ocr/htmlweb/web #Lucene索引路径 - lucenePath: D:/Java/idea/IdeaWorkSpace/ocr/htmlweb/lucene/indexDir + lucenePath: D:/ideaWork/jeecg/ocr/htmlweb/lucene/indexDir #是否开启flowable haveFlowable: true webconfig: From dc0605c7fe9048768a5fc269cd83e3c53f56c4b4 Mon Sep 17 00:00:00 2001 From: admin <149470858@qq.com> Date: Wed, 24 Apr 2024 23:59:46 +0800 Subject: [PATCH 21/36] =?UTF-8?q?=E5=A2=9E=E5=8A=A0menu=E8=8F=9C=E5=8D=95?= =?UTF-8?q?=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- runstart/doc/sql/update.sql | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/runstart/doc/sql/update.sql b/runstart/doc/sql/update.sql index 0dfc7d1..ab5a8a3 100644 --- a/runstart/doc/sql/update.sql +++ b/runstart/doc/sql/update.sql @@ -212,3 +212,35 @@ INSERT INTO S_BACKSTAGEOPENURL_T(ID,URL,REMARK) VALUES(1196092352600928213, '/fl INSERT INTO S_BACKSTAGEOPENURL_T(ID,URL,REMARK) VALUES(1196092352600928214, '/backstage/admin/department/updateflowable', '公司关联工作流'); + + + +INSERT INTO S_RESOURCES_T(ID,RESOURCENAME,RPARENTID,ROOTID,RESOURCETYPE,PRIORITYPE,RESOURCE,RESOURCELIST,RESOURCEDESC,ENABLED,RIOCNIMAGE) +VALUES (1231708402914598912,'前端菜单管理',160000,160000, '1', '5','/backstage/oa/frontmenuHtml/toList','/backstage/oa/frontmenu/list','前端菜单管理', '1', 'icon-diamond'); + +INSERT INTO S_RESOURCEMETHOD_T (RESOURCEID,METHODID,RESOURCEBEFOR,RESOURCEAFTER) VALUES + (1231708402914598912, '101','/backstage/oa/frontmenuHtml/toSave','/backstage/oa/frontmenu/save'); + +INSERT INTO S_RESOURCEMETHOD_T (RESOURCEID,METHODID,RESOURCEBEFOR,RESOURCEAFTER) VALUES + (1231708402914598912, '102','/backstage/oa/frontmenuHtml/toEdit','/backstage/oa/frontmenu/edit'); + +INSERT INTO S_RESOURCEMETHOD_T (RESOURCEID,METHODID,RESOURCEBEFOR,RESOURCEAFTER) VALUES + (1231708402914598912, '103','/backstage/oa/frontmenu/delmore',null); + +INSERT INTO S_RESOURCEMETHOD_T (RESOURCEID,METHODID,RESOURCEBEFOR,RESOURCEAFTER) VALUES + (1231708402914598912, '104','/backstage/oa/frontmenu/getdata',null); + +INSERT INTO S_RESOURCEMETHOD_T (RESOURCEID,METHODID,RESOURCEBEFOR,RESOURCEAFTER) VALUES + (1231708402914598912, '111','/backstage/oa/frontmenuHtml/toEdit','/backstage/oa/frontmenu/edit'); + +INSERT INTO S_RESOURCEMETHOD_T (RESOURCEID,METHODID,RESOURCEBEFOR,RESOURCEAFTER) VALUES + (1231708402914598912, '112','/backstage/oa/frontmenu/delone',null); + +INSERT INTO S_RESOURCEMETHOD_T (RESOURCEID,METHODID,RESOURCEBEFOR,RESOURCEAFTER) +VALUES (1231708402914598912, 105,'/backstage/oa/userfrontmenu/list','/backstage/oa/userfrontmenu/saveactiongrant'); + +INSERT INTO S_BACKSTAGEOPENURL_T(ID,URL,REMARK) +VALUES(1231708402641969153, '/backstage/oa/userfrontmenuHtml/showlist', '进入前端菜单用户列表'); + +INSERT INTO S_BACKSTAGEOPENURL_T(ID,URL,REMARK) +VALUES(1231708402641969153, '/backstage/oa/userfrontmenuHtml/showlist', '进入前端菜单用户列表'); From f4446bf7c4515fd45e5c9d737b238d6f70bea07a Mon Sep 17 00:00:00 2001 From: shuliYao <1397940314@qq.com> Date: Thu, 25 Apr 2024 13:13:56 +0800 Subject: [PATCH 22/36] =?UTF-8?q?fix:=20=E8=A7=A3=E5=86=B3=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- runstart/src/main/resources/application-dev.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/runstart/src/main/resources/application-dev.yml b/runstart/src/main/resources/application-dev.yml index 6e69b10..e011947 100644 --- a/runstart/src/main/resources/application-dev.yml +++ b/runstart/src/main/resources/application-dev.yml @@ -22,16 +22,16 @@ spring: primary: master datasource: master: - url: jdbc:mysql://127.0.0.1:3306/ocrnew?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false + url: jdbc:mysql://47.93.59.251:3306/ocrnew?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false driver-class-name: com.mysql.cj.jdbc.Driver - username: ocrnew - password: ocrnew + username: ysltest + password: ysltest2024. type: com.alibaba.druid.pool.DruidDataSource slave: - url: jdbc:mysql://127.0.0.1:3306/ocrnew?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false + url: jdbc:mysql://47.93.59.251:3306/ocrnew?useUnicode=true&nullCatalogMeansCurrent=true&characterEncoding=UTF-8&characterSetResults=utf8&serverTimezone=Asia/Shanghai&useSSL=false driver-class-name: com.mysql.cj.jdbc.Driver - username: ocrnew - password: ocrnew + username: ysltest + password: ysltest2024. type: com.alibaba.druid.pool.DruidDataSource druid: # 初始连接数 From 33bda90426da486ba5bffb49a6922122b3c544a9 Mon Sep 17 00:00:00 2001 From: B1ackJack <9723189+b1ackjack@user.noreply.gitee.com> Date: Thu, 25 Apr 2024 14:08:29 +0800 Subject: [PATCH 23/36] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E9=85=8D=E7=BD=AE=E6=A0=B7=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- htmlweb/web/backstage/oa/ocr/frontconf/list.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htmlweb/web/backstage/oa/ocr/frontconf/list.html b/htmlweb/web/backstage/oa/ocr/frontconf/list.html index 91701c3..1085d65 100644 --- a/htmlweb/web/backstage/oa/ocr/frontconf/list.html +++ b/htmlweb/web/backstage/oa/ocr/frontconf/list.html @@ -129,7 +129,7 @@
-
+
From fc9ace25ce2bef9bb77d559c7f7cada9a1d4c0f7 Mon Sep 17 00:00:00 2001 From: DELL Date: Thu, 25 Apr 2024 14:40:42 +0800 Subject: [PATCH 24/36] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9/ocr/ocrUsersearch/?= =?UTF-8?q?querySearchCondition=E6=8E=A5=E5=8F=A3=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E7=8A=B6=E6=80=81=E5=AD=97=E6=AE=B5=EF=BC=8C?= =?UTF-8?q?=E5=BA=94=E8=AF=A5=E6=98=AFiztaskstatus?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ocr/service/impl/OcrUsersearchchildServiceImpl.java | 3 +++ .../main/java/cn/jyjz/xiaoyao/ocr/util/SearchConfigEnum.java | 2 ++ .../main/java/cn/jyjz/xiaoyao/ocr/vo/SearchConditionVO.java | 3 +++ 3 files changed, 8 insertions(+) diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java index 90a50ee..b24cfd8 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrUsersearchchildServiceImpl.java @@ -74,6 +74,9 @@ public class OcrUsersearchchildServiceImpl extends BaseServiceImpl Date: Thu, 25 Apr 2024 19:33:15 +0800 Subject: [PATCH 25/36] =?UTF-8?q?fix:1=E3=80=81=E7=9F=AD=E4=BF=A1=E9=AA=8C?= =?UTF-8?q?=E8=AF=81=E7=A0=81=E7=99=BB=E5=BD=95=EF=BC=8C=E8=A7=A3=E5=86=B3?= =?UTF-8?q?=E5=89=8D=E7=AB=AF=E8=8F=9C=E5=8D=95=E6=9D=83=E9=99=90=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E4=B8=BA=E7=A9=BAbug=EF=BC=9B=202=E3=80=81=E4=B8=89?= =?UTF-8?q?=E6=96=B9=E6=A0=87=E8=AF=86=E9=94=99=E8=AF=AF=E6=8F=90=E7=A4=BA?= =?UTF-8?q?=E8=B4=A6=E5=8F=B7=E4=B8=8D=E5=AD=98=E5=9C=A8=EF=BC=8C=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E4=B8=BA=E6=8F=90=E7=A4=BA=E4=BC=81=E4=B8=9A=E7=BC=96?= =?UTF-8?q?=E7=A0=81=E6=88=96=E8=80=85=E8=B4=A6=E5=8F=B7=E4=B8=8D=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=203=E3=80=81=E9=87=8D=E8=AE=BE=E5=AF=86=E7=A0=81?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E5=AF=B9=E7=99=BB=E5=BD=95=E5=90=8D=E5=92=8C?= =?UTF-8?q?=E6=89=8B=E6=9C=BA=E5=8F=B7=E8=BF=9B=E8=A1=8C=E9=AA=8C=E8=AF=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MyAuthenticationProvider.java | 2 +- .../admin/service/impl/UserServiceImpl.java | 2 ++ .../ocr/controller/OcrSUserTController.java | 23 ++++++++++++++++++- 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java index 38cc06a..8e780ae 100644 --- a/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java +++ b/jyjz-framework/jyjz-framework-securityweb/src/main/java/cn/jyjz/xiaoyao/framework/security/authentication/MyAuthenticationProvider.java @@ -136,7 +136,7 @@ public class MyAuthenticationProvider implements AuthenticationProvider { //判断账号是否存在 if(!"admin".equals(loginname) && userTokenService.listLoginNameCount(agentcode,loginname).intValue() <= 0){ - throw new AuthenticationServiceException("账号不存在!"); + throw new AuthenticationServiceException("账号或企业编码不存在!"); } //数据库查询用户对象 diff --git a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserServiceImpl.java b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserServiceImpl.java index 44ecf7b..199c01a 100644 --- a/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserServiceImpl.java +++ b/jyjz-system/jyjz-system-admin/src/main/java/cn/jyjz/xiaoyao/admin/service/impl/UserServiceImpl.java @@ -630,6 +630,8 @@ public class UserServiceImpl extends BaseServiceImpl imple User user = this.usermybatisdao.selectById(id); if(null != user){ + List frontmenuTList1 = isFrontmenuTService.queryUserMenuById(user.getLoginname()); + user.setFrontmenuTList(frontmenuTList1); List departmentList = this.departmentMybatisDao.selectDeptByUserid(user.getId()); user.formatDeptlist(departmentList); //user.setTenantList(this.userTenantService.listUserTenant(user.getId())); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrSUserTController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrSUserTController.java index 440f3d1..2daea9a 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrSUserTController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrSUserTController.java @@ -10,6 +10,7 @@ import cn.jyjz.xiaoyao.framework.security.service.SmsLoginService; import cn.jyjz.xiaoyao.ocr.dataobject.OcrSUserT; import cn.jyjz.xiaoyao.ocr.service.OcrISUserTService; import cn.jyjz.xiaoyao.ocr.service.OcrTaskchildPictureService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import io.swagger.annotations.ApiOperation; @@ -64,9 +65,29 @@ public class OcrSUserTController { if(null !=map.get("rePasswrod")){ if(map.get("newPassword").equals(map.get("rePasswrod"))){ +// BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder(); +// UpdateWrapper updatewrapper = new UpdateWrapper<>(); +// updatewrapper.eq("MOBILE", map.get("loginname")).set("PASSWORD",bCryptPasswordEncoder.encode(map.get("newPassword"))); + String MOBILE = ""; BCryptPasswordEncoder bCryptPasswordEncoder = new BCryptPasswordEncoder(); + if(StringUtils.isNotBlank(map.get("loginname"))){ + LambdaQueryWrapper ocrSUserTLambdaQueryWrapper = new LambdaQueryWrapper<>(); + ocrSUserTLambdaQueryWrapper.eq(OcrSUserT::getLoginname, map.get("loginname")); + OcrSUserT ocrSUserT = sUserTService.getOne(ocrSUserTLambdaQueryWrapper); + if(ocrSUserT != null){ + MOBILE = ocrSUserT.getMobile(); + } + }else { + return ResultVoUtil.success(ResultVo.SUCCESS,"请输入登录名!"); + } + UpdateWrapper updatewrapper = new UpdateWrapper<>(); - updatewrapper.eq("MOBILE", map.get("loginname")).set("PASSWORD",bCryptPasswordEncoder.encode(map.get("newPassword"))); +// updatewrapper.eq("MOBILE", map.get("loginname")).set("PASSWORD",bCryptPasswordEncoder.encode(map.get("newPassword"))); +// updatewrapper.eq("MOBILE", map.get("loginname")) +// .set("PASSWORD",bCryptPasswordEncoder.encode(map.get("newPassword"))); + updatewrapper.eq("MOBILE", MOBILE) + .eq("LOGINNAME", map.get("loginname")) + .set("PASSWORD",bCryptPasswordEncoder.encode(map.get("newPassword"))); boolean update = sUserTService.update(updatewrapper); if(update){ From 28fb1924e78ef13dbb1b07331a5505009cd4a078 Mon Sep 17 00:00:00 2001 From: sunchenliang <2532527871@qq.com> Date: Thu, 25 Apr 2024 22:22:18 +0800 Subject: [PATCH 26/36] =?UTF-8?q?feat=EF=BC=9A1.=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=97=A0=E9=87=8F=E4=BA=91=E8=B0=83=E7=94=A8=E6=97=A5=E5=BF=97?= =?UTF-8?q?=202.=E6=B7=BB=E5=8A=A0=E6=97=A0=E9=87=8F=E4=BA=91=E5=A4=B1?= =?UTF-8?q?=E8=B4=A5=E5=9B=9E=E8=B0=83=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/FlowTaskController.java | 39 ++++++- .../flowable/service/IFlowTaskService.java | 6 +- .../service/impl/FlowTaskServiceImpl.java | 25 +++- .../oa/from/dataDao/FlowableccMybatisDao.java | 4 +- .../jyjz/xiaoyao/ocr/api/PrevailCloudApi.java | 3 +- .../ocr/api/impl/PrevailCloudApiImpl.java | 39 ++++++- .../ocr/common/PrevailCloudConstant.java | 19 +++ .../ocr/dataDao/OcrPrevailCloudLogMapper.java | 13 +++ .../ocr/dataobject/OcrPrevailCloudLog.java | 110 ++++++++++++++++++ .../ocr/dataobject/OcrTaskchildPicture.java | 7 ++ .../service/OcrPrevailCloudLogService.java | 14 +++ .../service/OcrTaskchildPictureService.java | 2 +- .../impl/OcrPrevailCloudLogServiceImpl.java | 19 +++ .../impl/OcrTaskchildPictureServiceImpl.java | 37 +++--- .../resources/mapper/oa/FlowableccMapper.xml | 6 +- .../mapper/oa/OcrPrevailCloudLogMapper.xml | 27 +++++ 16 files changed, 329 insertions(+), 41 deletions(-) create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/common/PrevailCloudConstant.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrPrevailCloudLogMapper.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPrevailCloudLog.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrPrevailCloudLogService.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPrevailCloudLogServiceImpl.java create mode 100644 jyjz-system/jyjz-system-oa/src/main/resources/mapper/oa/OcrPrevailCloudLogMapper.xml diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java index e065df2..790df9b 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/controller/FlowTaskController.java @@ -37,6 +37,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.annotations.*; import org.apache.commons.collections4.CollectionUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.http.MediaType; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.*; @@ -54,6 +56,7 @@ import java.util.stream.Collectors; @RequestMapping("/flow/task") public class FlowTaskController extends BaseController { + private static final Logger log = LoggerFactory.getLogger(FlowTaskController.class); @Resource IFlowTaskService flowTaskService; @@ -676,8 +679,10 @@ public class FlowTaskController extends BaseController { }) @GetMapping("/repetitionTask") @ResponseBody - public ResultVo repetitionTask(@RequestParam(value = "type",required = false,defaultValue = "1") Integer type) { - return flowTaskService.repetitionTask(type); + public ResultVo repetitionTask(HttpServletRequest request, + @RequestParam(value = "type",required = false,defaultValue = "1") Integer type) { + String tenantId = request.getHeader("X-Tenant-Id"); + return flowTaskService.repetitionTask(type,tenantId); } /** @@ -691,10 +696,36 @@ public class FlowTaskController extends BaseController { }) @GetMapping("/repetitionTaskList") @ResponseBody - public ResultVo repetitionTaskList(@RequestParam(name = "pageNo") Integer pageNo, + public ResultVo repetitionTaskList(HttpServletRequest request, + @RequestParam(name = "pageNo") Integer pageNo, @RequestParam(name = "pageSize") Integer pageSize, @RequestParam(value = "type",required = false,defaultValue = "1") Integer type) { - Page result = flowTaskService.repetitionTaskList(pageNo, pageSize,type); + String tenantId = request.getHeader("X-Tenant-Id"); + Page result = flowTaskService.repetitionTaskList(pageNo, pageSize,type,tenantId); + return ResultVoUtil.success(result); + } + + /** + * 重复任务 + * + * @return + */ + @ApiOperation(value = "失败重试无量云", notes = "失败重试无量云") + @ApiImplicitParams({ + @ApiImplicitParam(paramType = "header", name = "X-Tenant-Id", value = "租户主键,用户登录时的信息“tenantList”中获得。", dataType = "String", required = true), + }) + @GetMapping("/retryPrevailCloud") + @ResponseBody + public ResultVo retryPrevailCloud(HttpServletRequest request, + @RequestParam(name = "formId") String formId) { + String tenantId = request.getHeader("X-Tenant-Id"); + Boolean result = null; + try { + result = flowTaskService.retryPrevailCloud(tenantId,formId); + } catch (Exception e) { + log.error(e.getMessage()); + result =false; + } return ResultVoUtil.success(result); } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java index 11e6a16..49d61f2 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/IFlowTaskService.java @@ -193,7 +193,9 @@ public interface IFlowTaskService { * * @return */ - ResultVo repetitionTask(Integer type); + ResultVo repetitionTask(Integer type, String tenantId); - Page repetitionTaskList(Integer pageNo, Integer pageSize,Integer type); + Page repetitionTaskList(Integer pageNo, Integer pageSize, Integer type, String tenantId); + + Boolean retryPrevailCloud(String tenantId, String formId) throws Exception; } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java index 4150259..8e4abb0 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/flowable/service/impl/FlowTaskServiceImpl.java @@ -35,10 +35,12 @@ import cn.jyjz.xiaoyao.oa.from.service.*; import cn.jyjz.xiaoyao.oa.from.vo.FlowUnionVo; import cn.jyjz.xiaoyao.oa.from.vo.RepeatedContentVo; +import cn.jyjz.xiaoyao.ocr.api.PrevailCloudApi; import cn.jyjz.xiaoyao.ocr.dataobject.*; import cn.jyjz.xiaoyao.ocr.service.*; import cn.jyjz.xiaoyao.ocr.util.SearchParaFormatting; import cn.jyjz.xiaoyao.ocr.vo.OcrTaskchildPictureApproVo; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -117,6 +119,10 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask private IOcrMsgService ocrMsgService; @Resource private UserdistionaryService userdistionaryService; + @Resource + private OcrPrevailCloudLogService prevailCloudLogService; + @Resource + private PrevailCloudApi prevailCloudApi; @Override public void myTodoTaskList(PageUtils vo, HttpServletRequest request) { @@ -599,7 +605,8 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask model.setFinishtime(System.currentTimeMillis()); model.setStates(SystemConstantsOa.OA_STATUS_TYPE_END); OcrPicture picture = ocrPictureService.getById(model.getPictureid()); - ocrTaskchildPictureService.sendFlowTaskResult(childPicture, picture, approve); + Boolean result = ocrTaskchildPictureService.sendFlowTaskResult(childPicture, picture, approve); + model.setSendResult(result ? 1 : 0); } else { childPicture.setTaskNode(taskData.getDescription()); //判断节点上的描述字段,是否伟finale_judgment,如果是,记录到终审表中,如果终审表已经存在,不再重复记录 @@ -1565,7 +1572,7 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask //审批节点 当前如果没有历史操作,则将当前节点赋值到历史审批节点中. if (StringUtils.isBlank(ocrTaskchildPictureAppro.getTasknamehis())) { ocrTaskchildPictureAppro.setTasknamehis(ocrTaskchildPictureAppro.getTaskname()); - }else{ + } else { if (assignee.contains(",")) { String[] split = assignee.split(","); for (int i = 0; i < split.length; i++) { @@ -1955,8 +1962,8 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } @Override - public ResultVo repetitionTask(Integer type) { - List repeatedContentVoList = flowableccMybatisDao.repetitionTask(type); + public ResultVo repetitionTask(Integer type, String tenantId) { + List repeatedContentVoList = flowableccMybatisDao.repetitionTask(type, tenantId); List formIdsToUpdate = new ArrayList<>(); if (org.apache.commons.collections4.CollectionUtils.isNotEmpty(repeatedContentVoList)) { List checkDescribeHis = new ArrayList<>(); @@ -2004,12 +2011,18 @@ public class FlowTaskServiceImpl extends FlowServiceFactory implements IFlowTask } @Override - public Page repetitionTaskList(Integer pageNo, Integer pageSize, Integer type) { + public Page repetitionTaskList(Integer pageNo, Integer pageSize, Integer type, String tenantId) { Page page = new Page<>(pageNo, pageSize); - Page result = flowableccMybatisDao.repetitionTaskList(page, type); + Page result = flowableccMybatisDao.repetitionTaskList(page, type, tenantId); return result; } + @Override + public Boolean retryPrevailCloud(String tenantId, String formId) throws Exception { + OcrPrevailCloudLog one = prevailCloudLogService.getOne(new LambdaQueryWrapper().eq(OcrPrevailCloudLog::getFormId, formId)); + return prevailCloudApi.sendFlowTaskResult(formId, one.getRequestParam(), one.getPictureId(), one.getTaskId()); + } + /** * 格式化筛选关系 * diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java index 94d1b52..7b2ef3c 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/oa/from/dataDao/FlowableccMybatisDao.java @@ -40,7 +40,7 @@ public interface FlowableccMybatisDao extends BaseMapper { */ List selectUserByFromid(String fromid); - List repetitionTask(@Param("type") Integer type); + List repetitionTask(@Param("type") Integer type, @Param("tenantId") String tenantId); - Page repetitionTaskList(Page page, @Param("type") Integer type); + Page repetitionTaskList(Page page, @Param("type") Integer type, @Param("tenantId") String tenantId); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/PrevailCloudApi.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/PrevailCloudApi.java index 0adf75f..63c900f 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/PrevailCloudApi.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/PrevailCloudApi.java @@ -3,7 +3,6 @@ package cn.jyjz.xiaoyao.ocr.api; import cn.jyjz.xiaoyao.ocr.api.entity.PictureSourceParameter; import cn.jyjz.xiaoyao.ocr.api.entity.PictureSourceResult; import cn.jyjz.xiaoyao.ocr.api.utils.ApiPage; -import org.apache.commons.compress.utils.Lists; import java.util.List; @@ -23,7 +22,7 @@ public interface PrevailCloudApi { */ ApiPage pullPictureSource(PictureSourceParameter pictureSourceParameter) throws Exception; - void sendFlowTaskResult(String tenantId,String data) throws Exception; + Boolean sendFlowTaskResult(String formId, String data, Long pictureId, String remark) throws Exception; /** * 根据租户id 拉取对应业务主体信息 diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java index fc6cd96..2beafe0 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/api/impl/PrevailCloudApiImpl.java @@ -11,8 +11,11 @@ import cn.jyjz.xiaoyao.ocr.api.utils.ApiHelper; import cn.jyjz.xiaoyao.ocr.api.utils.ApiPage; import cn.jyjz.xiaoyao.ocr.api.utils.RequestData; import cn.jyjz.xiaoyao.ocr.api.utils.ResultData; +import cn.jyjz.xiaoyao.ocr.common.PrevailCloudConstant; import cn.jyjz.xiaoyao.ocr.dataobject.OcrPicture; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrPrevailCloudLog; import cn.jyjz.xiaoyao.ocr.service.OcrPictureService; +import cn.jyjz.xiaoyao.ocr.service.OcrPrevailCloudLogService; import cn.jyjz.xiaoyao.ocr.thread.TaskQueue; import cn.jyjz.xiaoyao.ocr.thread.entity.PictureImgToLocalEntity; import cn.jyjz.xiaoyao.ocr.util.httputil.HttpClient; @@ -28,6 +31,7 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -51,6 +55,9 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { @Autowired private ApiConfig apiConfig; + @Resource + private OcrPrevailCloudLogService prevailCloudLogService; + /** * 拉取图片信息 */ @@ -78,7 +85,9 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { if (!apiConfig.checkConfig()) { return null; } - + OcrPrevailCloudLog prevailCloudLog = new OcrPrevailCloudLog(); + prevailCloudLog.setType(PrevailCloudConstant.PULL_PICTURE_SOURCE); + prevailCloudLog.setRequestParam(JSONUtil.toJsonStr(pictureSourceParameter)); //2.对象转map Map queryParam = BeanUtil.beanToMap(pictureSourceParameter); Map queryParamStr = new HashMap<>(); @@ -108,6 +117,8 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { String responseJsonStr = HttpClient.doPost(url, httpParamers, null, apiConfig.getConnectTimeout(), apiConfig.getReadTimeout()); System.out.println(responseJsonStr); ResultData resultData = JSONUtil.toBean(responseJsonStr, ResultData.class); + prevailCloudLog.setResponseParam(responseJsonStr); + prevailCloudLog.setStatus(resultData.getStatus()); //解密请求数据 if (resultData.getStatus() == 100) { @@ -126,11 +137,18 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { logger.debug("请求图片接口数据失败,参数:{},返回值:{}", json, responseJsonStr); } + prevailCloudLogService.save(prevailCloudLog); return null; } @Override - public void sendFlowTaskResult(String tenantId, String data) throws Exception { + public Boolean sendFlowTaskResult(String formId, String data, Long pictureId, String remark) throws Exception { + OcrPrevailCloudLog prevailCloudLog = new OcrPrevailCloudLog(); + prevailCloudLog.setType(PrevailCloudConstant.SEND_FLOW_RESULT); + prevailCloudLog.setRequestParam(data); + prevailCloudLog.setFormId(Long.parseLong(formId)); + prevailCloudLog.setTaskId(remark); + prevailCloudLog.setPictureId(pictureId); ResultData stringResultData = ApiHelper.buildResponse(apiConfig.getAccessCode(), data); // RequestData requestData = ApiHelper.buildRequest(tenantId, apiConfig.getAccessKey(), apiConfig.getAccessCode(),data);//组装请求参数 String url = apiConfig.getInterfaceDomain() + sendResultUrl; @@ -141,11 +159,21 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { httpParamers.setJsonParamer(requestBodyJson); //发起请求 String responseJsonStr = HttpClient.doPost(url, httpParamers, null, apiConfig.getConnectTimeout(), apiConfig.getReadTimeout()); - System.out.println(responseJsonStr); + prevailCloudLog.setResponseParam(responseJsonStr); + ResultData resultData = JSONUtil.toBean(responseJsonStr, ResultData.class); + prevailCloudLog.setStatus(resultData.getStatus()); + prevailCloudLogService.save(prevailCloudLog); + if (resultData.getStatus() == 100) { + return true; + } + return false; } @Override public void pullAccountInfo(long tenantNo) throws Exception { + OcrPrevailCloudLog prevailCloudLog = new OcrPrevailCloudLog(); + prevailCloudLog.setType(PrevailCloudConstant.PULL_ACCOUNT_INFO); + prevailCloudLog.setRequestParam(String.valueOf(tenantNo)); Map queryParam = new HashMap<>(); queryParam.put("tenantNo", tenantNo); String json = JSONObject.toJSONString(queryParam); @@ -159,8 +187,9 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { String responseJsonStr = HttpClient.doPost(url, httpParamers, null, apiConfig.getConnectTimeout(), apiConfig.getReadTimeout()); System.out.println(responseJsonStr); ResultData resultData = JSONUtil.toBean(responseJsonStr, ResultData.class); + prevailCloudLog.setResponseParam(responseJsonStr); + prevailCloudLog.setStatus(resultData.getStatus()); if (resultData.getStatus() == 100) { - ; //解析基础数据 String data = ApiHelper.decryptResponse(apiConfig.getAccessCode(), resultData); ApiPage apiPage = JSONUtil.toBean(data, ApiPage.class); @@ -174,6 +203,8 @@ public class PrevailCloudApiImpl implements PrevailCloudApi { // resultApiPage.setRecords(listResult); // return resultApiPage; } + prevailCloudLogService.save(prevailCloudLog); + } /** diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/common/PrevailCloudConstant.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/common/PrevailCloudConstant.java new file mode 100644 index 0000000..241c3af --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/common/PrevailCloudConstant.java @@ -0,0 +1,19 @@ +package cn.jyjz.xiaoyao.ocr.common; + +/** + * ClassName: PrevailCloudConstant$.java + * Description: + * Author: scl. + * Date: 2024/4/25 下午8:36 + */ +public class PrevailCloudConstant { + + public static Integer PULL_PICTURE_SOURCE = 0; + + public static Integer SEND_FLOW_RESULT = 1; + + public static Integer PULL_ACCOUNT_INFO = 2; + + + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrPrevailCloudLogMapper.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrPrevailCloudLogMapper.java new file mode 100644 index 0000000..af28b95 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataDao/OcrPrevailCloudLogMapper.java @@ -0,0 +1,13 @@ +package cn.jyjz.xiaoyao.ocr.dataDao; + +import cn.jyjz.xiaoyao.ocr.dataobject.OcrPrevailCloudLog; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + * ClassName: $className$.java + * Description: + * Author: scl. + * Date: 2024/4/25 下午9:18 + */ +public interface OcrPrevailCloudLogMapper extends BaseMapper { +} \ No newline at end of file diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPrevailCloudLog.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPrevailCloudLog.java new file mode 100644 index 0000000..d98a16a --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrPrevailCloudLog.java @@ -0,0 +1,110 @@ +package cn.jyjz.xiaoyao.ocr.dataobject; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import java.util.Date; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * ClassName: $className$.java + * Description: + * Author: scl. + * Date: 2024/4/25 下午9:18 + */ + +/** + * 无量云请求日志 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "ocr_prevail_cloud_log") +public class OcrPrevailCloudLog { + /** + * ID主键自增 + */ + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + /** + * 表单id + */ + @TableField(value = "form_id") + private Long formId; + + /** + * 请求参数 + */ + @TableField(value = "request_param") + private String requestParam; + + /** + * 返回参数 + */ + @TableField(value = "response_param") + private String responseParam; + + /** + * 返回参数 + */ + @TableField(value = "`status`") + private Integer status; + + /** + * 查询方法 + */ + @TableField(value = "`type`") + private Integer type; + + /** + * 创建人 + */ + @TableField(value = "create_by") + private String createBy; + + /** + * 创建时间 + */ + @TableField(value = "create_time") + private Date createTime; + + /** + * 修改人 + */ + @TableField(value = "update_by") + private String updateBy; + + /** + * 修改时间 + */ + @TableField(value = "update_time") + private Date updateTime; + + /** + * 任务id + */ + @TableField(value = "task_id") + private String taskId; + + /** + * 图片id + */ + @TableField(value = "picture_id") + private Long pictureId; + + /** + * 业务主体id + */ + @TableField(value = "tenant_id") + private String tenantId; + + /** + * 冗余字段 + */ + @TableField(value = "redundance") + private String redundance; +} \ No newline at end of file diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPicture.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPicture.java index 95428f9..8e0b134 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPicture.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrTaskchildPicture.java @@ -215,6 +215,12 @@ public class OcrTaskchildPicture implements BaseDto, java.io.Serializable { @TableField(value = "is_repeated_nodules") private Integer isRepeatedNodules; + @Schema(description = "无量云回调结果") + @TableField(value = "send_result") + private Integer sendResult; + + + @ApiModelProperty(value = "项目对象") @TableField(exist = false) private Category categoryDto; @@ -295,6 +301,7 @@ public class OcrTaskchildPicture implements BaseDto, java.io.Serializable { @TableField(exist = false) private String serverThumbnailUrl; + public FlowModelVO getFlowModelVO() { FlowModelVO flowModelVO = new FlowModelVO(); flowModelVO.setFormid(this.getId()); diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrPrevailCloudLogService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrPrevailCloudLogService.java new file mode 100644 index 0000000..fb60c5e --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrPrevailCloudLogService.java @@ -0,0 +1,14 @@ +package cn.jyjz.xiaoyao.ocr.service; + +import cn.jyjz.xiaoyao.ocr.dataobject.OcrPrevailCloudLog; +import com.baomidou.mybatisplus.extension.service.IService; + /** + * ClassName: $className$.java + * Description: + * Author: scl. + * Date: 2024/4/25 上午12:52 + */ +public interface OcrPrevailCloudLogService extends IService{ + + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java index 8ac774e..bd22b9a 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrTaskchildPictureService.java @@ -149,7 +149,7 @@ public interface OcrTaskchildPictureService extends BaseService getPackageSimilarityList(Integer pageNo, Integer pageSize, String oderType, String oderName, String checkDuplicateId, String pictureId); - void sendFlowTaskResult(OcrTaskchildPicture taskchildPicture, OcrPicture picture, FlowApprove flowApprove) throws Exception; + Boolean sendFlowTaskResult(OcrTaskchildPicture taskchildPicture, OcrPicture picture, FlowApprove flowApprove) throws Exception; List getDubiousfileList(List pictureIds, String userNodeType); } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPrevailCloudLogServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPrevailCloudLogServiceImpl.java new file mode 100644 index 0000000..f21adb8 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrPrevailCloudLogServiceImpl.java @@ -0,0 +1,19 @@ +package cn.jyjz.xiaoyao.ocr.service.impl; + +import org.springframework.stereotype.Service; +import org.springframework.beans.factory.annotation.Autowired; +import java.util.List; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrPrevailCloudLog; +import cn.jyjz.xiaoyao.ocr.dataDao.OcrPrevailCloudLogMapper; +import cn.jyjz.xiaoyao.ocr.service.OcrPrevailCloudLogService; +/** + * ClassName: $className$.java + * Description: + * Author: scl. + * Date: 2024/4/25 上午12:52 + */ +@Service +public class OcrPrevailCloudLogServiceImpl extends ServiceImpl implements OcrPrevailCloudLogService{ + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java index 420a998..96de3e4 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrTaskchildPictureServiceImpl.java @@ -110,7 +110,7 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl ocrPictureList, String tenantId, UserToken userToken,String deptid) { + public void createTask(List ocrPictureList, String tenantId, UserToken userToken, String deptid) { if (null != ocrPictureList && !ocrPictureList.isEmpty()) { //用于标记相似度是否存在百分百的情况 for (OcrPicture ocrPicture : ocrPictureList) { @@ -380,7 +380,7 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl first = list.stream().filter(userapprove -> userapprove.getUserid().toString().equals(userToken.getUserid()) && userapprove.getTaskindex().equals(taskNode)).findFirst(); Userapprove userapprove = new Userapprove(); - userapprove.setStatshis(ocrTaskchildPicture.getStates()==3?2:ocrTaskchildPicture.getStates()==5?3:1); + userapprove.setStatshis(ocrTaskchildPicture.getStates() == 3 ? 2 : ocrTaskchildPicture.getStates() == 5 ? 3 : 1); ocrTaskchildPicture.setUserapprove(first.orElse(userapprove)); } //查询图片对象 @@ -420,13 +420,13 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl listFinal(Map query) { - return this.ocrtaskchildpicturemybatisdao.listFinalTask(query); + return this.ocrtaskchildpicturemybatisdao.listFinalTask(query); } @@ -667,8 +667,8 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl getPictureHistoryList(List pictureIds, String pictureId,String taskNode) { - return ocrtaskchildpicturemybatisdao.getPictureHistoryList(pictureIds, pictureId,taskNode); + public List getPictureHistoryList(List pictureIds, String pictureId, String taskNode) { + return ocrtaskchildpicturemybatisdao.getPictureHistoryList(pictureIds, pictureId, taskNode); } @Override @@ -693,18 +693,18 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl pictureIds = jsonObject.keySet(); - List taskChildPicturesOld = this.getPictureHistoryList(new ArrayList<>(pictureIds), pictureId,taskNode); + List taskChildPicturesOld = this.getPictureHistoryList(new ArrayList<>(pictureIds), pictureId, taskNode); List taskChildPictures = new ArrayList<>(); for (OcrTaskChildPictureVo taskChildPicture : taskChildPicturesOld) { - if(taskChildPicture.getPictureId()!=null){ + if (taskChildPicture.getPictureId() != null) { taskChildPictures.add(taskChildPicture); } } for (OcrTaskChildPictureVo taskChildPicture : taskChildPictures) { - if(jsonObject.getString(taskChildPicture.getPictureId())!=null){ + if (jsonObject.getString(taskChildPicture.getPictureId()) != null) { taskChildPicture.setSimilarityScore(Integer.parseInt(jsonObject.getString(taskChildPicture.getPictureId().toString()))); - }else{ + } else { taskChildPicture.setSimilarityScore(1); } @@ -737,14 +737,14 @@ public class OcrTaskchildPictureServiceImpl extends BaseServiceImpl 1) t1 LEFT JOIN ocr_taskchild_picture t2 ON t1.ID = t2.PICTUREID LEFT JOIN ocr_picture t3 on t1.id = t3.ID + where t2.TENANTID = #{tenantId,jdbcType=VARCHAR} + +
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ + +
+
+
+ +
+
+
+
+
+ +<#include "/head/footadd.html" /> + + + + diff --git a/htmlweb/web/backstage/oa/ocr/distionary/edit.html b/htmlweb/web/backstage/oa/ocr/distionary/edit.html new file mode 100644 index 0000000..e6b16e5 --- /dev/null +++ b/htmlweb/web/backstage/oa/ocr/distionary/edit.html @@ -0,0 +1,230 @@ +<#include "/common/taglibs.html" /> + + + + + 数据字典 + + + +<#include "/head/headaddedit.html" /> + + +
+
+
+
+
+
基本信息
+
+
+
+
+ + +
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ + +
+
+
+
+
+
+
+
+
+
+<#include "/head/footadd.html" /> + + + + diff --git a/htmlweb/web/backstage/oa/ocr/distionary/list.html b/htmlweb/web/backstage/oa/ocr/distionary/list.html new file mode 100644 index 0000000..41e146b --- /dev/null +++ b/htmlweb/web/backstage/oa/ocr/distionary/list.html @@ -0,0 +1,374 @@ +<#include "/common/taglibs.html" /> + + + + + 数据字典 + +<#include "/head/headlist.html" /> + + + +
+
+
+
+
+ +
+ +
+
+ +
+ + +
+
+
+
+
+
+
+
+
+   + +
+
+
+
+
+
+
+
+
+
+ + +<#include "/head/footlist.html" /> + + + + + + + + + diff --git a/htmlweb/web/backstage/oa/ocr/distionarygroup/add.html b/htmlweb/web/backstage/oa/ocr/distionarygroup/add.html new file mode 100644 index 0000000..b6bf37e --- /dev/null +++ b/htmlweb/web/backstage/oa/ocr/distionarygroup/add.html @@ -0,0 +1,238 @@ +<#include "/common/taglibs.html" /> + + + + + 数据字典分组 + + + +<#include "/head/headaddedit.html" /> + + + +
+
+
+
+
+
基本信息
+
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+ + + +
+
+
+
+
+
+
+ +
+ +
+
+
+ +
+
+ +
+ +
+ + + +
+
+
+
+
+
+
+
+ +
+
+ + +
+ +
+
+
+
+
+ +
+ +
+
+
+
+ + +
+
+
+ + +
+
+
+
+
+
+
+
+
+
+<#include "/head/footadd.html" /> + + + + + + diff --git a/htmlweb/web/backstage/oa/ocr/distionarygroup/edit.html b/htmlweb/web/backstage/oa/ocr/distionarygroup/edit.html new file mode 100644 index 0000000..e834eb0 --- /dev/null +++ b/htmlweb/web/backstage/oa/ocr/distionarygroup/edit.html @@ -0,0 +1,258 @@ +<#include "/common/taglibs.html" /> + + + + + 数据字典分组 + + + +<#include "/head/headaddedit.html" /> + + + +
+
+
+
+
+
基本信息
+
+
+
+
+ + +
+
+
+ +
+ +
+
+
+
+
+ +
+ +
+
+
+
+
+
+
+ +
+ +
+
+
+
+
+ +
+
+ + + +
+
+
+
+
+
+
+
+ +
+
+ + +
+
+
+
+
+
+ +
+ +
+
+
+
+ + +
+
+
+ + +
+
+
+
+
+
+
+
+
+
+<#include "/head/footadd.html" /> + + + + + diff --git a/htmlweb/web/backstage/oa/ocr/distionarygroup/list.html b/htmlweb/web/backstage/oa/ocr/distionarygroup/list.html new file mode 100644 index 0000000..0327960 --- /dev/null +++ b/htmlweb/web/backstage/oa/ocr/distionarygroup/list.html @@ -0,0 +1,569 @@ +<#include "/common/taglibs.html" /> + + + + + 数据字典分组 + + + +<#include "/head/headlist.html" /> + + + + +
+ +
+
+
+
+ +
+

+ 字典分类 +

+
+ +
+
+
+
+ +
+ +
+
+
+
+
+
+ +
+ +
+ +
+ + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+ + + + +<#include "/head/footlist.html" /> + + + + + + + + + + diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDictionaryController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDictionaryController.java index cb85fc1..dd2f716 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDictionaryController.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDictionaryController.java @@ -1,10 +1,25 @@ package cn.jyjz.xiaoyao.ocr.controller; +import cn.jyjz.xiaoyao.admin.service.ResourcesService; +import cn.jyjz.xiaoyao.admin.service.UserService; +import cn.jyjz.xiaoyao.common.base.constant.SystemConstants; +import cn.jyjz.xiaoyao.common.base.controller.BaseController; +import cn.jyjz.xiaoyao.common.base.param.ParamterPage; +import cn.jyjz.xiaoyao.common.base.service.UserTokenService; +import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil; +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 cn.jyjz.xiaoyao.common.base.vo.UserToken; +import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat; +import cn.jyjz.xiaoyao.framework.security.model.AdminUserModel; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionary; import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionary; import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup; import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryService; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -16,6 +31,7 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; +import java.util.Objects; /** * ocr_业务数据数据字典 @@ -27,11 +43,22 @@ import java.io.IOException; @Api(tags="ocr_业务数据数据字典") @RestController @RequestMapping("/ocr/dictionary") -public class OcrDictionaryController { +public class OcrDictionaryController extends BaseController { @Autowired private OcrDictionaryService ocrDictionaryService; + + @Autowired + private UserTokenService userTokenService; + + @Autowired + private UserService userService; + + @Autowired + private ResourcesService resourcesService; + + /** *通过列表获取字典数据 *创建人:mail.zhangyong@gmail.com @@ -81,4 +108,80 @@ public class OcrDictionaryController { return new ResultVo<>(ResultVo.ERROR,result); } + /** + *方法描述:返回json字符串,接受参数,dto名称以及分页信息 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/list") + public ResultVo> listDistionarygroup(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException { + SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); + cn.jyjz.xiaoyao.admin.dataobject.User user = this.userService.getSessionUser(request); + OcrDictionary distionarygroup = new OcrDictionary(); + distionarygroup.setSearchQueryrolesShowleave(user.getSearchQueryrolesShowleave()); + QueryWrapper queryWrapper = SearchQueryFormat + .queryStringFormat(searchQuery,distionarygroup); + IPage page = this.ocrDictionaryService.selectSearchListPage(paramterPage,queryWrapper);; + return ResultVoUtil.success(page); + } + + + + /** + *方法描述:保存添加数据 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @PostMapping("/save") + public ResultVo saveDistionarygroup(HttpServletResponse response,HttpServletRequest request,OcrDictionary tab) throws IOException{ + OcrDictionary ocrDictionaryGroup = ocrDictionaryService.getOne(new LambdaQueryWrapper().eq(OcrDictionary::getValue, tab.getValue())); + if(Objects.nonNull(ocrDictionaryGroup)){ + return ResultVoUtil.error("字段名称重复"); + } + this.ocrDictionaryService.save(tab); + return ResultVoUtil.success(); + } + + /** + *方法描述:根据页面form传来的对象修改数据 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @PostMapping("/edit") + public ResultVo editDistionarygroup(HttpServletResponse response,HttpServletRequest request,OcrDictionary tab) throws IOException{ + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + this.ocrDictionaryService.updateById(tab); + return ResultVoUtil.success(); + } + + /** + *方法描述:通过主键获得对象信息 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/getdata/{id}") + @ResponseBody + public ResultVo getdateDistionarygroup(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{ + OcrDictionary dto = this.ocrDictionaryService.selectDtoById(id); + if(null != dto){ + return ResultVoUtil.success(dto); + }else{ + return ResultVoUtil.error(); + } + } + + /** + *方法描述:根据id字符串组删除对象方法,例如1,2,3 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/delmore") + @ResponseBody + public ResultVo delMoreDistionarygroup(HttpServletResponse response,HttpServletRequest request) throws IOException{ + String ids = request.getParameter("id"); + this.ocrDictionaryService.deleteByIdMore(ids); + return ResultVoUtil.success(); + } + + } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDictionaryGropuController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDictionaryGropuController.java new file mode 100644 index 0000000..e7262e7 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDictionaryGropuController.java @@ -0,0 +1,231 @@ +package cn.jyjz.xiaoyao.ocr.controller; + + +import cn.jyjz.xiaoyao.admin.dataobject.Distionarygroup; +import cn.jyjz.xiaoyao.admin.dataobject.Distionarytype; +import cn.jyjz.xiaoyao.admin.service.ResourcesService; +import cn.jyjz.xiaoyao.admin.service.UserService; +import cn.jyjz.xiaoyao.common.base.constant.SystemConstants; +import cn.jyjz.xiaoyao.common.base.controller.BaseController; +import cn.jyjz.xiaoyao.common.base.param.ParamterPage; +import cn.jyjz.xiaoyao.common.base.service.UserTokenService; +import cn.jyjz.xiaoyao.common.base.util.RequestBaseUtil; +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 cn.jyjz.xiaoyao.common.base.vo.UserToken; +import cn.jyjz.xiaoyao.common.mybatisplus.util.SearchQueryFormat; +import cn.jyjz.xiaoyao.framework.security.model.AdminUserModel; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionary; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrField; +import cn.jyjz.xiaoyao.ocr.dto.OcrFieldDto; +import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryGroupService; +import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryService; +import cn.jyjz.xiaoyao.ocr.vo.OcrFieldVo; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeansException; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.util.Arrays; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; + +/** + * ocr_业务数据数据字典 + * + * @author hugh(shuli.yao) 1397940314@qq.com + * @version 1.0 + * @date 2024/3/16 15:16 + */ +@Api(tags="ocr_业务数据数据字典") +@RestController +@RequestMapping("/ocr/dictionaryGroup") +public class OcrDictionaryGropuController extends BaseController { + + @Autowired + private OcrDictionaryGroupService ocrDictionaryGroupService; + + @Autowired + private UserTokenService userTokenService; + + @Autowired + private UserService userService; + + @Autowired + private ResourcesService resourcesService; + + /** + *方法描述:返回json字符串,接受参数,dto名称以及分页信息 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/list") + public ResultVo> listDistionarygroup(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException { + SearchQuery searchQuery = this.getParametersStartingWithToSearchJson(request, "search_"); + cn.jyjz.xiaoyao.admin.dataobject.User user = this.userService.getSessionUser(request); + OcrDictionaryGroup distionarygroup = new OcrDictionaryGroup(); + distionarygroup.setSearchQueryrolesShowleave(user.getSearchQueryrolesShowleave()); + QueryWrapper queryWrapper = SearchQueryFormat + .queryStringFormat(searchQuery,distionarygroup); + IPage page = this.ocrDictionaryGroupService.selectSearchListPage(paramterPage,queryWrapper);; + return ResultVoUtil.success(page); + } + + + /** + *方法描述:跳转到保存页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/toolsbarOther") + @ResponseBody + public ResultVo toolsbarOther(HttpServletResponse response, HttpServletRequest request){ + String resourceid = request.getParameter("resourceid"); + if(StringUtils.isBlank(resourceid)){ + resourceid = "26"; + } + + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + + AdminUserModel adminUserModel = (AdminUserModel) this.userTokenService.getSessionUserFromCache(userToken.getTokenid()); + + cn.jyjz.xiaoyao.common.base.vo.User user = adminUserModel.getUser(); + + JSONObject jsonObject = this.resourcesService.getResourceMethod(Long.decode(resourceid), user); + + JSONArray toolsbar = (JSONArray) jsonObject.get(SystemConstants.SYS_JSP_TOOLSBAR); + if(null == toolsbar || toolsbar.isEmpty()){ + jsonObject = this.resourcesService.getObjectByResourceid(resourceid); + } + + + return ResultVoUtil.success(jsonObject); + } + + /** + *方法描述:保存添加数据 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @PostMapping("/save") + public ResultVo saveDistionarygroup(HttpServletResponse response,HttpServletRequest request,OcrDictionaryGroup tab) throws IOException{ + OcrDictionaryGroup ocrDictionaryGroup = ocrDictionaryGroupService.getOne(new LambdaQueryWrapper().eq(OcrDictionaryGroup::getField, tab.getField())); + if(Objects.nonNull(ocrDictionaryGroup)){ + return ResultVoUtil.error("字段名称重复"); + } + this.ocrDictionaryGroupService.save(tab); + return ResultVoUtil.success(); + } + + /** + *方法描述:根据页面form传来的对象修改数据 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @PostMapping("/edit") + public ResultVo editDistionarygroup(HttpServletResponse response,HttpServletRequest request,OcrDictionaryGroup tab) throws IOException{ + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + this.ocrDictionaryGroupService.updateById(tab); + return ResultVoUtil.success(); + } + + /** + *方法描述:通过主键获得对象信息 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/getdata/{id}") + @ResponseBody + public ResultVo getdateDistionarygroup(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{ + OcrDictionaryGroup dto = this.ocrDictionaryGroupService.selectDtoById(id); + if(null != dto){ + return ResultVoUtil.success(dto); + }else{ + return ResultVoUtil.error(); + } + } + + /** + *方法描述:根据id字符串组删除对象方法,例如1,2,3 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/delmore") + @ResponseBody + public ResultVo delMoreDistionarygroup(HttpServletResponse response,HttpServletRequest request) throws IOException{ + String ids = request.getParameter("id"); + this.ocrDictionaryGroupService.deleteByIdMore(ids); + return ResultVoUtil.success(); + } + + + + @GetMapping("/listall") + public ResultVo> listall(ParamterPage paramterPage, HttpServletRequest request, HttpServletResponse response) throws IOException{ + + List list = this.ocrDictionaryGroupService.list(); + return ResultVoUtil.success(list); + } + /** + *方法描述:保存添加数据 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:07 + **/ + @PostMapping("/save") + public ResultVo saveDistionarytype(HttpServletResponse response,HttpServletRequest request,OcrDictionaryGroup tab) throws IOException{ + UserToken userToken = this.userTokenService.getUserToken(RequestBaseUtil.getToken(request)); + boolean isok = false; + if(null != tab.getId()){ + isok = this.ocrDictionaryGroupService.updateById(tab); + }else { + isok = this.ocrDictionaryGroupService.save(tab); + } + return isok?ResultVoUtil.success():ResultVoUtil.error(); + } + + /** + *方法描述:通过主键获得对象信息 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:07 + **/ + @GetMapping("/getdata/{id}") + @ResponseBody + public ResultVo getdateDistionarytype(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") Long id) throws IOException{ + OcrDictionaryGroup dto = this.ocrDictionaryGroupService.selectDtoById(id); + + if(null != dto){ + return ResultVoUtil.success(dto); + }else{ + return ResultVoUtil.error(); + } + } + + /** + *方法描述:根据id字符串组删除对象方法,例如1,2,3 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:07 + **/ + @GetMapping("/delmore") + @ResponseBody + public ResultVo delMoreDistionarytype(HttpServletResponse response,HttpServletRequest request) throws IOException{ + String ids = request.getParameter("id"); + this.ocrDictionaryGroupService.deleteByIdMore(ids); + return ResultVoUtil.success(); + } + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDistionaryHtmlController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDistionaryHtmlController.java new file mode 100644 index 0000000..4d8f569 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDistionaryHtmlController.java @@ -0,0 +1,83 @@ +package cn.jyjz.xiaoyao.ocr.controller; + +import cn.jyjz.xiaoyao.admin.dataobject.Distionarygroup; +import cn.jyjz.xiaoyao.admin.service.DistionaryService; +import cn.jyjz.xiaoyao.admin.service.DistionarygroupService; +import cn.jyjz.xiaoyao.admin.service.UserService; +import cn.jyjz.xiaoyao.common.base.controller.BaseController; +import cn.jyjz.xiaoyao.common.base.service.UserTokenService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +@Controller +@RequestMapping("/backstage/admin/ocrDistionaryHtml") +public class OcrDistionaryHtmlController extends BaseController{ + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private DistionaryService distionaryService; + + @Autowired + private DistionarygroupService distionarygroupService; + + @Autowired + private UserTokenService userTokenService; + @Autowired + private UserService userService; + /** + *方法描述:跳转到列表页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-29 16:00:28 + **/ + @GetMapping("/toList") + public String toListDistionary(HttpServletResponse response,HttpServletRequest request){ + + + + String resourceid = request.getParameter("resourceid"); + String distionarygroupid = request.getParameter("distionarygroupid"); + + Distionarygroup distionarygroup = distionarygroupService.selectDtoById(Long.parseLong(distionarygroupid)); + + request.setAttribute("resourceid",resourceid); + request.setAttribute("distionarygroupid",distionarygroupid); + request.setAttribute("distionarytypeid",distionarygroup.getDistionarytypeid().toString()); + return "/backstage/oa/ocr/distionary/list"; + } + + /** + *方法描述:跳转到保存页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-29 16:00:28 + **/ + @GetMapping("/toSave") + public String toSaveDistionary(HttpServletResponse response,HttpServletRequest request){ + String resourceid = request.getParameter("resourceid"); + request.setAttribute("resourceid",resourceid); + return "/backstage/oa/ocr/distionary/add"; + } + + /** + *方法描述:根据ID跳转到修改页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-29 16:00:28 + **/ + @GetMapping("/toEdit/{id}") + public String toEditDistionary(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){ + String resourceid = request.getParameter("resourceid"); + request.setAttribute("resourceid",resourceid); + request.setAttribute("id", id); + return "/backstage/oa/ocr/distionary/edit"; + } + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDistionarygroupHtmlController.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDistionarygroupHtmlController.java new file mode 100644 index 0000000..241ad45 --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/controller/OcrDistionarygroupHtmlController.java @@ -0,0 +1,71 @@ +package cn.jyjz.xiaoyao.ocr.controller; + +import cn.jyjz.xiaoyao.admin.service.DistionarygroupService; +import cn.jyjz.xiaoyao.admin.service.UserService; +import cn.jyjz.xiaoyao.common.base.controller.BaseController; +import cn.jyjz.xiaoyao.common.base.service.UserTokenService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +@Controller +@RequestMapping("/backstage/admin/ocrDistionarygroupHtml") +public class OcrDistionarygroupHtmlController extends BaseController{ + + private Logger log = LoggerFactory.getLogger(this.getClass()); + + @Autowired + private DistionarygroupService distionarygroupService; + + @Autowired + private UserTokenService userTokenService; + + @Autowired + private UserService userService; + + /** + *方法描述:跳转到列表页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/toList") + public String toListDistionarygroup(HttpServletResponse response,HttpServletRequest request){ + String resourceid = request.getParameter("resourceid"); + request.setAttribute("resourceid",resourceid); + return "/backstage/oa/ocr/distionarygroup/list"; + } + + /** + *方法描述:跳转到保存页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/toSave") + public String toSaveDistionarygroup(HttpServletResponse response,HttpServletRequest request){ + String resourceid = request.getParameter("resourceid"); + request.setAttribute("resourceid",resourceid); + return "/backstage/oa/ocr//distionarygroup/add"; + } + + /** + *方法描述:根据ID跳转到修改页面 + *创建人:mail.zhangyong@gmail.com + *创建时间:2022-03-07 15:15:08 + **/ + @GetMapping("/toEdit/{id}") + public String toEditDistionarygroup(HttpServletResponse response,HttpServletRequest request,@PathVariable("id") String id){ + String resourceid = request.getParameter("resourceid"); + request.setAttribute("resourceid",resourceid); + request.setAttribute("id", id); + return "/backstage/oa/ocr//distionarygroup/edit"; + } + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrDictionary.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrDictionary.java index 16d1065..f352811 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrDictionary.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrDictionary.java @@ -1,10 +1,13 @@ package cn.jyjz.xiaoyao.ocr.dataobject; import cn.jyjz.xiaoyao.common.base.jsonDomain.DateSerializer; +import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery; +import cn.jyjz.xiaoyao.common.mybatisplus.dto.BaseDto; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; @@ -15,6 +18,11 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; +import java.util.AbstractMap; +import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.Stream; + /** * TODO * @@ -29,7 +37,7 @@ import lombok.NoArgsConstructor; @Schema(name = "业务数据字典值表", title = "业务数据字典值表") @ApiModel(value="业务数据字典值表", description="业务数据字典值表") @TableName(value = "ocr_dictionary") -public class OcrDictionary { +public class OcrDictionary implements BaseDto,java.io.Serializable{ @ApiModelProperty(value ="主键") @TableId(value = "id",type = IdType.ASSIGN_ID) @@ -57,4 +65,32 @@ public class OcrDictionary { @TableField(value="group_id") private Long groupId; + + @TableField(exist = false) + @JsonIgnore + private final Map query = Stream.of( + new AbstractMap.SimpleEntry<>("listdept","deptid"), + new AbstractMap.SimpleEntry<>("ID","id"), + new AbstractMap.SimpleEntry<>("CODENO","codeno"), + new AbstractMap.SimpleEntry<>("DISTIONARYTYPEID","distionarytypeid"), + new AbstractMap.SimpleEntry<>("GROUPNAME","groupname"), + new AbstractMap.SimpleEntry<>("USEMODE","usemode") + ) + .collect(Collectors.toMap(AbstractMap.SimpleEntry::getKey, AbstractMap.SimpleEntry::getValue)); + + + @Override + public String getQueryFiled(String filedname){ + String obj = null; + if(null != query && query.size() > 0){ + obj = query.get(filedname); + } + return obj; + } + + + //保存当前登录用户的数据权限范围的搜索条件 + @TableField(exist = false) + @JsonIgnore + private SearchQuery searchQueryrolesShowleave; } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrDictionaryGroup.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrDictionaryGroup.java index 3fb96d3..9f5871a 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrDictionaryGroup.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/dataobject/OcrDictionaryGroup.java @@ -1,9 +1,14 @@ package cn.jyjz.xiaoyao.ocr.dataobject; +import cn.jyjz.xiaoyao.admin.dataobject.Distionary; +import cn.jyjz.xiaoyao.admin.dataobject.Distionarytype; +import cn.jyjz.xiaoyao.common.base.util.requestFormat.SearchQuery; +import cn.jyjz.xiaoyao.common.mybatisplus.dto.BaseDto; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; @@ -15,6 +20,12 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; +import java.util.AbstractMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.Stream; + /** * TODO * @@ -29,7 +40,7 @@ import lombok.NoArgsConstructor; @Schema(name = "业务数据字典组表", title = "业务数据字典组表") @ApiModel(value="业务数据字典组表", description="业务数据字典组表") @TableName(value = "ocr_dictionary_group") -public class OcrDictionaryGroup { +public class OcrDictionaryGroup implements BaseDto,java.io.Serializable { @ApiModelProperty(value ="主键") @TableId(value = "id",type = IdType.ASSIGN_ID) @JsonSerialize(using = ToStringSerializer.class) @@ -47,4 +58,33 @@ public class OcrDictionaryGroup { @ApiModelProperty(value ="备注") @TableField(value="remark") private String remark; + + + @TableField(exist = false) + private List distionaryList; + + + //保存当前登录用户的数据权限范围的搜索条件 + @TableField(exist = false) + @JsonIgnore + private SearchQuery searchQueryrolesShowleave; + + + @TableField(exist = false) + @JsonIgnore + private final Map query = Stream.of( + new AbstractMap.SimpleEntry<>("listdept","deptid"), + new AbstractMap.SimpleEntry<>("ID","id"), + new AbstractMap.SimpleEntry<>("CODENO","codeno"), + new AbstractMap.SimpleEntry<>("DISTIONARYTYPEID","distionarytypeid") + ) + .collect(Collectors.toMap(AbstractMap.SimpleEntry::getKey, AbstractMap.SimpleEntry::getValue)); + @Override + public String getQueryFiled(String filedname){ + String obj = null; + if(null != query && query.size() > 0){ + obj = query.get(filedname); + } + return obj; + } } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrDictionaryGroupService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrDictionaryGroupService.java new file mode 100644 index 0000000..3726e2c --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrDictionaryGroupService.java @@ -0,0 +1,21 @@ +package cn.jyjz.xiaoyao.ocr.service; +import cn.jyjz.xiaoyao.common.base.param.ParamterPage; +import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseService; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; + +import java.util.List; + +/** + * 业务向 数据字典 操作接口 + * + * @author hugh(shuli.yao) 1397940314@qq.com + * @version 1.0 + * @date 2024/3/16 12:48 + */ +public interface OcrDictionaryGroupService extends BaseService { + + + +} diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrDictionaryService.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrDictionaryService.java index 6563b7f..34136d3 100644 --- a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrDictionaryService.java +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/OcrDictionaryService.java @@ -36,4 +36,8 @@ public interface OcrDictionaryService extends BaseService { * @return */ String queryLabelByValue(String field, String value, String tenantId); + + + + } diff --git a/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrDictionaryGroupServiceImpl.java b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrDictionaryGroupServiceImpl.java new file mode 100644 index 0000000..f3dff9a --- /dev/null +++ b/jyjz-system/jyjz-system-oa/src/main/java/cn/jyjz/xiaoyao/ocr/service/impl/OcrDictionaryGroupServiceImpl.java @@ -0,0 +1,35 @@ +package cn.jyjz.xiaoyao.ocr.service.impl; + +import cn.jyjz.xiaoyao.admin.cache.CacheAdminConstants; +import cn.jyjz.xiaoyao.admin.dataobject.Distionarytype; +import cn.jyjz.xiaoyao.admin.service.DistionaryService; +import cn.jyjz.xiaoyao.admin.service.DistionarytypeService; +import cn.jyjz.xiaoyao.common.base.param.ParamterPage; +import cn.jyjz.xiaoyao.common.mybatisplus.base.BaseServiceImpl; +import cn.jyjz.xiaoyao.common.redis.cache.ICacheManager; +import cn.jyjz.xiaoyao.ocr.dataDao.OcrDictionaryGroupDao; +import cn.jyjz.xiaoyao.ocr.dataobject.OcrDictionaryGroup; +import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryGroupService; +import cn.jyjz.xiaoyao.ocr.service.OcrDictionaryService; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 业务向 数据字典 操作接口实现类 + * + * @author hugh(shuli.yao) 1397940314@qq.com + * @version 1.0 + * @date 2024/3/16 12:48 + */ +@Service +@Slf4j +public class OcrDictionaryGroupServiceImpl extends BaseServiceImpl implements OcrDictionaryGroupService { + + +} From 978bab01e603b768166a58224b6985792c766f19 Mon Sep 17 00:00:00 2001 From: guanzheng <17633119157@163.com> Date: Sun, 28 Apr 2024 17:36:18 +0800 Subject: [PATCH 28/36] 1:ocr_dict_init --- .../web/backstage/oa/ocr/distionary/edit.html | 18 ---- .../web/backstage/oa/ocr/distionary/list.html | 97 ++++-------------- .../backstage/oa/ocr/distionarygroup/add.html | 66 ++----------- .../oa/ocr/distionarygroup/edit.html | 83 +++------------- .../oa/ocr/distionarygroup/list.html | 99 +++---------------- .../controller/OcrDictionaryController.java | 4 +- .../OcrDictionaryGropuController.java | 49 +-------- .../OcrDistionaryHtmlController.java | 9 +- .../OcrDistionarygroupHtmlController.java | 4 +- .../xiaoyao/ocr/dataobject/OcrDictionary.java | 8 +- .../ocr/dataobject/OcrDictionaryGroup.java | 4 +- 11 files changed, 62 insertions(+), 379 deletions(-) diff --git a/htmlweb/web/backstage/oa/ocr/distionary/edit.html b/htmlweb/web/backstage/oa/ocr/distionary/edit.html index e6b16e5..3f54dee 100644 --- a/htmlweb/web/backstage/oa/ocr/distionary/edit.html +++ b/htmlweb/web/backstage/oa/ocr/distionary/edit.html @@ -58,24 +58,6 @@ -
-
-
- -
- -
-
-
-
-
- -
- -
-
-
-
diff --git a/htmlweb/web/backstage/oa/ocr/distionary/list.html b/htmlweb/web/backstage/oa/ocr/distionary/list.html index 41e146b..2152547 100644 --- a/htmlweb/web/backstage/oa/ocr/distionary/list.html +++ b/htmlweb/web/backstage/oa/ocr/distionary/list.html @@ -19,7 +19,7 @@
- +
@@ -57,67 +57,28 @@