|
@@ -30,6 +30,10 @@
|
|
|
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
|
|
|
v-hasPermi="['business:glbt:add']">新增</el-button>
|
|
|
</el-col>
|
|
|
+ <el-col :span="1.5">
|
|
|
+ <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleImport"
|
|
|
+ v-hasPermi="['business:glbt:importData']">导入</el-button>
|
|
|
+ </el-col>
|
|
|
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
|
</el-row>
|
|
|
|
|
@@ -127,6 +131,20 @@
|
|
|
<td>补发金额</td>
|
|
|
<td>{{ form.bfje }}</td>
|
|
|
</tr>
|
|
|
+ <tr>
|
|
|
+ <td>开户银行</td>
|
|
|
+ <td>{{ translateDict('C0044', form.khyh) }}</td>
|
|
|
+ <td>银行账号</td>
|
|
|
+ <td>{{ form.yhzh }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>开户名称</td>
|
|
|
+ <td>{{ form.khmc }}</td>
|
|
|
+ <td>附件</td>
|
|
|
+ <td>
|
|
|
+ <file-upload v-model="form.fj" :isFile="false"></file-upload>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
</table>
|
|
|
<h3>审核信息</h3>
|
|
|
<table class="table">
|
|
@@ -236,6 +254,20 @@
|
|
|
<td>补发金额</td>
|
|
|
<td>{{ form.bfje }}</td>
|
|
|
</tr>
|
|
|
+ <tr>
|
|
|
+ <td>开户银行</td>
|
|
|
+ <td>{{ translateDict('C0044', form.khyh) }}</td>
|
|
|
+ <td>银行账号</td>
|
|
|
+ <td>{{ form.yhzh }}</td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td>开户名称</td>
|
|
|
+ <td>{{ form.khmc }}</td>
|
|
|
+ <td>附件</td>
|
|
|
+ <td>
|
|
|
+ <file-upload v-model="form.fj" :isFile="false"></file-upload>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
</table>
|
|
|
|
|
|
<div v-if="!shFlg && !tfFlg">
|
|
@@ -313,6 +345,23 @@
|
|
|
<number placeholder="补发金额" v-model.sync="form.bfje" :min="0" :max="10000000000" :precision="2" />
|
|
|
</el-form-item>
|
|
|
</div>
|
|
|
+ <div class="flexBox">
|
|
|
+ <el-form-item label="开户银行" prop="khyh" class="formWidth2">
|
|
|
+ <el-cascader :props="props" :options="dict.tree.C0044" v-model="form.khyh" placeholder="请选择开户银行">
|
|
|
+ </el-cascader>
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="银行账号" prop="yhzh" class="formWidth2">
|
|
|
+ <el-input v-model="form.yhzh" placeholder="请输入银行账号" />
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ <div class="flexBox">
|
|
|
+ <el-form-item label="开户名称" prop="khmc" class="formWidth2">
|
|
|
+ <el-input v-model="form.khmc" placeholder="请输入开户名称" />
|
|
|
+ </el-form-item>
|
|
|
+ <el-form-item label="附件">
|
|
|
+ <file-upload v-model="form.fj" />
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
<div class="flexBox">
|
|
|
<el-form-item label="头像" prop="tx" class="formWidth2">
|
|
|
<image-upload v-model="form.tx" />
|
|
@@ -448,6 +497,25 @@
|
|
|
<el-button @click="cancel">取 消</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
+
|
|
|
+ <!-- 用户导入对话框 -->
|
|
|
+ <el-dialog v-dialog-drag :title="upload.title" :visible.sync="upload.open" width="400px" append-to-body>
|
|
|
+ <el-upload ref="upload" :limit="1" accept=".xlsx, .xls" :headers="upload.headers" :action="upload.url"
|
|
|
+ :disabled="upload.isUploading" :on-progress="handleFileUploadProgress" :on-success="handleFileSuccess"
|
|
|
+ :auto-upload="false" drag>
|
|
|
+ <i class="el-icon-upload"></i>
|
|
|
+ <div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
|
|
|
+ <div class="el-upload__tip text-center" slot="tip">
|
|
|
+ <span>仅允许导入xls、xlsx格式文件。</span>
|
|
|
+ <el-link type="primary" :underline="false" style="font-size:12px;vertical-align: baseline;"
|
|
|
+ @click="importTemplate">下载模板</el-link>
|
|
|
+ </div>
|
|
|
+ </el-upload>
|
|
|
+ <div slot="footer" class="dialog-footer">
|
|
|
+ <el-button type="primary" @click="submitFileForm">确 定</el-button>
|
|
|
+ <el-button @click="upload.open = false">取 消</el-button>
|
|
|
+ </div>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -461,10 +529,11 @@ import {
|
|
|
} from "@/api/business/btgl/glbt";
|
|
|
import { chineseOne, idCard, Regular } from "@/utils/regular";
|
|
|
import { decryptData_ECB, decryptRowData_ECB } from "@/api/tool/sm4";
|
|
|
+import { getToken } from '@/utils/auth';
|
|
|
|
|
|
export default {
|
|
|
name: "Glbt",
|
|
|
- dicts: ["CZ035", "CZ002", "C0007", "C0032", "XZ111"],
|
|
|
+ dicts: ["CZ035", "CZ002", "C0044", "C0007", "C0032", "XZ111"],
|
|
|
data() {
|
|
|
return {
|
|
|
// 遮罩层
|
|
@@ -473,6 +542,10 @@ export default {
|
|
|
activeNameDetails: 'firstDetails',
|
|
|
// 选中数组
|
|
|
ids: [],
|
|
|
+ props: {
|
|
|
+ emitPath: false,
|
|
|
+ checkStrictly: true
|
|
|
+ },
|
|
|
// 非单个禁用
|
|
|
single: true,
|
|
|
// 非多个禁用
|
|
@@ -494,6 +567,21 @@ export default {
|
|
|
mzFlg: false,
|
|
|
openXq: false,
|
|
|
openTf: false,
|
|
|
+ // 用户导入参数
|
|
|
+ upload: {
|
|
|
+ // 是否显示弹出层(用户导入)
|
|
|
+ open: false,
|
|
|
+ // 弹出层标题(用户导入)
|
|
|
+ title: "",
|
|
|
+ // 是否禁用上传
|
|
|
+ isUploading: false,
|
|
|
+ // 是否更新已经存在的用户数据
|
|
|
+ updateSupport: 0,
|
|
|
+ // 设置上传的请求头部
|
|
|
+ headers: { Authorization: "Bearer " + getToken() },
|
|
|
+ // 上传的地址
|
|
|
+ url: process.env.VUE_APP_BASE_API + "/business/glbt/importData"
|
|
|
+ },
|
|
|
// 查询参数
|
|
|
queryParams: {
|
|
|
pageNum: 1,
|
|
@@ -605,7 +693,7 @@ export default {
|
|
|
getList() {
|
|
|
this.loading = true;
|
|
|
listGlbt(this.queryParams).then((response) => {
|
|
|
- this.glbtList = decryptRowData_ECB(response.rows, ["sqrXm", "jzdz", "sqrLxdh", "sqrZjhm", "dbrXm", "dbrZjhm", "dbrLxdh", "tfdbrXm", "tfbdrLxdh"], [1, 4, 3, 2, 1, 2, 3, 1, 3]);
|
|
|
+ this.glbtList = decryptRowData_ECB(response.rows, ["sqrXm", "jzdz", "sqrLxdh", "sqrZjhm", "dbrXm", "dbrZjhm", "dbrLxdh", "tfdbrXm", "tfbdrLxdh", "khmc", "yhzh"], [1, 4, 3, 2, 1, 2, 3, 1, 3, 1, 5]);
|
|
|
this.total = response.total;
|
|
|
this.loading = false;
|
|
|
});
|
|
@@ -681,10 +769,10 @@ export default {
|
|
|
this.reset();
|
|
|
this.shFlg = false;
|
|
|
this.tfFlg = false,
|
|
|
- this.jdFlg = false,
|
|
|
- this.shFlg = false,
|
|
|
- this.mzFlg = false,
|
|
|
- this.open = true;
|
|
|
+ this.jdFlg = false,
|
|
|
+ this.shFlg = false,
|
|
|
+ this.mzFlg = false,
|
|
|
+ this.open = true;
|
|
|
this.title = "高龄补贴信息";
|
|
|
},
|
|
|
/** 修改按钮操作 */
|
|
@@ -707,7 +795,7 @@ export default {
|
|
|
}
|
|
|
const id = row.id || this.ids;
|
|
|
getGlbt(id).then((response) => {
|
|
|
- this.form = decryptData_ECB(response.data, ["sqrXm", "jzdz", "sqrLxdh", "sqrZjhm", "dbrXm", "dbrZjhm", "dbrLxdh", "tfdbrXm", "tfbdrLxdh"], [1, 4, 3, 2, 1, 2, 3, 1, 3]);
|
|
|
+ this.form = decryptData_ECB(response.data, ["sqrXm", "jzdz", "sqrLxdh", "sqrZjhm", "dbrXm", "dbrZjhm", "dbrLxdh", "tfdbrXm", "tfbdrLxdh", "khmc", "yhzh"], [1, 4, 3, 2, 1, 2, 3, 1, 3, 1, 5]);
|
|
|
this.form.xzqh = JSON.stringify(this.form.xzqh.split(','))
|
|
|
let copyData = {
|
|
|
...this.form,
|
|
@@ -725,7 +813,7 @@ export default {
|
|
|
this.shFlg = false;
|
|
|
const id = row.id || this.ids;
|
|
|
getGlbt(id).then((response) => {
|
|
|
- this.form = decryptData_ECB(response.data, ["sqrXm", "jzdz", "sqrLxdh", "sqrZjhm", "dbrXm", "dbrZjhm", "dbrLxdh", "tfdbrXm", "tfbdrLxdh"], [1, 4, 3, 2, 1, 2, 3, 1, 3]);
|
|
|
+ this.form = decryptData_ECB(response.data, ["sqrXm", "jzdz", "sqrLxdh", "sqrZjhm", "dbrXm", "dbrZjhm", "dbrLxdh", "tfdbrXm", "tfbdrLxdh", "khmc", "yhzh"], [1, 4, 3, 2, 1, 2, 3, 1, 3, 1, 5]);
|
|
|
this.form.xzqh = JSON.stringify(this.form.xzqh.split(','))
|
|
|
this.openXq = true;
|
|
|
this.title = "高龄补贴信息";
|
|
@@ -788,6 +876,31 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ /** 导入按钮操作 */
|
|
|
+ handleImport() {
|
|
|
+ this.upload.title = "高龄津贴信息导入";
|
|
|
+ this.upload.open = true;
|
|
|
+ },
|
|
|
+ handleFileUploadProgress(event, file, fileList) {
|
|
|
+ this.upload.isUploading = true;
|
|
|
+ },
|
|
|
+ // 文件上传成功处理
|
|
|
+ handleFileSuccess(response, file, fileList) {
|
|
|
+ this.upload.open = false;
|
|
|
+ this.upload.isUploading = false;
|
|
|
+ this.$refs.upload.clearFiles();
|
|
|
+ this.$alert("<div style='overflow: auto;overflow-x: hidden;max-height: 70vh;padding: 10px 20px 0;'>" + response.msg + "</div>", "导入结果", { dangerouslyUseHTMLString: true });
|
|
|
+ this.getList();
|
|
|
+ },
|
|
|
+ // 提交上传文件
|
|
|
+ submitFileForm() {
|
|
|
+ this.$refs.upload.submit();
|
|
|
+ },
|
|
|
+ /** 下载模板操作 */
|
|
|
+ importTemplate() {
|
|
|
+ this.download('business/glbt/importTemplate', {
|
|
|
+ }, `高龄津贴信息_模板_${new Date().getTime()}.xlsx`)
|
|
|
+ },
|
|
|
/** 删除按钮操作 */
|
|
|
handleDelete(row, index) {
|
|
|
const ids = row.id || this.ids;
|