From 3d7a1639e7349ead1ee1d3ba098906b8e0f626c4 Mon Sep 17 00:00:00 2001 From: dimengzhe Date: Mon, 8 May 2023 13:45:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B911?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/commoncontract/PrintConfirmDto.java | 3 ++ .../commoncontract/CommonContractService.java | 20 +++++++---- .../AppFinCollectionConfirmationPageVo.java | 3 ++ .../FinCollectionConfirmationFeign.java | 4 +++ ...inCollectionConfirmationFeignFallback.java | 5 +++ .../FinCollectionConfirmationVo.java | 16 +++++---- .../FinCollectionConfirmationRest.java | 5 +++ .../FinCollectionConfirmationService.java | 36 +++++++++++++++++++ .../anrui/portal/api/flow/FlowTaskDto.java | 3 ++ .../portal/api/flow/app/FlowTaskFinishVo.java | 3 ++ .../portal/api/sysurlconfig/SysUrlConfig.java | 19 ++++++++++ .../anrui/portal/biz/flow/FlowableRest.java | 35 +++++++++++++++--- .../portal/biz/flow/FlowableService.java | 22 ++++++++++++ .../biz/sysurlconfig/SysUrlConfigMapper.java | 11 ++++++ .../biz/sysurlconfig/SysUrlConfigMapper.xml | 11 ++++++ .../biz/sysurlconfig/SysUrlConfigService.java | 12 +++++++ .../src/main/resources/application-devv.yml | 5 ++- .../src/main/resources/application-pro.yml | 3 ++ .../src/main/resources/application-test.yml | 3 ++ .../collectionConfirm/ConfirmationPageVo.java | 3 ++ doc/databases/portal_tables.sql | 25 ++++++++++++- 21 files changed, 227 insertions(+), 20 deletions(-) create mode 100644 anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysurlconfig/SysUrlConfig.java create mode 100644 anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigMapper.java create mode 100644 anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigMapper.xml create mode 100644 anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigService.java diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/PrintConfirmDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/PrintConfirmDto.java index db8dd6c144..e7d87271e5 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/PrintConfirmDto.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/commoncontract/PrintConfirmDto.java @@ -44,4 +44,7 @@ public class PrintConfirmDto implements Dto { @ApiModelProperty("用户sid") private String userSid; + + @ApiModelProperty("甲方主体") + private String createOrgName; } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java index 972b9dc0b9..feb0bd9734 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/commoncontract/CommonContractService.java @@ -1849,13 +1849,18 @@ public class CommonContractService extends MybatisBaseService invoicingDetailsVoResultBean = finCompanyInvoicingFeign.getDetailsByUseOrgAndSystem(appOrderDetailsVo.getUseOrgSid(),appOrderDetailsVo.getPurchaseSystemSid()); - if (invoicingDetailsVoResultBean.getData() != null) { - map.put("createOrgName", invoicingDetailsVoResultBean.getData().getName()); - createOrgName = invoicingDetailsVoResultBean.getData().getName(); - } else { - return rb.setMsg("请与出纳人员联系完善开票信息"); + if(StringUtils.isNotBlank(dto.getCreateOrgName())){ + map.put("createOrgName", dto.getCreateOrgName()); + createOrgName = dto.getCreateOrgName(); + }else{ + if(StringUtils.isNotBlank(appOrderDetailsVo.getPurchaseSystemSid())){ + ResultBean invoicingDetailsVoResultBean = finCompanyInvoicingFeign.getDetailsByUseOrgAndSystem(appOrderDetailsVo.getUseOrgSid(),appOrderDetailsVo.getPurchaseSystemSid()); + if (invoicingDetailsVoResultBean.getData() != null) { + map.put("createOrgName", invoicingDetailsVoResultBean.getData().getName()); + createOrgName = invoicingDetailsVoResultBean.getData().getName(); + } else { + return rb.setMsg("请与出纳人员联系完善开票信息"); + } } } map.put("modelConfigs",modelAllName2.toString()); @@ -2199,6 +2204,7 @@ public class CommonContractService extends MybatisBaseService p = PagerUtil.pageToVo(pagging, null); return p; @@ -637,6 +643,9 @@ public class FinCollectionConfirmationService extends MybatisBaseService finSelectedReceivablesDetailedVos = finSelectedReceivablesDetailedService.fetchByAuditState(sid, 1); + finSelectedReceivablesDetailedVos.stream().forEach(v -> { + String selectSid = v.getSid(); + FinSelectedReceivablesDetailed finSelectedReceivablesDetailed = finSelectedReceivablesDetailedService.fetchBySid(selectSid); + finSelectedReceivablesDetailed.setAuditDate(DateUtil.today()); + finSelectedReceivablesDetailed.setAuditState(0); + finSelectedReceivablesDetailedService.updateById(finSelectedReceivablesDetailed); + //应收未收将款项加回来 + FinUncollectedReceivablesDetailed finUncollectedReceivablesDetailed = finUncollectedReceivablesDetailedService.fetchBySid(finSelectedReceivablesDetailed.getReceivablesSid()); + BigDecimal currentReceivableMoney = finUncollectedReceivablesDetailed.getCurrentReceivableMoney().add(finSelectedReceivablesDetailed.getSubscriptionMoney()); + finUncollectedReceivablesDetailed.setCurrentReceivableMoney(currentReceivableMoney); + finUncollectedReceivablesDetailedService.updateById(finUncollectedReceivablesDetailed); + }); + confirmation.setAuditState(0); + baseMapper.updateById(confirmation); + return rb.success().setMsg("撤回成功"); + } } \ No newline at end of file diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowTaskDto.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowTaskDto.java index c97aecdbe7..3171a35765 100644 --- a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowTaskDto.java +++ b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/FlowTaskDto.java @@ -113,4 +113,7 @@ public class FlowTaskDto implements Serializable { private boolean hasRevokeButton = false; @ApiModelProperty("办理的url") private SysProUrlVo sysProUrlVo ; + + @ApiModelProperty("终止地址") + private String stopUrl; } diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/FlowTaskFinishVo.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/FlowTaskFinishVo.java index bb90bf54be..98b546709e 100644 --- a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/FlowTaskFinishVo.java +++ b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/flow/app/FlowTaskFinishVo.java @@ -64,4 +64,7 @@ public class FlowTaskFinishVo implements Vo { @ApiModelProperty("发起人sid") @JsonProperty("createUserSid") private String startUserSid; + + @ApiModelProperty("终止地址") + private String stopUrl; } diff --git a/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysurlconfig/SysUrlConfig.java b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysurlconfig/SysUrlConfig.java new file mode 100644 index 0000000000..ca5a64dbaa --- /dev/null +++ b/anrui-portal/anrui-portal-api/src/main/java/com/yxt/anrui/portal/api/sysurlconfig/SysUrlConfig.java @@ -0,0 +1,19 @@ +package com.yxt.anrui.portal.api.sysurlconfig; + +import com.yxt.common.core.domain.BaseEntity; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class SysUrlConfig extends BaseEntity { + + private static final long serialVersionUID = 3621408359268765765L; + @ApiModelProperty("默认地址") + private String url; + @ApiModelProperty("流程定义key") + private String flowKey; + @ApiModelProperty("流程定义名称") + private String flowName; + + +} diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java index 16399c1ba9..b2672a1b5c 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableRest.java @@ -27,6 +27,7 @@ package com.yxt.anrui.portal.biz.flow; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateUtil; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yxt.anrui.flowable.api.processcomment.ProcessCommentFeign; import com.yxt.anrui.portal.api.flow.*; @@ -34,8 +35,10 @@ import com.yxt.anrui.portal.api.flow.app.FlowTaskDoQuery; import com.yxt.anrui.portal.api.flow.app.FlowTaskDoVo; import com.yxt.anrui.portal.api.flow.app.FlowTaskFinishVo; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgVo; +import com.yxt.anrui.portal.api.sysurlconfig.SysUrlConfig; import com.yxt.anrui.portal.api.sysuser.SysUser; import com.yxt.anrui.portal.biz.sysstafforg.SysStaffOrgService; +import com.yxt.anrui.portal.biz.sysurlconfig.SysUrlConfigService; import com.yxt.anrui.portal.biz.sysuser.SysUserService; import com.yxt.anrui.terminal.api.app.flowable.ProcessCommentVo; import com.yxt.common.base.utils.StringUtils; @@ -44,14 +47,12 @@ import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; import io.swagger.annotations.Api; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; /** * Project: anrui-parent
@@ -79,6 +80,10 @@ public class FlowableRest implements FlowableFeign { private SysUserService sysUserService; @Autowired private ProcessCommentFeign processCommentFeign; + @Autowired + private SysUrlConfigService sysUrlConfigService; + @Value("${config.url.prefix}") + private String urlPrefix; /* @Override @@ -271,7 +276,27 @@ public class FlowableRest implements FlowableFeign { ResultBean> pageResultBean = flowableService.doneAllTaskList(userSid, pQuery); Page page = new Page<>(); BeanUtil.copyProperties(pageResultBean.getData(),page); - ResultBean< Page> success = new ResultBean< Page>().success(); + ResultBean> success = new ResultBean>().success(); + List voList = JSON.parseArray(JSON.toJSONString(page.getRecords()),FlowTaskDto.class); + voList.removeAll(Collections.singleton(null)); + for (int i = 0; i < voList.size(); i++) { + FlowTaskDto f = voList.get(i); + //根据流程定义id查询是否有终止地址 + String proDefId = f.getProcDefId(); + List proDefIdList = Arrays.asList(proDefId.split(":")); + String proDefKey = proDefIdList.get(0); + //根据流程定义key查询终止地址 + SysUrlConfig sysUrlConifg = sysUrlConfigService.selectByKey(proDefKey); + if(sysUrlConifg != null){ + f.setStopUrl(urlPrefix+sysUrlConifg.getUrl()); + }else{ + sysUrlConifg = sysUrlConfigService.selectByKey("defaultKey"); + if(sysUrlConifg!= null){ + f.setStopUrl(urlPrefix+sysUrlConifg.getUrl()); + } + } + } + page.setRecords(voList); success.setData(page); return success; } diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java index 5b1e44bb46..89ce5b6ab1 100644 --- a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/flow/FlowableService.java @@ -47,7 +47,9 @@ import com.yxt.anrui.portal.api.flow.app.AppVo; import com.yxt.anrui.portal.api.flow.app.FlowTaskDoQuery; import com.yxt.anrui.portal.api.flow.app.FlowTaskDoVo; import com.yxt.anrui.portal.api.flow.app.FlowTaskFinishVo; +import com.yxt.anrui.portal.api.sysurlconfig.SysUrlConfig; import com.yxt.anrui.portal.biz.appsubsetversion.AppSubsetVersionService; +import com.yxt.anrui.portal.biz.sysurlconfig.SysUrlConfigService; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.ConstantUtils; @@ -57,6 +59,7 @@ import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import java.time.Instant; @@ -94,6 +97,10 @@ public class FlowableService extends MybatisBaseService> appVer = new HashMap<>(); for (int i = 0; i < voList.size(); i++) { FlowTaskFinishVo f = voList.get(i); + //根据流程定义id查询是否有终止地址 + String proDefId = f.getProcDefId(); + List proDefIdList = Arrays.asList(proDefId.split(":")); + String proDefKey = proDefIdList.get(0); + //根据流程定义key查询终止地址 + SysUrlConfig sysUrlConifg = sysUrlConfigService.selectByKey(proDefKey); + if(sysUrlConifg != null){ + f.setStopUrl(urlPrefix+sysUrlConifg.getUrl()); + }else{ + sysUrlConifg = sysUrlConfigService.selectByKey("defaultKey"); + if(sysUrlConifg!= null){ + f.setStopUrl(urlPrefix+sysUrlConifg.getUrl()); + } + } + Map flowMap = f.getProcessVariables(); f.setBusinessSid(flowMap.get("businessSid").toString()); Map appMap = ConstantUtils.getMap(flowMap, "app"); diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigMapper.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigMapper.java new file mode 100644 index 0000000000..891ec3dde5 --- /dev/null +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigMapper.java @@ -0,0 +1,11 @@ +package com.yxt.anrui.portal.biz.sysurlconfig; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.yxt.anrui.portal.api.sysurlconfig.SysUrlConfig; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface SysUrlConfigMapper extends BaseMapper { + + SysUrlConfig selectByKey(String proDefKey); +} diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigMapper.xml b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigMapper.xml new file mode 100644 index 0000000000..cd52dc2330 --- /dev/null +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigMapper.xml @@ -0,0 +1,11 @@ + + + + + \ No newline at end of file diff --git a/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigService.java b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigService.java new file mode 100644 index 0000000000..7943e1946c --- /dev/null +++ b/anrui-portal/anrui-portal-biz/src/main/java/com/yxt/anrui/portal/biz/sysurlconfig/SysUrlConfigService.java @@ -0,0 +1,12 @@ +package com.yxt.anrui.portal.biz.sysurlconfig; + +import com.yxt.anrui.portal.api.sysurlconfig.SysUrlConfig; +import com.yxt.common.base.service.MybatisBaseService; +import org.springframework.stereotype.Service; + +@Service +public class SysUrlConfigService extends MybatisBaseService { + public SysUrlConfig selectByKey(String proDefKey) { + return baseMapper.selectByKey(proDefKey); + } +} diff --git a/anrui-portal/anrui-portal-biz/src/main/resources/application-devv.yml b/anrui-portal/anrui-portal-biz/src/main/resources/application-devv.yml index 7939657d03..3dee2c6688 100644 --- a/anrui-portal/anrui-portal-biz/src/main/resources/application-devv.yml +++ b/anrui-portal/anrui-portal-biz/src/main/resources/application-devv.yml @@ -25,8 +25,11 @@ image: upload: path: D:\\anrui\\upload\\ url: - prefix: http://127.0.0.1:7003/upload/ + prefix: http://192.168.1.107:8111/upload/ login: path: D:\\images\\pic-click +config: + url: + prefix: http://192.168.1.107:8111/ diff --git a/anrui-portal/anrui-portal-biz/src/main/resources/application-pro.yml b/anrui-portal/anrui-portal-biz/src/main/resources/application-pro.yml index a2229a2add..0f904d0031 100644 --- a/anrui-portal/anrui-portal-biz/src/main/resources/application-pro.yml +++ b/anrui-portal/anrui-portal-biz/src/main/resources/application-pro.yml @@ -28,3 +28,6 @@ image: prefix: http://120.46.172.184/api/upload/ login: path: D:\images\pic-click +config: + url: + prefix: http://120.46.172.184/api/ diff --git a/anrui-portal/anrui-portal-biz/src/main/resources/application-test.yml b/anrui-portal/anrui-portal-biz/src/main/resources/application-test.yml index d5f0d24b54..eb92741ff0 100644 --- a/anrui-portal/anrui-portal-biz/src/main/resources/application-test.yml +++ b/anrui-portal/anrui-portal-biz/src/main/resources/application-test.yml @@ -28,4 +28,7 @@ image: prefix: http://anrui.yyundong.com/upload/ login: path: /home/lzh/webapps/anrui/anrui-portal/images/pic-click +config: + url: + prefix: http://anrui.yyundong.com diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/collectionConfirm/ConfirmationPageVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/collectionConfirm/ConfirmationPageVo.java index fba41cc82f..74678d2ffc 100644 --- a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/collectionConfirm/ConfirmationPageVo.java +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/finance/collectionConfirm/ConfirmationPageVo.java @@ -57,4 +57,7 @@ public class ConfirmationPageVo implements Vo { @ApiModelProperty("采购系统名称") private String purchaseSystemName; + @ApiModelProperty("是否有撤回按钮") + private boolean recallAtn; + } diff --git a/doc/databases/portal_tables.sql b/doc/databases/portal_tables.sql index f5ac0d0e6d..5a713fc0bb 100644 --- a/doc/databases/portal_tables.sql +++ b/doc/databases/portal_tables.sql @@ -685,10 +685,33 @@ CREATE TABLE `sys_user_default_org` `updateBySid` varchar(64) DEFAULT NULL COMMENT '更新者', `userSid` varchar(64) DEFAULT NULL COMMENT '用户sid', `orgSidPath` varchar(500) DEFAULT NULL COMMENT '默认组织机构sid', - `orgNamePath` varchar(500) DEFAULT NULL COMMENT '默认组织机构名称', + `orgNamePath` varchar(500) DEFAULT NULL COMMENT '默认组织机构名称', `staffSid` varchar(64) DEFAULT NULL COMMENT '人员sid', PRIMARY KEY (`id`), KEY `id` (`id`) ) ENGINE = InnoDB AUTO_INCREMENT = 18 DEFAULT CHARSET = utf8 COMMENT ='用户默认的组织机构'; + +DROP TABLE IF EXISTS `sys_url_config`; +CREATE TABLE `sys_url_config` +( + `id` int(11) NOT NULL AUTO_INCREMENT, + `sid` varchar(64) NOT NULL COMMENT 'sid', + `lockVersion` int(11) NOT NULL DEFAULT '0' COMMENT '记录版本,锁', + `createTime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', + `modifyTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录最后修改时间', + `isEnable` int(11) NOT NULL DEFAULT '1' COMMENT '记录是否可用,1:可用,0:不可用', + `state` int(11) DEFAULT '1' COMMENT '状态', + `isDelete` int(11) DEFAULT NULL COMMENT '记录是否被删除,0:未删除,1:已经删除', + `remarks` varchar(255) DEFAULT NULL COMMENT '备注信息', + `createBySid` varchar(64) DEFAULT NULL COMMENT '创建者', + `updateBySid` varchar(64) DEFAULT NULL COMMENT '更新者', + `url` varchar(64) DEFAULT NULL COMMENT '页面地址', + `flowKey` varchar(500) DEFAULT NULL COMMENT '流程定义key', + `flowName` varchar(500) DEFAULT NULL COMMENT '流程定义名称', + PRIMARY KEY (`id`), + KEY `id` (`id`) +) ENGINE = InnoDB + AUTO_INCREMENT = 18 + DEFAULT CHARSET = utf8 COMMENT ='模块配置地址';