<template> <a-spin :spinning="confirmLoading"> <j-form-container :disabled="formDisabled"> <a-form-model ref="form" :model="model" slot="detail" :rules="validatorRules"> <a-row> <a-col :span="24"> <a-form-model-item label="租户名称" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-input v-model="model.name" placeholder="请输入租户名称"></a-input> </a-form-model-item> </a-col> <a-col :span="24"> <a-form-model-item label="租户编号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="id"> <a-input-number style="width: 100%" :min="1" v-model="model.id" placeholder="请输入租户编号" :disabled="disabledId"></a-input-number> </a-form-model-item> </a-col> <!-- <a-col :span="24"> <a-form-model-item label="开始时间" :labelCol="labelCol" :wrapperCol="wrapperCol"> <j-date placeholder="请选择开始时间" v-model="model.beginDate" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%"/> </a-form-model-item> </a-col> <a-col :span="24"> <a-form-model-item label="结束时间" :labelCol="labelCol" :wrapperCol="wrapperCol"> <j-date placeholder="请选择结束时间" v-model="model.endDate" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%"/> </a-form-model-item> </a-col>--> <a-col :span="24"> <a-form-model-item label="状态" :labelCol="labelCol" :wrapperCol="wrapperCol"> <a-radio-group name="tenantStatus" v-model="model.status"> <a-radio :value="1">正常</a-radio> <a-radio :value="0">冻结</a-radio> </a-radio-group> </a-form-model-item> </a-col> <a-col v-if="showFlowSubmitButton" :span="24" style="text-align: center"> <a-button @click="submitForm">提 交</a-button> </a-col> </a-row> </a-form-model> </j-form-container> </a-spin> </template> <script> import { httpAction, getAction } from '@/api/manage' import { validateDuplicateValue } from '@/utils/util' import JFormContainer from '@/components/jeecg/JFormContainer' import JDate from '@/components/jeecg/JDate' import JDictSelectTag from "@/components/dict/JDictSelectTag" export default { name: "TenantForm", components: { JFormContainer, JDate, JDictSelectTag, }, props: { formData: { type: Object, default: ()=>{}, required: false }, normal: { type: Boolean, default: false, required: false }, disabled: { type: Boolean, default: false, required: false } }, data () { return { model: {status:1}, id:'', labelCol: { xs: { span: 24 }, sm: { span: 5 }, }, wrapperCol: { xs: { span: 24 }, sm: { span: 16 }, }, confirmLoading: false, validatorRules: { id:[ { required: true, message: '请输入租户编号!' },] }, url: { add: "/sys/tenant/add", edit: "/sys/tenant/edit", queryById: "/sys/tenant/queryById" } } }, computed: { formDisabled(){ if(this.normal===false){ if(this.formData.disabled===false){ return false }else{ return true } } return this.disabled }, disabledId(){ return this.id?true : false; }, showFlowSubmitButton(){ if(this.normal===false){ if(this.formData.disabled===false){ return true }else{ return false } }else{ return false } } }, created () { this.showFlowData(); }, methods: { show (record) { this.model = record?Object.assign({}, record):this.model; this.id = record?record.id:''; this.visible = true; }, showFlowData(){ if(this.normal === false){ let params = {id:this.formData.dataId}; getAction(this.url.queryById,params).then((res)=>{ if(res.success){ this.edit (res.result); } }); } }, submitForm () { const that = this; // 触发表单验证 that.$refs.form.validate(valid => { if (valid) { that.confirmLoading = true; let httpurl = ''; let method = ''; if(!this.id){ httpurl+=this.url.add; method = 'post'; }else{ httpurl+=this.url.edit; method = 'put'; } httpAction(httpurl,this.model,method).then((res)=>{ if(res.success){ that.$message.success(res.message); that.$emit('ok'); }else{ if("该编号已存在!" == res.message){ this.model.id="" } that.$message.warning(res.message); } }).finally(() => { that.confirmLoading = false; }) }else{ return false; } }) }, popupCallback(row){ this.model = Object.assign(this.model, row); }, } } </script>