zhongyanggongguan.pdman.json 53KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527
  1. {
  2. "modules": [
  3. {
  4. "name": "system",
  5. "chnname": "系统",
  6. "entities": [
  7. {
  8. "title": "sys_user",
  9. "fields": [
  10. {
  11. "name": "user_id",
  12. "type": "LongKey",
  13. "remark": "",
  14. "chnname": "用户ID",
  15. "pk": true,
  16. "notNull": true
  17. },
  18. {
  19. "name": "name",
  20. "type": "Name",
  21. "remark": "",
  22. "chnname": "姓名"
  23. },
  24. {
  25. "name": "avatar",
  26. "type": "LongText",
  27. "remark": "",
  28. "chnname": "头像"
  29. },
  30. {
  31. "name": "phone",
  32. "type": "DefaultString",
  33. "remark": "",
  34. "chnname": "手机号"
  35. },
  36. {
  37. "name": "type_id",
  38. "type": "DefaultString",
  39. "remark": "",
  40. "chnname": "类型"
  41. },
  42. {
  43. "name": "create_date",
  44. "type": "DateTime",
  45. "remark": "",
  46. "chnname": "创建时间",
  47. "notNull": true,
  48. "defaultValue": "CURRENT_TIMESTAMP"
  49. },
  50. {
  51. "name": "status",
  52. "type": "TinyInt",
  53. "remark": "",
  54. "chnname": "状态",
  55. "notNull": true,
  56. "defaultValue": "1"
  57. }
  58. ],
  59. "indexs": [],
  60. "headers": [
  61. {
  62. "fieldName": "chnname",
  63. "relationNoShow": false
  64. },
  65. {
  66. "fieldName": "name",
  67. "relationNoShow": false
  68. },
  69. {
  70. "fieldName": "type",
  71. "relationNoShow": false
  72. },
  73. {
  74. "fieldName": "dataType",
  75. "relationNoShow": true
  76. },
  77. {
  78. "fieldName": "remark",
  79. "relationNoShow": true
  80. },
  81. {
  82. "fieldName": "pk",
  83. "relationNoShow": false
  84. },
  85. {
  86. "fieldName": "notNull",
  87. "relationNoShow": true
  88. },
  89. {
  90. "fieldName": "autoIncrement",
  91. "relationNoShow": true
  92. },
  93. {
  94. "fieldName": "defaultValue",
  95. "relationNoShow": true
  96. },
  97. {
  98. "fieldName": "relationNoShow",
  99. "relationNoShow": true
  100. },
  101. {
  102. "fieldName": "uiHint",
  103. "relationNoShow": true
  104. }
  105. ],
  106. "chnname": "系统用户"
  107. },
  108. {
  109. "title": "sys_user_login",
  110. "fields": [
  111. {
  112. "name": "user_id",
  113. "type": "LongKey",
  114. "remark": "来源sys_user",
  115. "chnname": "用户ID",
  116. "notNull": true,
  117. "pk": true
  118. },
  119. {
  120. "name": "login_id",
  121. "type": "ShortString",
  122. "remark": "",
  123. "chnname": "账号"
  124. },
  125. {
  126. "name": "password",
  127. "type": "ShortString",
  128. "remark": "",
  129. "chnname": "密码"
  130. },
  131. {
  132. "name": "create_date",
  133. "type": "DateTime",
  134. "remark": "",
  135. "chnname": "创建时间",
  136. "notNull": true,
  137. "defaultValue": "CURRENT_TIMESTAMP"
  138. },
  139. {
  140. "name": "status",
  141. "type": "TinyInt",
  142. "remark": "",
  143. "chnname": "状态",
  144. "notNull": true,
  145. "defaultValue": "1"
  146. }
  147. ],
  148. "indexs": [],
  149. "headers": [
  150. {
  151. "fieldName": "chnname",
  152. "relationNoShow": false
  153. },
  154. {
  155. "fieldName": "name",
  156. "relationNoShow": false
  157. },
  158. {
  159. "fieldName": "type",
  160. "relationNoShow": false
  161. },
  162. {
  163. "fieldName": "dataType",
  164. "relationNoShow": true
  165. },
  166. {
  167. "fieldName": "remark",
  168. "relationNoShow": true
  169. },
  170. {
  171. "fieldName": "pk",
  172. "relationNoShow": false
  173. },
  174. {
  175. "fieldName": "notNull",
  176. "relationNoShow": true
  177. },
  178. {
  179. "fieldName": "autoIncrement",
  180. "relationNoShow": true
  181. },
  182. {
  183. "fieldName": "defaultValue",
  184. "relationNoShow": true
  185. },
  186. {
  187. "fieldName": "relationNoShow",
  188. "relationNoShow": true
  189. },
  190. {
  191. "fieldName": "uiHint",
  192. "relationNoShow": true
  193. }
  194. ],
  195. "chnname": "用户登录表"
  196. },
  197. {
  198. "title": "td_channel",
  199. "fields": [
  200. {
  201. "name": "channel_id",
  202. "type": "LongKey",
  203. "remark": "",
  204. "chnname": "渠道ID",
  205. "pk": true,
  206. "notNull": true
  207. },
  208. {
  209. "name": "name",
  210. "type": "Name",
  211. "remark": "",
  212. "chnname": "渠道名称"
  213. },
  214. {
  215. "name": "sort_no",
  216. "type": "TinyInt",
  217. "remark": "",
  218. "chnname": "排序",
  219. "notNull": true,
  220. "defaultValue": "0"
  221. },
  222. {
  223. "name": "create_date",
  224. "type": "DateTime",
  225. "remark": "",
  226. "chnname": "创建时间",
  227. "notNull": true,
  228. "defaultValue": "CURRENT_TIMESTAMP"
  229. },
  230. {
  231. "name": "status",
  232. "type": "TinyInt",
  233. "remark": "",
  234. "chnname": "状态",
  235. "notNull": true,
  236. "defaultValue": "1"
  237. }
  238. ],
  239. "indexs": [],
  240. "headers": [
  241. {
  242. "fieldName": "chnname",
  243. "relationNoShow": false
  244. },
  245. {
  246. "fieldName": "name",
  247. "relationNoShow": false
  248. },
  249. {
  250. "fieldName": "type",
  251. "relationNoShow": false
  252. },
  253. {
  254. "fieldName": "dataType",
  255. "relationNoShow": true
  256. },
  257. {
  258. "fieldName": "remark",
  259. "relationNoShow": true
  260. },
  261. {
  262. "fieldName": "pk",
  263. "relationNoShow": false
  264. },
  265. {
  266. "fieldName": "notNull",
  267. "relationNoShow": true
  268. },
  269. {
  270. "fieldName": "autoIncrement",
  271. "relationNoShow": true
  272. },
  273. {
  274. "fieldName": "defaultValue",
  275. "relationNoShow": true
  276. },
  277. {
  278. "fieldName": "relationNoShow",
  279. "relationNoShow": true
  280. },
  281. {
  282. "fieldName": "uiHint",
  283. "relationNoShow": true
  284. }
  285. ],
  286. "chnname": "客户渠道"
  287. },
  288. {
  289. "title": "td_user_type",
  290. "fields": [
  291. {
  292. "name": "type_id",
  293. "type": "LongKey",
  294. "remark": "",
  295. "chnname": "类型ID",
  296. "notNull": true,
  297. "pk": true
  298. },
  299. {
  300. "name": "name",
  301. "type": "Name",
  302. "remark": "",
  303. "chnname": "类型名称"
  304. },
  305. {
  306. "name": "sort_no",
  307. "type": "TinyInt",
  308. "remark": "",
  309. "chnname": "排序",
  310. "notNull": true,
  311. "defaultValue": "0"
  312. },
  313. {
  314. "name": "status",
  315. "type": "TinyInt",
  316. "remark": "",
  317. "chnname": "状态",
  318. "notNull": true,
  319. "defaultValue": "1"
  320. },
  321. {
  322. "name": "create_date",
  323. "type": "DateTime",
  324. "remark": "",
  325. "chnname": "创建时间",
  326. "notNull": true,
  327. "defaultValue": "CURRENT_TIMESTAMP"
  328. }
  329. ],
  330. "indexs": [],
  331. "headers": [
  332. {
  333. "fieldName": "chnname",
  334. "relationNoShow": false
  335. },
  336. {
  337. "fieldName": "name",
  338. "relationNoShow": false
  339. },
  340. {
  341. "fieldName": "type",
  342. "relationNoShow": false
  343. },
  344. {
  345. "fieldName": "dataType",
  346. "relationNoShow": true
  347. },
  348. {
  349. "fieldName": "remark",
  350. "relationNoShow": true
  351. },
  352. {
  353. "fieldName": "pk",
  354. "relationNoShow": false
  355. },
  356. {
  357. "fieldName": "notNull",
  358. "relationNoShow": true
  359. },
  360. {
  361. "fieldName": "autoIncrement",
  362. "relationNoShow": true
  363. },
  364. {
  365. "fieldName": "defaultValue",
  366. "relationNoShow": true
  367. },
  368. {
  369. "fieldName": "relationNoShow",
  370. "relationNoShow": true
  371. },
  372. {
  373. "fieldName": "uiHint",
  374. "relationNoShow": true
  375. }
  376. ],
  377. "chnname": "用户类型"
  378. }
  379. ],
  380. "graphCanvas": {
  381. "edges": [],
  382. "nodes": []
  383. },
  384. "associations": []
  385. },
  386. {
  387. "name": "customer",
  388. "chnname": "客户",
  389. "entities": [
  390. {
  391. "title": "ta_customer",
  392. "fields": [
  393. {
  394. "name": "customer_id",
  395. "type": "LongKey",
  396. "remark": "",
  397. "chnname": "客户ID",
  398. "pk": true,
  399. "notNull": true
  400. },
  401. {
  402. "name": "name",
  403. "type": "Name",
  404. "remark": "",
  405. "chnname": "姓名"
  406. },
  407. {
  408. "name": "id_card",
  409. "type": "DefaultString",
  410. "remark": "",
  411. "chnname": "身份证号码"
  412. },
  413. {
  414. "name": "phone",
  415. "type": "DefaultString",
  416. "remark": "",
  417. "chnname": "手机号码"
  418. },
  419. {
  420. "name": "person_id",
  421. "type": "LongKey",
  422. "remark": "",
  423. "chnname": "关联用户"
  424. },
  425. {
  426. "name": "status",
  427. "type": "TinyInt",
  428. "remark": "",
  429. "chnname": "状态",
  430. "notNull": true,
  431. "defaultValue": "1"
  432. },
  433. {
  434. "name": "create_date",
  435. "type": "DateTime",
  436. "remark": "",
  437. "chnname": "创建时间",
  438. "notNull": true,
  439. "defaultValue": "CURRENT_TIMESTAMP"
  440. }
  441. ],
  442. "indexs": [],
  443. "headers": [
  444. {
  445. "fieldName": "chnname",
  446. "relationNoShow": false
  447. },
  448. {
  449. "fieldName": "name",
  450. "relationNoShow": false
  451. },
  452. {
  453. "fieldName": "type",
  454. "relationNoShow": false
  455. },
  456. {
  457. "fieldName": "dataType",
  458. "relationNoShow": true
  459. },
  460. {
  461. "fieldName": "remark",
  462. "relationNoShow": true
  463. },
  464. {
  465. "fieldName": "pk",
  466. "relationNoShow": false
  467. },
  468. {
  469. "fieldName": "notNull",
  470. "relationNoShow": true
  471. },
  472. {
  473. "fieldName": "autoIncrement",
  474. "relationNoShow": true
  475. },
  476. {
  477. "fieldName": "defaultValue",
  478. "relationNoShow": true
  479. },
  480. {
  481. "fieldName": "relationNoShow",
  482. "relationNoShow": true
  483. },
  484. {
  485. "fieldName": "uiHint",
  486. "relationNoShow": true
  487. }
  488. ],
  489. "chnname": "客户表"
  490. },
  491. {
  492. "title": "ta_customer_report",
  493. "fields": [
  494. {
  495. "name": "serial_no",
  496. "type": "Integer",
  497. "remark": "",
  498. "chnname": "序号",
  499. "notNull": true,
  500. "pk": true,
  501. "autoIncrement": true
  502. },
  503. {
  504. "name": "customer_id",
  505. "type": "LongKey",
  506. "remark": "",
  507. "chnname": "客户ID",
  508. "notNull": true
  509. },
  510. {
  511. "name": "channel_id",
  512. "type": "DefaultString",
  513. "remark": "",
  514. "chnname": "拓客渠道"
  515. },
  516. {
  517. "name": "channel_name",
  518. "type": "Name",
  519. "remark": "",
  520. "chnname": "渠道名称"
  521. },
  522. {
  523. "name": "customer_desc",
  524. "type": "LongText",
  525. "remark": "",
  526. "chnname": "客户描摹"
  527. },
  528. {
  529. "name": "lock_to",
  530. "type": "DateTime",
  531. "remark": "",
  532. "chnname": "锁定日期"
  533. },
  534. {
  535. "name": "report_user",
  536. "type": "LongKey",
  537. "remark": "",
  538. "chnname": "报备人"
  539. },
  540. {
  541. "name": "report_user_name",
  542. "type": "Name",
  543. "remark": "",
  544. "chnname": "报备人名称"
  545. },
  546. {
  547. "name": "create_date",
  548. "type": "DateTime",
  549. "remark": "",
  550. "chnname": "报备时间",
  551. "notNull": true,
  552. "defaultValue": "CURRENT_TIMESTAMP"
  553. },
  554. {
  555. "name": "status",
  556. "type": "TinyInt",
  557. "remark": "",
  558. "chnname": "状态",
  559. "notNull": true,
  560. "defaultValue": "1"
  561. }
  562. ],
  563. "indexs": [],
  564. "headers": [
  565. {
  566. "fieldName": "chnname",
  567. "relationNoShow": false
  568. },
  569. {
  570. "fieldName": "name",
  571. "relationNoShow": false
  572. },
  573. {
  574. "fieldName": "type",
  575. "relationNoShow": false
  576. },
  577. {
  578. "fieldName": "dataType",
  579. "relationNoShow": true
  580. },
  581. {
  582. "fieldName": "remark",
  583. "relationNoShow": true
  584. },
  585. {
  586. "fieldName": "pk",
  587. "relationNoShow": false
  588. },
  589. {
  590. "fieldName": "notNull",
  591. "relationNoShow": true
  592. },
  593. {
  594. "fieldName": "autoIncrement",
  595. "relationNoShow": true
  596. },
  597. {
  598. "fieldName": "defaultValue",
  599. "relationNoShow": true
  600. },
  601. {
  602. "fieldName": "relationNoShow",
  603. "relationNoShow": true
  604. },
  605. {
  606. "fieldName": "uiHint",
  607. "relationNoShow": true
  608. }
  609. ],
  610. "chnname": "客户报备"
  611. },
  612. {
  613. "title": "ta_customer_track",
  614. "fields": [
  615. {
  616. "name": "serial_no",
  617. "type": "Integer",
  618. "remark": "",
  619. "chnname": "序号",
  620. "pk": true,
  621. "notNull": true,
  622. "autoIncrement": true
  623. },
  624. {
  625. "name": "customer_id",
  626. "type": "LongKey",
  627. "remark": "",
  628. "chnname": "客户ID",
  629. "notNull": true
  630. },
  631. {
  632. "name": "track_user",
  633. "type": "LongKey",
  634. "remark": "",
  635. "chnname": "跟踪人"
  636. },
  637. {
  638. "name": "track_user_name",
  639. "type": "Name",
  640. "remark": "",
  641. "chnname": "跟踪人名称"
  642. },
  643. {
  644. "name": "track_content",
  645. "type": "LongText",
  646. "remark": "",
  647. "chnname": "跟踪记录"
  648. },
  649. {
  650. "name": "create_date",
  651. "type": "DateTime",
  652. "remark": "",
  653. "chnname": "跟踪时间",
  654. "notNull": true,
  655. "defaultValue": "CURRENT_TIMESTAMP"
  656. },
  657. {
  658. "name": "status",
  659. "type": "DefaultString",
  660. "remark": "",
  661. "chnname": "跟踪状态",
  662. "notNull": true,
  663. "defaultValue": "1"
  664. }
  665. ],
  666. "indexs": [],
  667. "headers": [
  668. {
  669. "fieldName": "chnname",
  670. "relationNoShow": false
  671. },
  672. {
  673. "fieldName": "name",
  674. "relationNoShow": false
  675. },
  676. {
  677. "fieldName": "type",
  678. "relationNoShow": false
  679. },
  680. {
  681. "fieldName": "dataType",
  682. "relationNoShow": true
  683. },
  684. {
  685. "fieldName": "remark",
  686. "relationNoShow": true
  687. },
  688. {
  689. "fieldName": "pk",
  690. "relationNoShow": false
  691. },
  692. {
  693. "fieldName": "notNull",
  694. "relationNoShow": true
  695. },
  696. {
  697. "fieldName": "autoIncrement",
  698. "relationNoShow": true
  699. },
  700. {
  701. "fieldName": "defaultValue",
  702. "relationNoShow": true
  703. },
  704. {
  705. "fieldName": "relationNoShow",
  706. "relationNoShow": true
  707. },
  708. {
  709. "fieldName": "uiHint",
  710. "relationNoShow": true
  711. }
  712. ],
  713. "chnname": "客户跟踪"
  714. }
  715. ],
  716. "graphCanvas": {
  717. "nodes": [],
  718. "edges": []
  719. },
  720. "associations": []
  721. },
  722. {
  723. "name": "person",
  724. "chnname": "人员",
  725. "entities": [
  726. {
  727. "title": "ta_person",
  728. "fields": [
  729. {
  730. "name": "person_id",
  731. "type": "LongKey",
  732. "remark": "直接用openid",
  733. "chnname": "用户ID",
  734. "pk": true,
  735. "notNull": true
  736. },
  737. {
  738. "name": "name",
  739. "type": "Name",
  740. "remark": "",
  741. "chnname": "昵称"
  742. },
  743. {
  744. "name": "phone",
  745. "type": "DefaultString",
  746. "remark": "",
  747. "chnname": "手机"
  748. },
  749. {
  750. "name": "avatar",
  751. "type": "LongText",
  752. "remark": "",
  753. "chnname": "头像"
  754. },
  755. {
  756. "name": "sex",
  757. "type": "TinyInt",
  758. "remark": "",
  759. "chnname": "性别"
  760. },
  761. {
  762. "name": "customer_id",
  763. "type": "LongKey",
  764. "remark": "",
  765. "chnname": "关联客户"
  766. },
  767. {
  768. "name": "user_id",
  769. "type": "LongKey",
  770. "remark": "",
  771. "chnname": "关联用户"
  772. },
  773. {
  774. "name": "create_date",
  775. "type": "DateTime",
  776. "remark": "",
  777. "chnname": "创建时间",
  778. "notNull": true,
  779. "defaultValue": "CURRENT_TIMESTAMP"
  780. },
  781. {
  782. "name": "status",
  783. "type": "TinyInt",
  784. "remark": "",
  785. "chnname": "状态",
  786. "notNull": true,
  787. "defaultValue": "1"
  788. }
  789. ],
  790. "indexs": [],
  791. "headers": [
  792. {
  793. "fieldName": "chnname",
  794. "relationNoShow": false
  795. },
  796. {
  797. "fieldName": "name",
  798. "relationNoShow": false
  799. },
  800. {
  801. "fieldName": "type",
  802. "relationNoShow": false
  803. },
  804. {
  805. "fieldName": "dataType",
  806. "relationNoShow": true
  807. },
  808. {
  809. "fieldName": "remark",
  810. "relationNoShow": true
  811. },
  812. {
  813. "fieldName": "pk",
  814. "relationNoShow": false
  815. },
  816. {
  817. "fieldName": "notNull",
  818. "relationNoShow": true
  819. },
  820. {
  821. "fieldName": "autoIncrement",
  822. "relationNoShow": true
  823. },
  824. {
  825. "fieldName": "defaultValue",
  826. "relationNoShow": true
  827. },
  828. {
  829. "fieldName": "relationNoShow",
  830. "relationNoShow": true
  831. },
  832. {
  833. "fieldName": "uiHint",
  834. "relationNoShow": true
  835. }
  836. ],
  837. "chnname": "用户表",
  838. "remark": "小程序"
  839. }
  840. ],
  841. "graphCanvas": {
  842. "edges": [],
  843. "nodes": []
  844. },
  845. "associations": []
  846. },
  847. {
  848. "name": "house",
  849. "chnname": "房源",
  850. "entities": [
  851. {
  852. "title": "ta_house",
  853. "fields": [
  854. {
  855. "name": "house_id",
  856. "type": "LongKey",
  857. "remark": "",
  858. "chnname": "房源ID",
  859. "pk": true,
  860. "notNull": true
  861. },
  862. {
  863. "name": "building_id",
  864. "type": "LongKey",
  865. "remark": "",
  866. "chnname": "所属楼栋",
  867. "notNull": false
  868. },
  869. {
  870. "name": "building_name",
  871. "type": "Name",
  872. "remark": "",
  873. "chnname": "楼栋名称"
  874. },
  875. {
  876. "name": "unit_no",
  877. "type": "TinyInt",
  878. "remark": "",
  879. "chnname": "所属单元"
  880. },
  881. {
  882. "name": "level_no",
  883. "type": "TinyInt",
  884. "remark": "",
  885. "chnname": "所属楼层"
  886. },
  887. {
  888. "name": "room_name",
  889. "type": "Name",
  890. "remark": "",
  891. "chnname": "房间名称"
  892. },
  893. {
  894. "name": "create_date",
  895. "type": "DateTime",
  896. "remark": "",
  897. "chnname": "创建时间",
  898. "notNull": true,
  899. "defaultValue": "CURRENT_TIMESTAMP"
  900. },
  901. {
  902. "name": "status",
  903. "type": "TinyInt",
  904. "remark": "",
  905. "chnname": "状态",
  906. "notNull": true,
  907. "defaultValue": "1"
  908. }
  909. ],
  910. "indexs": [],
  911. "headers": [
  912. {
  913. "fieldName": "chnname",
  914. "relationNoShow": false
  915. },
  916. {
  917. "fieldName": "name",
  918. "relationNoShow": false
  919. },
  920. {
  921. "fieldName": "type",
  922. "relationNoShow": false
  923. },
  924. {
  925. "fieldName": "dataType",
  926. "relationNoShow": true
  927. },
  928. {
  929. "fieldName": "remark",
  930. "relationNoShow": true
  931. },
  932. {
  933. "fieldName": "pk",
  934. "relationNoShow": false
  935. },
  936. {
  937. "fieldName": "notNull",
  938. "relationNoShow": true
  939. },
  940. {
  941. "fieldName": "autoIncrement",
  942. "relationNoShow": true
  943. },
  944. {
  945. "fieldName": "defaultValue",
  946. "relationNoShow": true
  947. },
  948. {
  949. "fieldName": "relationNoShow",
  950. "relationNoShow": true
  951. },
  952. {
  953. "fieldName": "uiHint",
  954. "relationNoShow": true
  955. }
  956. ],
  957. "chnname": "房源"
  958. },
  959. {
  960. "title": "td_house_unit",
  961. "fields": [
  962. {
  963. "name": "unit_no",
  964. "type": "TinyInt",
  965. "remark": "",
  966. "chnname": "单元编码",
  967. "pk": true,
  968. "notNull": true,
  969. "autoIncrement": false
  970. },
  971. {
  972. "name": "unit_name",
  973. "type": "Name",
  974. "remark": "",
  975. "chnname": "单元名称"
  976. },
  977. {
  978. "name": "create_date",
  979. "type": "DateTime",
  980. "remark": "",
  981. "chnname": "创建时间",
  982. "notNull": true,
  983. "defaultValue": "CURRENT_TIMESTAMP"
  984. },
  985. {
  986. "name": "status",
  987. "type": "TinyInt",
  988. "remark": "",
  989. "chnname": "状态",
  990. "notNull": true,
  991. "defaultValue": "1"
  992. }
  993. ],
  994. "indexs": [],
  995. "headers": [
  996. {
  997. "fieldName": "chnname",
  998. "relationNoShow": false
  999. },
  1000. {
  1001. "fieldName": "name",
  1002. "relationNoShow": false
  1003. },
  1004. {
  1005. "fieldName": "type",
  1006. "relationNoShow": false
  1007. },
  1008. {
  1009. "fieldName": "dataType",
  1010. "relationNoShow": true
  1011. },
  1012. {
  1013. "fieldName": "remark",
  1014. "relationNoShow": true
  1015. },
  1016. {
  1017. "fieldName": "pk",
  1018. "relationNoShow": false
  1019. },
  1020. {
  1021. "fieldName": "notNull",
  1022. "relationNoShow": true
  1023. },
  1024. {
  1025. "fieldName": "autoIncrement",
  1026. "relationNoShow": true
  1027. },
  1028. {
  1029. "fieldName": "defaultValue",
  1030. "relationNoShow": true
  1031. },
  1032. {
  1033. "fieldName": "relationNoShow",
  1034. "relationNoShow": true
  1035. },
  1036. {
  1037. "fieldName": "uiHint",
  1038. "relationNoShow": true
  1039. }
  1040. ],
  1041. "chnname": "单元",
  1042. "remark": "内置8条数据,只允许修改名称"
  1043. }
  1044. ],
  1045. "graphCanvas": {
  1046. "edges": [],
  1047. "nodes": []
  1048. },
  1049. "associations": []
  1050. }
  1051. ],
  1052. "dataTypeDomains": {
  1053. "datatype": [
  1054. {
  1055. "name": "默认字串",
  1056. "code": "DefaultString",
  1057. "apply": {
  1058. "JAVA": {
  1059. "type": "String"
  1060. },
  1061. "MYSQL": {
  1062. "type": "VARCHAR(32)"
  1063. },
  1064. "ORACLE": {
  1065. "type": "NVARCHAR2(32)"
  1066. },
  1067. "SQLServer": {
  1068. "type": "NVARCHAR(32)"
  1069. },
  1070. "PostgreSQL": {
  1071. "type": "VARCHAR(32)"
  1072. }
  1073. }
  1074. },
  1075. {
  1076. "name": "标识号",
  1077. "code": "IdOrKey",
  1078. "apply": {
  1079. "JAVA": {
  1080. "type": "String"
  1081. },
  1082. "ORACLE": {
  1083. "type": "VARCHAR2(32)"
  1084. },
  1085. "MYSQL": {
  1086. "type": "VARCHAR(32)"
  1087. },
  1088. "SQLServer": {
  1089. "type": "VARCHAR(32)"
  1090. },
  1091. "PostgreSQL": {
  1092. "type": "VARCHAR(32)"
  1093. }
  1094. }
  1095. },
  1096. {
  1097. "name": "标识号-长",
  1098. "code": "LongKey",
  1099. "apply": {
  1100. "MYSQL": {
  1101. "type": "VARCHAR(64)"
  1102. },
  1103. "ORACLE": {
  1104. "type": "VARCHAR2(64)"
  1105. },
  1106. "JAVA": {
  1107. "type": "String"
  1108. },
  1109. "SQLServer": {
  1110. "type": "VARCHAR(64)"
  1111. },
  1112. "PostgreSQL": {
  1113. "type": "VARCHAR(64)"
  1114. }
  1115. }
  1116. },
  1117. {
  1118. "name": "名称",
  1119. "code": "Name",
  1120. "apply": {
  1121. "JAVA": {
  1122. "type": "String"
  1123. },
  1124. "MYSQL": {
  1125. "type": "VARCHAR(128)"
  1126. },
  1127. "ORACLE": {
  1128. "type": "NVARCHAR2(128)"
  1129. },
  1130. "SQLServer": {
  1131. "type": "NVARCHAR(128)"
  1132. },
  1133. "PostgreSQL": {
  1134. "type": "VARCHAR(128)"
  1135. }
  1136. }
  1137. },
  1138. {
  1139. "name": "备注说明",
  1140. "code": "Intro",
  1141. "apply": {
  1142. "JAVA": {
  1143. "type": "String"
  1144. },
  1145. "MYSQL": {
  1146. "type": "VARCHAR(512)"
  1147. },
  1148. "ORACLE": {
  1149. "type": "NVARCHAR2(512)"
  1150. },
  1151. "SQLServer": {
  1152. "type": "NVARCHAR(512)"
  1153. },
  1154. "PostgreSQL": {
  1155. "type": "VARCHAR(512)"
  1156. }
  1157. }
  1158. },
  1159. {
  1160. "name": "字串-短",
  1161. "code": "ShortString",
  1162. "apply": {
  1163. "JAVA": {
  1164. "type": "String"
  1165. },
  1166. "MYSQL": {
  1167. "type": "VARCHAR(128)"
  1168. },
  1169. "ORACLE": {
  1170. "type": "NVARCHAR2(128)"
  1171. },
  1172. "SQLServer": {
  1173. "type": "NVARCHAR(128)"
  1174. },
  1175. "PostgreSQL": {
  1176. "type": "VARCHAR(128)"
  1177. }
  1178. }
  1179. },
  1180. {
  1181. "name": "字串-中",
  1182. "code": "MiddleString",
  1183. "apply": {
  1184. "JAVA": {
  1185. "type": "String"
  1186. },
  1187. "MYSQL": {
  1188. "type": "VARCHAR(512)"
  1189. },
  1190. "ORACLE": {
  1191. "type": "NVARCHAR2(512)"
  1192. },
  1193. "SQLServer": {
  1194. "type": "NVARCHAR(512)"
  1195. },
  1196. "PostgreSQL": {
  1197. "type": "VARCHAR(512)"
  1198. }
  1199. }
  1200. },
  1201. {
  1202. "name": "字串-长",
  1203. "code": "LongString",
  1204. "apply": {
  1205. "JAVA": {
  1206. "type": "String"
  1207. },
  1208. "ORACLE": {
  1209. "type": "NVARCHAR2(1024)"
  1210. },
  1211. "MYSQL": {
  1212. "type": "VARCHAR(1024)"
  1213. },
  1214. "SQLServer": {
  1215. "type": "NVARCHAR(1024)"
  1216. },
  1217. "PostgreSQL": {
  1218. "type": "VARCHAR(1024)"
  1219. }
  1220. }
  1221. },
  1222. {
  1223. "name": "大文本",
  1224. "code": "LongText",
  1225. "apply": {
  1226. "JAVA": {
  1227. "type": "String"
  1228. },
  1229. "MYSQL": {
  1230. "type": "TEXT"
  1231. },
  1232. "ORACLE": {
  1233. "type": "CLOB"
  1234. },
  1235. "SQLServer": {
  1236. "type": "NTEXT"
  1237. },
  1238. "PostgreSQL": {
  1239. "type": "TEXT"
  1240. }
  1241. }
  1242. },
  1243. {
  1244. "name": "小数",
  1245. "code": "Double",
  1246. "apply": {
  1247. "JAVA": {
  1248. "type": "Double"
  1249. },
  1250. "MYSQL": {
  1251. "type": "DECIMAL(32,10)"
  1252. },
  1253. "ORACLE": {
  1254. "type": "NUMBER(32,10)"
  1255. },
  1256. "SQLServer": {
  1257. "type": "DECIMAL(32,10)"
  1258. },
  1259. "PostgreSQL": {
  1260. "type": "DECIMAL(32,10)"
  1261. }
  1262. }
  1263. },
  1264. {
  1265. "name": "比例",
  1266. "code": "Ratio",
  1267. "apply": {
  1268. "MYSQL": {
  1269. "type": "DECIMAL(4,2)"
  1270. },
  1271. "JAVA": {
  1272. "type": "Double"
  1273. },
  1274. "ORACLE": {
  1275. "type": "NUMBER(4,2)"
  1276. },
  1277. "SQLServer": {
  1278. "type": "DECIMAL(4,2)"
  1279. },
  1280. "PostgreSQL": {
  1281. "type": "DECIMAL(4,2)"
  1282. }
  1283. }
  1284. },
  1285. {
  1286. "name": "整数",
  1287. "code": "Integer",
  1288. "apply": {
  1289. "JAVA": {
  1290. "type": "Integer"
  1291. },
  1292. "MYSQL": {
  1293. "type": "INT"
  1294. },
  1295. "ORACLE": {
  1296. "type": "INT"
  1297. },
  1298. "SQLServer": {
  1299. "type": "INT"
  1300. },
  1301. "PostgreSQL": {
  1302. "type": "INT"
  1303. }
  1304. }
  1305. },
  1306. {
  1307. "name": "小整数",
  1308. "code": "TinyInt",
  1309. "apply": {
  1310. "MYSQL": {
  1311. "type": "TINYINT(4)"
  1312. },
  1313. "JAVA": {
  1314. "type": "Integer"
  1315. },
  1316. "ORACLE": {
  1317. "type": "NUMBER"
  1318. },
  1319. "SQLServer": {
  1320. "type": "INT"
  1321. },
  1322. "PostgreSQL": {
  1323. "type": "INT"
  1324. }
  1325. }
  1326. },
  1327. {
  1328. "name": "金额",
  1329. "code": "Money",
  1330. "apply": {
  1331. "JAVA": {
  1332. "type": "Double"
  1333. },
  1334. "MYSQL": {
  1335. "type": "DECIMAL(32,8)"
  1336. },
  1337. "ORACLE": {
  1338. "type": "NUMBER(32,8)"
  1339. },
  1340. "SQLServer": {
  1341. "type": "DECIMAL(32,8)"
  1342. },
  1343. "PostgreSQL": {
  1344. "type": "DECIMAL(32,8)"
  1345. }
  1346. }
  1347. },
  1348. {
  1349. "name": "数据字典",
  1350. "code": "Dict",
  1351. "apply": {
  1352. "JAVA": {
  1353. "type": "String"
  1354. },
  1355. "MYSQL": {
  1356. "type": "VARCHAR(32)"
  1357. },
  1358. "ORACLE": {
  1359. "type": "VARCHAR2(32)"
  1360. },
  1361. "SQLServer": {
  1362. "type": "VARCHAR(32)"
  1363. },
  1364. "PostgreSQL": {
  1365. "type": "VARCHAR(32)"
  1366. }
  1367. }
  1368. },
  1369. {
  1370. "name": "日期",
  1371. "code": "Date",
  1372. "apply": {
  1373. "JAVA": {
  1374. "type": "Date"
  1375. },
  1376. "MYSQL": {
  1377. "type": "DATE"
  1378. },
  1379. "ORACLE": {
  1380. "type": "DATE"
  1381. },
  1382. "SQLServer": {
  1383. "type": "DATE"
  1384. },
  1385. "PostgreSQL": {
  1386. "type": "DATE"
  1387. }
  1388. }
  1389. },
  1390. {
  1391. "name": "日期时间",
  1392. "code": "DateTime",
  1393. "apply": {
  1394. "JAVA": {
  1395. "type": "Date"
  1396. },
  1397. "MYSQL": {
  1398. "type": "DATETIME"
  1399. },
  1400. "ORACLE": {
  1401. "type": "DATE"
  1402. },
  1403. "SQLServer": {
  1404. "type": "DATE"
  1405. },
  1406. "PostgreSQL": {
  1407. "type": "DATE"
  1408. }
  1409. }
  1410. },
  1411. {
  1412. "name": "布尔",
  1413. "code": "Boolean",
  1414. "apply": {
  1415. "MYSQL": {
  1416. "type": "TINYINT(1)"
  1417. },
  1418. "ORACLE": {
  1419. "type": "CHAR(1)"
  1420. },
  1421. "JAVA": {
  1422. "type": "Boolean"
  1423. },
  1424. "SQLServer": {
  1425. "type": "CHAR(1)"
  1426. },
  1427. "PostgreSQL": {
  1428. "type": "CHAR(1)"
  1429. }
  1430. }
  1431. }
  1432. ],
  1433. "database": [
  1434. {
  1435. "code": "MYSQL",
  1436. "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,';') }}'",
  1437. "fileShow": true,
  1438. "defaultDatabase": true,
  1439. "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",
  1440. "deleteTableTemplate": "DROP TABLE {{=it.entity.title}}{{=it.separator}}",
  1441. "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{{~}}",
  1442. "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}}",
  1443. "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}}",
  1444. "deleteFieldTemplate": "ALTER TABLE {{=it.entity.title}} DROP {{=it.field.name}}{{=it.separator}}",
  1445. "deleteIndexTemplate": "ALTER TABLE {{=it.entity.title}} DROP INDEX {{=it.index.name}}{{=it.separator}}",
  1446. "createIndexTemplate": "ALTER TABLE {{=it.entity.title}} ADD {{? it.index.isUnique}}UNIQUE{{??}}INDEX{{?}} {{=it.index.name}}({{=it.func.join(...it.index.fields,',')}}){{=it.separator}}",
  1447. "updateTableComment": "ALTER TABLE {{=it.entity.title}} COMMENT '{{=it.entity.chnname}}'{{=it.separator}}"
  1448. },
  1449. {
  1450. "code": "ORACLE",
  1451. "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{{~}}",
  1452. "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{{~}}",
  1453. "deleteTableTemplate": "DROP TABLE {{=it.entity.title}}{{=it.separator}}\r\n$blankline",
  1454. "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{{~}}",
  1455. "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",
  1456. "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",
  1457. "deleteFieldTemplate": "ALTER TABLE {{=it.entity.title}} DROP({{=it.field.name}}){{=it.separator}}\r\n$blankline",
  1458. "deleteIndexTemplate": "DROP INDEX {{=it.entity.title}}.{{=it.index.name}}{{=it.separator}}\r\n$blankline",
  1459. "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",
  1460. "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"
  1461. },
  1462. {
  1463. "code": "SQLServer",
  1464. "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",
  1465. "deleteTableTemplate": "",
  1466. "rebuildTableTemplate": "",
  1467. "createFieldTemplate": "",
  1468. "updateFieldTemplate": "",
  1469. "deleteFieldTemplate": "",
  1470. "deleteIndexTemplate": "",
  1471. "createIndexTemplate": "",
  1472. "updateTableComment": ""
  1473. },
  1474. {
  1475. "code": "PostgreSQL",
  1476. "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,';') }}'",
  1477. "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{{~}}",
  1478. "deleteTableTemplate": "DROP TABLE {{=it.entity.title}}{{=it.separator}}",
  1479. "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}}",
  1480. "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}}",
  1481. "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}}",
  1482. "deleteFieldTemplate": "ALTER TABLE {{=it.entity.title}} DROP {{=it.field.name}}{{=it.separator}}",
  1483. "deleteIndexTemplate": "ALTER TABLE {{=it.entity.title}} DROP INDEX {{=it.index.name}}{{=it.separator}}",
  1484. "createIndexTemplate": "ALTER TABLE {{=it.entity.title}} ADD {{? it.index.isUnique}}UNIQUE{{??}}INDEX{{?}} {{=it.index.name}}({{=it.func.join(...it.index.fields,',')}}){{=it.separator}}",
  1485. "updateTableComment": "ALTER TABLE {{=it.entity.title}} COMMENT '{{=it.entity.chnname}}'{{=it.separator}}"
  1486. },
  1487. {
  1488. "code": "JAVA",
  1489. "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}",
  1490. "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}",
  1491. "deleteTableTemplate": "",
  1492. "rebuildTableTemplate": "",
  1493. "createFieldTemplate": "",
  1494. "updateFieldTemplate": "",
  1495. "deleteFieldTemplate": "",
  1496. "deleteIndexTemplate": "",
  1497. "createIndexTemplate": "",
  1498. "updateTableComment": ""
  1499. }
  1500. ]
  1501. },
  1502. "profile": {
  1503. "defaultFields": [
  1504. {
  1505. "name": "create_date",
  1506. "type": "DateTime",
  1507. "remark": "",
  1508. "chnname": "创建时间",
  1509. "notNull": true,
  1510. "defaultValue": "CURRENT_TIMESTAMP"
  1511. },
  1512. {
  1513. "name": "status",
  1514. "type": "TinyInt",
  1515. "remark": "",
  1516. "chnname": "状态",
  1517. "notNull": true,
  1518. "defaultValue": "1"
  1519. }
  1520. ],
  1521. "defaultFieldsType": "1",
  1522. "javaConfig": {},
  1523. "sqlConfig": ";",
  1524. "dbs": [],
  1525. "wordTemplateConfig": ""
  1526. }
  1527. }