index.vue 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920
  1. <template>
  2. <div class="app-container">
  3. <el-form
  4. :model="queryParams"
  5. ref="queryForm"
  6. size="small"
  7. :inline="true"
  8. v-show="showSearch"
  9. label-width="88px"
  10. >
  11. <el-form-item label="部门名称" prop="deptId">
  12. <el-select filterable v-model="queryParams.deptId" placeholder="请选择">
  13. <el-option
  14. v-for="item in detpList"
  15. :key="item.value"
  16. :label="item.deptName"
  17. :value="item.deptId"
  18. >
  19. </el-option>
  20. </el-select>
  21. </el-form-item>
  22. <el-form-item label="法定代表人" prop="fddbr">
  23. <el-input v-model="queryParams.fddbr" placeholder="请输入"></el-input>
  24. </el-form-item>
  25. <el-form-item>
  26. <el-button
  27. type="primary"
  28. icon="el-icon-search"
  29. size="mini"
  30. @click="handleQuery"
  31. >搜索</el-button
  32. >
  33. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
  34. >重置</el-button
  35. >
  36. </el-form-item>
  37. </el-form>
  38. <el-row :gutter="10" class="mb8">
  39. <el-col :span="1.5">
  40. <el-button
  41. type="primary"
  42. plain
  43. icon="el-icon-plus"
  44. size="mini"
  45. @click="handleAdd"
  46. v-hasPermi="['business:GARDENBASEDATA:add']"
  47. >新增</el-button
  48. >
  49. </el-col>
  50. <el-col :span="1.5">
  51. <el-button
  52. type="success"
  53. plain
  54. icon="el-icon-edit"
  55. size="mini"
  56. :disabled="single"
  57. @click="handleUpdate"
  58. v-hasPermi="['business:GARDENBASEDATA:edit']"
  59. >修改</el-button
  60. >
  61. </el-col>
  62. <el-col :span="1.5">
  63. <el-button
  64. type="danger"
  65. plain
  66. icon="el-icon-delete"
  67. size="mini"
  68. :disabled="multiple"
  69. @click="handleDelete"
  70. v-hasPermi="['business:GARDENBASEDATA:remove']"
  71. >删除</el-button
  72. >
  73. </el-col>
  74. <el-col :span="1.5">
  75. <el-button
  76. type="warning"
  77. plain
  78. icon="el-icon-download"
  79. size="mini"
  80. @click="handleExport"
  81. v-hasPermi="['business:GARDENBASEDATA:export']"
  82. >导出</el-button
  83. >
  84. </el-col>
  85. <right-toolbar
  86. :showSearch.sync="showSearch"
  87. @queryTable="getList"
  88. ></right-toolbar>
  89. </el-row>
  90. <el-table
  91. :data="GARDENBASEDATAList"
  92. @selection-change="handleSelectionChange"
  93. >
  94. <el-table-column type="selection" width="55" align="center" />
  95. <el-table-column label="园区内企业基础数据主键" align="center" prop="id">
  96. </el-table-column>
  97. <el-table-column label="部门主键" align="center" prop="deptId">
  98. </el-table-column>
  99. <el-table-column label="部门名称" align="center" prop="deptName">
  100. </el-table-column>
  101. <el-table-column label="法定代表人 " align="center" prop="fddbr">
  102. </el-table-column>
  103. <el-table-column label="企业代表联系方式 " align="center" prop="qydblxfs">
  104. </el-table-column>
  105. <el-table-column label="控股企业 " align="center" prop="kgqy">
  106. </el-table-column>
  107. <el-table-column label="注册资金" align="center" prop="zczj">
  108. </el-table-column>
  109. <el-table-column label="行业大类 " align="center" prop="hydl">
  110. </el-table-column>
  111. <el-table-column label="行业小类 " align="center" prop="hyxl">
  112. </el-table-column>
  113. <el-table-column label="企业类型 " align="center" prop="qylx">
  114. </el-table-column>
  115. <el-table-column label="是否外资企业 " align="center" prop="sfwzqy">
  116. </el-table-column>
  117. <el-table-column label="经营状态 " align="center" prop="jyzt">
  118. </el-table-column>
  119. <el-table-column label="统一社会信用代码 " align="center" prop="shtyxydm">
  120. </el-table-column>
  121. <el-table-column label="企业海关编码 " align="center" prop="qyhgbm">
  122. </el-table-column>
  123. <el-table-column label="人员规模" align="center" prop="rygm">
  124. </el-table-column>
  125. <el-table-column label="成立日期 " align="center" prop="clrq">
  126. </el-table-column>
  127. <el-table-column label="投产时间 " align="center" prop="tcsj">
  128. </el-table-column>
  129. <el-table-column label="经营期限自 " align="center" prop="jyqxz">
  130. </el-table-column>
  131. <el-table-column label="经营期限至 " align="center" prop="jyqxz1">
  132. </el-table-column>
  133. <el-table-column label="注册地址 " align="center" prop="zcdz" show-overflow-tooltip>
  134. </el-table-column>
  135. <el-table-column label="主营业务 " align="center" prop="zyyw" show-overflow-tooltip>
  136. </el-table-column>
  137. <el-table-column label="经营范围 " align="center" prop="jyfw" show-overflow-tooltip>
  138. </el-table-column>
  139. <el-table-column label="外汇等级 " align="center" prop="grade">
  140. <template slot-scope="scope">
  141. <span v-if="scope.row.grade == 1">A</span>
  142. <span v-if="scope.row.grade == 2">B</span>
  143. <span v-if="scope.row.grade == 3">C</span>
  144. <span v-if="scope.row.grade == 4">D</span>
  145. </template>
  146. </el-table-column>
  147. <el-table-column label="企业结构 " align="center" prop="enterpriseStructure">
  148. <template slot-scope="scope">
  149. <span>{{ selectDictLabel(dict.type.enterprise_structure, scope.row.enterpriseStructure) }}</span>
  150. </template>
  151. </el-table-column>
  152. <el-table-column label="企业资质 " align="center" prop="qyzz">
  153. </el-table-column>
  154. <el-table-column label="主要市场 " align="center" prop="zysc">
  155. </el-table-column>
  156. <el-table-column label="一般纳税人情况 " align="center" prop="ybnsrqk">
  157. </el-table-column>
  158. <el-table-column
  159. label="国家级奖项、发明专利 "
  160. align="center"
  161. prop="gjjjxfmzl"
  162. >
  163. </el-table-column>
  164. <el-table-column label="AEO情况 " align="center" prop="aeoqk">
  165. </el-table-column>
  166. <el-table-column
  167. label="检测、服务外包、文化服务创新 "
  168. align="center"
  169. prop="jcfwwbwhfwcx"
  170. >
  171. </el-table-column>
  172. <el-table-column label="创建时间" align="center" prop="createTime">
  173. </el-table-column>
  174. <el-table-column label="创建人" align="center" prop="createBy">
  175. </el-table-column>
  176. <el-table-column label="更新时间" align="center" prop="updateTime">
  177. </el-table-column>
  178. <el-table-column label="更新人" align="center" prop="updateBy">
  179. </el-table-column>
  180. <el-table-column
  181. fixed="right"
  182. label="操作"
  183. align="center"
  184. class-name="small-padding fixed-width"
  185. >
  186. <template slot-scope="scope">
  187. <el-button
  188. size="mini"
  189. type="text"
  190. icon="el-icon-edit"
  191. @click="handleUpdate(scope.row)"
  192. v-hasPermi="['business:GARDENBASEDATA:edit']"
  193. >修改</el-button
  194. >
  195. <el-button
  196. size="mini"
  197. type="text"
  198. icon="el-icon-delete"
  199. @click="handleDelete(scope.row)"
  200. v-hasPermi="['business:GARDENBASEDATA:remove']"
  201. >删除</el-button
  202. >
  203. </template>
  204. </el-table-column>
  205. </el-table>
  206. <pagination
  207. v-show="total > 0"
  208. :total="total"
  209. :page.sync="queryParams.pageNum"
  210. :limit.sync="queryParams.pageSize"
  211. @pagination="getList"
  212. />
  213. <!-- 添加或修改园区内企业基础数据对话框 -->
  214. <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="65%" append-to-body>
  215. <el-tabs v-model="tabMsg" type="border-card">
  216. <el-tab-pane name="basicMsg" label="企业基本信息">
  217. <el-form ref="forms" :model="form" :rules="rules" label-width="180px">
  218. <el-row>
  219. <el-col :span="12">
  220. <el-form-item label="法定代表人" prop="fddbr">
  221. <el-input
  222. v-model="form.fddbr"
  223. placeholder="请输入法定代表人"
  224. ></el-input>
  225. </el-form-item>
  226. </el-col>
  227. <el-col :span="12">
  228. <el-form-item label="部门" prop="deptName">
  229. <!-- 树状结构组件引用 -->
  230. <select-tree :param="detpList" :placeholder="'请选择部门'" :modelValue="form.deptName" @setNodeValue="handleNodeClick" />
  231. </el-form-item>
  232. </el-col>
  233. </el-row>
  234. <el-row>
  235. <el-col :span="12">
  236. <el-form-item label="企业代表联系方式 " prop="qydblxfs">
  237. <el-input
  238. v-model="form.qydblxfs"
  239. placeholder="请输入企业代表联系方式 "
  240. ></el-input>
  241. </el-form-item>
  242. </el-col>
  243. <el-col :span="12">
  244. <el-form-item label="注册资金" prop="zczj">
  245. <el-input
  246. v-model="form.zczj"
  247. placeholder="请输入注册资金"
  248. ></el-input>
  249. </el-form-item>
  250. </el-col>
  251. </el-row>
  252. <el-row>
  253. <el-col :span="12">
  254. <el-form-item label="企业类型 " prop="qylx">
  255. <el-input
  256. v-model="form.qylx"
  257. placeholder="请输入企业类型 "
  258. ></el-input>
  259. </el-form-item>
  260. </el-col>
  261. <el-col :span="12">
  262. <el-form-item label="经营状态 " prop="jyzt">
  263. <el-input
  264. v-model="form.jyzt"
  265. placeholder="请输入经营状态 "
  266. ></el-input>
  267. </el-form-item>
  268. </el-col>
  269. </el-row>
  270. <el-row>
  271. <el-col :span="12">
  272. <el-form-item label="统一社会信用代码 " prop="shtyxydm">
  273. <el-input
  274. v-model="form.shtyxydm"
  275. placeholder="请输入统一社会信用代码 "
  276. ></el-input>
  277. </el-form-item>
  278. </el-col>
  279. <el-col :span="12">
  280. <el-form-item label="人员规模" prop="rygm">
  281. <el-input
  282. v-model="form.rygm"
  283. placeholder="请输入人员规模"
  284. ></el-input>
  285. </el-form-item>
  286. </el-col>
  287. </el-row>
  288. <el-row>
  289. <el-col :span="12">
  290. <el-form-item label="成立日期 " prop="clrq">
  291. <!-- <el-input v-model="form.clrq" placeholder="请输入成立日期 "></el-input> -->
  292. <el-date-picker
  293. style="width: 100%"
  294. value-format="yyyy-MM-dd"
  295. @change="setUpTimeSelect"
  296. v-model="form.clrq"
  297. type="date"
  298. placeholder="选择日期"
  299. >
  300. </el-date-picker>
  301. </el-form-item>
  302. </el-col>
  303. <el-col :span="12">
  304. <el-form-item label="注册地址 " prop="zcdz">
  305. <el-input
  306. v-model="form.zcdz"
  307. placeholder="请输入注册地址 "
  308. ></el-input>
  309. </el-form-item>
  310. </el-col>
  311. </el-row>
  312. <el-row>
  313. <el-col :span="12">
  314. <el-form-item label="经营范围 " prop="jyfw">
  315. <el-input
  316. v-model="form.jyfw"
  317. placeholder="请输入经营范围 "
  318. ></el-input>
  319. </el-form-item>
  320. </el-col>
  321. <el-col :span="12">
  322. <el-form-item label="外汇等级" prop="grade">
  323. <el-select v-model="form.grade" placeholder="请选择" style="width: 100%">
  324. <el-option
  325. v-for="item in options"
  326. :key="item.value"
  327. :label="item.label"
  328. :value="item.value">
  329. </el-option>
  330. </el-select>
  331. </el-form-item>
  332. </el-col>
  333. </el-row>
  334. <el-row>
  335. <el-col :span="12">
  336. <el-form-item label="企业结构 " prop="enterpriseStructure">
  337. <el-select v-model="form.enterpriseStructure" placeholder="请选择" style="width: 100%">
  338. <el-option
  339. v-for="dict in dict.type.enterprise_structure"
  340. :key="dict.value"
  341. :label="dict.label"
  342. :value="+dict.value"
  343. />
  344. </el-select>
  345. </el-form-item>
  346. </el-col>
  347. <el-col :span="12">
  348. <el-form-item label="企业结构 " prop="enterpriseStructure">
  349. <el-select v-model="form.businessEvents" placeholder="请选择" style="width: 100%">
  350. <el-option
  351. v-for="dict in dict.type.business_events"
  352. :key="dict.value"
  353. :label="dict.label"
  354. :value="+dict.value"
  355. />
  356. </el-select>
  357. </el-form-item>
  358. </el-col>
  359. </el-row>
  360. </el-form>
  361. </el-tab-pane>
  362. <!-- 额外信息 -->
  363. <el-tab-pane name="extraMsg" label="额外信息">
  364. <el-form ref="form" :model="form" :rules="rules" label-width="180px">
  365. <el-row>
  366. <el-col :span="12">
  367. <el-form-item label="控股企业 " prop="kgqy">
  368. <el-input
  369. v-model="form.kgqy"
  370. placeholder="请输入控股企业 "
  371. ></el-input>
  372. </el-form-item>
  373. </el-col>
  374. <el-col :span="12">
  375. <el-form-item label="行业大类 " prop="hydl">
  376. <el-input
  377. v-model="form.hydl"
  378. placeholder="请输入行业大类 "
  379. ></el-input>
  380. </el-form-item>
  381. </el-col>
  382. </el-row>
  383. <el-row>
  384. <el-col :span="12">
  385. <el-form-item label="行业小类 " prop="hyxl">
  386. <el-input
  387. v-model="form.hyxl"
  388. placeholder="请输入行业小类 "
  389. ></el-input>
  390. </el-form-item>
  391. </el-col>
  392. <el-col :span="12">
  393. <el-form-item label="是否外资企业 " prop="sfwzqy">
  394. <el-input
  395. v-model="form.sfwzqy"
  396. placeholder="请输入是否外资企业 "
  397. ></el-input>
  398. </el-form-item>
  399. </el-col>
  400. </el-row>
  401. <el-row>
  402. <el-col :span="12">
  403. <el-form-item label="企业海关编码 " prop="qyhgbm">
  404. <el-input
  405. v-model="form.qyhgbm"
  406. placeholder="请输入企业海关编码 "
  407. ></el-input>
  408. </el-form-item>
  409. </el-col>
  410. <el-col :span="12">
  411. <el-form-item label="投产时间 " prop="tcsj">
  412. <!-- <el-input v-model="form.tcsj" placeholder="请输入投产时间 "></el-input> -->
  413. <el-date-picker
  414. value-format="yyyy-MM-dd"
  415. @change="putTimeSelect"
  416. v-model="form.tcsj"
  417. type="date"
  418. placeholder="选择日期"
  419. >
  420. </el-date-picker>
  421. </el-form-item>
  422. </el-col>
  423. </el-row>
  424. <el-row>
  425. <el-col :span="12">
  426. <el-form-item label="经营期限自 " prop="jyqxz">
  427. <el-input
  428. v-model="form.jyqxz"
  429. placeholder="请输入经营期限自 "
  430. ></el-input>
  431. </el-form-item>
  432. </el-col>
  433. <el-col :span="12">
  434. <el-form-item label="经营期限至 " prop="jyqxz1">
  435. <el-input
  436. v-model="form.jyqxz1"
  437. placeholder="请输入经营期限至 "
  438. ></el-input>
  439. </el-form-item>
  440. </el-col>
  441. </el-row>
  442. <el-row>
  443. <el-col :span="12">
  444. <el-form-item label="主营业务 " prop="zyyw">
  445. <el-input
  446. v-model="form.zyyw"
  447. placeholder="请输入主营业务 "
  448. ></el-input>
  449. </el-form-item>
  450. </el-col>
  451. <el-col :span="12">
  452. <el-form-item label="企业资质 " prop="qyzz">
  453. <el-input
  454. v-model="form.qyzz"
  455. placeholder="请输入企业资质 "
  456. ></el-input>
  457. </el-form-item>
  458. </el-col>
  459. </el-row>
  460. <el-row>
  461. <el-col :span="12">
  462. <el-form-item label="主要市场 " prop="zysc">
  463. <el-input
  464. v-model="form.zysc"
  465. placeholder="请输入主要市场 "
  466. ></el-input>
  467. </el-form-item>
  468. </el-col>
  469. <el-col :span="12">
  470. <el-form-item label="一般纳税人情况 " prop="ybnsrqk">
  471. <el-input
  472. v-model="form.ybnsrqk"
  473. placeholder="请输入一般纳税人情况 "
  474. ></el-input>
  475. </el-form-item>
  476. </el-col>
  477. </el-row>
  478. <el-row>
  479. <el-col :span="12">
  480. <el-form-item label="国家级奖项、发明专利 " prop="gjjjxfmzl">
  481. <el-input
  482. v-model="form.gjjjxfmzl"
  483. placeholder="请输入国家级奖项、发明专利 "
  484. ></el-input>
  485. </el-form-item>
  486. </el-col>
  487. <el-col :span="12">
  488. <el-form-item label="AEO情况 " prop="aeoqk">
  489. <el-input
  490. v-model="form.aeoqk"
  491. placeholder="请输入AEO情况 "
  492. ></el-input>
  493. </el-form-item>
  494. </el-col>
  495. </el-row>
  496. <el-row>
  497. <el-col :span="12">
  498. <el-form-item
  499. label="检测、服务外包、文化服务创新 "
  500. prop="jcfwwbwhfwcx"
  501. >
  502. <el-input
  503. v-model="form.jcfwwbwhfwcx"
  504. placeholder="请输入检测、服务外包、文化服务创新 "
  505. ></el-input>
  506. </el-form-item>
  507. </el-col>
  508. <el-col :span="12"></el-col>
  509. </el-row>
  510. </el-form>
  511. </el-tab-pane>
  512. </el-tabs>
  513. <div slot="footer" class="dialog-footer">
  514. <el-button type="primary" @click="submitForm">确 定</el-button>
  515. <el-button @click="cancel">取 消</el-button>
  516. </div>
  517. </el-dialog>
  518. </div>
  519. </template>
  520. <script>
  521. import {
  522. listGARDENBASEDATA,
  523. getGARDENBASEDATA,
  524. delGARDENBASEDATA,
  525. addGARDENBASEDATA,
  526. updateGARDENBASEDATA,
  527. getEnterprise,
  528. } from "@/api/portal/GARDENBASEDATA/GARDENBASEDATA";
  529. import "@riophae/vue-treeselect/dist/vue-treeselect.css";
  530. import selectTree from '@/components/selectTree'
  531. export default {
  532. name: "GARDENBASEDATA",
  533. components: { selectTree },
  534. dicts: ['enterprise_structure', 'business_events'],
  535. data() {
  536. return {
  537. // 新增标签索引
  538. tabMsg: "basicMsg",
  539. // 部门列表
  540. detpList: [],
  541. // 根路径
  542. baseURL: process.env.VUE_APP_BASE_API,
  543. // 遮罩层
  544. loading: true,
  545. // 选中数组
  546. ids: [],
  547. // 非单个禁用
  548. single: true,
  549. // 非多个禁用
  550. multiple: true,
  551. // 显示搜索条件
  552. showSearch: true,
  553. // 总条数
  554. total: 0,
  555. // 园区内企业基础数据表格数据
  556. GARDENBASEDATAList: [],
  557. // 弹出层标题
  558. title: "",
  559. // 是否显示弹出层
  560. open: false,
  561. // 查询参数
  562. queryParams: {
  563. pageNum: 1,
  564. pageSize: 10,
  565. id: null,
  566. deptId: null,
  567. fddbr: null,
  568. qydblxfs: null,
  569. kgqy: null,
  570. zczj: null,
  571. hydl: null,
  572. hyxl: null,
  573. qylx: null,
  574. sfwzqy: null,
  575. jyzt: null,
  576. shtyxydm: null,
  577. qyhgbm: null,
  578. rygm: null,
  579. clrq: null,
  580. tcsj: null,
  581. jyqxz: null,
  582. jyqxz1: null,
  583. zcdz: null,
  584. zyyw: null,
  585. jyfw: null,
  586. qyzz: null,
  587. zysc: null,
  588. ybnsrqk: null,
  589. gjjjxfmzl: null,
  590. aeoqk: null,
  591. jcfwwbwhfwcx: null,
  592. createTime: null,
  593. createBy: null,
  594. updateTime: null,
  595. updateBy: null,
  596. },
  597. // 表单参数
  598. form: {},
  599. // 表单校验
  600. rules: {
  601. id: [
  602. {
  603. required: true,
  604. message: "园区内企业基础数据主键不能为空",
  605. trigger: "blur",
  606. },
  607. ],
  608. deptName: [
  609. { required: true, message: "部门不能为空", trigger: "blur" },
  610. ],
  611. fddbr: [
  612. { required: true, message: "法定代表人 不能为空", trigger: "blur" },
  613. ],
  614. qydblxfs: [
  615. {
  616. required: true,
  617. message: "企业代表联系方式 不能为空",
  618. trigger: "blur",
  619. },
  620. ],
  621. kgqy: [
  622. { required: true, message: "控股企业 不能为空", trigger: "blur" },
  623. ],
  624. zczj: [
  625. { required: true, message: "注册资金不能为空", trigger: "blur" },
  626. {
  627. pattern: /^[+]?(?:\d+(?:\.\d*)?|\.\d+)$/,
  628. message: "不能为负数",
  629. trigger: "blur"
  630. }
  631. ],
  632. hydl: [
  633. { required: true, message: "行业大类 不能为空", trigger: "blur" },
  634. ],
  635. hyxl: [
  636. { required: true, message: "行业小类 不能为空", trigger: "blur" },
  637. ],
  638. qylx: [
  639. { required: true, message: "企业类型 不能为空", trigger: "blur" },
  640. ],
  641. sfwzqy: [
  642. { required: true, message: "是否外资企业 不能为空", trigger: "blur" },
  643. ],
  644. jyzt: [
  645. { required: true, message: "经营状态 不能为空", trigger: "blur" },
  646. ],
  647. shtyxydm: [
  648. {
  649. required: true,
  650. message: "统一社会信用代码 不能为空",
  651. trigger: "blur",
  652. },
  653. ],
  654. qyhgbm: [
  655. { required: true, message: "企业海关编码 不能为空", trigger: "blur" },
  656. ],
  657. rygm: [
  658. { required: true, message: "人员规模不能为空", trigger: "blur" },
  659. {
  660. pattern: /^[1-9]\d*$/,
  661. message: "请输入正整数",
  662. trigger: "blur"
  663. }
  664. ],
  665. clrq: [
  666. { required: true, message: "成立日期 不能为空", trigger: "blur" },
  667. ],
  668. tcsj: [
  669. { required: true, message: "投产时间 不能为空", trigger: "blur" },
  670. ],
  671. jyqxz: [
  672. { required: true, message: "经营期限自 不能为空", trigger: "blur" },
  673. ],
  674. jyqxz1: [
  675. { required: true, message: "经营期限至 不能为空", trigger: "blur" },
  676. ],
  677. zcdz: [
  678. { required: true, message: "注册地址 不能为空", trigger: "blur" },
  679. ],
  680. zyyw: [
  681. { required: true, message: "主营业务 不能为空", trigger: "blur" },
  682. ],
  683. jyfw: [
  684. { required: true, message: "经营范围 不能为空", trigger: "blur" },
  685. ],
  686. qyzz: [
  687. { required: true, message: "企业资质 不能为空", trigger: "blur" },
  688. ],
  689. zysc: [
  690. { required: true, message: "主要市场 不能为空", trigger: "blur" },
  691. ],
  692. ybnsrqk: [
  693. {
  694. required: true,
  695. message: "一般纳税人情况 不能为空",
  696. trigger: "blur",
  697. },
  698. ],
  699. gjjjxfmzl: [
  700. {
  701. required: true,
  702. message: "国家级奖项、发明专利 不能为空",
  703. trigger: "blur",
  704. },
  705. ],
  706. aeoqk: [
  707. { required: true, message: "AEO情况 不能为空", trigger: "blur" },
  708. ],
  709. jcfwwbwhfwcx: [
  710. {
  711. required: true,
  712. message: "检测、服务外包、文化服务创新 不能为空",
  713. trigger: "blur",
  714. },
  715. ],
  716. grade: [
  717. { required: true, message: "外汇等级 不能为空", trigger: "blur" },
  718. ],
  719. enterpriseStructure: [
  720. { required: true, message: "企业结构 不能为空", trigger: "blur" },
  721. ],
  722. },
  723. options: [{
  724. value: 1,
  725. label: 'A'
  726. }, {
  727. value: 2,
  728. label: 'B'
  729. }, {
  730. value: 3,
  731. label: 'C'
  732. }, {
  733. value: 4,
  734. label: 'D'
  735. }],
  736. value: ''
  737. };
  738. },
  739. created() {
  740. this.getList();
  741. getEnterprise().then((res) => {
  742. this.detpList = res.data
  743. });
  744. },
  745. methods: {
  746. changeIsShowStatus(val) {
  747. this.isShowStatus = val;
  748. },
  749. handleNodeClick(data) {
  750. this.$set(this.form, 'deptId', data.deptId)
  751. this.$set(this.form, 'deptName', data.deptName)
  752. },
  753. setUpTimeSelect(val) {
  754. this.form.clrq = val;
  755. },
  756. putTimeSelect(val) {
  757. this.form.tcsj = val;
  758. },
  759. /** 查询园区内企业基础数据列表 */
  760. getList() {
  761. this.loading = true;
  762. listGARDENBASEDATA(this.queryParams).then((response) => {
  763. this.GARDENBASEDATAList = response.rows;
  764. this.total = response.total;
  765. this.loading = false;
  766. });
  767. },
  768. // 取消按钮
  769. cancel() {
  770. this.open = false;
  771. this.reset();
  772. },
  773. // 表单重置
  774. reset() {
  775. this.tabMsg = "basicMsg";
  776. this.form = {
  777. id: null,
  778. deptId: null,
  779. fddbr: null,
  780. qydblxfs: null,
  781. kgqy: null,
  782. zczj: null,
  783. hydl: null,
  784. hyxl: null,
  785. qylx: null,
  786. sfwzqy: null,
  787. jyzt: null,
  788. shtyxydm: null,
  789. qyhgbm: null,
  790. rygm: null,
  791. clrq: null,
  792. tcsj: null,
  793. jyqxz: null,
  794. jyqxz1: null,
  795. zcdz: null,
  796. zyyw: null,
  797. jyfw: null,
  798. qyzz: null,
  799. zysc: null,
  800. ybnsrqk: null,
  801. gjjjxfmzl: null,
  802. aeoqk: null,
  803. jcfwwbwhfwcx: null,
  804. };
  805. this.resetForm("form");
  806. this.resetForm("forms");
  807. },
  808. /** 搜索按钮操作 */
  809. handleQuery() {
  810. this.queryParams.pageNum = 1;
  811. this.getList();
  812. },
  813. /** 重置按钮操作 */
  814. resetQuery() {
  815. this.queryParams.deptId = null;
  816. this.resetForm("queryForm");
  817. this.handleQuery();
  818. },
  819. // 多选框选中数据
  820. handleSelectionChange(selection) {
  821. this.ids = selection.map((item) => item.id);
  822. this.single = selection.length !== 1;
  823. this.multiple = !selection.length;
  824. },
  825. /** 新增按钮操作 */
  826. handleAdd() {
  827. this.reset();
  828. this.open = true;
  829. this.title = "添加园区内企业基础数据";
  830. },
  831. /** 修改按钮操作 */
  832. handleUpdate(row) {
  833. this.reset();
  834. const id = row.id || this.ids;
  835. getGARDENBASEDATA(id).then((response) => {
  836. this.form = response.data;
  837. this.open = true;
  838. this.title = "修改园区内企业基础数据";
  839. });
  840. },
  841. /** 提交按钮 */
  842. submitForm() {
  843. let is;
  844. this.$refs["forms"].validate((valid)=>{
  845. if (valid) {
  846. }else{
  847. this.$message.error("请补齐企业基本信息")
  848. is = true;
  849. return;
  850. }
  851. });
  852. if (is) return;
  853. this.$refs["form"].validate((valid) => {
  854. if (valid) {
  855. if (this.form.id != null) {
  856. updateGARDENBASEDATA(this.form).then((response) => {
  857. this.$modal.msgSuccess("修改成功");
  858. this.open = false;
  859. this.getList();
  860. });
  861. } else {
  862. addGARDENBASEDATA(this.form).then((response) => {
  863. this.$modal.msgSuccess("新增成功");
  864. this.open = false;
  865. this.getList();
  866. });
  867. }
  868. } else {
  869. this.$message.error("请补齐额外信息");
  870. return;
  871. }
  872. });
  873. },
  874. /** 删除按钮操作 */
  875. handleDelete(row) {
  876. const ids = row.id || this.ids;
  877. this.$modal
  878. .confirm('是否确认删除园区内企业基础数据编号为"' + ids + '"的数据项?')
  879. .then(function () {
  880. return delGARDENBASEDATA(ids);
  881. })
  882. .then(() => {
  883. this.getList();
  884. this.$modal.msgSuccess("删除成功");
  885. })
  886. .catch(() => {});
  887. },
  888. /** 导出按钮操作 */
  889. handleExport() {
  890. this.download(
  891. "business/GARDENBASEDATA/export",
  892. {
  893. ...this.queryParams,
  894. },
  895. `GARDENBASEDATA_${new Date().getTime()}.xlsx`
  896. );
  897. },
  898. },
  899. };
  900. </script>
  901. <style>
  902. .el-tooltip__popper{font-size: 14px; max-width:40% }/* 设置显示隐藏部分内容,按40%显示 */
  903. </style>