取消analysis 模块中所有的弹窗点击蒙层关闭的功能

This commit is contained in:
任珮宇 2023-11-01 10:57:18 +08:00
parent d2838ebb12
commit cc8e027322
5 changed files with 577 additions and 619 deletions

View File

@ -138,7 +138,7 @@
</template>
<!-- 底部按钮结束 -->
</custom-modal>
<a-modal v-model="visible_file" :width="1200" title="File List" @cancel="cancelFileModale">
<a-modal v-model="visible_file" :width="1200" title="File List" :maskClosable="false" @cancel="cancelFileModale">
<a-spin :spinning="loading_file">
<div style="position: relative; padding-bottom: 40px; height: 460px; overflow: hidden">
<a-row type="flex" style="margin-bottom: 15px">
@ -445,7 +445,9 @@ export default {
})
if (findFile) {
const regExp = new RegExp(`(${otherFilePrefix}${fileType}_${qualify}_\\d{1,}\\.{0,}\\d{0,}).*?(\\.PHD)`)
const regExp = new RegExp(
`(${otherFilePrefix}${fileType}_${qualify}_\\d{1,}\\.{0,}\\d{0,}).*?(\\.PHD)`
)
record[nameKeys[index]] = {
file: findFile,
fileName: findFile.name.replace(regExp, '$1$2'),

View File

@ -3,6 +3,7 @@
:title="title"
:width="800"
:visible="visible"
:maskClosable="false"
:confirmLoading="confirmLoading"
@ok="handleOk"
@cancel="handleCancel"
@ -10,46 +11,26 @@
>
<a-spin :spinning="confirmLoading">
<a-form-model ref="form" :model="model" :rules="validatorRules">
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
prop="itemText"
label="Name">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="itemText" label="Name">
<a-input placeholder="Please Enter Name" v-model="model.itemText" />
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
prop="itemValue"
label="Item Value">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="itemValue" label="Item Value">
<a-input placeholder="Please Enter Item Value" v-model="model.itemValue" />
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="Description">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="Description">
<a-input v-model="model.description" />
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="Sort">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="Sort">
<a-input-number :min="1" v-model="model.sortOrder" />
The Smaller The Value, the More Advanced
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="Enable"
hasFeedback>
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="Enable" hasFeedback>
<a-switch checkedChildren="Enable" unCheckedChildren="Disable" @change="onChose" v-model="visibleCheck" />
</a-form-model-item>
</a-form-model>
</a-spin>
</a-modal>
@ -61,14 +42,14 @@
import { getAction } from '@api/manage'
export default {
name: "DictItemModal",
name: 'DictItemModal',
data() {
return {
title: "操作",
title: '操作',
visible: false,
visibleCheck: true,
model: {},
dictId: "",
dictId: '',
status: 1,
labelCol: {
xs: { span: 24 },
@ -85,75 +66,76 @@
},
}
},
created() {
},
created() {},
methods: {
add(dictId) {
this.dictId = dictId;
this.dictId = dictId
//
this.edit({sortOrder:1,status:1});
this.edit({ sortOrder: 1, status: 1 })
},
edit(record) {
if (record.id) {
this.dictId = record.dictId;
this.dictId = record.dictId
}
this.status = record.status;
this.visibleCheck = (record.status == 1) ? true : false;
this.model = Object.assign({}, record);
this.model.dictId = this.dictId;
this.model.status = this.status;
this.visible = true;
this.status = record.status
this.visibleCheck = record.status == 1 ? true : false
this.model = Object.assign({}, record)
this.model.dictId = this.dictId
this.model.status = this.status
this.visible = true
},
onChose(checked) {
if (checked) {
this.status = 1;
this.visibleCheck = true;
this.status = 1
this.visibleCheck = true
} else {
this.status = 0;
this.visibleCheck = false;
this.status = 0
this.visibleCheck = false
}
},
//
handleOk() {
const that = this;
const that = this
//
this.$refs.form.validate(valid => {
this.$refs.form.validate((valid) => {
if (valid) {
that.confirmLoading = true;
that.confirmLoading = true
this.model.itemText = (this.model.itemText || '').trim()
this.model.itemValue = (this.model.itemValue || '').trim()
this.model.description = (this.model.description || '').trim()
this.model.status = this.status;
let obj;
this.model.status = this.status
let obj
if (!this.model.id) {
obj = addDictItem(this.model);
obj = addDictItem(this.model)
} else {
obj = editDictItem(this.model);
obj = editDictItem(this.model)
}
obj.then((res) => {
obj
.then((res) => {
if (res.success) {
that.$message.success(res.message);
that.$emit('ok');
that.$message.success(res.message)
that.$emit('ok')
} else {
that.$message.warning(res.message);
that.$message.warning(res.message)
}
}).finally(() => {
that.confirmLoading = false;
that.close();
})
.finally(() => {
that.confirmLoading = false
that.close()
})
} else {
return false;
return false
}
})
},
//
handleCancel() {
this.close();
this.close()
},
close() {
this.$emit('close');
this.visible = false;
this.$refs.form.resetFields();
this.$emit('close')
this.visible = false
this.$refs.form.resetFields()
},
validateItemValue(rule, value, callback) {
let param = {
@ -166,22 +148,22 @@
if (value) {
let reg = new RegExp("[`~!@#$^&*()=|{}'.<>《》/?!¥()—【】‘;:”“。,、?]")
if (reg.test(value)) {
callback("Cannot Have Special Charactors")
callback('Cannot Have Special Charactors')
} else {
//update--begin--autor:lvdandan-----date:20201203------forJT-27 -
getAction("/sys/dictItem/dictItemCheck",param).then((res)=>{
getAction('/sys/dictItem/dictItemCheck', param).then((res) => {
if (res.success) {
callback()
} else {
callback(res.message);
callback(res.message)
}
});
})
//update--end--autor:lvdandan-----date:20201203------forJT-27 -
}
} else {
callback()
}
}
}
},
},
}
</script>

View File

@ -3,6 +3,7 @@
:title="title"
:width="600"
:visible="visible"
:maskClosable="false"
:confirmLoading="confirmLoading"
@ok="handleOk"
@cancel="handleCancel"
@ -10,32 +11,17 @@
>
<a-spin :spinning="confirmLoading">
<a-form-model ref="form" :model="model" :rules="validatorRules">
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
prop="dictName"
required
label="Dict Name">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dictName" required label="Dict Name">
<a-input placeholder="Please Enter Dict Name" v-model="model.dictName" />
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
prop="dictCode"
required
label="Dict Code">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="dictCode" required label="Dict Code">
<a-input placeholder="Please Enter Dict Code" v-model="model.dictCode" />
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="Description">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="Description">
<a-input v-model="model.description" />
</a-form-model-item>
</a-form-model>
</a-spin>
</a-modal>
@ -55,23 +41,20 @@
model: {},
labelCol: {
xs: { span: 24 },
sm: { span: 5 }
sm: { span: 5 },
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 16 }
sm: { span: 16 },
},
confirmLoading: false,
validatorRules: {
dictName: [{ required: true, message: 'Please Enter Dict Name' }],
dictCode: [
{ required: true, message: 'Please Enter Dict Code' },
{ validator: this.validateDictCode }]
}
dictCode: [{ required: true, message: 'Please Enter Dict Code' }, { validator: this.validateDictCode }],
},
}
},
created() {
},
created() {},
methods: {
validateDictCode(rule, value, callback) {
//
@ -79,7 +62,7 @@
tableName: 'sys_dict',
fieldName: 'dict_code',
fieldVal: value,
dataId: this.model.id
dataId: this.model.id,
}
duplicateCheck(params).then((res) => {
if (res.success) {
@ -108,7 +91,7 @@
handleOk() {
const that = this
//
this.$refs.form.validate(valid => {
this.$refs.form.validate((valid) => {
if (valid) {
that.confirmLoading = true
this.model.dictName = (this.model.dictName || '').trim()
@ -120,19 +103,21 @@
} else {
obj = editDict(this.model)
}
obj.then((res) => {
obj
.then((res) => {
if (res.success) {
that.$message.success(res.message)
that.$emit('ok')
} else {
that.$message.warning(res.message)
}
}).finally(() => {
})
.finally(() => {
that.confirmLoading = false
that.close()
})
} else {
return false;
return false
}
})
},
@ -143,8 +128,8 @@
close() {
this.$emit('close')
this.visible = false
this.$refs.form.resetFields();
}
}
this.$refs.form.resetFields()
},
},
}
</script>

View File

@ -3,20 +3,16 @@
:title="title"
:width="1000"
:visible="visible"
:maskClosable="false"
:confirmLoading="confirmLoading"
@ok="handleOk"
@cancel="handleCancel"
:cancelButtonProps="{ props: { type: 'warn' } }"
cancelText="Cancel">
cancelText="Cancel"
>
<a-spin :spinning="confirmLoading">
<a-form-model ref="form" :model="model" :rules="validatorRules">
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
prop="ruleName"
label="Rule Name">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ruleName" label="Rule Name">
<a-input placeholder="Please Enter Rule Name" v-model="model.ruleName" />
</a-form-model-item>
<a-form-model-item
@ -24,34 +20,28 @@
:labelCol="labelCol"
:wrapperCol="wrapperCol"
prop="ruleColumn"
label="Rule Column">
label="Rule Column"
>
<a-input placeholder="Please Enter Rule Column" v-model.trim="model.ruleColumn" />
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
prop="ruleConditions"
label="Rule Conditions">
<j-dict-select-tag @input="handleChangeRuleCondition" v-model="model.ruleConditions" placeholder="Please Enter Rule Conditions" dictCode="rule_conditions"/>
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ruleConditions" label="Rule Conditions">
<j-dict-select-tag
@input="handleChangeRuleCondition"
v-model="model.ruleConditions"
placeholder="Please Enter Rule Conditions"
dictCode="rule_conditions"
/>
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
prop="ruleValue"
label="Rule Value">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="ruleValue" label="Rule Value">
<a-input placeholder="Please Enter Rule Value" v-model="model.ruleValue" />
</a-form-model-item>
<a-form-model-item
:labelCol="labelCol"
:wrapperCol="wrapperCol"
label="Status">
<a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" label="Status">
<a-radio-group buttonStyle="solid" v-model="model.status">
<a-radio-button value="1">Valid</a-radio-button>
<a-radio-button value="0">Invalid</a-radio-button>
</a-radio-group>
</a-form-model-item>
</a-form-model>
</a-spin>
</a-modal>
@ -70,11 +60,11 @@
ruleConditionList: [],
labelCol: {
xs: { span: 24 },
sm: {span: 5}
sm: { span: 5 },
},
wrapperCol: {
xs: { span: 24 },
sm: {span: 16}
sm: { span: 16 },
},
confirmLoading: false,
permissionId: '',
@ -82,18 +72,17 @@
ruleConditions: [{ required: true, message: '请选择条件!' }],
ruleName: [{ required: true, message: '请输入规则名称!' }],
ruleValue: [{ required: true, message: '请输入规则值!' }],
ruleColumn: []
ruleColumn: [],
},
url: {
list: '/sys/dictItem/list',
add: '/sys/permission/addPermissionRule',
edit: '/sys/permission/editPermissionRule'
edit: '/sys/permission/editPermissionRule',
},
showRuleColumn:true
showRuleColumn: true,
}
},
created() {
},
created() {},
methods: {
add(permId) {
this.permissionId = permId
@ -118,7 +107,7 @@
handleOk() {
const that = this
//
this.$refs.form.validate(valid => {
this.$refs.form.validate((valid) => {
if (valid) {
that.confirmLoading = true
let httpurl = ''
@ -130,19 +119,21 @@
httpurl += this.url.edit
method = 'put'
}
httpAction(httpurl, this.model, method).then((res) => {
httpAction(httpurl, this.model, method)
.then((res) => {
if (res.success) {
that.$message.success(res.message)
that.$emit('ok')
} else {
that.$message.warning(res.message)
}
}).finally(() => {
})
.finally(() => {
that.confirmLoading = false
that.close()
})
} else {
return false;
return false
}
})
},
@ -163,11 +154,10 @@
} else {
this.showRuleColumn = true
}
}
}
},
},
}
</script>
<style scoped>
</style>

View File

@ -5,29 +5,27 @@
:title="title"
:width="1000"
:visible="visible"
:maskClosable="false"
@ok="handleOk"
@cancel="handleCancel"
:cancelButtonProps="{ props: { type: 'warn' } }"
cancelText="Cancel">
cancelText="Cancel"
>
<!-- 查询区域 -->
<div class="table-page-search-wrapper">
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :span="10">
<a-form-item label="User Name">
<a-input v-model="queryParam.username"></a-input>
</a-form-item>
</a-col>
<a-col :span="8">
<span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
<span style="float: left; overflow: hidden" class="table-page-search-submitButtons">
<a-button type="primary" @click="searchQuery" icon="search">Search</a-button>
<a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">Reset</a-button>
</span>
</a-col>
</a-row>
</a-form>
</div>
@ -42,14 +40,17 @@
:pagination="ipagination"
:loading="loading"
:scroll="{ y: 240 }"
:rowSelection="{selectedRowKeys: selectedRowKeys,onSelectAll:onSelectAll,onSelect:onSelect,onChange: onSelectChange}"
@change="handleTableChange">
:rowSelection="{
selectedRowKeys: selectedRowKeys,
onSelectAll: onSelectAll,
onSelect: onSelect,
onChange: onSelectChange,
}"
@change="handleTableChange"
>
</a-table>
</div>
<!-- table区域-end -->
</a-modal>
</div>
</template>
@ -59,10 +60,10 @@
import { getAction } from '@/api/manage'
export default {
name: "SelectUserModal",
name: 'SelectUserModal',
data() {
return {
title: "Add From List",
title: 'Add From List',
names: [],
visible: false,
placement: 'right',
@ -76,61 +77,60 @@
dataIndex: '',
key: 'rowIndex',
width: 50,
align: "center",
align: 'center',
customRender: function (t, r, index) {
return parseInt(index) + 1;
}
return parseInt(index) + 1
},
},
{
title: 'User Name',
align: "center",
align: 'center',
width: 100,
dataIndex: 'username'
dataIndex: 'username',
},
{
title: 'Real Name',
align: "center",
align: 'center',
width: 100,
dataIndex: 'realname'
dataIndex: 'realname',
},
{
title: 'Gender',
align: "center",
align: 'center',
width: 100,
dataIndex: 'sex_dictText'
dataIndex: 'sex_dictText',
},
{
title: 'Phone',
align: "center",
align: 'center',
width: 100,
dataIndex: 'phone'
dataIndex: 'phone',
},
{
title: 'Org',
align: "center",
align: 'center',
width: 150,
dataIndex: 'orgCode'
}
dataIndex: 'orgCode',
},
],
columns2: [
{
title: 'User Name',
align: "center",
align: 'center',
dataIndex: 'username',
},
{
title: 'Real Name',
align: "center",
align: 'center',
dataIndex: 'realname',
},
{
title: 'Action',
dataIndex: 'action',
align: "center",
align: 'center',
width: 100,
scopedSlots: { customRender: 'action' },
}
},
],
//
dataSource1: [],
@ -146,7 +146,7 @@
},
showQuickJumper: true,
showSizeChanger: true,
total: 0
total: 0,
},
isorter: {
column: 'createTime',
@ -156,52 +156,52 @@
selectedRowKeys: [],
selectedRows: [],
url: {
list: "/sys/user/list",
}
list: '/sys/user/list',
},
}
},
created() {
this.loadData();
this.loadData()
},
methods: {
searchQuery() {
this.loadData(1);
this.loadData(1)
},
searchReset() {
this.queryParam = {};
this.loadData(1);
this.queryParam = {}
this.loadData(1)
},
handleCancel() {
this.visible = false;
this.visible = false
},
handleOk() {
this.dataSource2 = this.selectedRowKeys;
console.log("data:" + this.dataSource2);
this.$emit("selectFinished", this.dataSource2);
this.visible = false;
this.dataSource2 = this.selectedRowKeys
console.log('data:' + this.dataSource2)
this.$emit('selectFinished', this.dataSource2)
this.visible = false
},
add() {
this.visible = true;
this.visible = true
},
loadData(arg) {
// 1
if (arg === 1) {
this.ipagination.current = 1;
this.ipagination.current = 1
}
var params = this.getQueryParams();//
var params = this.getQueryParams() //
getAction(this.url.list, params).then((res) => {
if (res.success) {
this.dataSource1 = res.result.records;
this.ipagination.total = res.result.total;
this.dataSource1 = res.result.records
this.ipagination.total = res.result.total
}
})
},
getQueryParams() {
var param = Object.assign({}, this.queryParam, this.isorter);
param.field = this.getQueryField();
param.pageNo = this.ipagination.current;
param.pageSize = this.ipagination.pageSize;
return filterObj(param);
var param = Object.assign({}, this.queryParam, this.isorter)
param.field = this.getQueryField()
param.pageNo = this.ipagination.current
param.pageSize = this.ipagination.pageSize
return filterObj(param)
},
getQueryField() {
//TODO
@ -209,50 +209,49 @@
onSelectAll(selected, selectedRows, changeRows) {
if (selected === true) {
for (var a = 0; a < changeRows.length; a++) {
this.dataSource2.push(changeRows[a]);
this.dataSource2.push(changeRows[a])
}
} else {
for (var b = 0; b < changeRows.length; b++) {
this.dataSource2.splice(this.dataSource2.indexOf(changeRows[b]), 1);
this.dataSource2.splice(this.dataSource2.indexOf(changeRows[b]), 1)
}
}
// console.log(selected, selectedRows, changeRows);
},
onSelect(record, selected) {
if (selected === true) {
this.dataSource2.push(record);
this.dataSource2.push(record)
} else {
var index = this.dataSource2.indexOf(record);
var index = this.dataSource2.indexOf(record)
//console.log();
if (index >= 0) {
this.dataSource2.splice(this.dataSource2.indexOf(record), 1);
this.dataSource2.splice(this.dataSource2.indexOf(record), 1)
}
}
},
onSelectChange(selectedRowKeys, selectedRows) {
this.selectedRowKeys = selectedRowKeys;
this.selectionRows = selectedRows;
this.selectedRowKeys = selectedRowKeys
this.selectionRows = selectedRows
},
onClearSelected() {
this.selectedRowKeys = [];
this.selectionRows = [];
this.selectedRowKeys = []
this.selectionRows = []
},
handleDelete: function (record) {
this.dataSource2.splice(this.dataSource2.indexOf(record), 1);
this.dataSource2.splice(this.dataSource2.indexOf(record), 1)
},
handleTableChange(pagination, filters, sorter) {
//
console.log(sorter);
console.log(sorter)
//TODO
if (Object.keys(sorter).length > 0) {
this.isorter.column = sorter.field;
this.isorter.order = "ascend" == sorter.order ? "asc" : "desc"
}
this.ipagination = pagination;
this.loadData();
}
this.isorter.column = sorter.field
this.isorter.order = 'ascend' == sorter.order ? 'asc' : 'desc'
}
this.ipagination = pagination
this.loadData()
},
},
}
</script>
<style lang="less" scoped>
@ -266,24 +265,24 @@
}
.anty-row-operator button {
margin: 0 5px
margin: 0 5px;
}
.ant-btn-danger {
background-color: #ffffff
background-color: #ffffff;
}
.ant-modal-cust-warp {
height: 100%
height: 100%;
}
.ant-modal-cust-warp .ant-modal-body {
height: calc(100% - 110px) !important;
overflow-y: auto
overflow-y: auto;
}
.ant-modal-cust-warp .ant-modal-content {
height: 90% !important;
overflow-y: hidden
overflow-y: hidden;
}
</style>