diff --git a/examples/store/index.js b/examples/store/index.js
index d31c15db..22293cd3 100644
--- a/examples/store/index.js
+++ b/examples/store/index.js
@@ -2,6 +2,7 @@ import Vue from 'vue'
import Vuex from 'vuex'
import preState from 'vuex-persistedstate'
import * as modules from "dvcp-ui/lib/js/modules"
+import axios from "../router/axios";
Vue.use(Vuex)
@@ -15,6 +16,11 @@ export default new Vuex.Store({
},
cleanApps(state) {
state.apps = []
+ },
+ setFinanceUser(state) {
+ axios.post("appfinancialorganizationuser/checkUser").then(res => {
+ state.user.financeUser = res.data
+ }).catch(() => 0)
}
},
modules,
diff --git a/package.json b/package.json
index 3f05b2e2..b4605add 100644
--- a/package.json
+++ b/package.json
@@ -15,6 +15,8 @@
],
"dependencies": {
"@amap/amap-jsapi-loader": "^1.0.1",
+ "@jiaminghi/c-render": "^0.4.3",
+ "@jiaminghi/charts": "^0.2.18",
"@jiaminghi/data-view": "^2.10.0",
"bin-code-editor": "^0.9.0",
"dayjs": "^1.8.35",
@@ -48,13 +50,14 @@
"eslint-plugin-vue": "^5.0.0",
"image-webpack-loader": "^6.0.0",
"inquirer": "^6.5.2",
- "node-sass": "npm:sass@^1.43.4",
"readline": "^1.3.0",
- "sass-loader": "^7.1.0",
+ "sass": "~1.32.12",
+ "sass-loader": "^7.3.1",
"uglifyjs-webpack-plugin": "^2.2.0",
"v-viewer": "^1.6.4",
"vue": "^2.6.14",
"vue-router": "^3.3.4",
+ "vue-style-loader": "^4.1.3",
"vue-template-compiler": "^2.6.14",
"vuex": "^3.5.1",
"vuex-persistedstate": "^2.7.1"
diff --git a/packages/conv/creditScore/AppGridMemberScore/components/gridScoreDetail.vue b/packages/conv/creditScore/AppGridMemberScore/components/gridScoreDetail.vue
index 912cc129..c2e105e1 100644
--- a/packages/conv/creditScore/AppGridMemberScore/components/gridScoreDetail.vue
+++ b/packages/conv/creditScore/AppGridMemberScore/components/gridScoreDetail.vue
@@ -21,7 +21,7 @@
@@ -39,17 +39,29 @@
+ :disabled="tableData.length == 0">
导出
-
-
-
+
- {{ row.integralType == 3 ? row.integralRuleNamesearch : row.integralType == 0? row.eventDesc : '' }}
+ {{ row.changeIntegral | formatTime }}
+ {{ row.changeIntegral > 0 ? '+' : '-' }}{{ row.changeIntegral }}
+
+
+
+
+ 积分调整
+ {{ row.eventType }}
+
+
+
+
+ {{ row.eventDesc }}
+ {{ row.eventName }}
@@ -59,6 +71,7 @@
diff --git a/packages/publicity/AppVillageIntroduction/components/Add.vue b/packages/publicity/AppVillageIntroduction/components/Add.vue
index b4f8a0c9..4937ef0d 100644
--- a/packages/publicity/AppVillageIntroduction/components/Add.vue
+++ b/packages/publicity/AppVillageIntroduction/components/Add.vue
@@ -1,7 +1,7 @@
-
+
@@ -19,12 +19,12 @@
+ :instance="instance"
+ isShowTip
+ v-model="form.thumbUrl"
+ :limit="1"
+ :cropOps="cropOps"
+ is-crop>
最多上传1张图片,单个文件最大10MB,支持jpg、jpeg、png格式
图片比例:1.6:1
@@ -43,89 +43,91 @@
diff --git a/packages/publicity/AppVillageRegulations/components/Add.vue b/packages/publicity/AppVillageRegulations/components/Add.vue
index 6a8314fc..f13cfbce 100644
--- a/packages/publicity/AppVillageRegulations/components/Add.vue
+++ b/packages/publicity/AppVillageRegulations/components/Add.vue
@@ -1,7 +1,7 @@
-
+
@@ -50,7 +50,8 @@
props: {
instance: Function,
dict: Object,
- params: Object
+ params: Object,
+ menuName: String
},
data () {
@@ -74,7 +75,8 @@
},
computed: {
- ...mapState(['user'])
+ ...mapState(['user']),
+ pageTitle: v => `${!!v.params.id ? '编辑' : '添加'}${v.menuName}`
},
created () {
diff --git a/packages/publicity/AppVillageRegulations/components/List.vue b/packages/publicity/AppVillageRegulations/components/List.vue
index 76762283..2b7e3311 100644
--- a/packages/publicity/AppVillageRegulations/components/List.vue
+++ b/packages/publicity/AppVillageRegulations/components/List.vue
@@ -1,7 +1,7 @@
-
+
@@ -10,25 +10,25 @@
+ v-model="search.title"
+ class="search-input"
+ size="small"
+ v-throttle="() => {search.current=1,getList()}"
+ placeholder="请输入标题"
+ clearable
+ @clear="search.current = 1, search.title = '', getList()"
+ suffix-icon="iconfont iconSearch">
+ :tableData="tableData"
+ :col-configs="colConfigs"
+ :total="total"
+ style="margin-top: 6px;"
+ :current.sync="search.current"
+ :size.sync="search.size"
+ @getList="getList">
+
+
+
diff --git a/project/xiushan/apps/finance/AppGuaranteeProduct/AppGuaranteeProduct.vue b/project/xiushan/apps/finance/AppGuaranteeProduct/AppGuaranteeProduct.vue
new file mode 100644
index 00000000..7acd89a8
--- /dev/null
+++ b/project/xiushan/apps/finance/AppGuaranteeProduct/AppGuaranteeProduct.vue
@@ -0,0 +1,41 @@
+
+
+
+
+
+
+
diff --git a/project/xiushan/apps/finance/AppGuaranteeProduct/productAdd.vue b/project/xiushan/apps/finance/AppGuaranteeProduct/productAdd.vue
new file mode 100644
index 00000000..b34330f2
--- /dev/null
+++ b/project/xiushan/apps/finance/AppGuaranteeProduct/productAdd.vue
@@ -0,0 +1,172 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ op.dictName }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 取消
+ 申请发布
+
+
+
+
+
+
+
+
diff --git a/project/xiushan/apps/finance/AppGuaranteeProduct/productDetail.vue b/project/xiushan/apps/finance/AppGuaranteeProduct/productDetail.vue
new file mode 100644
index 00000000..0a3921fd
--- /dev/null
+++ b/project/xiushan/apps/finance/AppGuaranteeProduct/productDetail.vue
@@ -0,0 +1,165 @@
+
+
+
+
+
+ 审核
+
+
+
+
+
+
+
+ {{ detail.productName }}
+ {{ dict.getLabel('productStatus', detail.status) }}
+
+ {{ detail.productFeatures }}
+
+ {{ detail.bankCounterpart }}
+ {{ detail.consultationTelephone }}
+
+
+
+
+
+
+
+
+ {{ detail.areaName }}
+ {{ detail.faceUserLabel }}
+
+
+
+
+ {{ dict.getLabel('financialProductChannels', detail.handlingChannels) }}
+ {{ detail.zwspName }}
+
+
+
+
+
+
+ {{ dict.getLabel("productStatus", detail.status) }}
+
+ {{ detail.auditUserName }}
+ {{ detail.auditTime }}
+
+ {{ detail.auditDescription }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/project/xiushan/apps/finance/AppGuaranteeProduct/productList.vue b/project/xiushan/apps/finance/AppGuaranteeProduct/productList.vue
new file mode 100644
index 00000000..533f6611
--- /dev/null
+++ b/project/xiushan/apps/finance/AppGuaranteeProduct/productList.vue
@@ -0,0 +1,135 @@
+
+
+
+
+
+ 推荐产品
+
+
+
+
+
+
+ 添加产品
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ row.interestRateMin }}%~{{ row.interestRateMax }}%
+
+
+
+
+ 详情
+
+ 编辑
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/project/xiushan/apps/finance/AppGuaranteeProduct/productRecommend.vue b/project/xiushan/apps/finance/AppGuaranteeProduct/productRecommend.vue
new file mode 100644
index 00000000..b0e87321
--- /dev/null
+++ b/project/xiushan/apps/finance/AppGuaranteeProduct/productRecommend.vue
@@ -0,0 +1,163 @@
+
+
+
+
+
+
+
+ 新增推荐
+
+
+
+
+
+
+ 编辑
+ 删除
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/project/xiushan/apps/finance/AppLoanAudit/loanDetail.vue b/project/xiushan/apps/finance/AppLoanAudit/loanDetail.vue
index 084e57fa..37d5190b 100644
--- a/project/xiushan/apps/finance/AppLoanAudit/loanDetail.vue
+++ b/project/xiushan/apps/finance/AppLoanAudit/loanDetail.vue
@@ -7,71 +7,135 @@
-
-
-
-
-
-
- {{ detail.productName }}
-
- 产品详情
-
-
-
- {{ detail.organizationName }}
- {{ detail.loanAmount }}
- {{ dict.getLabel('productRepaymentTimeline', detail.hopeLifespan) }}
-
-
-
- {{ detail.enterpriseName }}
-
-
-
-
-
- {{ detail.areaName }}
- {{ dict.getLabel('financialFundPurpose', detail.fundPurpose) }}
-
-
-
- {{ detail.name }}
-
-
-
-
-
- {{ detail.idNumber }}
- {{ detail.phone }}
- {{ detail.createTime }}
-
-
- {{ detail.remark }}
-
-
-
-
-
-
- {{ dict.getLabel('financialLoanApplyStatus', detail.status) }}
- {{ detail.organizationName }}
- {{ detail.auditUserName }}
- {{ detail.auditPhone }}
-
- {{ detail.auditAmount }}
- {{ detail.loanDate }}
- {{ dict.getLabel('productRepaymentTimeline', detail.auditLifespan) }}
+
+
+
+
+
+
+
+ {{ detail.productName }}
+
+ 产品详情
+
+
-
- {{ detail.auditTime }}
-
-
- {{ detail.auditDescription }}
-
-
-
+ {{ detail.organizationName }}
+
+
+ {{ detail.enterpriseName }}
+
+
+
+
+
+
+
+ {{ detail.name }}
+
+
+
+
+
+ {{ detail.idNumber }}
+ {{ detail.phone }}
+ {{ detail.createTime }}
+
+
+ {{ detail.remark }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ dict.getLabel('financialLoanApplyStatus', detail.status) }}
+ {{ detail.organizationName }}
+ {{ detail.auditUserName }}
+ {{ detail.auditPhone }}
+ {{ detail.loanDate }}
+ {{ detail.auditTime }}
+
+
+ {{ detail.auditDescription }}
+
+
+
+
+
+
+
+
+
+
+ {{ detail.productName }}
+
+ 产品详情
+
+
+
+ {{ detail.organizationName }}
+ {{ detail.loanAmount }}
+ {{ dict.getLabel('productRepaymentTimeline', detail.hopeLifespan) }}
+
+
+
+ {{ detail.enterpriseName }}
+
+
+
+
+
+ {{ detail.areaName }}
+ {{ dict.getLabel('financialFundPurpose', detail.fundPurpose) }}
+
+
+
+ {{ detail.name }}
+
+
+
+
+
+ {{ detail.idNumber }}
+ {{ detail.phone }}
+ {{ detail.createTime }}
+
+
+ {{ detail.remark }}
+
+
+
+
+
+
+ {{ dict.getLabel('financialLoanApplyStatus', detail.status) }}
+ {{ detail.organizationName }}
+ {{ detail.auditUserName }}
+ {{ detail.auditPhone }}
+
+ {{ detail.auditAmount }}
+ {{ detail.loanDate }}
+ {{ dict.getLabel('productRepaymentTimeline', detail.auditLifespan) }}
+
+
+ {{ detail.auditTime }}
+
+
+ {{ detail.auditDescription }}
+
+
+
+
@@ -81,16 +145,26 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -120,7 +194,8 @@ export default {
},
isAuthing() {
return this.detail.status == "0"
- }
+ },
+ isGuaranteeProduct: v => v.detail.organizationType == 2
},
data() {
return {
@@ -134,7 +209,7 @@ export default {
{pattern: /\d+/, message: "请输入 正确的放款金额"},
],
auditLifespan: [{required: true, message: "请选择 使用期限"}],
- loanDate: [{required: true, message: "请选择 放款日期"}],
+ loanDate: [{required: true, message: "请选择 日期"}],
auditDescription: [{required: true, message: "请输入 审批意见"}],
},
personCR: false
@@ -194,5 +269,10 @@ export default {
.el-date-editor {
width: 100%;
}
+
+ .thumb {
+ width: 320px;
+ height: 180px;
+ }
}
diff --git a/project/xiushan/apps/finance/AppLoanAudit/loanList.vue b/project/xiushan/apps/finance/AppLoanAudit/loanList.vue
index 176c6855..ec7dc38a 100644
--- a/project/xiushan/apps/finance/AppLoanAudit/loanList.vue
+++ b/project/xiushan/apps/finance/AppLoanAudit/loanList.vue
@@ -26,6 +26,17 @@
+
+
+
+
+
+
+
+
+
+
+
详情
@@ -50,7 +61,19 @@ import LoanSta from "./loanSta";
export default {
name: "loanList",
- components: {LoanSta},
+ components: {
+ LoanSta,
+ customRender: {
+ props: {
+ row: Object,
+ render: Function
+ },
+ render(h) {
+ const {row, render} = this.$props
+ return render(h, {row})
+ }
+ }
+ },
props: {
instance: Function,
dict: Object,
@@ -60,15 +83,12 @@ export default {
...mapState(['user']),
colConfigs() {
return [
+ {slot: "expand"},
{label: "产品名称", prop: "productName"},
+ {label: "企业主体", prop: "enterpriseName"},
+ {label: "申请时间", prop: "createTime", width: 160},
{label: "联系人", prop: "name"},
{label: "联系方式", prop: "phone"},
- {label: "身份证号", render: (h, {row}) => h('p', this.idCardNoUtil.hideId(row.idNumber)), width: 160},
- {label: "企业主体", prop: "enterpriseName"},
- {label: "贷款金额(万)", prop: "loanAmount"},
- {label: "申请时间", prop: "createTime", width: 160},
- {label: "贷款机构", prop: "organizationName"},
- {label: "机构类型", prop: "organizationType", dict: "financialOrganizationType"},
{label: "状态", prop: "status", align: "center", dict: "financialLoanApplyStatus"},
{slot: "options"}
]
@@ -102,6 +122,22 @@ export default {
this.search.applyEndDate = this.search.applyTime?.[1].substring(0, 10)
this.getTableData()
},
+ desConfigs(row) {
+ let ops = []
+ if (row.organizationType == 2) {//担保产品
+ ops = [
+ {label: "担保机构", prop: "organizationName"},
+ ]
+ } else {//金融产品
+ ops = [
+ {label: "身份证号", render: (h, {row}) => h('p', this.idCardNoUtil.hideId(row.idNumber)), width: 160},
+ {label: "贷款金额(万)", prop: "loanAmount"},
+ {label: "贷款机构", prop: "organizationName"},
+ {label: "机构类型", prop: "organizationType", dict: "financialOrganizationType"},
+ ]
+ }
+ return ops
+ }
},
created() {
this.$dict.load('financialLoanApplyStatus')
diff --git a/vue.config.js b/vue.config.js
index b5aae95f..d7f9c672 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -64,6 +64,14 @@ module.exports = {
'^/lan': '/'
}
},
+ '/test': {
+ target: 'http://192.168.1.105:9000',
+ changeOrigin: true,
+ pathRewrite: {
+ //地址重写
+ '^/test': '/'
+ }
+ },
'/saas': {
target: 'http://192.168.1.34:19898',
changeOrigin: true,