add.vue 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148
  1. <template>
  2. <div>
  3. <el-button size="mini" type="primary" @click="dialogFormVisible = true">新 建</el-button>
  4. <el-dialog title="新 增" :visible.sync="dialogFormVisible">
  5. <el-row :gutter="20">
  6. <el-form :model="form" :rules="rules" ref="form" label-width="90px" label-position="left" size="mini">
  7. <el-col :span="24">
  8. <el-form-item label="企业名称" prop="sys_enterpriseid">
  9. <el-select v-model="form.sys_enterpriseid" placeholder="请选择企业" @change="enterpriseChange">
  10. <el-option
  11. v-for="item in enterpriseData"
  12. :key="item.sys_enterpriseid"
  13. :label="item.enterprisename"
  14. :value="item.sys_enterpriseid">
  15. </el-option>
  16. </el-select>
  17. </el-form-item>
  18. </el-col>
  19. <el-col :span="12">
  20. <el-form-item label="账户类型" prop="sa_accountclassid">
  21. <el-select v-model="form.sa_accountclassid" placeholder="请选择账户类型">
  22. <el-option
  23. v-for="item in accountClassData"
  24. :key="item.sa_accountclassid"
  25. :label="item.accountname"
  26. :value="item.sa_accountclassid">
  27. </el-option>
  28. </el-select>
  29. </el-form-item>
  30. </el-col>
  31. <el-col :span="12">
  32. <el-form-item label="信用额度" prop="creditquota">
  33. <el-input v-model="form.creditquota" placeholder="输入信用额度"></el-input>
  34. </el-form-item>
  35. </el-col>
  36. <el-col :span="14">
  37. <el-form-item label="备注" prop="address">
  38. <el-input v-model="form.address" type="textarea" :rows="3" placeholder="输入备注"></el-input>
  39. </el-form-item>
  40. </el-col>
  41. </el-form>
  42. </el-row>
  43. <div class="dialog-footer">
  44. <el-button size="small" @click="dialogFormVisible = false" class="normal-btn-width">取 消</el-button>
  45. <el-button size="small" type="warning" @click="onSubmit" class="normal-btn-width btn-warning">确 定</el-button>
  46. </div>
  47. </el-dialog>
  48. </div>
  49. </template>
  50. <script>
  51. import DownSelect from '@/components/down_select/index'
  52. export default {
  53. components:{DownSelect},
  54. data () {
  55. return {
  56. dialogFormVisible:false,
  57. enterpriseData:[],
  58. accountClassData:[],
  59. form:{
  60. sa_creditbillid:0,
  61. sys_enterpriseid:'',
  62. sa_accountclassid:'',
  63. creditquota:'',
  64. remarks:''
  65. },
  66. arealist:[],
  67. rules:{
  68. sys_enterpriseid: [
  69. { required: true, message: '请选择企业名称', trigger: 'blur' },
  70. ],
  71. sa_accountclassid: [
  72. { required: true, message: '请选择账户类型', trigger: 'blur' },
  73. ],
  74. creditquota: [
  75. { required: true, message: '请填写信用额度', trigger: 'change' },
  76. ],
  77. }
  78. }
  79. },
  80. methods:{
  81. /* 获取企业档案 */
  82. async getEnterpriseData() {
  83. let res = await this.$api.requested({
  84. "id": "20221008164103",
  85. "version":1,
  86. "content": {
  87. "where":{
  88. "condition":""
  89. }
  90. }
  91. })
  92. this.enterpriseData = res.data
  93. console.log(this.enterpriseData);
  94. },
  95. /* 企业选择变化 */
  96. async enterpriseChange() {
  97. console.log(this.form.sys_enterpriseid);
  98. let res = await this.$api.requested({
  99. "id": "20221008164203",
  100. "version":1,
  101. "content": {
  102. "sys_enterpriseid":this.form.sys_enterpriseid
  103. }
  104. })
  105. this.form.sa_accountclassid = ''
  106. this.accountClassData = res.data
  107. console.log(this.accountClassData);
  108. },
  109. cascaderChange (val) {
  110. if (val.length === 1)
  111. return this.form = Object.assign({},this.form,{province:val[0],city:'',county:''})
  112. this.form = Object.assign({},this.form,{province:val[0],city:val[1],county:val[2]})
  113. },
  114. onSubmit () {
  115. this.$refs['form'].validate(async (valid) => {
  116. if (!valid) return false
  117. const res = await this.$api.requested({
  118. "id": "20221008155003",
  119. "version":1,
  120. "content": this.form
  121. })
  122. this.tool.showMessage(res,()=>{
  123. this.$emit('onSuccess')
  124. this.$refs['form'].resetFields();
  125. this.dialogFormVisible = false
  126. })
  127. })
  128. }
  129. },
  130. created() {
  131. this.getEnterpriseData()
  132. },
  133. mounted () {
  134. }
  135. }
  136. </script>
  137. <style scoped>
  138. /deep/.el-select {
  139. width: 100%!important;
  140. }
  141. </style>