diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFiles.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFiles.java
new file mode 100644
index 0000000000..8af566ddc3
--- /dev/null
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFiles.java
@@ -0,0 +1,72 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.api.basefiles;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.yxt.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataList.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataList
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@ApiModel(value = "附件清单", description = "附件清单")
+@TableName("base_files")
+@Data
+public class BaseFiles extends BaseEntity {
+ private static final long serialVersionUID = 1L;
+ @ApiModelProperty("业务类别key")
+ private String busTypeKey;
+ @ApiModelProperty("业务类别value")
+ private String busTypeValue;
+ @ApiModelProperty("文件编号")
+ private String fileNo;
+ @ApiModelProperty("文件名称")
+ private String fileName;
+ @ApiModelProperty("文件格式")
+ private String fileType;
+ @ApiModelProperty("示例")
+ private String sample;
+ @ApiModelProperty("份数")
+ private Integer count;
+ @ApiModelProperty("是否必传0非必传,1必传")
+ private Integer isUpload;
+ @ApiModelProperty("分公司sid")
+ private String useOrgSid;
+ @ApiModelProperty("分公司名")
+ private String useOrgName;
+}
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDetailsVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDetailsVo.java
new file mode 100644
index 0000000000..e44a9df0ca
--- /dev/null
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDetailsVo.java
@@ -0,0 +1,40 @@
+package com.yxt.anrui.base.api.basefiles;
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Author dimengzhe
+ * @Date 2022/2/26 15:40
+ * @Description
+ */
+@Data
+public class BaseFilesDetailsVo implements Vo {
+ private static final long serialVersionUID = -8075833659958149115L;
+ private String sid;
+ private String userSid;
+ @ApiModelProperty("业务类别key")
+ private String busTypeKey;
+ @ApiModelProperty("业务类别value")
+ private String busTypeValue;
+ @ApiModelProperty("文件编号")
+ private String fileNo;
+ @ApiModelProperty("文件名称")
+ private String fileName;
+ @ApiModelProperty("文件格式")
+ private String fileType;
+ @ApiModelProperty("份数")
+ private Integer count;
+ @ApiModelProperty("是否必传0非必传,1必传")
+ private Integer isUpload;
+ @ApiModelProperty("分公司sid")
+ private String useOrgSid;
+ @ApiModelProperty("示例")
+ private List files = new ArrayList<>();
+ @ApiModelProperty("备注")
+ private String remarks;
+}
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDto.java
new file mode 100644
index 0000000000..d0382a9e05
--- /dev/null
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesDto.java
@@ -0,0 +1,80 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.api.basefiles;
+
+
+import com.yxt.anrui.base.api.commonappendix.CommonAppendixDto;
+import com.yxt.common.core.dto.Dto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListDto.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListDto
+ * Description: 资料清单 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@ApiModel(value = "资料清单 数据传输对象", description = "资料清单 数据传输对象")
+@Data
+public class BaseFilesDto implements Dto {
+ private static final long serialVersionUID = 6031157146326125370L;
+
+ private String sid;
+ private String userSid;
+ @ApiModelProperty("业务类别key")
+ private String busTypeKey;
+ @ApiModelProperty("业务类别value")
+ private String busTypeValue;
+ @ApiModelProperty("文件编号")
+ private String fileNo;
+ @ApiModelProperty("文件名称")
+ private String fileName;
+ @ApiModelProperty("文件格式")
+ private String fileType;
+ @ApiModelProperty("份数")
+ private Integer count;
+ @ApiModelProperty("是否必传0非必传,1必传")
+ private Integer isUpload;
+ @ApiModelProperty("分公司sid")
+ private String useOrgSid;
+ @ApiModelProperty("示例")
+ private List files = new ArrayList<>();
+ @ApiModelProperty("备注")
+ private String remarks;
+}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeign.java
new file mode 100644
index 0000000000..68c0ff0a15
--- /dev/null
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeign.java
@@ -0,0 +1,107 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.api.basefiles;
+
+import com.yxt.common.core.query.PagerQuery;
+import com.yxt.common.core.result.ResultBean;
+import com.yxt.common.core.vo.PagerVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListFeign.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListFeign
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@Api(tags = "附件清单")
+@FeignClient(
+ contextId = "anrui-base-BaseFiles",
+ name = "anrui-base",
+ path = "v1/basefiles",
+ fallback = BaseFilesFeignFallback.class)
+public interface BaseFilesFeign {
+ /**
+ * PC-附件清单分页列表
+ *
+ * @param pq 查询条件
+ * @return
+ */
+ @ApiOperation("PC-附件清单分页列表")
+ @PostMapping("/listPage")
+ @ResponseBody
+ ResultBean> listPage(@RequestBody PagerQuery pq);
+
+ /**
+ * PC-附件清单新增保存
+ *
+ * @param dto 数据传输对象
+ * @return
+ */
+ @ApiOperation("新增编辑")
+ @PostMapping("/saveOrUpdate")
+ ResultBean saveOrUpdateBaseFiles(@RequestBody BaseFilesDto dto);
+
+ /**
+ * PC-附件清单编辑初始化和详情
+ *
+ * @param sid 资料清单sid
+ * @return
+ */
+ @ApiOperation("编辑初始化、详情")
+ @GetMapping("/details/{sid}")
+ ResultBean selectDetails(@PathVariable("sid") String sid);
+
+ @ApiOperation("批量删除")
+ @DeleteMapping("/deleteBySids")
+ @ResponseBody
+ public ResultBean deleteBySids(@RequestBody String[] sids);
+
+
+ /**
+ * PC-生成文件编号
+ *
+ * @param busTypeKey 业务类型key
+ * @return
+ */
+ @ApiOperation("生成文件编号")
+ @GetMapping("/createFileNo")
+ ResultBean createFileNo(@RequestParam("busTypeKey") String busTypeKey);
+
+
+}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeignFallback.java
new file mode 100644
index 0000000000..5b888ae2c1
--- /dev/null
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesFeignFallback.java
@@ -0,0 +1,79 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.api.basefiles;
+
+import com.yxt.common.core.query.PagerQuery;
+import com.yxt.common.core.result.ResultBean;
+import com.yxt.common.core.vo.PagerVo;
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListFeignFallback.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListFeignFallback
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@Component
+public class BaseFilesFeignFallback implements BaseFilesFeign {
+
+
+ @Override
+ public ResultBean> listPage(PagerQuery pq) {
+ return null;
+ }
+
+ @Override
+ public ResultBean saveOrUpdateBaseFiles(BaseFilesDto dto) {
+ return null;
+ }
+
+
+ @Override
+ public ResultBean selectDetails(String sid) {
+ return null;
+ }
+
+ @Override
+ public ResultBean deleteBySids(String[] sids) {
+ return null;
+ }
+
+ @Override
+ public ResultBean createFileNo(String busTypeKey) {
+ return null;
+ }
+
+
+}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesQuery.java
new file mode 100644
index 0000000000..ecb8351138
--- /dev/null
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesQuery.java
@@ -0,0 +1,61 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.api.basefiles;
+
+
+import com.yxt.common.core.query.Query;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListQuery.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListQuery
+ * Description: 资料清单 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@ApiModel(value = "资料清单 查询条件", description = "资料清单 查询条件")
+@Data
+public class BaseFilesQuery implements Query {
+
+ private String userSid;
+ @ApiModelProperty("业务类别key")
+ private String busTypeKey;
+ @ApiModelProperty("文件名称")
+ private String fileName;
+ @ApiModelProperty("是否必传0非必传,1必传")
+ private Integer isUpload;
+ @ApiModelProperty("分公司sid")
+ private String useOrgSid;
+
+}
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesVo.java
new file mode 100644
index 0000000000..4cc2592527
--- /dev/null
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basefiles/BaseFilesVo.java
@@ -0,0 +1,75 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.api.basefiles;
+
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListVo.java
+ * Class: com.yxt.anrui.base.api.basedatalist.BaseDataListVo
+ * Description: 资料清单 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@ApiModel(value = "资料清单 视图数据对象", description = "资料清单 视图数据对象")
+@Data
+public class BaseFilesVo implements Vo {
+
+ private static final long serialVersionUID = 8585166912605249026L;
+ @ApiModelProperty(value = "sid")
+ private String sid;
+ @ApiModelProperty("业务类别value")
+ private String busTypeValue;
+ @ApiModelProperty("文件名称")
+ private String fileName;
+ @ApiModelProperty("文件格式")
+ private String fileType;
+ @ApiModelProperty("份数")
+ private Integer count;
+ @ApiModelProperty("是否必传0非必传,1必传")
+ private Integer isUpload;
+ @ApiModelProperty("示例")
+ private String sample;
+ @ApiModelProperty("示例")
+ private List files = new ArrayList<>();
+ @ApiModelProperty("备注")
+ private String remarks;
+ @ApiModelProperty("查看附件按钮显示")
+ private Boolean showSampleBtn;
+}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.java
new file mode 100644
index 0000000000..dcdcc7eb21
--- /dev/null
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.java
@@ -0,0 +1,62 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.biz.basefiles;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.yxt.anrui.base.api.basefiles.BaseFiles;
+import com.yxt.anrui.base.api.basefiles.BaseFilesVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListMapper.java
+ * Class: com.yxt.anrui.base.biz.basedatalist.BaseDataListMapper
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@Mapper
+public interface BaseFilesMapper extends BaseMapper {
+
+ IPage listPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+
+ int updateBySidDelete(String sid);
+
+
+ String createFileNo(String busTypeKey);
+}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.xml
new file mode 100644
index 0000000000..13e446a146
--- /dev/null
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesMapper.xml
@@ -0,0 +1,27 @@
+
+
+
+
+ update base_files
+ set isDelete = 1
+ where sid = #{sid}
+
+
+
+
+
\ No newline at end of file
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesRest.java
new file mode 100644
index 0000000000..267210a2fb
--- /dev/null
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesRest.java
@@ -0,0 +1,92 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.biz.basefiles;
+
+import com.yxt.anrui.base.api.basefiles.*;
+
+import com.yxt.common.core.query.PagerQuery;
+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.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.validation.Valid;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListFeignFallback.java
+ * Class: com.yxt.anrui.base.biz.basedatalist.BaseDataListRest
+ * Description: 资料清单.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@Api(tags = "资料清单")
+@RestController("com.yxt.anrui.base.biz.basefiles.BaseFilesRest")
+@RequestMapping("v1/basefiles")
+public class BaseFilesRest implements BaseFilesFeign {
+
+ @Autowired
+ private BaseFilesService baseFilesService;
+
+ @Override
+ public ResultBean> listPage(PagerQuery pq) {
+ ResultBean> rb = ResultBean.fireFail();
+ PagerVo pv = baseFilesService.listPage(pq);
+ return rb.success().setData(pv);
+ }
+
+ @Override
+ public ResultBean saveOrUpdateBaseFiles(BaseFilesDto dto) {
+ return baseFilesService.saveOrUpdateBaseFiles(dto);
+ }
+
+
+ @Override
+ public ResultBean selectDetails(String sid) {
+ return baseFilesService.selectDetails(sid);
+ }
+
+ @Override
+ public ResultBean deleteBySids(String[] sids) {
+ return baseFilesService.deleteBySids(sids);
+ }
+
+ @Override
+ public ResultBean createFileNo(String busTypeKey) {
+ return baseFilesService.createFileNo(busTypeKey);
+ }
+
+}
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesService.java
new file mode 100644
index 0000000000..92f9956c21
--- /dev/null
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basefiles/BaseFilesService.java
@@ -0,0 +1,257 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.anrui.base.biz.basefiles;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yxt.anrui.base.api.basefiles.*;
+import com.yxt.anrui.base.biz.commonappendix.CommonAppendixService;
+import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
+import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
+import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
+import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameter;
+import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterQuery;
+import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterVo;
+import com.yxt.common.base.config.component.FileUploadComponent;
+import com.yxt.common.base.service.MybatisBaseService;
+
+import com.yxt.common.base.utils.PagerUtil;
+import com.yxt.common.base.utils.StringUtils;
+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.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * Project: anrui-base(安瑞基础信息)
+ * File: BaseDataListService.java
+ * Class: com.yxt.anrui.base.biz.basedatalist.BaseDataListService
+ * Description: 资料清单 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2022-02-26 09:59:29
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@Service
+public class BaseFilesService extends MybatisBaseService {
+
+
+ @Autowired
+ private FileUploadComponent fileUploadComponent;
+ @Autowired
+ private CommonAppendixService commonAppendixService;
+
+ @Autowired
+ private SysOrganizationFeign sysOrganizationFeign;
+
+ /**
+ * 编辑保存
+ *
+ * @param dto
+ * @return
+ */
+ public ResultBean saveOrUpdateBaseFiles(BaseFilesDto dto) {
+ ResultBean rb = ResultBean.fireFail();
+ if (StringUtils.isNotBlank(dto.getSid())) {
+ BaseFiles baseFiles = fetchBySid(dto.getSid());
+ BeanUtil.copyProperties(dto, baseFiles, "id", "sid");
+ StringBuilder sb = new StringBuilder();
+ String urlPrefix = fileUploadComponent.getUrlPrefix();
+ if (!dto.getFiles().isEmpty()) {
+ for (String filePath : dto.getFiles()) {
+ String path = filePath.substring(urlPrefix.length());
+ sb.append(path).append(",");
+ }
+ sb.delete(sb.length() - 1, sb.length());
+ baseFiles.setSample(sb.toString());
+ }
+ baseMapper.updateById(baseFiles);
+ } else {
+ BaseFiles baseFiles = new BaseFiles();
+ BeanUtil.copyProperties(dto, baseFiles, "id", "sid");
+ baseFiles.setCreateBySid(dto.getUserSid());
+ String userOrgSid = dto.getUseOrgSid();
+ baseFiles.setUseOrgSid(userOrgSid);
+ ResultBean organizationVo = sysOrganizationFeign.fetchBySid(userOrgSid);
+ if (organizationVo.getSuccess()) {
+ SysOrganizationVo organizationVoData = organizationVo.getData();
+ if (null != organizationVoData) {
+ baseFiles.setUseOrgName(organizationVoData.getName());
+ }
+ }
+ StringBuilder sb = new StringBuilder();
+ String urlPrefix = fileUploadComponent.getUrlPrefix();
+ if (!dto.getFiles().isEmpty()) {
+ for (String filePath : dto.getFiles()) {
+ String path = filePath.substring(urlPrefix.length());
+ sb.append(path).append(",");
+ }
+ sb.delete(sb.length() - 1, sb.length());
+ baseFiles.setSample(sb.toString());
+ }
+ baseMapper.insert(baseFiles);
+ }
+ return rb.success();
+ }
+
+ /**
+ * 分页列表
+ *
+ * @param pq
+ * @return
+ */
+ public PagerVo listPage(PagerQuery pq) {
+ IPage page = PagerUtil.queryToPage(pq);
+ BaseFilesQuery pagerQuery = pq.getParams();
+ QueryWrapper qw = new QueryWrapper<>();
+ //业务类型
+ if (StringUtils.isNotBlank(pagerQuery.getBusTypeKey())) {
+ qw.eq("busTypeKey", pagerQuery.getBusTypeKey());
+ }
+ //文件名称
+ if (StringUtils.isNotBlank(pagerQuery.getFileName())) {
+ qw.like("fileName", pagerQuery.getFileName());
+ }
+ //是否必传
+ if (null != pagerQuery.getIsUpload()) {
+ qw.eq("isUpload", pagerQuery.getIsUpload());
+ }
+ qw.eq("useOrgSid", pagerQuery.getUseOrgSid());
+ qw.eq("isDelete", 0);
+ qw.orderByDesc("createTime");
+ IPage pagging = baseMapper.listPage(page, qw);
+ List records = pagging.getRecords();
+ records.removeAll(Collections.singleton(null));
+ if (!records.isEmpty()) {
+ for (BaseFilesVo record : records) {
+ record.setShowSampleBtn(false);
+ if (StringUtils.isNotBlank(record.getSample())) {
+ record.setShowSampleBtn(true);
+ String filePath = record.getSample();
+ List filePaths = new ArrayList<>();
+ String array[] = filePath.split(",");
+ for (int i = 0; i < array.length; i++) {
+ String urlPrefix = fileUploadComponent.getUrlPrefix();
+ filePath = urlPrefix + array[i];
+ filePaths.add(filePath);
+ record.setFiles(filePaths);
+ }
+ }
+ }
+ }
+ PagerVo p = PagerUtil.pageToVo(pagging, null);
+ return p;
+ }
+
+ /**
+ * 编辑回显
+ *
+ * @param sid
+ * @return
+ */
+ public ResultBean selectDetails(String sid) {
+ ResultBean rb = ResultBean.fireFail();
+ BaseFilesDetailsVo vo = new BaseFilesDetailsVo();
+ BaseFiles baseFiles = fetchBySid(sid);
+ BeanUtil.copyProperties(baseFiles, vo);
+ if (StringUtils.isNotBlank(baseFiles.getSample())) {
+ String filePath = baseFiles.getSample();
+ List filePaths = new ArrayList<>();
+ String array[] = filePath.split(",");
+ for (int i = 0; i < array.length; i++) {
+ String urlPrefix = fileUploadComponent.getUrlPrefix();
+ filePath = urlPrefix + array[i];
+ filePaths.add(filePath);
+ vo.setFiles(filePaths);
+ }
+ }
+ return rb.success().setData(vo);
+ }
+
+ /**
+ * 批量删除
+ *
+ * @param sids
+ * @return
+ */
+ public ResultBean deleteBySids(String[] sids) {
+ ResultBean rb = ResultBean.fireFail();
+ for (String sid : sids) {
+ int count = baseMapper.updateBySidDelete(sid);
+ if (count == 0) {
+ return rb.setMsg("删除失败");
+ }
+ }
+ return ResultBean.fireSuccess().setMsg("删除成功");
+ }
+
+ /**
+ * 生成文件编号
+ *
+ * @param busTypeKey
+ * @return
+ */
+ public ResultBean createFileNo(String busTypeKey) {
+ ResultBean rb = ResultBean.fireFail();
+ String fileNo = baseMapper.createFileNo(busTypeKey);
+ String finNo = "";
+ if (StringUtils.isNotBlank(fileNo)) {
+ String substringFileNo = fileNo.substring(busTypeKey.length());
+ int parseInt = Integer.parseInt(substringFileNo);
+ if (parseInt >= 999) {
+ int i = Integer.parseInt(substringFileNo);
+ int finalNo = i + 1;
+ String value = String.valueOf(finalNo);
+ finNo = busTypeKey + value;
+ } else {
+ String countNo = substringFileNo.substring(substringFileNo.lastIndexOf('0') + 1, substringFileNo.length());
+ int i = Integer.parseInt(countNo);
+ int finalNo = i + 1;
+ String value = String.valueOf(finalNo);
+ if (i == 99) {
+ finNo = busTypeKey + value;
+ } else if (i < 99 && i >= 9) {
+ finNo = busTypeKey + "0" + value;
+ } else if (i < 9) {
+ finNo = busTypeKey + "00" + value;
+ }
+ }
+ } else {
+ finNo = busTypeKey + "001";
+ }
+ return rb.success().setData(finNo);
+ }
+}
\ No newline at end of file
diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
index dee0e3e747..5eedec4232 100644
--- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
+++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesorder/BusSalesOrderMapper.xml
@@ -509,16 +509,28 @@
@@ -150,9 +170,14 @@
from bus_sales_order_vehicle bv
left join bus_sales_order bo on bo.sid = bv.salesOrderSid
left join bus_sales_order_model bm on bo.sid = bm.salesOrderSid
+ LEFT JOIN anrui_base.base_vehicle_state bs ON bs.busSid = bv.sid
${ew.sqlSegment}
- and length(bv.linkSid)>0
+ AND bs.finSourceKey = '2'
+ AND length( bv.linkSid )> 0
+ AND bs.finState = '0'
+ AND bs.carryVehicleState = '0'
+ AND bs.busState = '401'
diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java
index 2170d84cc3..96055e79da 100644
--- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java
+++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bussalesordervehicle/BusSalesOrderVehicleService.java
@@ -424,7 +424,7 @@ public class BusSalesOrderVehicleService extends MybatisBaseService> resultBean = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.ARREARS_CARRY_VEHICLE.getCode());
if (!resultBean.getData().isEmpty()) {
resultBean.getData().removeAll(Collections.singleton(null));
@@ -439,7 +439,7 @@ public class BusSalesOrderVehicleService extends MybatisBaseService list = baseMapper.getCanUseCars(qw);
list.removeAll(Collections.singleton(null));
if (!list.isEmpty()) {
@@ -490,7 +490,7 @@ public class BusSalesOrderVehicleService extends MybatisBaseService> resultBean = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.ARREARS_CARRY_VEHICLE.getCode());
+ /* ResultBean> resultBean = baseVehicleTempstateFeign.getList(VehicleStateTempOrLast.PaymentEnum.ARREARS_CARRY_VEHICLE.getCode());
if (!resultBean.getData().isEmpty()) {
resultBean.getData().removeAll(Collections.singleton(null));
List vinSidList = resultBean.getData().stream().map(v -> v.getVehSid()).collect(Collectors.toList());
@@ -504,7 +504,7 @@ public class BusSalesOrderVehicleService extends MybatisBaseService pagging = baseMapper.selectPageVo(page, qw);
PagerVo p = PagerUtil.pageToVo(pagging, null);
List list = pagging.getRecords();
diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow2/FlowFeign.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow2/FlowFeign.java
index 9e4f439e5f..6198639d99 100644
--- a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow2/FlowFeign.java
+++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow2/FlowFeign.java
@@ -31,4 +31,9 @@ public interface FlowFeign {
@PostMapping(value = "/handleProsess")
@ResponseBody
ResultBean handleProsess(@RequestBody BusinessVariables bv);
+
+ @ApiOperation(value = "驳回流程")
+ @PostMapping(value = "/taskReject")
+ @ResponseBody
+ ResultBean taskReject(@RequestBody com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl);
}
diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowRest.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowRest.java
index eb77c65232..5faa7d7719 100644
--- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowRest.java
+++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowRest.java
@@ -57,7 +57,7 @@ public class FlowRest implements FlowFeign {
formVariables.put("createrOrgPath", orgPath);
formVariables.put("businessSid", bv.getBusinessSid());
//获取下一环节待办人
- if(StringUtils.isBlank(bv.getNextNodeUserSids())){
+ if (StringUtils.isBlank(bv.getNextNodeUserSids())) {
ResultBean userResultBean = flowService.getNextNodeUser(bv);
bv.setNextNodeUserSids(userResultBean.getData());
}
@@ -100,5 +100,10 @@ public class FlowRest implements FlowFeign {
return updateFlowFieldVoResultBean;
}
+ @Override
+ public ResultBean taskReject(FlowTaskVo fl) {
+ return flowService.taskReject(fl);
+ }
+
}
diff --git a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowService.java b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowService.java
index 0a1aa20f05..7b6417f123 100644
--- a/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowService.java
+++ b/anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flow2/FlowService.java
@@ -134,6 +134,7 @@ public class FlowService extends MybatisBaseService {
/**
* 根据业务参数取流程流转的环节 信息
+ *
* @param bv
* @return
*/
@@ -273,6 +274,7 @@ public class FlowService extends MybatisBaseService {
/**
* 启动流程
+ *
* @param bv
* @return
*/
@@ -426,6 +428,7 @@ public class FlowService extends MybatisBaseService {
/**
* 办理
+ *
* @param bv
* @param b
* @return
@@ -726,10 +729,10 @@ public class FlowService extends MybatisBaseService {
userSids.append(processVariables.get("sendRecommendSid").toString()).append(",");
}
//查询是否有设置转办的,抄送给设置转办人员
- List zbUserSids = processCommentService.selectByIdAndComment("转办",bv.getInstanceId());
+ List zbUserSids = processCommentService.selectByIdAndComment("转办", bv.getInstanceId());
zbUserSids.removeAll(Collections.singleton(null));
- if(!zbUserSids.isEmpty()){
- String zbUser = String.join(",",zbUserSids);
+ if (!zbUserSids.isEmpty()) {
+ String zbUser = String.join(",", zbUserSids);
userSids.append(zbUser).append(",");
}
userSids.deleteCharAt(userSids.length() - 1);
@@ -746,4 +749,26 @@ public class FlowService extends MybatisBaseService {
}
+ public ResultBean taskReject(FlowTaskVo fl) {
+ ResultBean rb = ResultBean.fireFail();
+ UpdateFlowFieldVo vo = new UpdateFlowFieldVo();
+ //获取表单中的参数
+ Map formVariables = fl.getValues();
+ formVariables = formVariables == null ? new HashMap<>() : formVariables;
+ formVariables.put("businessSid", fl.getBusinessSid());
+ //当前任务task
+ Task task = taskService.createTaskQuery().taskId(fl.getTaskId()).singleResult();
+ if (task.isSuspended()) {
+ return rb.setMsg("任务处于挂起状态");
+ }
+ // 获取流程定义信息
+ ProcessDefinition processDefinition = repositoryService.createProcessDefinitionQuery().processDefinitionId(task.getProcessDefinitionId()).singleResult();
+ // 获取所有节点信息
+ Process process = repositoryService.getBpmnModel(processDefinition.getId()).getProcesses().get(0);
+ // 获取全部节点列表,包含子节点
+ Collection allElements = FlowableUtils.getAllElements(process.getFlowElements(), null);
+
+
+ return null;
+ }
}
diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameter.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameter.java
new file mode 100644
index 0000000000..44ec58ea2b
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameter.java
@@ -0,0 +1,32 @@
+package com.yxt.anrui.riskcenter.api.loanparameter;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.yxt.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/8/16 14:34
+ */
+@Data
+@ApiModel(value = "风控参数", description = "风控参数")
+@TableName("loan_parameter")
+public class LoanParameter extends BaseEntity {
+ @ApiModelProperty("参数编码")
+ private String parameterNo;
+ @ApiModelProperty("参数名称")
+ private String parameterName;
+ @ApiModelProperty("参数值")
+ private String parameterValue;
+ @ApiModelProperty("使用组织sid")
+ private String useOrgSid;
+ @ApiModelProperty("使用组织名称")
+ private String useOrgName;
+ @ApiModelProperty("使用组织全路径")
+ private String orgSidPath;
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDetailsVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDetailsVo.java
new file mode 100644
index 0000000000..5598fdf27b
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDetailsVo.java
@@ -0,0 +1,25 @@
+package com.yxt.anrui.riskcenter.api.loanparameter;
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/8/21 9:13
+ */
+@Data
+public class LoanParameterDetailsVo implements Vo {
+ private String sid;
+ private String remarks;
+ private String userSid;
+ @ApiModelProperty("参数编码")
+ private String parameterNo;
+ @ApiModelProperty("参数名称")
+ private String parameterName;
+ @ApiModelProperty("参数值")
+ private String parameterValue;
+ @ApiModelProperty("使用组织全路径")
+ private String orgPath;
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDto.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDto.java
new file mode 100644
index 0000000000..5506a8705e
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterDto.java
@@ -0,0 +1,27 @@
+package com.yxt.anrui.riskcenter.api.loanparameter;
+
+import com.yxt.common.core.dto.Dto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/8/21 9:12
+ */
+@Data
+public class LoanParameterDto implements Dto {
+
+ private String sid;
+ private String remarks;
+ private String userSid;
+ @ApiModelProperty("参数编码")
+ private String parameterNo;
+ @ApiModelProperty("参数名称")
+ private String parameterName;
+ @ApiModelProperty("参数值")
+ private String parameterValue;
+ @ApiModelProperty("使用组织全路径")
+ private String orgPath;
+
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeign.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeign.java
new file mode 100644
index 0000000000..833d4df97e
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeign.java
@@ -0,0 +1,53 @@
+package com.yxt.anrui.riskcenter.api.loanparameter;
+
+import com.yxt.anrui.riskcenter.api.loanfinpolicyrecordapply.LoanFinPolicyApplyQuery;
+import com.yxt.anrui.riskcenter.api.loanfinpolicyrecordapply.LoanFinPolicyApplyVo;
+import com.yxt.common.core.query.PagerQuery;
+import com.yxt.common.core.result.ResultBean;
+import com.yxt.common.core.vo.PagerVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.web.bind.annotation.*;
+
+
+/**
+ * @description: 风控参数
+ * @author: fan
+ * @date: 2023/7/6
+ **/
+@Api(tags = "风控参数")
+@FeignClient(
+ contextId = "anrui-riskcenter-LoanParameter",
+ name = "anrui-riskcenter",
+ path = "v1/loanparameter",
+ fallback = LoanParameterFeignFallback.class)
+public interface LoanParameterFeign {
+
+ /**
+ * 根据条件分页查询数据的列表(已测试)
+ *
+ * @param pq
+ */
+ @ApiOperation("根据条件分页查询数据的列表")
+ @PostMapping("/listPage")
+ public ResultBean> listPage(@RequestBody PagerQuery pq);
+
+
+ @ApiOperation("新增或修改")
+ @PostMapping("/saveOrUpdate")
+ @ResponseBody
+ public ResultBean saveOrUpdateParameter(@RequestBody LoanParameterDto dto);
+
+ @ApiOperation("批量删除")
+ @DeleteMapping("/deleteBySids")
+ @ResponseBody
+ public ResultBean deleteBySids(@RequestBody String[] sids);
+
+ @ApiOperation("根据SID获取一条记录")
+ @GetMapping("/fetchDetailsBySid/{sid}")
+ @ResponseBody
+ public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid);
+
+
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeignFallback.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeignFallback.java
new file mode 100644
index 0000000000..d34f88f1fe
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterFeignFallback.java
@@ -0,0 +1,35 @@
+package com.yxt.anrui.riskcenter.api.loanparameter;
+
+import com.yxt.common.core.query.PagerQuery;
+import com.yxt.common.core.result.ResultBean;
+import com.yxt.common.core.vo.PagerVo;
+import org.springframework.stereotype.Component;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/8/16 14:36
+ */
+@Component
+public class LoanParameterFeignFallback implements LoanParameterFeign {
+ @Override
+ public ResultBean> listPage(PagerQuery pq) {
+ return null;
+ }
+
+ @Override
+ public ResultBean saveOrUpdateParameter(LoanParameterDto dto) {
+ return null;
+ }
+
+
+ @Override
+ public ResultBean deleteBySids(String[] sids) {
+ return null;
+ }
+
+ @Override
+ public ResultBean fetchDetailsBySid(String sid) {
+ return null;
+ }
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterQuery.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterQuery.java
new file mode 100644
index 0000000000..c52a9d43ae
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterQuery.java
@@ -0,0 +1,29 @@
+package com.yxt.anrui.riskcenter.api.loanparameter;
+
+import com.yxt.common.core.query.Query;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/8/16 15:05
+ */
+@Data
+public class LoanParameterQuery implements Query {
+
+ @ApiModelProperty("参数编码")
+ private String parameterNo;
+ @ApiModelProperty("参数名称")
+ private String parameterName;
+ @ApiModelProperty("组织全路径")
+ private String orgPath;
+ @ApiModelProperty("菜单sid")
+ private String menuSid;
+ @ApiModelProperty("菜单url")
+ private String menuUrl;
+ @ApiModelProperty("用户sid")
+ private String userSid;
+
+
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterVo.java b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterVo.java
new file mode 100644
index 0000000000..f2f5dce78c
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-api/src/main/java/com/yxt/anrui/riskcenter/api/loanparameter/LoanParameterVo.java
@@ -0,0 +1,23 @@
+package com.yxt.anrui.riskcenter.api.loanparameter;
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/8/16 15:04
+ */
+@Data
+public class LoanParameterVo implements Vo {
+ private String sid;
+ @ApiModelProperty("参数编码")
+ private String parameterNo;
+ @ApiModelProperty("参数名称")
+ private String parameterName;
+ @ApiModelProperty("参数值")
+ private String parameterValue;
+ @ApiModelProperty("备注")
+ private String remarks;
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.java
new file mode 100644
index 0000000000..a8ce00219d
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.java
@@ -0,0 +1,24 @@
+package com.yxt.anrui.riskcenter.biz.loanparameter;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameter;
+import com.yxt.anrui.riskcenter.api.loanparameter.LoanParameterVo;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * @description:
+ * @author: fan
+ * @date: 2023/8/21
+ **/
+@Mapper
+public interface LoanParameterMapper extends BaseMapper {
+
+ IPage listPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ int updateBySidDelete(String sid);
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.xml b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.xml
new file mode 100644
index 0000000000..48b1e7753b
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterMapper.xml
@@ -0,0 +1,21 @@
+
+
+
+
+ update loan_parameter
+ set isDelete = 1
+ where sid = #{sid}
+
+
+
+
\ No newline at end of file
diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterRest.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterRest.java
new file mode 100644
index 0000000000..f42e65ffa1
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterRest.java
@@ -0,0 +1,51 @@
+package com.yxt.anrui.riskcenter.biz.loanparameter;
+
+
+import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppBusSalesOrderVo;
+import com.yxt.anrui.riskcenter.api.loanparameter.*;
+import com.yxt.common.core.query.PagerQuery;
+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.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @description:
+ * @author: fan
+ * @date: 2023/8/21
+ **/
+@Api(tags = "风控参数")
+@RestController
+@RequestMapping("v1/loanparameter")
+public class LoanParameterRest implements LoanParameterFeign {
+
+ @Autowired
+ private LoanParameterService parameterService;
+
+ @Override
+ public ResultBean> listPage(PagerQuery pq) {
+ ResultBean> rb = ResultBean.fireFail();
+ PagerVo pv = parameterService.listPage(pq);
+ return rb.success().setData(pv);
+ }
+
+ @Override
+ public ResultBean saveOrUpdateParameter(LoanParameterDto dto) {
+ return parameterService.saveOrUpdateParameter(dto);
+ }
+
+ @Override
+ public ResultBean deleteBySids(String[] sids) {
+ return parameterService.deleteBySids(sids);
+ }
+
+ @Override
+ public ResultBean fetchDetailsBySid(String sid) {
+ return parameterService.fetchDetailsBySid(sid);
+ }
+}
diff --git a/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterService.java b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterService.java
new file mode 100644
index 0000000000..ab1569d4e1
--- /dev/null
+++ b/anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanparameter/LoanParameterService.java
@@ -0,0 +1,148 @@
+package com.yxt.anrui.riskcenter.biz.loanparameter;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
+import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
+import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
+import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
+import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
+import com.yxt.anrui.riskcenter.api.loanfinpolicy.LoanFinPolicy;
+import com.yxt.anrui.riskcenter.api.loanparameter.*;
+import com.yxt.common.base.service.MybatisBaseService;
+
+import com.yxt.common.base.utils.PagerUtil;
+import com.yxt.common.core.query.PagerQuery;
+import com.yxt.common.core.result.ResultBean;
+import com.yxt.common.core.vo.PagerVo;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Collections;
+import java.util.List;
+
+
+/**
+ * @description:
+ * @author: fan
+ * @date: 2023/8/21
+ **/
+@Service
+public class LoanParameterService extends MybatisBaseService {
+
+ @Autowired
+ private SysUserFeign sysUserFeign;
+ @Autowired
+ private SysStaffOrgFeign sysStaffOrgFeign;
+ @Autowired
+ private SysOrganizationFeign sysOrganizationFeign;
+
+ public PagerVo listPage(PagerQuery pq) {
+ IPage page = PagerUtil.queryToPage(pq);
+ LoanParameterQuery pagerQuery = pq.getParams();
+ QueryWrapper qw = new QueryWrapper<>();
+ //=======================
+ PrivilegeQuery privilegeQuery = new PrivilegeQuery();
+ privilegeQuery.setOrgPath(pagerQuery.getOrgPath());
+ privilegeQuery.setMenuSid(pagerQuery.getMenuSid());
+ privilegeQuery.setMenuUrl(pagerQuery.getMenuUrl());
+ privilegeQuery.setUserSid(pagerQuery.getUserSid());
+ ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
+ if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
+ //数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
+ String orgSidPath = pagerQuery.getOrgPath();
+ orgSidPath = orgSidPath + "/";
+ int i1 = orgSidPath.indexOf("/");
+ int i2 = orgSidPath.indexOf("/", i1 + 1);
+ int i3 = orgSidPath.indexOf("/", i2 + 1);
+ int i4 = orgSidPath.indexOf("/", i3 + 1);
+ String orgLevelKey = defaultIdReltBean.getData();
+ if ("1".equals(orgLevelKey)) {
+ orgSidPath = orgSidPath.substring(0, i1);
+ qw.like("orgSidPath", orgSidPath);
+ } else if ("2".equals(orgLevelKey)) {
+ orgSidPath = orgSidPath.substring(0, i2);
+ qw.like("orgSidPath", orgSidPath);
+ } else if ("3".equals(orgLevelKey)) {
+ orgSidPath = orgSidPath.substring(0, i3);
+ qw.like("orgSidPath", orgSidPath);
+ } else if ("4".equals(orgLevelKey)) {
+ orgSidPath = orgSidPath.substring(0, i4);
+ qw.like("orgSidPath", orgSidPath);
+ } else if ("5".equals(orgLevelKey)) {
+ qw.eq("createBySid", pagerQuery.getUserSid());
+ } else {
+ PagerVo p = new PagerVo<>();
+ return p;
+ }
+ } else {
+ PagerVo p = new PagerVo<>();
+ return p;
+ }
+ //=======================
+ //参数编码
+ if (StringUtils.isNotBlank(pagerQuery.getParameterNo())) {
+ qw.like("parameterNo", pagerQuery.getParameterNo());
+ }
+ //参数名称
+ if (StringUtils.isNotBlank(pagerQuery.getParameterName())) {
+ qw.like("parameterName", pagerQuery.getParameterName());
+ }
+ qw.eq("isDelete", 0);
+ qw.orderByDesc("createTime");
+ IPage pagging = baseMapper.listPage(page, qw);
+ PagerVo p = PagerUtil.pageToVo(pagging, null);
+ return p;
+ }
+
+ public ResultBean saveOrUpdateParameter(LoanParameterDto dto) {
+ ResultBean rb = ResultBean.fireFail();
+ if (StringUtils.isNotBlank(dto.getSid())) {
+ LoanParameter loanParameter = fetchBySid(dto.getSid());
+ BeanUtil.copyProperties(dto, loanParameter, "id", "sid");
+ baseMapper.updateById(loanParameter);
+ } else {
+ LoanParameter loanParameter = new LoanParameter();
+ BeanUtil.copyProperties(dto, loanParameter, "id", "sid");
+ loanParameter.setOrgSidPath(dto.getOrgPath());
+ loanParameter.setCreateBySid(dto.getUserSid());
+ ResultBean orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath());
+ if (orgSidByPath.getSuccess()) {
+ String userOrgSid = orgSidByPath.getData();
+ loanParameter.setUseOrgSid(userOrgSid);
+ ResultBean organizationVo = sysOrganizationFeign.fetchBySid(userOrgSid);
+ if (organizationVo.getSuccess()) {
+ SysOrganizationVo organizationVoData = organizationVo.getData();
+ if (null != organizationVoData) {
+ loanParameter.setUseOrgName(organizationVoData.getName());
+ }
+ }
+ }
+ baseMapper.insert(loanParameter);
+ }
+ return rb.success();
+ }
+
+ public ResultBean deleteBySids(String[] sids) {
+ ResultBean rb = ResultBean.fireFail();
+ for (String sid : sids) {
+ int count = baseMapper.updateBySidDelete(sid);
+ if (count == 0) {
+ return rb.setMsg("删除失败");
+ }
+ }
+ return ResultBean.fireSuccess().setMsg("删除成功");
+ }
+
+ public ResultBean fetchDetailsBySid(String sid) {
+ ResultBean rb = ResultBean.fireFail();
+ LoanParameterDetailsVo vo = new LoanParameterDetailsVo();
+ LoanParameter loanParameter = fetchBySid(sid);
+ BeanUtil.copyProperties(loanParameter, vo);
+ vo.setUserSid(loanParameter.getCreateBySid());
+ vo.setOrgPath(loanParameter.getOrgSidPath());
+ return rb.success().setData(vo);
+ }
+}