huangbin 4 lat temu
rodzic
commit
d0cdce24a9

+ 3 - 0
src/common/constants/buttonType.ts

@@ -124,4 +124,7 @@ export interface ButtonType {
     platinum_financing_information_detail: string; // 千海金 融资明细
     platinum_agreement_add: string; // 千海金 协议管理 新增
     platinum_agreement_modify: string; // 千海金 协议管理 修改
+    platinum_agreement_stop: string; // 千海金 协议管理 停用
+    platinum_agreement_resume: string; // 千海金 协议管理 恢复
+    platinum_agreement_delete: string; // 千海金 协议管理 注销
 }

+ 13 - 1
src/views/platinum/platinum_agreement/compoments/controlModal/index.vue

@@ -7,6 +7,15 @@
     <!-- 修改 -->
     <Modify :selectedRow="selectedRow"
             @refresh="refresh" />
+    <!-- 注销 -->
+    <Delete :selectedRow="selectedRow"
+            @refresh="refresh" />
+    <!-- 停用 -->
+    <Stop :selectedRow="selectedRow"
+          @refresh="refresh" />
+    <!-- 恢复 -->
+    <Resume :selectedRow="selectedRow"
+            @refresh="refresh" />
   </div>
 </template>
 
@@ -15,11 +24,14 @@ import { defineComponent, PropType } from 'vue';
 import Detail from '../detail/index.vue';
 import Modify from '../modify/index.vue';
 import Add from '../add/index.vue';
+import Delete from '../delete/index.vue';
+import Resume from '../resume/index.vue';
+import Stop from '../stop/index.vue';
 import { QhjAgreementConfig } from '@/services/go/ermcp/qhj/interface';
 
 export default defineComponent({
     name: 'custom-control-modal',
-    components: { Detail, Modify, Add },
+    components: { Detail, Modify, Add, Delete, Stop },
     props: {
         selectedRow: {
             type: Object as PropType<QhjAgreementConfig>,

+ 151 - 0
src/views/platinum/platinum_agreement/compoments/delete/index.vue

@@ -0,0 +1,151 @@
+<template>
+  <!-- 注销协议-->
+  <a-modal class="commonModal addSpotVariety"
+           title="注销协议"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <a-form class="inlineForm">
+      <fieldset class="formFieldSet">
+        <legend>协议信息</legend>
+        <Des :list="desList"
+             @onClick="getContent(selectedRow.agreementcontent)" />
+      </fieldset>
+      <fieldset class="formFieldSet">
+        <legend>修改流水</legend>
+        <div class="tableDatas tableContextCenter">
+          <a-table class="dialogTable"
+                   :columns="columns"
+                   :data-source="tableList"
+                   :pagination="false">
+            <!-- 协议类型-->
+            <template #agreementcontent="{ record }">
+              <a @click="getContent(record.agreementcontent)">查看</a>
+            </template>
+          </a-table>
+        </div>
+      </fieldset>
+    </a-form>
+  </a-modal>
+  <a-modal class="commonModal addSpotVariety"
+           title="协议内容"
+           centered
+           v-model:visible="visibleContent"
+           :maskClosable="false"
+           @cancel="visibleContent = false"
+           width="890px">
+    <a-textarea class="dialogInput"
+                v-model:value="content"
+                style="width: 100%"
+                placeholder="请输入协议内容"
+                readonly
+                :autosize="{ minRows: 8, maxRows: 24 }" />
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                @click="visibleContent = false">关闭</a-button>
+    </template>
+  </a-modal>
+</template>
+
+<script lang="ts">
+import { defineComponent, PropType, ref, watchEffect } from 'vue';
+import { closeModal } from '@/common/setup/modal/index';
+import { Des, handleDesList } from '@/common/components/commonDes';
+import { QhjAgreementChangeLog, QhjAgreementConfig } from '@/services/go/ermcp/qhj/interface';
+import { formatValue } from '@/common/methods';
+import { getAgreementTypeName } from '@/common/constants/enumsName';
+import { handleArgreementType } from '../../setup';
+import { queryTableList } from '@/common/setup/table';
+import { queryAgreementChangeLog } from '@/services/go/ermcp/qhj';
+
+const columns = [
+    {
+        title: '时间',
+        dataIndex: 'updatetime',
+        key: 'updatetime',
+    },
+    {
+        title: '协议名称',
+        dataIndex: 'agreementname',
+        key: 'agreementname',
+    },
+    {
+        title: '内容',
+        dataIndex: 'agreementcontent',
+        key: 'agreementcontent',
+        slots: { customRender: 'agreementcontent' },
+    },
+];
+
+export default defineComponent({
+    name: 'custom-detail',
+    components: { Des },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QhjAgreementConfig>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = closeModal('platinum_agreement_delete');
+        const { desList, getDesList } = handleDesList();
+        const { getRateEnumName } = handleArgreementType();
+        const { loading, tableList, queryTable } = queryTableList<QhjAgreementChangeLog>();
+        // 协议内容
+        const visibleContent = ref<boolean>(false);
+        const content = ref<string>('');
+        function getContent(value: string) {
+            visibleContent.value = true;
+            content.value = value;
+        }
+        watchEffect(() => {
+            if (visible.value) {
+                const data = props.selectedRow;
+                queryTable(queryAgreementChangeLog, { agreementid: data.agreementid });
+
+                const list = [
+                    { label: '协议编号', value: formatValue(data.agreementno) },
+                    { label: '协议名称', value: formatValue(data.agreementname) },
+                    { label: '协议类型', value: getAgreementTypeName(data.agreementtype) },
+                    { label: '签署频率', value: getRateEnumName(data.agreementfrequency) },
+                    { label: '内容', value: '查看', className: 'blue' },
+                ];
+                getDesList(list);
+            }
+        });
+
+        return {
+            visibleContent,
+            content,
+            getContent,
+            columns,
+            cancel,
+            desList,
+            visible,
+            tableList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.custom-detail {
+    .ant-form.inlineForm {
+        margin-top: 20px;
+    }
+    .upload {
+        .look {
+            margin-left: 0;
+        }
+    }
+}
+</style>;

+ 151 - 0
src/views/platinum/platinum_agreement/compoments/resume/index.vue

@@ -0,0 +1,151 @@
+<template>
+  <!-- 恢复协议-->
+  <a-modal class="commonModal addSpotVariety"
+           title="恢复协议"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <a-form class="inlineForm">
+      <fieldset class="formFieldSet">
+        <legend>协议信息</legend>
+        <Des :list="desList"
+             @onClick="getContent(selectedRow.agreementcontent)" />
+      </fieldset>
+      <fieldset class="formFieldSet">
+        <legend>修改流水</legend>
+        <div class="tableDatas tableContextCenter">
+          <a-table class="dialogTable"
+                   :columns="columns"
+                   :data-source="tableList"
+                   :pagination="false">
+            <!-- 协议类型-->
+            <template #agreementcontent="{ record }">
+              <a @click="getContent(record.agreementcontent)">查看</a>
+            </template>
+          </a-table>
+        </div>
+      </fieldset>
+    </a-form>
+  </a-modal>
+  <a-modal class="commonModal addSpotVariety"
+           title="协议内容"
+           centered
+           v-model:visible="visibleContent"
+           :maskClosable="false"
+           @cancel="visibleContent = false"
+           width="890px">
+    <a-textarea class="dialogInput"
+                v-model:value="content"
+                style="width: 100%"
+                placeholder="请输入协议内容"
+                readonly
+                :autosize="{ minRows: 8, maxRows: 24 }" />
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                @click="visibleContent = false">关闭</a-button>
+    </template>
+  </a-modal>
+</template>
+
+<script lang="ts">
+import { defineComponent, PropType, ref, watchEffect } from 'vue';
+import { closeModal } from '@/common/setup/modal/index';
+import { Des, handleDesList } from '@/common/components/commonDes';
+import { QhjAgreementChangeLog, QhjAgreementConfig } from '@/services/go/ermcp/qhj/interface';
+import { formatValue } from '@/common/methods';
+import { getAgreementTypeName } from '@/common/constants/enumsName';
+import { handleArgreementType } from '../../setup';
+import { queryTableList } from '@/common/setup/table';
+import { queryAgreementChangeLog } from '@/services/go/ermcp/qhj';
+
+const columns = [
+    {
+        title: '时间',
+        dataIndex: 'updatetime',
+        key: 'updatetime',
+    },
+    {
+        title: '协议名称',
+        dataIndex: 'agreementname',
+        key: 'agreementname',
+    },
+    {
+        title: '内容',
+        dataIndex: 'agreementcontent',
+        key: 'agreementcontent',
+        slots: { customRender: 'agreementcontent' },
+    },
+];
+
+export default defineComponent({
+    name: 'custom-detail',
+    components: { Des },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QhjAgreementConfig>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = closeModal('platinum_agreement_resume');
+        const { desList, getDesList } = handleDesList();
+        const { getRateEnumName } = handleArgreementType();
+        const { loading, tableList, queryTable } = queryTableList<QhjAgreementChangeLog>();
+        // 协议内容
+        const visibleContent = ref<boolean>(false);
+        const content = ref<string>('');
+        function getContent(value: string) {
+            visibleContent.value = true;
+            content.value = value;
+        }
+        watchEffect(() => {
+            if (visible.value) {
+                const data = props.selectedRow;
+                queryTable(queryAgreementChangeLog, { agreementid: data.agreementid });
+
+                const list = [
+                    { label: '协议编号', value: formatValue(data.agreementno) },
+                    { label: '协议名称', value: formatValue(data.agreementname) },
+                    { label: '协议类型', value: getAgreementTypeName(data.agreementtype) },
+                    { label: '签署频率', value: getRateEnumName(data.agreementfrequency) },
+                    { label: '内容', value: '查看', className: 'blue' },
+                ];
+                getDesList(list);
+            }
+        });
+
+        return {
+            visibleContent,
+            content,
+            getContent,
+            columns,
+            cancel,
+            desList,
+            visible,
+            tableList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.custom-detail {
+    .ant-form.inlineForm {
+        margin-top: 20px;
+    }
+    .upload {
+        .look {
+            margin-left: 0;
+        }
+    }
+}
+</style>;

+ 151 - 0
src/views/platinum/platinum_agreement/compoments/stop/index.vue

@@ -0,0 +1,151 @@
+<template>
+  <!-- 停用协议-->
+  <a-modal class="commonModal addSpotVariety"
+           title="停用协议"
+           centered
+           v-model:visible="visible"
+           :maskClosable="false"
+           @cancel="cancel"
+           width="890px">
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                :loading="loading"
+                @click="cancel">关闭</a-button>
+    </template>
+    <a-form class="inlineForm">
+      <fieldset class="formFieldSet">
+        <legend>协议信息</legend>
+        <Des :list="desList"
+             @onClick="getContent(selectedRow.agreementcontent)" />
+      </fieldset>
+      <fieldset class="formFieldSet">
+        <legend>修改流水</legend>
+        <div class="tableDatas tableContextCenter">
+          <a-table class="dialogTable"
+                   :columns="columns"
+                   :data-source="tableList"
+                   :pagination="false">
+            <!-- 协议类型-->
+            <template #agreementcontent="{ record }">
+              <a @click="getContent(record.agreementcontent)">查看</a>
+            </template>
+          </a-table>
+        </div>
+      </fieldset>
+    </a-form>
+  </a-modal>
+  <a-modal class="commonModal addSpotVariety"
+           title="协议内容"
+           centered
+           v-model:visible="visibleContent"
+           :maskClosable="false"
+           @cancel="visibleContent = false"
+           width="890px">
+    <a-textarea class="dialogInput"
+                v-model:value="content"
+                style="width: 100%"
+                placeholder="请输入协议内容"
+                readonly
+                :autosize="{ minRows: 8, maxRows: 24 }" />
+    <template #footer>
+      <a-button key="submit"
+                type="primary"
+                @click="visibleContent = false">关闭</a-button>
+    </template>
+  </a-modal>
+</template>
+
+<script lang="ts">
+import { defineComponent, PropType, ref, watchEffect } from 'vue';
+import { closeModal } from '@/common/setup/modal/index';
+import { Des, handleDesList } from '@/common/components/commonDes';
+import { QhjAgreementChangeLog, QhjAgreementConfig } from '@/services/go/ermcp/qhj/interface';
+import { formatValue } from '@/common/methods';
+import { getAgreementTypeName } from '@/common/constants/enumsName';
+import { handleArgreementType } from '../../setup';
+import { queryTableList } from '@/common/setup/table';
+import { queryAgreementChangeLog } from '@/services/go/ermcp/qhj';
+
+const columns = [
+    {
+        title: '时间',
+        dataIndex: 'updatetime',
+        key: 'updatetime',
+    },
+    {
+        title: '协议名称',
+        dataIndex: 'agreementname',
+        key: 'agreementname',
+    },
+    {
+        title: '内容',
+        dataIndex: 'agreementcontent',
+        key: 'agreementcontent',
+        slots: { customRender: 'agreementcontent' },
+    },
+];
+
+export default defineComponent({
+    name: 'custom-detail',
+    components: { Des },
+    props: {
+        selectedRow: {
+            type: Object as PropType<QhjAgreementConfig>,
+            default: {},
+        },
+    },
+    setup(props, context) {
+        const { visible, cancel } = closeModal('platinum_agreement_stop');
+        const { desList, getDesList } = handleDesList();
+        const { getRateEnumName } = handleArgreementType();
+        const { loading, tableList, queryTable } = queryTableList<QhjAgreementChangeLog>();
+        // 协议内容
+        const visibleContent = ref<boolean>(false);
+        const content = ref<string>('');
+        function getContent(value: string) {
+            visibleContent.value = true;
+            content.value = value;
+        }
+        watchEffect(() => {
+            if (visible.value) {
+                const data = props.selectedRow;
+                queryTable(queryAgreementChangeLog, { agreementid: data.agreementid });
+
+                const list = [
+                    { label: '协议编号', value: formatValue(data.agreementno) },
+                    { label: '协议名称', value: formatValue(data.agreementname) },
+                    { label: '协议类型', value: getAgreementTypeName(data.agreementtype) },
+                    { label: '签署频率', value: getRateEnumName(data.agreementfrequency) },
+                    { label: '内容', value: '查看', className: 'blue' },
+                ];
+                getDesList(list);
+            }
+        });
+
+        return {
+            visibleContent,
+            content,
+            getContent,
+            columns,
+            cancel,
+            desList,
+            visible,
+            tableList,
+        };
+    },
+});
+</script>
+
+<style lang="less">
+.custom-detail {
+    .ant-form.inlineForm {
+        margin-top: 20px;
+    }
+    .upload {
+        .look {
+            margin-left: 0;
+        }
+    }
+}
+</style>;