data.pdman.json 49 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197
  1. {
  2. "modules": [
  3. {
  4. "name": "COURSE",
  5. "chnname": "课程管理",
  6. "entities": [
  7. {
  8. "title": "COURSE",
  9. "fields": [
  10. {
  11. "name": "ID",
  12. "type": "Integer",
  13. "remark": "",
  14. "chnname": "主键",
  15. "pk": true,
  16. "notNull": true,
  17. "autoIncrement": true
  18. },
  19. {
  20. "name": "YEAR",
  21. "type": "Integer",
  22. "remark": "",
  23. "chnname": "学年",
  24. "uiHint": "Select"
  25. },
  26. {
  27. "name": "TERM",
  28. "type": "Integer",
  29. "remark": "",
  30. "chnname": "学期",
  31. "uiHint": "Select"
  32. },
  33. {
  34. "name": "COURSE_NAME",
  35. "type": "DefaultString",
  36. "remark": "",
  37. "chnname": "课程名",
  38. "uiHint": "Text"
  39. },
  40. {
  41. "name": "TEACHER",
  42. "type": "Integer",
  43. "remark": "",
  44. "chnname": "授课老师",
  45. "uiHint": "Select"
  46. },
  47. {
  48. "name": "LOCAL",
  49. "type": "Integer",
  50. "remark": "",
  51. "chnname": "实验地点",
  52. "uiHint": "Select"
  53. },
  54. {
  55. "name": "CLASS",
  56. "type": "Integer",
  57. "remark": "",
  58. "chnname": "授课班级",
  59. "uiHint": "Select"
  60. },
  61. {
  62. "name": "MARK",
  63. "type": "Money",
  64. "remark": "",
  65. "chnname": "学分",
  66. "uiHint": "Money"
  67. },
  68. {
  69. "name": "NUM",
  70. "type": "Integer",
  71. "remark": "",
  72. "chnname": "人数",
  73. "uiHint": "Number"
  74. },
  75. {
  76. "name": "WEEK_TITLE",
  77. "type": "DefaultString",
  78. "remark": "",
  79. "chnname": "教学周",
  80. "uiHint": "Text"
  81. },
  82. {
  83. "name": "DAY_OF_WEEK",
  84. "type": "Integer",
  85. "remark": "1-7",
  86. "chnname": "周次",
  87. "uiHint": "Select"
  88. },
  89. {
  90. "name": "TIME",
  91. "type": "DefaultString",
  92. "remark": "",
  93. "chnname": "节次",
  94. "uiHint": "CheckBox"
  95. },
  96. {
  97. "name": "STATUS",
  98. "type": "Integer",
  99. "remark": "发布状态",
  100. "chnname": "状态"
  101. },
  102. {
  103. "name": "CREATED_BY",
  104. "type": "IdOrKey",
  105. "remark": "",
  106. "chnname": "创建人"
  107. },
  108. {
  109. "name": "CREATED_TIME",
  110. "type": "DateTime",
  111. "remark": "",
  112. "chnname": "创建时间"
  113. },
  114. {
  115. "name": "UPDATED_BY",
  116. "type": "IdOrKey",
  117. "remark": "",
  118. "chnname": "更新人"
  119. },
  120. {
  121. "name": "UPDATED_TIME",
  122. "type": "DateTime",
  123. "remark": "",
  124. "chnname": "更新时间"
  125. },
  126. {
  127. "name": "IS_DEL",
  128. "type": "Integer",
  129. "remark": "",
  130. "chnname": "删除标志",
  131. "notNull": true
  132. }
  133. ],
  134. "indexs": [],
  135. "headers": [
  136. {
  137. "fieldName": "chnname",
  138. "relationNoShow": false
  139. },
  140. {
  141. "fieldName": "name",
  142. "relationNoShow": false
  143. },
  144. {
  145. "fieldName": "type",
  146. "relationNoShow": false
  147. },
  148. {
  149. "fieldName": "dataType",
  150. "relationNoShow": true
  151. },
  152. {
  153. "fieldName": "remark",
  154. "relationNoShow": true
  155. },
  156. {
  157. "fieldName": "pk",
  158. "relationNoShow": false
  159. },
  160. {
  161. "fieldName": "notNull",
  162. "relationNoShow": true
  163. },
  164. {
  165. "fieldName": "autoIncrement",
  166. "relationNoShow": true
  167. },
  168. {
  169. "fieldName": "defaultValue",
  170. "relationNoShow": true
  171. },
  172. {
  173. "fieldName": "relationNoShow",
  174. "relationNoShow": true
  175. },
  176. {
  177. "fieldName": "uiHint",
  178. "relationNoShow": true
  179. }
  180. ],
  181. "chnname": "课程表"
  182. },
  183. {
  184. "title": "CLASS",
  185. "fields": [
  186. {
  187. "name": "ID",
  188. "type": "Integer",
  189. "remark": "",
  190. "chnname": "主键",
  191. "pk": true,
  192. "notNull": true,
  193. "autoIncrement": true
  194. },
  195. {
  196. "name": "YEAR",
  197. "type": "Integer",
  198. "remark": "",
  199. "chnname": "年级",
  200. "uiHint": "Select"
  201. },
  202. {
  203. "name": "NAME",
  204. "type": "DefaultString",
  205. "remark": "",
  206. "chnname": "班级名称",
  207. "uiHint": "Text"
  208. },
  209. {
  210. "name": "CREATED_BY",
  211. "type": "IdOrKey",
  212. "remark": "",
  213. "chnname": "创建人"
  214. },
  215. {
  216. "name": "CREATED_TIME",
  217. "type": "DateTime",
  218. "remark": "",
  219. "chnname": "创建时间"
  220. },
  221. {
  222. "name": "UPDATED_BY",
  223. "type": "IdOrKey",
  224. "remark": "",
  225. "chnname": "更新人"
  226. },
  227. {
  228. "name": "UPDATED_TIME",
  229. "type": "DateTime",
  230. "remark": "",
  231. "chnname": "更新时间"
  232. },
  233. {
  234. "name": "IS_DEL",
  235. "type": "Integer",
  236. "remark": "",
  237. "chnname": "删除标志",
  238. "notNull": true
  239. }
  240. ],
  241. "indexs": [],
  242. "headers": [
  243. {
  244. "fieldName": "chnname",
  245. "relationNoShow": false
  246. },
  247. {
  248. "fieldName": "name",
  249. "relationNoShow": false
  250. },
  251. {
  252. "fieldName": "type",
  253. "relationNoShow": false
  254. },
  255. {
  256. "fieldName": "dataType",
  257. "relationNoShow": true
  258. },
  259. {
  260. "fieldName": "remark",
  261. "relationNoShow": true
  262. },
  263. {
  264. "fieldName": "pk",
  265. "relationNoShow": false
  266. },
  267. {
  268. "fieldName": "notNull",
  269. "relationNoShow": true
  270. },
  271. {
  272. "fieldName": "autoIncrement",
  273. "relationNoShow": true
  274. },
  275. {
  276. "fieldName": "defaultValue",
  277. "relationNoShow": true
  278. },
  279. {
  280. "fieldName": "relationNoShow",
  281. "relationNoShow": true
  282. },
  283. {
  284. "fieldName": "uiHint",
  285. "relationNoShow": true
  286. }
  287. ],
  288. "chnname": "班级表"
  289. }
  290. ],
  291. "graphCanvas": {
  292. "nodes": [
  293. {
  294. "shape": "table",
  295. "title": "CLASS",
  296. "moduleName": false,
  297. "x": 880,
  298. "y": 300,
  299. "id": "b41aeeea"
  300. },
  301. {
  302. "shape": "table",
  303. "title": "COURSE",
  304. "moduleName": false,
  305. "x": 330,
  306. "y": 280,
  307. "id": "c6c3311e"
  308. }
  309. ],
  310. "edges": [
  311. {
  312. "shape": "erdRelation",
  313. "relation": "0,n:1",
  314. "source": "b41aeeea",
  315. "target": "c6c3311e",
  316. "id": "4153d0e7",
  317. "controlPoints": [
  318. {
  319. "x": 732.0107421875,
  320. "y": 242.19736842105263
  321. },
  322. {
  323. "x": 469.103515625,
  324. "y": 242.40384615384616
  325. }
  326. ],
  327. "sourceAnchor": 0,
  328. "targetAnchor": 13
  329. }
  330. ]
  331. },
  332. "associations": [
  333. {
  334. "relation": "0,n:1",
  335. "from": {
  336. "entity": "CLASS",
  337. "field": "ID"
  338. },
  339. "to": {
  340. "entity": "COURSE",
  341. "field": "CLASS"
  342. }
  343. }
  344. ]
  345. },
  346. {
  347. "name": "DUTY",
  348. "chnname": "实验室值班人员管理",
  349. "entities": [
  350. {
  351. "title": "DUTY",
  352. "fields": [
  353. {
  354. "name": "ID",
  355. "type": "Integer",
  356. "remark": "",
  357. "chnname": "主键",
  358. "pk": true,
  359. "notNull": true,
  360. "autoIncrement": true
  361. },
  362. {
  363. "name": "YEAR",
  364. "type": "DefaultString",
  365. "remark": "",
  366. "chnname": "学年"
  367. },
  368. {
  369. "name": "TERM",
  370. "type": "DefaultString",
  371. "remark": "",
  372. "chnname": "学期"
  373. },
  374. {
  375. "name": "TITLE",
  376. "type": "DefaultString",
  377. "remark": "",
  378. "chnname": "标题"
  379. },
  380. {
  381. "name": "LOCAL",
  382. "type": "DefaultString",
  383. "remark": "",
  384. "chnname": "地点"
  385. },
  386. {
  387. "name": "TIME",
  388. "type": "Integer",
  389. "remark": "",
  390. "chnname": "时间段"
  391. },
  392. {
  393. "name": "MONDAY",
  394. "type": "Integer",
  395. "remark": "",
  396. "chnname": "周一"
  397. },
  398. {
  399. "name": "TUESDAY",
  400. "type": "Integer",
  401. "remark": "",
  402. "chnname": "周二"
  403. },
  404. {
  405. "name": "WEDNESDAY",
  406. "type": "Integer",
  407. "remark": "",
  408. "chnname": "周三"
  409. },
  410. {
  411. "name": "THURSDAY",
  412. "type": "Integer",
  413. "remark": "",
  414. "chnname": "周四"
  415. },
  416. {
  417. "name": "FRIDAY",
  418. "type": "Integer",
  419. "remark": "",
  420. "chnname": "周五"
  421. },
  422. {
  423. "name": "SATURDAY",
  424. "type": "Integer",
  425. "remark": "",
  426. "chnname": "周六"
  427. },
  428. {
  429. "name": "SUNDAY",
  430. "type": "Integer",
  431. "remark": "",
  432. "chnname": "周天"
  433. },
  434. {
  435. "name": "CREATED_BY",
  436. "type": "IdOrKey",
  437. "remark": "",
  438. "chnname": "创建人"
  439. },
  440. {
  441. "name": "CREATED_TIME",
  442. "type": "DateTime",
  443. "remark": "",
  444. "chnname": "创建时间"
  445. },
  446. {
  447. "name": "UPDATED_BY",
  448. "type": "IdOrKey",
  449. "remark": "",
  450. "chnname": "更新人"
  451. },
  452. {
  453. "name": "UPDATED_TIME",
  454. "type": "DateTime",
  455. "remark": "",
  456. "chnname": "更新时间"
  457. },
  458. {
  459. "name": "IS_DEL",
  460. "type": "Integer",
  461. "remark": "",
  462. "chnname": "删除标志",
  463. "notNull": true
  464. }
  465. ],
  466. "indexs": [],
  467. "headers": [
  468. {
  469. "fieldName": "chnname",
  470. "relationNoShow": false
  471. },
  472. {
  473. "fieldName": "name",
  474. "relationNoShow": false
  475. },
  476. {
  477. "fieldName": "type",
  478. "relationNoShow": false
  479. },
  480. {
  481. "fieldName": "dataType",
  482. "relationNoShow": true
  483. },
  484. {
  485. "fieldName": "remark",
  486. "relationNoShow": true
  487. },
  488. {
  489. "fieldName": "pk",
  490. "relationNoShow": false
  491. },
  492. {
  493. "fieldName": "notNull",
  494. "relationNoShow": true
  495. },
  496. {
  497. "fieldName": "autoIncrement",
  498. "relationNoShow": true
  499. },
  500. {
  501. "fieldName": "defaultValue",
  502. "relationNoShow": true
  503. },
  504. {
  505. "fieldName": "relationNoShow",
  506. "relationNoShow": true
  507. },
  508. {
  509. "fieldName": "uiHint",
  510. "relationNoShow": true
  511. }
  512. ],
  513. "chnname": "值班表"
  514. }
  515. ],
  516. "graphCanvas": {
  517. "edges": [],
  518. "nodes": []
  519. },
  520. "associations": []
  521. },
  522. {
  523. "name": "INFORMATION",
  524. "chnname": "信息发布",
  525. "entities": [
  526. {
  527. "title": "INFORMATION",
  528. "fields": [
  529. {
  530. "name": "ID",
  531. "type": "Integer",
  532. "remark": "",
  533. "chnname": "主键",
  534. "pk": true,
  535. "notNull": true,
  536. "autoIncrement": true
  537. },
  538. {
  539. "name": "TITLE",
  540. "type": "DefaultString",
  541. "remark": "",
  542. "chnname": "标题"
  543. },
  544. {
  545. "name": "CONTENT",
  546. "type": "LongText",
  547. "remark": "",
  548. "chnname": "内容"
  549. },
  550. {
  551. "name": "FLAG",
  552. "type": "Integer",
  553. "remark": "",
  554. "chnname": "类别"
  555. },
  556. {
  557. "name": "STATUS",
  558. "type": "Integer",
  559. "remark": "",
  560. "chnname": "状态"
  561. },
  562. {
  563. "name": "CREATED_BY",
  564. "type": "IdOrKey",
  565. "remark": "",
  566. "chnname": "创建人"
  567. },
  568. {
  569. "name": "CREATED_TIME",
  570. "type": "DateTime",
  571. "remark": "",
  572. "chnname": "创建时间"
  573. },
  574. {
  575. "name": "UPDATED_BY",
  576. "type": "IdOrKey",
  577. "remark": "",
  578. "chnname": "更新人"
  579. },
  580. {
  581. "name": "UPDATED_TIME",
  582. "type": "DateTime",
  583. "remark": "",
  584. "chnname": "更新时间"
  585. },
  586. {
  587. "name": "IS_DEL",
  588. "type": "Integer",
  589. "remark": "",
  590. "chnname": "删除标志",
  591. "notNull": true
  592. }
  593. ],
  594. "indexs": [],
  595. "headers": [
  596. {
  597. "fieldName": "chnname",
  598. "relationNoShow": false
  599. },
  600. {
  601. "fieldName": "name",
  602. "relationNoShow": false
  603. },
  604. {
  605. "fieldName": "type",
  606. "relationNoShow": false
  607. },
  608. {
  609. "fieldName": "dataType",
  610. "relationNoShow": true
  611. },
  612. {
  613. "fieldName": "remark",
  614. "relationNoShow": true
  615. },
  616. {
  617. "fieldName": "pk",
  618. "relationNoShow": false
  619. },
  620. {
  621. "fieldName": "notNull",
  622. "relationNoShow": true
  623. },
  624. {
  625. "fieldName": "autoIncrement",
  626. "relationNoShow": true
  627. },
  628. {
  629. "fieldName": "defaultValue",
  630. "relationNoShow": true
  631. },
  632. {
  633. "fieldName": "relationNoShow",
  634. "relationNoShow": true
  635. },
  636. {
  637. "fieldName": "uiHint",
  638. "relationNoShow": true
  639. }
  640. ],
  641. "chnname": "信息表"
  642. }
  643. ],
  644. "graphCanvas": {
  645. "nodes": [],
  646. "edges": []
  647. },
  648. "associations": []
  649. }
  650. ],
  651. "dataTypeDomains": {
  652. "datatype": [
  653. {
  654. "name": "默认字串",
  655. "code": "DefaultString",
  656. "apply": {
  657. "JAVA": {
  658. "type": "String"
  659. },
  660. "MYSQL": {
  661. "type": "VARCHAR(32)"
  662. },
  663. "ORACLE": {
  664. "type": "NVARCHAR2(32)"
  665. },
  666. "SQLServer": {
  667. "type": "NVARCHAR(32)"
  668. },
  669. "PostgreSQL": {
  670. "type": "VARCHAR(32)"
  671. }
  672. }
  673. },
  674. {
  675. "name": "标识号",
  676. "code": "IdOrKey",
  677. "apply": {
  678. "JAVA": {
  679. "type": "String"
  680. },
  681. "ORACLE": {
  682. "type": "VARCHAR2(32)"
  683. },
  684. "MYSQL": {
  685. "type": "VARCHAR(32)"
  686. },
  687. "SQLServer": {
  688. "type": "VARCHAR(32)"
  689. },
  690. "PostgreSQL": {
  691. "type": "VARCHAR(32)"
  692. }
  693. }
  694. },
  695. {
  696. "name": "标识号-长",
  697. "code": "LongKey",
  698. "apply": {
  699. "MYSQL": {
  700. "type": "VARCHAR(64)"
  701. },
  702. "ORACLE": {
  703. "type": "VARCHAR2(64)"
  704. },
  705. "JAVA": {
  706. "type": "String"
  707. },
  708. "SQLServer": {
  709. "type": "VARCHAR(64)"
  710. },
  711. "PostgreSQL": {
  712. "type": "VARCHAR(64)"
  713. }
  714. }
  715. },
  716. {
  717. "name": "名称",
  718. "code": "Name",
  719. "apply": {
  720. "JAVA": {
  721. "type": "String"
  722. },
  723. "MYSQL": {
  724. "type": "VARCHAR(128)"
  725. },
  726. "ORACLE": {
  727. "type": "NVARCHAR2(128)"
  728. },
  729. "SQLServer": {
  730. "type": "NVARCHAR(128)"
  731. },
  732. "PostgreSQL": {
  733. "type": "VARCHAR(128)"
  734. }
  735. }
  736. },
  737. {
  738. "name": "备注说明",
  739. "code": "Intro",
  740. "apply": {
  741. "JAVA": {
  742. "type": "String"
  743. },
  744. "MYSQL": {
  745. "type": "VARCHAR(512)"
  746. },
  747. "ORACLE": {
  748. "type": "NVARCHAR2(512)"
  749. },
  750. "SQLServer": {
  751. "type": "NVARCHAR(512)"
  752. },
  753. "PostgreSQL": {
  754. "type": "VARCHAR(512)"
  755. }
  756. }
  757. },
  758. {
  759. "name": "字串-短",
  760. "code": "ShortString",
  761. "apply": {
  762. "JAVA": {
  763. "type": "String"
  764. },
  765. "MYSQL": {
  766. "type": "VARCHAR(128)"
  767. },
  768. "ORACLE": {
  769. "type": "NVARCHAR2(128)"
  770. },
  771. "SQLServer": {
  772. "type": "NVARCHAR(128)"
  773. },
  774. "PostgreSQL": {
  775. "type": "VARCHAR(128)"
  776. }
  777. }
  778. },
  779. {
  780. "name": "字串-中",
  781. "code": "MiddleString",
  782. "apply": {
  783. "JAVA": {
  784. "type": "String"
  785. },
  786. "MYSQL": {
  787. "type": "VARCHAR(1024)"
  788. },
  789. "ORACLE": {
  790. "type": "NVARCHAR2(1024)"
  791. },
  792. "SQLServer": {
  793. "type": "NVARCHAR(1024)"
  794. },
  795. "PostgreSQL": {
  796. "type": "VARCHAR(1024)"
  797. }
  798. }
  799. },
  800. {
  801. "name": "字串-长",
  802. "code": "LongString",
  803. "apply": {
  804. "JAVA": {
  805. "type": "String"
  806. },
  807. "ORACLE": {
  808. "type": "NVARCHAR2(3072)"
  809. },
  810. "MYSQL": {
  811. "type": "VARCHAR(3072)"
  812. },
  813. "SQLServer": {
  814. "type": "NVARCHAR(3072)"
  815. },
  816. "PostgreSQL": {
  817. "type": "VARCHAR(3072)"
  818. }
  819. }
  820. },
  821. {
  822. "name": "大文本",
  823. "code": "LongText",
  824. "apply": {
  825. "JAVA": {
  826. "type": "String"
  827. },
  828. "MYSQL": {
  829. "type": "TEXT"
  830. },
  831. "ORACLE": {
  832. "type": "CLOB"
  833. },
  834. "SQLServer": {
  835. "type": "NTEXT"
  836. },
  837. "PostgreSQL": {
  838. "type": "TEXT"
  839. }
  840. }
  841. },
  842. {
  843. "name": "小数",
  844. "code": "Double",
  845. "apply": {
  846. "JAVA": {
  847. "type": "Double"
  848. },
  849. "MYSQL": {
  850. "type": "DECIMAL(32,10)"
  851. },
  852. "ORACLE": {
  853. "type": "NUMBER(32,10)"
  854. },
  855. "SQLServer": {
  856. "type": "DECIMAL(32,10)"
  857. },
  858. "PostgreSQL": {
  859. "type": "DECIMAL(32,10)"
  860. }
  861. }
  862. },
  863. {
  864. "name": "比例",
  865. "code": "Ratio",
  866. "apply": {
  867. "MYSQL": {
  868. "type": "DECIMAL(4,2)"
  869. },
  870. "JAVA": {
  871. "type": "Double"
  872. },
  873. "ORACLE": {
  874. "type": "NUMBER(4,2)"
  875. },
  876. "SQLServer": {
  877. "type": "DECIMAL(4,2)"
  878. },
  879. "PostgreSQL": {
  880. "type": "DECIMAL(4,2)"
  881. }
  882. }
  883. },
  884. {
  885. "name": "整数",
  886. "code": "Integer",
  887. "apply": {
  888. "JAVA": {
  889. "type": "Integer"
  890. },
  891. "MYSQL": {
  892. "type": "INT"
  893. },
  894. "ORACLE": {
  895. "type": "INT"
  896. },
  897. "SQLServer": {
  898. "type": "INT"
  899. },
  900. "PostgreSQL": {
  901. "type": "INT"
  902. }
  903. }
  904. },
  905. {
  906. "name": "大整数",
  907. "code": "BigInt",
  908. "apply": {
  909. "MYSQL": {
  910. "type": "BIGINT"
  911. },
  912. "JAVA": {
  913. "type": "Long"
  914. },
  915. "ORACLE": {
  916. "type": "NUMBER"
  917. },
  918. "SQLServer": {
  919. "type": "BIGINT"
  920. },
  921. "PostgreSQL": {
  922. "type": "BIGINT"
  923. }
  924. }
  925. },
  926. {
  927. "name": "金额",
  928. "code": "Money",
  929. "apply": {
  930. "JAVA": {
  931. "type": "Double"
  932. },
  933. "MYSQL": {
  934. "type": "DECIMAL(32,8)"
  935. },
  936. "ORACLE": {
  937. "type": "NUMBER(32,8)"
  938. },
  939. "SQLServer": {
  940. "type": "DECIMAL(32,8)"
  941. },
  942. "PostgreSQL": {
  943. "type": "DECIMAL(32,8)"
  944. }
  945. }
  946. },
  947. {
  948. "name": "是否",
  949. "code": "YesNo",
  950. "apply": {
  951. "JAVA": {
  952. "type": "String"
  953. },
  954. "MYSQL": {
  955. "type": "VARCHAR(1)"
  956. },
  957. "ORACLE": {
  958. "type": "VARCHAR2(1)"
  959. },
  960. "SQLServer": {
  961. "type": "VARCHAR(1)"
  962. },
  963. "PostgreSQL": {
  964. "type": "VARCHAR(1)"
  965. }
  966. }
  967. },
  968. {
  969. "name": "数据字典",
  970. "code": "Dict",
  971. "apply": {
  972. "JAVA": {
  973. "type": "String"
  974. },
  975. "MYSQL": {
  976. "type": "VARCHAR(32)"
  977. },
  978. "ORACLE": {
  979. "type": "VARCHAR2(32)"
  980. },
  981. "SQLServer": {
  982. "type": "VARCHAR(32)"
  983. },
  984. "PostgreSQL": {
  985. "type": "VARCHAR(32)"
  986. }
  987. }
  988. },
  989. {
  990. "name": "日期",
  991. "code": "Date",
  992. "apply": {
  993. "JAVA": {
  994. "type": "Date"
  995. },
  996. "MYSQL": {
  997. "type": "DATE"
  998. },
  999. "ORACLE": {
  1000. "type": "DATE"
  1001. },
  1002. "SQLServer": {
  1003. "type": "DATE"
  1004. },
  1005. "PostgreSQL": {
  1006. "type": "DATE"
  1007. }
  1008. }
  1009. },
  1010. {
  1011. "name": "日期时间",
  1012. "code": "DateTime",
  1013. "apply": {
  1014. "JAVA": {
  1015. "type": "Date"
  1016. },
  1017. "MYSQL": {
  1018. "type": "DATETIME"
  1019. },
  1020. "ORACLE": {
  1021. "type": "DATE"
  1022. },
  1023. "SQLServer": {
  1024. "type": "DATE"
  1025. },
  1026. "PostgreSQL": {
  1027. "type": "DATE"
  1028. }
  1029. }
  1030. },
  1031. {
  1032. "name": "单字符",
  1033. "code": "Char",
  1034. "apply": {
  1035. "MYSQL": {
  1036. "type": "CHAR(1)"
  1037. },
  1038. "ORACLE": {
  1039. "type": "CHAR(1)"
  1040. },
  1041. "JAVA": {
  1042. "type": "String"
  1043. },
  1044. "SQLServer": {
  1045. "type": "CHAR(1)"
  1046. },
  1047. "PostgreSQL": {
  1048. "type": "CHAR(1)"
  1049. }
  1050. }
  1051. }
  1052. ],
  1053. "database": [
  1054. {
  1055. "code": "MYSQL",
  1056. "template": "DROP TABLE {{=it.entity.title}};\n$blankline\nCREATE TABLE {{=it.entity.title}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}} {{= field.pk ? 'NOT NULL' : '' }} COMMENT '{{=it.func.join(field.chnname,field.remark,';')}}' {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT = '{{=it.func.join(it.entity.chnname,it.entity.remark,';') }}'",
  1057. "fileShow": true,
  1058. "defaultDatabase": true,
  1059. "createTableTemplate": "CREATE TABLE {{=it.entity.title}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'AUTO_INCREMENT' : '' }} {{= field.defaultValue ? it.func.join('DEFAULT',field.defaultValue,' ') : '' }} COMMENT '{{=it.func.join(field.chnname,field.remark,' ')}}' {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT = '{{=it.func.join(it.entity.chnname,it.entity.remark,' ') }}'{{=it.separator}}\n$blankline\n",
  1060. "deleteTableTemplate": "DROP TABLE {{=it.entity.title}}{{=it.separator}}",
  1061. "rebuildTableTemplate": "create table PDMAN_UP_{{=it.oldEntity.title}}\nas select * from {{=it.oldEntity.title}}{{=it.separator}}\n$blankline\n\ndrop table {{=it.oldEntity.title}}{{=it.separator}}\n$blankline\n\nCREATE TABLE {{=it.newEntity.title}}(\n{{ pkList = [] ; }}\n{{~it.newEntity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}} {{= field.notNull ? 'NOT NULL' : '' }} COMMENT '{{=it.func.join(field.chnname,field.remark,';')}}' {{= index < it.newEntity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT = '{{=it.func.join(it.newEntity.chnname,it.newEntity.remark,';') }}'{{=it.separator}}\n$blankline\n\n{{ sameCols = it.func.intersect(it.newEntity.fields,it.oldEntity.fields) ;}}\ninsert into {{=it.newEntity.title}}(\n{{~sameCols:field:index}}\n {{=field.name}}{{? index<sameCols.length-1}},{{?}}\n{{~}}\n) \nselect \n{{~sameCols:field:index}}\n {{=field.name}}{{? index<sameCols.length-1}},{{?}}\n{{~}}\nfrom PDMAN_UP_{{=it.oldEntity.title}}{{=it.separator}}\n$blankline\n\ndrop table PDMAN_UP_{{=it.oldEntity.title}}{{=it.separator}}\n$blankline\n{{~it.newEntity.indexs:index}}\nALTER TABLE {{=it.newEntity.title}} ADD {{? index.isUnique}}UNIQUE{{??}}INDEX{{?}} {{=index.name}}({{=it.func.join(...index.fields,',')}}){{=it.separator}}\n{{~}}",
  1062. "createFieldTemplate": "ALTER TABLE {{=it.entity.title}} ADD COLUMN {{=it.field.name}} {{=it.field.type}} {{? it.field.notNull}}NOT NULL{{?}} {{? it.field.defaultValue}}DEFAULT {{? null==it.field.defaultValue}}NULL{{??}}'{{=it.field.defaultValue}}'{{?}}{{?}} {{? it.field.autoIncrement}}AUTO_INCREMENT{{?}} {{? it.field.pk}}PRIMARY KEY{{?}} {{? it.field.chnname}}COMMENT '{{=it.field.chnname}}'{{?}} {{? it.field.addAfter}}AFTER {{=it.field.addAfter}}{{?}}{{=it.separator}}",
  1063. "updateFieldTemplate": "ALTER TABLE {{=it.entity.title}} MODIFY COLUMN {{=it.field.name}} {{=it.field.type}} {{? it.field.notNull}}NOT NULL{{?}} {{? it.field.defaultValue}}DEFAULT {{? null==it.field.defaultValue}}NULL{{??}}'{{=it.field.defaultValue}}'{{?}}{{?}} {{? it.field.autoIncrement}}AUTO_INCREMENT{{?}} {{? it.field.chnname}}COMMENT '{{=it.field.chnname}}'{{?}}{{=it.separator}}",
  1064. "deleteFieldTemplate": "ALTER TABLE {{=it.entity.title}} DROP {{=it.field.name}}{{=it.separator}}",
  1065. "deleteIndexTemplate": "ALTER TABLE {{=it.entity.title}} DROP INDEX {{=it.index.name}}{{=it.separator}}",
  1066. "createIndexTemplate": "ALTER TABLE {{=it.entity.title}} ADD {{? it.index.isUnique}}UNIQUE{{??}}INDEX{{?}} {{=it.index.name}}({{=it.func.join(...it.index.fields,',')}}){{=it.separator}}",
  1067. "updateTableComment": "ALTER TABLE {{=it.entity.title}} COMMENT '{{=it.entity.chnname}}'{{=it.separator}}"
  1068. },
  1069. {
  1070. "code": "ORACLE",
  1071. "template": "DROP TABLE {{=it.entity.title}}{{=it.separator}}\n$blankline\nCREATE TABLE {{=it.entity.title}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}} {{= field.pk ? 'NOT NULL' : '' }} {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n){{=it.separator}}\n$blankline\nCOMMENT ON TABLE {{=it.entity.title}} IS '{{=it.func.join(it.entity.chnname,it.entity.remark,';') }}'{{=it.separator}}\n{{~it.entity.fields:field:index}}\nCOMMENT ON COLUMN {{=it.entity.title}}.{{=field.name}} IS '{{=it.func.join(field.chnname,field.remark,';')}}'{{=it.separator}}\n{{~}}",
  1072. "createTableTemplate": "CREATE TABLE {{=it.entity.title}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}}{{? field.defaultValue}} DEFAULT {{=field.defaultValue}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n){{=it.separator}}\n$blankline\n{{? it.entity.chnname || it.entity.remark}}COMMENT ON TABLE {{=it.entity.title}} IS {{? it.entity.remark}}'{{=it.entity.remark}}'{{??}}'{{=it.entity.chnname}}'{{?}}{{=it.separator}}{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.chnname || field.remark}}COMMENT ON COLUMN {{=it.entity.title}}.{{=field.name}} IS {{? field.remark}}'{{=field.remark}}'{{??}}'{{=field.chnname}}'{{?}}{{=it.separator}}{{?}}\n{{~}}",
  1073. "deleteTableTemplate": "DROP TABLE {{=it.entity.title}}{{=it.separator}}\r\n$blankline",
  1074. "rebuildTableTemplate": "CREATE TABLE PDMAN_UP_{{=it.oldEntity.title}}\nAS SELECT * FROM {{=it.oldEntity.title}}{{=it.separator}}\n$blankline\nDROP TABLE {{=it.oldEntity.title}}{{=it.separator}}\n$blankline\nCREATE TABLE {{=it.newEntity.title}}(\n{{ pkList = [] ; }}{{~it.newEntity.fields:field:index}}{{? field.pk }}{{ pkList.push(field.name) }}{{?}} {{=field.name}} {{=field.type}}{{? field.defaultValue}} DEFAULT {{=field.defaultValue}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= index < it.newEntity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}{{? pkList.length >0 }} PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}}){{?}}\n){{=it.separator}}\n$blankline\n{{? it.newEntity.chnname || it.newEntity.remark}}COMMENT ON TABLE {{=it.newEntity.title}} IS {{? it.newEntity.remark}}'{{=it.entity.remark}}'{{??}}'{{=it.newEntity.chnname}}'{{?}};{{?}}{{=it.separator}}\n{{~it.newEntity.fields:field:index}}\n{{? field.chnname || field.remark}}COMMENT ON COLUMN {{=it.newEntity.title}}.{{=field.name}} IS {{? field.remark}}'{{=field.remark}}'{{??}}'{{=field.chnname}}'{{?}};{{?}}{{=it.separator}}\n{{~}}\n{{ sameCols = it.func.intersect(it.newEntity.fields,it.oldEntity.fields) ;}}\n$blankline\nINSERT INTO {{=it.newEntity.title}}(\n{{~sameCols:field:index}} {{=field.name}}{{? index<sameCols.length-1}},{{?}}\n{{~}}) \nSELECT\n{{~sameCols:field:index}} {{=field.name}}{{? index<sameCols.length-1}},{{?}}\n{{~}}FROM PDMAN_UP_{{=it.oldEntity.title}}{{=it.separator}}\n\nDROP TABLE PDMAN_UP_{{=it.oldEntity.title}}{{=it.separator}}\n{{~it.newEntity.indexs:index}}\nCREATE{{? index.isUnique}} UNIQUE{{?}} INDEX {{=index.name}} ON {{=it.newEntity.title}}({{=it.func.join(index.fields,',')}}){{=it.separator}}\n{{~}}",
  1075. "createFieldTemplate": "ALTER TABLE {{=it.entity.title}} ADD({{=it.field.name}} {{=it.field.type}}{{? it.field.defaultValue}} DEFAULT {{=it.field.defaultValue}}{{?}}{{? it.field.notNull}} NOT NULL{{?}}){{=it.separator}}\r\n{{? it.field.chnname || it.field.remark}}COMMENT ON COLUMN {{=it.entity.title}}.{{=it.field.name}} IS {{? it.field.remark}}'{{=it.field.remark}}'{{??}}'{{=it.field.chnname}}'{{?}}{{=it.separator}}{{?}}\r\n$blankline",
  1076. "updateFieldTemplate": "ALTER TABLE {{=it.entity.title}} MODIFY({{=it.field.name}} {{=it.field.type}}{{? it.field.defaultValue}} DEFAULT {{=it.field.defaultValue}}{{?}}{{? it.field.notNull}} NOT NULL{{?}}){{=it.separator}}\r\n{{? it.field.chnname || it.field.remark}}COMMENT ON COLUMN {{=it.entity.title}}.{{=it.field.name}} IS {{? it.field.remark}}'{{=it.field.remark}}'{{??}}'{{=it.field.chnname}}'{{?}}{{=it.separator}}{{=it.separator}}{{?}}\r\n$blankline",
  1077. "deleteFieldTemplate": "ALTER TABLE {{=it.entity.title}} DROP({{=it.field.name}}){{=it.separator}}\r\n$blankline",
  1078. "deleteIndexTemplate": "DROP INDEX {{=it.entity.title}}.{{=it.index.name}}{{=it.separator}}\r\n$blankline",
  1079. "createIndexTemplate": "CREATE{{? it.index.isUnique}} UNIQUE{{?}} INDEX {{=it.index.name}} ON {{=it.entity.title}}({{=it.func.join(it.index.fields,',')}}){{=it.separator}}\r\n$blankline",
  1080. "updateTableComment": "{{? it.entity.chnname || it.entity.remark}}COMMENT ON TABLE {{=it.entity.title}} IS {{? it.entity.remark}}'{{=it.entity.remark}}'{{??}}'{{=it.entity.chnname}}'{{?}}{{=it.separator}}{{?}}\r\n$blankline"
  1081. },
  1082. {
  1083. "code": "SQLServer",
  1084. "createTableTemplate": "CREATE TABLE {{=it.entity.title}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}} {{= field.notNull ? 'NOT NULL' : '' }} {{= field.autoIncrement ? 'IDENTITY(1,1)' : '' }} {{= field.defaultValue ? it.func.join('DEFAULT',field.defaultValue,' ') : '' }} {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n CONSTRAINT PK_{{=it.entity.title}} PRIMARY KEY CLUSTERED ({{~pkList:pkName:i}}{{= pkName }} ASC {{= i<pkList.length-1 ? ',' : '' }}{{~}}) ON [PRIMARY] \n{{?}}\n){{=it.separator}}\n\n$blankline\nEXECUTE sp_addextendedproperty N'MS_Description', '{{= it.entity.chnname || it.entity.remark}}', N'user', N'dbo', N'table', N'{{=it.entity.title}}', NULL, NULL{{=it.separator}}\n{{~it.entity.fields:field:index}}\n{{? field.chnname || field.remark}}EXECUTE sp_addextendedproperty N'MS_Description', {{? field.remark}}'{{=field.remark}}'{{??}}'{{=field.chnname}}'{{?}}, N'user', N'dbo', N'table', N'{{=it.entity.title}}', N'column', N'{{=field.name}}'{{=it.separator}}{{?}}\n{{~}}\n",
  1085. "deleteTableTemplate": "",
  1086. "rebuildTableTemplate": "",
  1087. "createFieldTemplate": "",
  1088. "updateFieldTemplate": "",
  1089. "deleteFieldTemplate": "",
  1090. "deleteIndexTemplate": "",
  1091. "createIndexTemplate": "",
  1092. "updateTableComment": ""
  1093. },
  1094. {
  1095. "code": "PostgreSQL",
  1096. "template": "DROP TABLE {{=it.entity.title}};\n$blankline\nCREATE TABLE {{=it.entity.title}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}} {{= field.pk ? 'NOT NULL' : '' }} COMMENT '{{=it.func.join(field.chnname,field.remark,';')}}' {{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT = '{{=it.func.join(it.entity.chnname,it.entity.remark,';') }}'",
  1097. "createTableTemplate": "CREATE TABLE {{=it.entity.title}}(\n{{ pkList = [] ; }}\n{{~it.entity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}}{{? field.defaultValue}} DEFAULT {{=field.defaultValue}}{{?}}{{= field.notNull ? ' NOT NULL' : '' }}{{= index < it.entity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n){{=it.separator}}\n$blankline\n{{? it.entity.chnname || it.entity.remark}}COMMENT ON TABLE {{=it.entity.title}} IS {{? it.entity.remark}}'{{=it.entity.remark}}'{{??}}'{{=it.entity.chnname}}'{{?}}{{=it.separator}}{{?}}\n{{~it.entity.fields:field:index}}\n{{? field.chnname || field.remark}}COMMENT ON COLUMN {{=it.entity.title}}.{{=field.name}} IS {{? field.remark}}'{{=field.remark}}'{{??}}'{{=field.chnname}}'{{?}}{{=it.separator}}{{?}}\n{{~}}",
  1098. "deleteTableTemplate": "DROP TABLE {{=it.entity.title}}{{=it.separator}}",
  1099. "rebuildTableTemplate": "create table PDMAN_UP_{{=it.oldEntity.title}}\nas select * from {{=it.oldEntity.title}}{{=it.separator}}\n$blankline\n\ndrop table {{=it.oldEntity.title}}{{=it.separator}}\n$blankline\n\nCREATE TABLE {{=it.newEntity.title}}(\n{{ pkList = [] ; }}\n{{~it.newEntity.fields:field:index}}\n {{? field.pk }}{{ pkList.push(field.name) }}{{?}}\n {{=field.name}} {{=field.type}} {{= field.notNull ? 'NOT NULL' : '' }} COMMENT '{{=it.func.join(field.chnname,field.remark,';')}}' {{= index < it.newEntity.fields.length-1 ? ',' : ( pkList.length>0 ? ',' :'' ) }}\n{{~}}\n{{? pkList.length >0 }}\n PRIMARY KEY ({{~pkList:pkName:i}}{{= pkName }}{{= i<pkList.length-1 ? ',' : '' }}{{~}})\n{{?}}\n) COMMENT = '{{=it.func.join(it.newEntity.chnname,it.newEntity.remark,';') }}'{{=it.separator}}\n$blankline\n\n{{ sameCols = it.func.intersect(it.newEntity.fields,it.oldEntity.fields) ;}}\ninsert into {{=it.newEntity.title}}(\n{{~sameCols:field:index}}\n {{=field.name}}{{? index<sameCols.length-1}},{{?}}\n{{~}}\n) \nselect \n{{~sameCols:field:index}}\n {{=field.name}}{{? index<sameCols.length-1}},{{?}}\n{{~}}\nfrom PDMAN_UP_{{=it.oldEntity.title}}{{=it.separator}}\n$blankline\n\ndrop table PDMAN_UP_{{=it.oldEntity.title}}{{=it.separator}}",
  1100. "createFieldTemplate": "ALTER TABLE {{=it.entity.title}} ADD COLUMN {{=it.field.name}} {{=it.field.type}} {{? it.field.notNull}}NOT NULL{{?}} {{? it.field.defaultValue}}DEFAULT {{? null==it.field.defaultValue}}NULL{{??}}'{{=it.field.defaultValue}}'{{?}}{{?}} {{? it.field.autoIncrement}}AUTO_INCREMENT{{?}} {{? it.field.pk}}PRIMARY KEY{{?}} {{? it.field.chnname}}COMMENT '{{=it.field.chnname}}'{{?}} {{? it.field.addAfter}}AFTER {{=it.field.addAfter}}{{?}}{{=it.separator}}",
  1101. "updateFieldTemplate": "ALTER TABLE {{=it.entity.title}} MODIFY COLUMN {{=it.field.name}} {{=it.field.type}} {{? it.field.notNull}}NOT NULL{{?}} {{? it.field.defaultValue}}DEFAULT {{? null==it.field.defaultValue}}NULL{{??}}'{{=it.field.defaultValue}}'{{?}}{{?}} {{? it.field.autoIncrement}}AUTO_INCREMENT{{?}} {{? it.field.chnname}}COMMENT '{{=it.field.chnname}}'{{?}}{{=it.separator}}",
  1102. "deleteFieldTemplate": "ALTER TABLE {{=it.entity.title}} DROP {{=it.field.name}}{{=it.separator}}",
  1103. "deleteIndexTemplate": "ALTER TABLE {{=it.entity.title}} DROP INDEX {{=it.index.name}}{{=it.separator}}",
  1104. "createIndexTemplate": "ALTER TABLE {{=it.entity.title}} ADD {{? it.index.isUnique}}UNIQUE{{??}}INDEX{{?}} {{=it.index.name}}({{=it.func.join(...it.index.fields,',')}}){{=it.separator}}",
  1105. "updateTableComment": "ALTER TABLE {{=it.entity.title}} COMMENT '{{=it.entity.chnname}}'{{=it.separator}}"
  1106. },
  1107. {
  1108. "code": "JAVA",
  1109. "template": "package group.rober.pdman.{{=it.module.name}}.entity;\n$blankline\nimport javax.persistence.*;\nimport java.io.Serializable;\nimport java.util.Date;\n$blankline\n$blankline\n\n/** {{=it.entity.chnname}} */\n@Table(name=\"{{=it.entity.title}}\")\npublic class {{=it.func.camel(it.entity.title,true) }} implements Serializable,Cloneable{\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.chnname,field.remark,';')}} */\n {{? field.pk }}\n @Id\n @GeneratedValue\n {{?}}\n private {{=field.type}} {{=it.func.camel(field.name,false)}} ;\n{{~}}\n$blankline\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.chnname,field.remark,';')}} */\n public {{=field.type}} get{{=it.func.camel(field.name,true)}}(){\n return this.{{=it.func.camel(field.name,false)}};\n }\n /** {{=it.func.join(field.chnname,field.remark,';')}} */\n public void set{{=it.func.camel(field.name,true)}}({{=field.type}} {{= it.func.camel(field.name,false) }}){\n this.{{=it.func.camel(field.name,false)}} = {{= it.func.camel(field.name,false) }};\n }\n{{~}}\n}",
  1110. "createTableTemplate": "package group.rober.pdman.{{=it.module.name}}.entity;\n$blankline\nimport javax.persistence.*;\nimport java.io.Serializable;\nimport java.util.Date;\n$blankline\n$blankline\n@Table(name=\"{{=it.entity.title}}\")\npublic class {{=it.func.camel(it.entity.title,true) }} implements Serializable,Cloneable{\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.chnname,field.remark,';')}} */\n {{? field.pk }}\n @Id\n @GeneratedValue\n {{?}}\n private {{=field.type}} {{=it.func.camel(field.name,false)}} ;\n{{~}}\n$blankline\n{{~it.entity.fields:field:index}}\n /** {{=it.func.join(field.chnname,field.remark,';')}} */\n public {{=field.type}} get{{=it.func.camel(field.name,true)}}(){\n return this.{{=it.func.camel(field.name,false)}};\n }\n /** {{=it.func.join(field.chnname,field.remark,';')}} */\n public void set{{=it.func.camel(field.name,true)}}({{=field.type}} {{= it.func.camel(field.name,false) }}){\n this.{{=it.func.camel(field.name,false)}} = {{= it.func.camel(field.name,false) }};\n }\n{{~}}\n}",
  1111. "deleteTableTemplate": "",
  1112. "rebuildTableTemplate": "",
  1113. "createFieldTemplate": "",
  1114. "updateFieldTemplate": "",
  1115. "deleteFieldTemplate": "",
  1116. "deleteIndexTemplate": "",
  1117. "createIndexTemplate": "",
  1118. "updateTableComment": ""
  1119. },
  1120. {
  1121. "code": "go",
  1122. "createTableTemplate": "package {{=it.func.lowerCase(it.module.name,true) }}\n$blankline\nimport (\n \"dashoo.cn/micro_libary/request\"\n \"dashoo.cn/micro_libary/response\"\n \"dashoo.cn/modi_webapi/app/model/{{=it.func.lowerCase(it.module.name,true) }}/{{=it.func.lowerCase(it.entity.title,true) }}_model\"\n service \"dashoo.cn/modi_webapi/app/service/{{=it.func.lowerCase(it.module.name,true) }}\"\n \"github.com/gogf/gf/net/ghttp\"\n \"github.com/gogf/gf/os/glog\"\n)\n$blankline\n// {{=it.entity.chnname}}Controller\ntype {{=it.func.camel(it.entity.title,true) }}Controller struct {\n}\n$blankline\n// GetDetailById 根据id获取{{=it.entity.chnname}}详情信息\nfunc (c *{{=it.func.camel(it.entity.title,true) }}Controller) GetDetailById(r *ghttp.Request) {\n // tenant 租户模式\n tenant := r.Header.Get(\"Tenant\")\n // 主键id\n {{=it.func.camel(it.entity.title,true) }}Id := r.GetInt(\"id\")\n glog.Info({{=it.func.camel(it.entity.title,true) }}Id)\n // 初始化service\n servcie, err := service.New{{=it.func.camel(it.entity.title,true) }}Service(tenant)\n if err != nil {\n response.Json(r, 1, err.Error())\n }\n // 调用service方法\n if {{=it.func.lowerCase(it.entity.title,true) }}, err := servcie.Get{{=it.func.camel(it.entity.title,true) }}ByID({{=it.func.camel(it.entity.title,true) }}Id); err != nil {\n response.Json(r, 1, err.Error())\n } else {\n response.Json(r, 0, \"ok\", {{=it.func.lowerCase(it.entity.title,true) }})\n }\n\n}\n$blankline\n// Save{{=it.func.camel(it.entity.title,true) }} 保存{{=it.entity.chnname}}信息\nfunc (c *{{=it.func.camel(it.entity.title,true) }}Controller) Save(r *ghttp.Request) {\n // tenant 租户模式\n tenant := r.Header.Get(\"Tenant\")\n var addOrUpdateReq *{{=it.func.lowerCase(it.entity.title,true) }}.AddOrUpdateReq\n // 赋值并// 校验参数\n if err := r.Parse(&addOrUpdateReq); err != nil {\n response.Json(r, -1, err.Error())\n }\n\n // 初始化{{=it.entity.chnname}}service\n servcie, err := service.New{{=it.func.camel(it.entity.title,true) }}Service(tenant)\n if err != nil {\n response.Json(r, 1, err.Error())\n }\n // 判断是新增还是删除,获取的id为空新增,不为空则更新\n if addOrUpdateReq.Id > 0 {\n if new{{=it.func.camel(it.entity.title,true) }}, err := servcie.Update(addOrUpdateReq); err != nil {\n response.Json(r, 1, err.Error())\n } else {\n response.Json(r, 0, \"更新成功\", new{{=it.func.camel(it.entity.title,true) }})\n }\n } else {\n addOrUpdateReq.Id = 0\n if newId, err := servcie.Add(addOrUpdateReq); err != nil {\n response.Json(r, 1, err.Error())\n } else {\n response.Json(r, 0, \"新建成功\", newId)\n }\n }\n\n}\n$blankline\n// Delete{{=it.func.camel(it.entity.title,true) }}ById 删除{{=it.entity.chnname}}信息,更新{{=it.entity.chnname}}删除状态isDel=1\nfunc (c *{{=it.func.camel(it.entity.title,true) }}Controller) Delete{{=it.func.camel(it.entity.title,true) }}ById(r *ghttp.Request) {\n\t// tenant 租户模式\n\ttenant := r.Header.Get(\"Tenant\")\n\tIds := r.GetInts(\"ids\")\n\n\t// 初始化{{=it.entity.chnname}}service\n\tservcie, err := service.New{{=it.func.camel(it.entity.title,true) }}Service(tenant)\n\tif err != nil {\n\t\tresponse.Json(r, 1, err.Error())\n\t}\n\tdelReq := new({{=it.func.lowerCase(it.entity.title,true) }}.DeleteReq)\n\tdelReq.Ids = Ids\n\tdelReq.IsDel = 1\n\tif err := servcie.Delete(delReq); err != nil {\n\t\tresponse.Json(r, 1, err.Error())\n\t} else {\n\t\tresponse.Json(r, 0, \"删除成功\")\n\t}\n}\n$blankline\n// GetPageList 分页查询{{=it.entity.chnname}}列表信息\nfunc (c *{{=it.func.camel(it.entity.title,true) }}Controller) GetPageList(r *ghttp.Request) {\n\t// tenant 租户模式\n\ttenant := r.Header.Get(\"Tenant\")\n\tpage := request.GetPageInfo(r)\n\t// 初始化{{=it.entity.chnname}}service\n\tservcie, err := service.New{{=it.func.camel(it.entity.title,true) }}Service(tenant)\n\tif err != nil {\n\t\tresponse.Json(r, 1, err.Error())\n\t}\n\tglog.Info(page)\n\tpageInfo := {{=it.func.lowerCase(it.entity.title,true) }}.PageInfo{\n\t\tCurrent: page.Current,\n\t\tPagesSize: page.Size,\n\t}\n\tselectPageReq := {{=it.func.lowerCase(it.entity.title,true) }}.SelectPageReq{\n\t\tTenant: tenant,\n\t\tName: \"\",\n\t\tPage: &pageInfo,\n\t\t// 排序\n\t\tProp: r.GetString(\"prop\"),\n\t\tOrder: r.GetString(\"order\"),\n\t}\n\tif name := r.GetString(\"name\"); name != \"\" {\n\t\tselectPageReq.Name = name\n\t}\n\t// 分页查询{{=it.entity.chnname}}列表\n\tif {{=it.func.lowerCase(it.entity.title,true) }}List, total, err := servcie.GetPageList(&selectPageReq); err != nil {\n\t\tresponse.Json(r, -1, err.Error())\n\t} else {\n\t\tvar records response.PagedRecords\n\t\trecords.Current = page.Current\n\t\trecords.Size = page.Size\n\t\tif total > 0 {\n\t\t\trecords.Total = total\n\t\t\trecords.Records = {{=it.func.lowerCase(it.entity.title,true) }}List\n\t\t}\n\t\tresponse.Json(r, 0, \"ok\", records)\n\t}\n}",
  1123. "deleteTableTemplate": "",
  1124. "rebuildTableTemplate": "",
  1125. "createFieldTemplate": "",
  1126. "updateFieldTemplate": "",
  1127. "deleteFieldTemplate": "",
  1128. "deleteIndexTemplate": "",
  1129. "createIndexTemplate": "",
  1130. "updateTableComment": ""
  1131. }
  1132. ]
  1133. },
  1134. "profile": {
  1135. "defaultFields": [
  1136. {
  1137. "name": "ID",
  1138. "type": "Integer",
  1139. "remark": "",
  1140. "chnname": "主键",
  1141. "pk": true,
  1142. "notNull": true,
  1143. "autoIncrement": true
  1144. },
  1145. {
  1146. "name": "CREATED_BY",
  1147. "type": "IdOrKey",
  1148. "remark": "",
  1149. "chnname": "创建人"
  1150. },
  1151. {
  1152. "name": "CREATED_TIME",
  1153. "type": "DateTime",
  1154. "remark": "",
  1155. "chnname": "创建时间"
  1156. },
  1157. {
  1158. "name": "UPDATED_BY",
  1159. "type": "IdOrKey",
  1160. "remark": "",
  1161. "chnname": "更新人"
  1162. },
  1163. {
  1164. "name": "UPDATED_TIME",
  1165. "type": "DateTime",
  1166. "remark": "",
  1167. "chnname": "更新时间"
  1168. },
  1169. {
  1170. "name": "IS_DEL",
  1171. "type": "Integer",
  1172. "remark": "",
  1173. "chnname": "删除标志",
  1174. "notNull": true
  1175. }
  1176. ],
  1177. "defaultFieldsType": "1",
  1178. "javaConfig": {
  1179. "JAVA_HOME": "C:\\Program Files\\Java\\jdk1.8.0_181",
  1180. "DB_DRIVE": []
  1181. },
  1182. "sqlConfig": ";",
  1183. "dbs": [
  1184. {
  1185. "name": "内蒙大学lims",
  1186. "defaultDB": true,
  1187. "properties": {
  1188. "driver_class_name": "com.mysql.jdbc.Driver",
  1189. "url": "jdbc:mysql://rm-8vbk16zx2rbfu6jt6uo.mysql.zhangbei.rds.aliyuncs.com:3306/l_lims?characterEncoding=UTF-8&useSSL=false&useUnicode=true&serverTimezone=UTC",
  1190. "password": "TmBT65FNAAqJoBMl",
  1191. "username": "l_lims_u"
  1192. }
  1193. }
  1194. ],
  1195. "wordTemplateConfig": ""
  1196. }
  1197. }