zhaoxiaoqiang1
2026-01-04 f1d30d03186c79ca2cbcfe60d6d2ce7d73fba97b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<template>
  <div class="comm-page">
    <div class="form-content">
      <FormList
        :info="formInfo"
        :isShowDetail="isShowDetail"
        @handleClick="isShowDetail = !isShowDetail"
        @updateValue="updateValue"
        :buttonsList="[]"
        @setValueInfo="setValueInfo"
      ></FormList>
    </div>
    <p>
      <el-button type="primary" size="small" @click="onSubmit">登录</el-button>
    </p>
  </div>
</template>
<script>
/**
 * 公共页面
 */
import CryptoJS from 'crypto-js'
import FormList from './components/FormList'
import { loginForm } from '@comprehensive/utils/formItems'
 
import { login } from '@comprehensive/serve/public'
 
export default {
  components: {
    FormList
  },
  data() {
    return {
      // 表单结果数据
      valueInfo: {},
      records: [],
      formInfo: [...loginForm],
      pageInfo: {
        currentPage: 1,
        pageSize: 10,
        total: 0
      },
      // 是否显示所有表单项
      isShowDetail: false,
      loading: false,
      dialogTableVisible: false,
      dialogAppointment: false,
      serialNo: ''
    }
  },
  created() {
    this.init()
  },
  methods: {
    // 页面初始化处理
    init() {},
 
    // 更新表单数据或查找某项数据
    setOrGetFormInfo(nameKey, newInfo) {
      let { formInfo } = this
      let index = formInfo.findIndex(({ name }) => name === nameKey)
      let result = {}
      if (!isNaN(index)) {
        this.$set(this.formInfo, index, { ...formInfo[index], ...newInfo })
        result = this.formInfo[index]
      }
      if (typeof newInfo === 'undefined') {
        return result
      }
    },
 
    // 设置表单结果数据
    setValueInfo(info = {}) {
      this.valueInfo = info
    },
 
    // 跳转到详情页
    toDetail(result) {
      const {
        serialNo,
        flowno,
        customerid: customerID,
        objecttype: objectType,
        occurtype
      } = result
 
      this.$router.push(
        `/comprehensiveTransaction/loanDetail/${serialNo}?occurType=${occurtype}&flowno=${flowno}&objectType=${objectType}&customerID=${customerID}`
      )
    },
 
    // 更新数据
    updateValue(value, item) {
      let { name } = item
      this.setOrGetFormInfo(name, { value })
    },
 
    encrypt(word) {
      var key = CryptoJS.enc.Utf8.parse('1qaz2WSX3edc4RFV')
      var srcs = CryptoJS.enc.Utf8.parse(word)
      var encrypted = CryptoJS.AES.encrypt(srcs, key, {
        mode: CryptoJS.mode.ECB,
        padding: CryptoJS.pad.Pkcs7
      })
      return encrypted.toString()
    },
 
    // 查询操作
    async onSubmit() {
      let { valueInfo } = this
      const res = await login({
        params: {
          ...valueInfo,
          loginPwd: this.encrypt(valueInfo.loginPwd)
        }
      })
    }
  }
}
</script>
<style lang="postcss" scoped>
.comm-page {
  & .list-content {
    font-size: 14px;
  }
  & .export-excle {
    margin: 20px 0;
  }
  & .empty-section {
    height: 50px;
  }
  & >>> .comm-dialog {
    width: 1200px;
  }
}
</style>