mirror of https://github.com/jeecgboot/jeecg-boot
				
				
				
			代码生成器生成报错处理
							parent
							
								
									ad8a17447c
								
							
						
					
					
						commit
						b765e4552c
					
				| 
						 | 
				
			
			@ -1,162 +0,0 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <a-drawer
 | 
			
		||||
      :title="title"
 | 
			
		||||
      :width="800"
 | 
			
		||||
      placement="right"
 | 
			
		||||
      :closable="false"
 | 
			
		||||
      @close="close"
 | 
			
		||||
      :visible="visible"
 | 
			
		||||
  >
 | 
			
		||||
 | 
			
		||||
    <a-spin :spinning="confirmLoading">
 | 
			
		||||
      <a-form :form="form">
 | 
			
		||||
      
 | 
			
		||||
<#list columns as po><#rt/>
 | 
			
		||||
<#if po.fieldName !='id'><#rt/>
 | 
			
		||||
        <a-form-item
 | 
			
		||||
          :labelCol="labelCol"
 | 
			
		||||
          :wrapperCol="wrapperCol"
 | 
			
		||||
          label="${po.filedComment}">
 | 
			
		||||
          <#if po.fieldType =='date'>
 | 
			
		||||
          <a-date-picker v-decorator="[ '${po.fieldName}', <#if po.nullable =='N'>validatorRules.${po.fieldName} <#else>{}</#if>]" />
 | 
			
		||||
          <#elseif po.fieldType =='datetime'>
 | 
			
		||||
          <a-date-picker showTime format='YYYY-MM-DD HH:mm:ss' v-decorator="[ '${po.fieldName}', <#if po.nullable =='N'>validatorRules.${po.fieldName} <#else>{}</#if>]" />
 | 
			
		||||
          <#elseif "int,decimal,double,"?contains(po.fieldType)>
 | 
			
		||||
          <a-input-number v-decorator="[ '${po.fieldName}', <#if po.nullable =='N'>validatorRules.${po.fieldName} <#else>{}</#if>]" />
 | 
			
		||||
          <#else>
 | 
			
		||||
          <a-input placeholder="请输入${po.filedComment}" v-decorator="['${po.fieldName}', <#if po.nullable =='N'>validatorRules.${po.fieldName} <#else>{}</#if>]" />
 | 
			
		||||
          </#if>
 | 
			
		||||
        </a-form-item>
 | 
			
		||||
</#if>
 | 
			
		||||
</#list>
 | 
			
		||||
		
 | 
			
		||||
      </a-form>
 | 
			
		||||
    </a-spin>
 | 
			
		||||
    <a-button type="primary" @click="handleOk">确定</a-button>
 | 
			
		||||
    <a-button type="primary" @click="handleCancel">取消</a-button>
 | 
			
		||||
  </a-drawer>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
  import { httpAction } from '@/api/manage'
 | 
			
		||||
  import pick from 'lodash.pick'
 | 
			
		||||
  import moment from "moment"
 | 
			
		||||
 | 
			
		||||
  export default {
 | 
			
		||||
    name: "${entityName}Modal",
 | 
			
		||||
    data () {
 | 
			
		||||
      return {
 | 
			
		||||
        title:"操作",
 | 
			
		||||
        visible: false,
 | 
			
		||||
        model: {},
 | 
			
		||||
        labelCol: {
 | 
			
		||||
          xs: { span: 24 },
 | 
			
		||||
          sm: { span: 5 },
 | 
			
		||||
        },
 | 
			
		||||
        wrapperCol: {
 | 
			
		||||
          xs: { span: 24 },
 | 
			
		||||
          sm: { span: 16 },
 | 
			
		||||
        },
 | 
			
		||||
 | 
			
		||||
        confirmLoading: false,
 | 
			
		||||
        form: this.$form.createForm(this),
 | 
			
		||||
        validatorRules:{
 | 
			
		||||
        <#list columns as po>
 | 
			
		||||
        <#if po.fieldName !='id'>
 | 
			
		||||
        <#if po.nullable =='N'>
 | 
			
		||||
        ${po.fieldName}:{rules: [{ required: true, message: '请输入${po.filedComment}!' }]},
 | 
			
		||||
        </#if>
 | 
			
		||||
        </#if>
 | 
			
		||||
	    </#list>
 | 
			
		||||
        },
 | 
			
		||||
        url: {
 | 
			
		||||
          add: "/${entityPackage}/${entityName?uncap_first}/add",
 | 
			
		||||
          edit: "/${entityPackage}/${entityName?uncap_first}/edit",
 | 
			
		||||
        },
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    created () {
 | 
			
		||||
    },
 | 
			
		||||
    methods: {
 | 
			
		||||
      add () {
 | 
			
		||||
        this.edit({});
 | 
			
		||||
      },
 | 
			
		||||
      edit (record) {
 | 
			
		||||
        this.form.resetFields();
 | 
			
		||||
        this.model = Object.assign({}, record);
 | 
			
		||||
        this.visible = true;
 | 
			
		||||
        this.$nextTick(() => {
 | 
			
		||||
          this.form.setFieldsValue(pick(this.model<#list columns as po><#if po.fieldName !='id' && po.fieldType?index_of("date")==-1>,'${po.fieldName}'</#if></#list>))
 | 
			
		||||
		  //时间格式化
 | 
			
		||||
          <#list columns as po>
 | 
			
		||||
          <#if po.fieldName !='id' && po.fieldType?index_of("date")!=-1>
 | 
			
		||||
          this.form.setFieldsValue({${po.fieldName}:this.model.${po.fieldName}?moment(this.model.${po.fieldName}):null})
 | 
			
		||||
          </#if>
 | 
			
		||||
          </#list>
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
      },
 | 
			
		||||
      close () {
 | 
			
		||||
        this.$emit('close');
 | 
			
		||||
        this.visible = false;
 | 
			
		||||
      },
 | 
			
		||||
      handleOk () {
 | 
			
		||||
        const that = this;
 | 
			
		||||
        // 触发表单验证
 | 
			
		||||
        this.form.validateFields((err, values) => {
 | 
			
		||||
          if (!err) {
 | 
			
		||||
            that.confirmLoading = true;
 | 
			
		||||
            let httpurl = '';
 | 
			
		||||
            let method = '';
 | 
			
		||||
            if(!this.model.id){
 | 
			
		||||
              httpurl+=this.url.add;
 | 
			
		||||
              method = 'post';
 | 
			
		||||
            }else{
 | 
			
		||||
              httpurl+=this.url.edit;
 | 
			
		||||
               method = 'put';
 | 
			
		||||
            }
 | 
			
		||||
            let formData = Object.assign(this.model, values);
 | 
			
		||||
            //时间格式化
 | 
			
		||||
            <#list columns as po>
 | 
			
		||||
            <#if po.fieldName !='id' && po.fieldType =='date'>
 | 
			
		||||
            formData.${po.fieldName} = formData.${po.fieldName}?formData.${po.fieldName}.format():null;
 | 
			
		||||
            <#elseif po.fieldName !='id' && po.fieldType =='datetime'>
 | 
			
		||||
            formData.${po.fieldName} = formData.${po.fieldName}?formData.${po.fieldName}.format('YYYY-MM-DD HH:mm:ss'):null;
 | 
			
		||||
            </#if>
 | 
			
		||||
            </#list>
 | 
			
		||||
            
 | 
			
		||||
            console.log(formData)
 | 
			
		||||
            httpAction(httpurl,formData,method).then((res)=>{
 | 
			
		||||
              if(res.success){
 | 
			
		||||
                that.$message.success(res.message);
 | 
			
		||||
                that.$emit('ok');
 | 
			
		||||
              }else{
 | 
			
		||||
                that.$message.warning(res.message);
 | 
			
		||||
              }
 | 
			
		||||
            }).finally(() => {
 | 
			
		||||
              that.confirmLoading = false;
 | 
			
		||||
              that.close();
 | 
			
		||||
            })
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
          }
 | 
			
		||||
        })
 | 
			
		||||
      },
 | 
			
		||||
      handleCancel () {
 | 
			
		||||
        this.close()
 | 
			
		||||
      },
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style lang="less" scoped>
 | 
			
		||||
/** Button按钮间距 */
 | 
			
		||||
  .ant-btn {
 | 
			
		||||
    margin-left: 30px;
 | 
			
		||||
    margin-bottom: 30px;
 | 
			
		||||
    float: right;
 | 
			
		||||
  }
 | 
			
		||||
</style>
 | 
			
		||||
| 
						 | 
				
			
			@ -1,162 +0,0 @@
 | 
			
		|||
<template>
 | 
			
		||||
  <a-drawer
 | 
			
		||||
      :title="title"
 | 
			
		||||
      :width="800"
 | 
			
		||||
      placement="right"
 | 
			
		||||
      :closable="false"
 | 
			
		||||
      @close="close"
 | 
			
		||||
      :visible="visible"
 | 
			
		||||
  >
 | 
			
		||||
 | 
			
		||||
    <a-spin :spinning="confirmLoading">
 | 
			
		||||
      <a-form :form="form">
 | 
			
		||||
      
 | 
			
		||||
<#list columns as po><#rt/>
 | 
			
		||||
<#if po.fieldName !='id'><#rt/>
 | 
			
		||||
        <a-form-item
 | 
			
		||||
          :labelCol="labelCol"
 | 
			
		||||
          :wrapperCol="wrapperCol"
 | 
			
		||||
          label="${po.filedComment}">
 | 
			
		||||
          <#if po.fieldType =='date'>
 | 
			
		||||
          <a-date-picker v-decorator="[ '${po.fieldName}', <#if po.nullable =='N'>validatorRules.${po.fieldName} <#else>{}</#if>]" />
 | 
			
		||||
          <#elseif po.fieldType =='datetime'>
 | 
			
		||||
          <a-date-picker showTime format='YYYY-MM-DD HH:mm:ss' v-decorator="[ '${po.fieldName}', <#if po.nullable =='N'>validatorRules.${po.fieldName} <#else>{}</#if>]" />
 | 
			
		||||
          <#elseif "int,decimal,double,"?contains(po.fieldType)>
 | 
			
		||||
          <a-input-number v-decorator="[ '${po.fieldName}', <#if po.nullable =='N'>validatorRules.${po.fieldName} <#else>{}</#if>]" />
 | 
			
		||||
          <#else>
 | 
			
		||||
          <a-input placeholder="请输入${po.filedComment}" v-decorator="['${po.fieldName}', <#if po.nullable =='N'>validatorRules.${po.fieldName} <#else>{}</#if>]" />
 | 
			
		||||
          </#if>
 | 
			
		||||
        </a-form-item>
 | 
			
		||||
</#if>
 | 
			
		||||
</#list>
 | 
			
		||||
		
 | 
			
		||||
      </a-form>
 | 
			
		||||
    </a-spin>
 | 
			
		||||
    <a-button type="primary" @click="handleOk">确定</a-button>
 | 
			
		||||
    <a-button type="primary" @click="handleCancel">取消</a-button>
 | 
			
		||||
  </a-drawer>
 | 
			
		||||
</template>
 | 
			
		||||
 | 
			
		||||
<script>
 | 
			
		||||
  import { httpAction } from '@/api/manage'
 | 
			
		||||
  import pick from 'lodash.pick'
 | 
			
		||||
  import moment from "moment"
 | 
			
		||||
 | 
			
		||||
  export default {
 | 
			
		||||
    name: "${entityName}Modal",
 | 
			
		||||
    data () {
 | 
			
		||||
      return {
 | 
			
		||||
        title:"操作",
 | 
			
		||||
        visible: false,
 | 
			
		||||
        model: {},
 | 
			
		||||
        labelCol: {
 | 
			
		||||
          xs: { span: 24 },
 | 
			
		||||
          sm: { span: 5 },
 | 
			
		||||
        },
 | 
			
		||||
        wrapperCol: {
 | 
			
		||||
          xs: { span: 24 },
 | 
			
		||||
          sm: { span: 16 },
 | 
			
		||||
        },
 | 
			
		||||
 | 
			
		||||
        confirmLoading: false,
 | 
			
		||||
        form: this.$form.createForm(this),
 | 
			
		||||
        validatorRules:{
 | 
			
		||||
        <#list columns as po>
 | 
			
		||||
        <#if po.fieldName !='id'>
 | 
			
		||||
        <#if po.nullable =='N'>
 | 
			
		||||
        ${po.fieldName}:{rules: [{ required: true, message: '请输入${po.filedComment}!' }]},
 | 
			
		||||
        </#if>
 | 
			
		||||
        </#if>
 | 
			
		||||
	    </#list>
 | 
			
		||||
        },
 | 
			
		||||
        url: {
 | 
			
		||||
          add: "/${entityPackage}/${entityName?uncap_first}/add",
 | 
			
		||||
          edit: "/${entityPackage}/${entityName?uncap_first}/edit",
 | 
			
		||||
        },
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    created () {
 | 
			
		||||
    },
 | 
			
		||||
    methods: {
 | 
			
		||||
      add () {
 | 
			
		||||
        this.edit({});
 | 
			
		||||
      },
 | 
			
		||||
      edit (record) {
 | 
			
		||||
        this.form.resetFields();
 | 
			
		||||
        this.model = Object.assign({}, record);
 | 
			
		||||
        this.visible = true;
 | 
			
		||||
        this.$nextTick(() => {
 | 
			
		||||
          this.form.setFieldsValue(pick(this.model<#list columns as po><#if po.fieldName !='id' && po.fieldType?index_of("date")==-1>,'${po.fieldName}'</#if></#list>))
 | 
			
		||||
		  //时间格式化
 | 
			
		||||
          <#list columns as po>
 | 
			
		||||
          <#if po.fieldName !='id' && po.fieldType?index_of("date")!=-1>
 | 
			
		||||
          this.form.setFieldsValue({${po.fieldName}:this.model.${po.fieldName}?moment(this.model.${po.fieldName}):null})
 | 
			
		||||
          </#if>
 | 
			
		||||
          </#list>
 | 
			
		||||
        });
 | 
			
		||||
 | 
			
		||||
      },
 | 
			
		||||
      close () {
 | 
			
		||||
        this.$emit('close');
 | 
			
		||||
        this.visible = false;
 | 
			
		||||
      },
 | 
			
		||||
      handleOk () {
 | 
			
		||||
        const that = this;
 | 
			
		||||
        // 触发表单验证
 | 
			
		||||
        this.form.validateFields((err, values) => {
 | 
			
		||||
          if (!err) {
 | 
			
		||||
            that.confirmLoading = true;
 | 
			
		||||
            let httpurl = '';
 | 
			
		||||
            let method = '';
 | 
			
		||||
            if(!this.model.id){
 | 
			
		||||
              httpurl+=this.url.add;
 | 
			
		||||
              method = 'post';
 | 
			
		||||
            }else{
 | 
			
		||||
              httpurl+=this.url.edit;
 | 
			
		||||
               method = 'put';
 | 
			
		||||
            }
 | 
			
		||||
            let formData = Object.assign(this.model, values);
 | 
			
		||||
            //时间格式化
 | 
			
		||||
            <#list columns as po>
 | 
			
		||||
            <#if po.fieldName !='id' && po.fieldType =='date'>
 | 
			
		||||
            formData.${po.fieldName} = formData.${po.fieldName}?formData.${po.fieldName}.format():null;
 | 
			
		||||
            <#elseif po.fieldName !='id' && po.fieldType =='datetime'>
 | 
			
		||||
            formData.${po.fieldName} = formData.${po.fieldName}?formData.${po.fieldName}.format('YYYY-MM-DD HH:mm:ss'):null;
 | 
			
		||||
            </#if>
 | 
			
		||||
            </#list>
 | 
			
		||||
            
 | 
			
		||||
            console.log(formData)
 | 
			
		||||
            httpAction(httpurl,formData,method).then((res)=>{
 | 
			
		||||
              if(res.success){
 | 
			
		||||
                that.$message.success(res.message);
 | 
			
		||||
                that.$emit('ok');
 | 
			
		||||
              }else{
 | 
			
		||||
                that.$message.warning(res.message);
 | 
			
		||||
              }
 | 
			
		||||
            }).finally(() => {
 | 
			
		||||
              that.confirmLoading = false;
 | 
			
		||||
              that.close();
 | 
			
		||||
            })
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
          }
 | 
			
		||||
        })
 | 
			
		||||
      },
 | 
			
		||||
      handleCancel () {
 | 
			
		||||
        this.close()
 | 
			
		||||
      },
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style lang="less" scoped>
 | 
			
		||||
/** Button按钮间距 */
 | 
			
		||||
  .ant-btn {
 | 
			
		||||
    margin-left: 30px;
 | 
			
		||||
    margin-bottom: 30px;
 | 
			
		||||
    float: right;
 | 
			
		||||
  }
 | 
			
		||||
</style>
 | 
			
		||||
		Loading…
	
		Reference in New Issue