addProjectInfo.vue 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. <template>
  2. <div
  3. class="ZTGlobal"
  4. style="width: 100%; padding: 1rem 1rem 0rem 1rem; color: white"
  5. >
  6. <el-row :gutter="10">
  7. <el-col :span="24">
  8. <el-form ref="ruleForm" :model="form" :rules="rules" label-width="90px">
  9. <el-form-item label="项目名称" size="mini" prop="projectname">
  10. <el-col :span="20">
  11. <el-input size="mini" v-model="form.projectname"></el-input>
  12. </el-col>
  13. </el-form-item>
  14. <el-form-item label="申请单位" size="mini" prop="applicant">
  15. <el-col :span="20">
  16. <el-input size="mini" v-model="form.applicant"></el-input>
  17. </el-col>
  18. </el-form-item>
  19. <el-form-item label="项目地址" size="mini" prop="projectaddress">
  20. <el-col :span="20">
  21. <el-input size="mini" v-model="form.projectaddress"></el-input>
  22. </el-col>
  23. </el-form-item>
  24. <el-form-item label="地块编号" size="mini" prop="plotnumber">
  25. <el-col :span="20">
  26. <el-input size="mini" v-model="form.plotnumber"></el-input>
  27. </el-col>
  28. </el-form-item>
  29. <el-form-item label="用地面积" size="mini" prop="landarea">
  30. <el-col :span="20">
  31. <el-input size="mini" v-model="form.landarea"></el-input>
  32. </el-col>
  33. <el-col :span="4">平方米</el-col>
  34. </el-form-item>
  35. <el-form-item label="用地性质" size="mini" prop="landusenature">
  36. <el-col :span="20">
  37. <el-select
  38. v-model="form.landusenature"
  39. placeholder="用地性质"
  40. clearable
  41. >
  42. <el-option
  43. v-for="dict in zt_landusenature"
  44. :key="dict.value"
  45. :label="dict.label"
  46. :value="dict.value"
  47. />
  48. </el-select>
  49. </el-col>
  50. </el-form-item>
  51. <el-form-item label="项目定位" size="mini" prop="projectpositioning">
  52. <el-col :span="20">
  53. <el-input
  54. size="mini"
  55. v-model="form.projectpositioning"
  56. ></el-input>
  57. </el-col>
  58. </el-form-item>
  59. <el-form-item
  60. label="项目总投资"
  61. size="mini"
  62. prop="totalprojectinvestment"
  63. >
  64. <el-col :span="20">
  65. <el-input
  66. size="mini"
  67. v-model="form.totalprojectinvestment"
  68. ></el-input>
  69. </el-col>
  70. <el-col :span="4">亿元</el-col>
  71. </el-form-item>
  72. <el-form-item label="资金来源" size="mini" prop="fundingsource">
  73. <el-col :span="20">
  74. <el-select
  75. v-model="form.fundingsource"
  76. placeholder="资金来源"
  77. clearable
  78. >
  79. <el-option
  80. v-for="dict in zt_fundingsource"
  81. :key="dict.value"
  82. :label="dict.label"
  83. :value="dict.value"
  84. />
  85. </el-select>
  86. <!-- <el-input size="mini" v-model="form.fundingsource"></el-input> -->
  87. </el-col>
  88. </el-form-item>
  89. <el-form-item label="土地情况" size="mini" prop="landsituation">
  90. <el-col :span="20">
  91. <el-input
  92. type="textarea"
  93. :autosize="{ minRows: 2, maxRows: 4 }"
  94. size="mini"
  95. v-model="form.landsituation"
  96. ></el-input>
  97. </el-col>
  98. </el-form-item>
  99. </el-form>
  100. <div class="SaveCenter">
  101. <el-button type="primary" @click="submitForm('ruleForm')"
  102. >添加</el-button
  103. >
  104. <el-button @click="resetForm('ruleForm')">重置</el-button>
  105. </div>
  106. </el-col>
  107. </el-row>
  108. </div>
  109. </template>
  110. <script>
  111. import { v4 as uuidv4 } from "uuid";
  112. import { addProjectinformation } from "@/api/zt/ztApi.js";
  113. export default {
  114. data() {
  115. return {
  116. form: {
  117. id: "",
  118. meetingprogress: "0",
  119. applicant: "",
  120. projectname: "",
  121. projectaddress: "",
  122. plotnumber: "",
  123. landarea: "",
  124. landusenature: "",
  125. projectpositioning: "",
  126. landsituation: "",
  127. totalprojectinvestment: "",
  128. fundingsource: "",
  129. },
  130. zt_landusenature: window.dict.zt_landusenature,
  131. zt_fundingsource: window.dict.zt_fundingsource,
  132. rules: {
  133. projectname: [
  134. { required: true, message: "请输入项目名称", trigger: "blur" },
  135. ],
  136. plotnumber: [
  137. { required: true, message: "请输入地块编号", trigger: "blur" },
  138. ],
  139. landusenature: [
  140. { required: true, message: "用地性质", trigger: "blur" },
  141. ],
  142. },
  143. };
  144. },
  145. props: {
  146. info: {
  147. type: Object,
  148. default: () => {
  149. return {};
  150. },
  151. },
  152. layerid: {
  153. type: String,
  154. default: "",
  155. },
  156. lydata: {
  157. type: Object,
  158. default: () => {
  159. return {};
  160. },
  161. },
  162. lyoption: {
  163. type: Object,
  164. default: () => {
  165. return {};
  166. },
  167. },
  168. },
  169. computed: {},
  170. mounted() {
  171. // this.init();
  172. },
  173. methods: {
  174. submitForm(formName) {
  175. let that = this;
  176. this.$refs[formName].validate(async (valid) => {
  177. if (valid) {
  178. that.form.id = uuidv4();
  179. that.form.meetingprogress = "0";
  180. // window.projectinformation.push(that.form);
  181. let result = await addProjectinformation(that.form);
  182. if (result.code) {
  183. that.$message({
  184. message: "添加成功",
  185. type: "success",
  186. });
  187. that.$layer.close(that.layerid);
  188. }
  189. debugger;
  190. // that.lyoption.cancel();
  191. } else {
  192. return false;
  193. }
  194. });
  195. },
  196. resetForm(formName) {
  197. this.$refs[formName].resetFields();
  198. },
  199. },
  200. };
  201. </script>
  202. <style lang="scss">
  203. @import "@/../../zt.scss";
  204. </style>
  205. <style lang="scss" scoped></style>