aldehyde 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (156) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +1 -0
  3. package/dist/163.js +2 -0
  4. package/dist/163.js.LICENSE.txt +43 -0
  5. package/dist/41.js +1 -0
  6. package/dist/aldehyde.js +2 -0
  7. package/dist/aldehyde.js.LICENSE.txt +122 -0
  8. package/dist/chemstruc-graph.js +1 -0
  9. package/dist/css/163-24392163d3c7b54ea806.css +11 -0
  10. package/dist/css/290-5e8e152675ab7d201c00.css +886 -0
  11. package/dist/css/chemstruc-graph-87868f791bf92fb80db9.css +29 -0
  12. package/dist/css/main-2e6725ec1b56da516cee.css +256 -0
  13. package/dist/html-editor-draft.js +2 -0
  14. package/dist/html-editor-draft.js.LICENSE.txt +5 -0
  15. package/dist/images/logo-06f6a5d8.png +0 -0
  16. package/dist/index.html +4 -0
  17. package/dist/signature.js +2 -0
  18. package/dist/signature.js.LICENSE.txt +17 -0
  19. package/package.json +180 -0
  20. package/src/components/chart/antd/Chart.js +32 -0
  21. package/src/components/chart/antd/Chart10000.js +90 -0
  22. package/src/components/chart/antd/Max2DimLineChart.js +128 -0
  23. package/src/components/chart/antd/PieChart1.js +54 -0
  24. package/src/components/chart/antd/PieChart2.js +56 -0
  25. package/src/components/chart/antd/chart-utils.tsx +50 -0
  26. package/src/components/chart/antd/column-chart-sub.tsx +67 -0
  27. package/src/components/chart/antd/line-chart-sub.tsx +65 -0
  28. package/src/components/chart/antd/pie-chart-sub.tsx +54 -0
  29. package/src/components/chart/antd/statview-d2-chart.tsx +125 -0
  30. package/src/components/chart/statview-l2-chart.tsx +69 -0
  31. package/src/components/controls/action/index.css +9 -0
  32. package/src/components/controls/action/index.tsx +228 -0
  33. package/src/components/controls/action/utils.tsx +122 -0
  34. package/src/components/controls/auto-complete/index.tsx +80 -0
  35. package/src/components/controls/cascader/index.js +97 -0
  36. package/src/components/controls/chemstruc/graph.tsx +150 -0
  37. package/src/components/controls/chemstruc/index.css +28 -0
  38. package/src/components/controls/collapse-card/index.css +9 -0
  39. package/src/components/controls/collapse-card/index.tsx +59 -0
  40. package/src/components/controls/color-picker/index.css +27 -0
  41. package/src/components/controls/color-picker/index.tsx +88 -0
  42. package/src/components/controls/cquery/cquick-button.tsx +117 -0
  43. package/src/components/controls/date-picker/index.tsx +141 -0
  44. package/src/components/controls/entity-select/entity-select.tsx +277 -0
  45. package/src/components/controls/entity-select/index.css +6 -0
  46. package/src/components/controls/entity-select/popover-entity-select.tsx +112 -0
  47. package/src/components/controls/entry-control.tsx +240 -0
  48. package/src/components/controls/enum-badge/index.tsx +28 -0
  49. package/src/components/controls/enum-tag/index.tsx +30 -0
  50. package/src/components/controls/file-view/drawer-file-view.tsx +69 -0
  51. package/src/components/controls/file-view/index.tsx +145 -0
  52. package/src/components/controls/html-editor/draft.tsx +161 -0
  53. package/src/components/controls/html-editor/tinymce.js +55 -0
  54. package/src/components/controls/input-number/index.tsx +101 -0
  55. package/src/components/controls/input-range/index.tsx +48 -0
  56. package/src/components/controls/password-setter/index.css +3 -0
  57. package/src/components/controls/password-setter/index.js +70 -0
  58. package/src/components/controls/progress/index.tsx +61 -0
  59. package/src/components/controls/relation-existion/index.css +4 -0
  60. package/src/components/controls/relation-existion/index.tsx +108 -0
  61. package/src/components/controls/rfield/index.css +4 -0
  62. package/src/components/controls/rfield/index.tsx +161 -0
  63. package/src/components/controls/signature/index.tsx +162 -0
  64. package/src/components/controls/steps/index.tsx +58 -0
  65. package/src/components/controls/text/ellipsis-text.tsx +70 -0
  66. package/src/components/controls/upload/index.tsx +122 -0
  67. package/src/components/controls/view-control.tsx +177 -0
  68. package/src/components/detail/button/cquery-button-bar.tsx +112 -0
  69. package/src/components/detail/button/index.css +43 -0
  70. package/src/components/detail/button/submit-button-bar.tsx +151 -0
  71. package/src/components/detail/dtmpl.css +53 -0
  72. package/src/components/detail/edit/dtmpl-edit.tsx +218 -0
  73. package/src/components/detail/edit/fields-edit-card.tsx +103 -0
  74. package/src/components/detail/edit/modal-dtmpl-edit.tsx +198 -0
  75. package/src/components/detail/edit/modal-row-edit.tsx +72 -0
  76. package/src/components/detail/edit/post-result/index.tsx +52 -0
  77. package/src/components/detail/edit/row-edit-card.tsx +125 -0
  78. package/src/components/detail/edit/row-editor.tsx +71 -0
  79. package/src/components/detail/rightbar/index.css +35 -0
  80. package/src/components/detail/rightbar/index.tsx +76 -0
  81. package/src/components/detail/view/act-dtmpl-view.tsx +155 -0
  82. package/src/components/detail/view/dtmpl-view.tsx +143 -0
  83. package/src/components/detail/view/field-view-group.tsx +73 -0
  84. package/src/components/detail/view/modal-dtmpl-view.tsx +56 -0
  85. package/src/components/detail/view/snapshot-timeline.tsx +130 -0
  86. package/src/components/exportor/export-frame.css +3 -0
  87. package/src/components/exportor/export-frame.tsx +194 -0
  88. package/src/components/exportor/index.tsx +60 -0
  89. package/src/components/form/criteria-form.tsx +241 -0
  90. package/src/components/form/dtmpl-form.css +4 -0
  91. package/src/components/form/dtmpl-form.tsx +272 -0
  92. package/src/components/form/field-group-form.tsx +75 -0
  93. package/src/components/form/fields-form.tsx +51 -0
  94. package/src/components/form/form-Item-group.tsx +99 -0
  95. package/src/components/form/index.css +13 -0
  96. package/src/components/import/excel-import.tsx +316 -0
  97. package/src/components/import/index.css +54 -0
  98. package/src/components/import/template-builder.js +474 -0
  99. package/src/components/import/template.css +51 -0
  100. package/src/components/layout/MainPage.tsx +230 -0
  101. package/src/components/layout/footer/index.css +6 -0
  102. package/src/components/layout/footer/index.js +17 -0
  103. package/src/components/layout/header/index.css +86 -0
  104. package/src/components/layout/header/index.tsx +58 -0
  105. package/src/components/layout/menu/block.tsx +88 -0
  106. package/src/components/layout/menu/l2menu-message-bar.tsx +118 -0
  107. package/src/components/layout/menu/l2menu-quick-bar.tsx +132 -0
  108. package/src/components/layout/menu/menu-2layers.tsx +92 -0
  109. package/src/components/layout/menu/menu-render.tsx +49 -0
  110. package/src/components/layout/menu/reset-password.tsx +185 -0
  111. package/src/components/layout/menu/user-bar.tsx +97 -0
  112. package/src/components/layout/menu/userinfo-bar.tsx +70 -0
  113. package/src/components/layout/sidebar/index.css +26 -0
  114. package/src/components/layout/sidebar/index.tsx +38 -0
  115. package/src/components/login.js +137 -0
  116. package/src/components/module/criteria-page.tsx +175 -0
  117. package/src/components/module/dtmpl-page.tsx +70 -0
  118. package/src/components/module/ltmpl-page.tsx +181 -0
  119. package/src/components/routable/dtmpl-route.tsx +96 -0
  120. package/src/components/routable/import-route.tsx +28 -0
  121. package/src/components/routable/ltmpl-route.tsx +158 -0
  122. package/src/components/table/act-table.tsx +635 -0
  123. package/src/components/table/column/column-selector.tsx +79 -0
  124. package/src/components/table/column/index.css +14 -0
  125. package/src/components/table/index.css +45 -0
  126. package/src/components/table/l2-act-table.tsx +85 -0
  127. package/src/components/table/modal-select-table.tsx +248 -0
  128. package/src/components/table/pagination.css +15 -0
  129. package/src/components/table/pagination.tsx +72 -0
  130. package/src/components/table/query-table.tsx +331 -0
  131. package/src/components/table/relation-table.tsx +600 -0
  132. package/src/components/table/select-table.tsx +247 -0
  133. package/src/components/table/selected-rows-card.tsx +62 -0
  134. package/src/components/table/stat/restat.tsx +79 -0
  135. package/src/components/table/table-util.tsx +33 -0
  136. package/src/components/tmpl/control-type-supportor.tsx +97 -0
  137. package/src/components/tmpl/hc-data-source.tsx +230 -0
  138. package/src/components/tmpl/hcservice-v3.tsx +624 -0
  139. package/src/components/tmpl/interface.tsx +308 -0
  140. package/src/components/tmpl/superagent.js +93 -0
  141. package/src/components/tmpl/tmpl-config-analysis.tsx +111 -0
  142. package/src/components/units/EncryptUtils.js +38 -0
  143. package/src/components/units/image.d.ts +8 -0
  144. package/src/components/units/index.tsx +536 -0
  145. package/src/components/units/logo.png +0 -0
  146. package/src/components/units/storage.js +3 -0
  147. package/src/components/welcome/HCWelcome.js +232 -0
  148. package/src/components/welcome/index.css +13 -0
  149. package/src/components/welcome/logo.png +0 -0
  150. package/src/components/welcome/quick-entrance.tsx +77 -0
  151. package/src/components/welcome/workbench.tsx +76 -0
  152. package/src/index.js +4 -0
  153. package/src/style/common.css +79 -0
  154. package/src/style/coverstyle.css +49 -0
  155. package/src/style/transstyle.css +24 -0
  156. package/tsconfig.json +106 -0
@@ -0,0 +1,474 @@
1
+ import React from 'react'
2
+ import Super from "../tmpl/superagent"
3
+ import Units from "../units"
4
+ import {Button,Popover,Input,Modal, message,Collapse,Tag} from 'antd'
5
+ import {BulbOutlined,DeleteOutlined,FileAddOutlined,DownloadOutlined,SaveOutlined,SnippetsOutlined } from '@ant-design/icons';
6
+ import DragTable from '../drag-table'
7
+ import './index.css'
8
+ const {confirm} = Modal
9
+ const {Panel}=Collapse
10
+ const {CheckableTag}=Tag
11
+
12
+
13
+ export default class ModelImport extends React.Component{
14
+
15
+ state={
16
+ modelList:[],
17
+ title:"",
18
+ visible:false,
19
+ dataSource:[],
20
+ }
21
+ componentDidMount(){
22
+ const {menuId}=this.props
23
+ this.loadWords(menuId)
24
+ }
25
+ loadWords=(menuId)=>{
26
+ Super.super({
27
+ url:`v2/menu/${menuId}/ltmpl/importer/dict`,
28
+ method:'GET',
29
+ }).then((res)=>{
30
+ let selectWords=res.fieldDictionary.composites
31
+ //console.log(selectWords)
32
+ const forType=[]
33
+ selectWords.forEach((item)=>{
34
+ if(item.fields.length>0){
35
+ item.fields.forEach((it)=>{
36
+ it.checked=false
37
+ it.key=it.name
38
+ if(item.type==="relation"){
39
+ it.compositeId=item.id
40
+ }
41
+ const list={
42
+ type:item.type,
43
+ fieldId:it.id,
44
+ }
45
+ forType.push(list)
46
+ })
47
+ }
48
+ })
49
+ this.setState({
50
+ selectWords,
51
+ forType
52
+ })
53
+ })
54
+ }
55
+ switchTemplate=()=>{
56
+ const {menuId}=this.props
57
+ this.handleVisibleChange(true)
58
+ Super.super({
59
+ url:`v2/menu/${menuId}/ltmpl/importer/tmpls/list`,
60
+ method:'GET',
61
+ }).then((res)=>{
62
+ if(res){
63
+ this.setState({
64
+ modelList:res.tmpls,
65
+ })
66
+ }
67
+ })
68
+ }
69
+ handelModel=(tmplId)=>{
70
+ const {menuId}=this.props
71
+ const {forType,selectWords}=this.state
72
+ Super.super({
73
+ url:`v2/menu/${menuId}/ltmpl/importer/tmpls/detail`,
74
+ query:{
75
+ tmplId
76
+ },
77
+ method:'GET',
78
+ }).then((res)=>{
79
+ //console.log(res.tmpl.fields)
80
+ if(res){
81
+ selectWords.forEach((item)=>{
82
+ if(item.type==="normal"){
83
+ item.fields.forEach((it)=>{
84
+ let check=false
85
+ res.tmpl.fields.forEach((i)=>{
86
+ if(i.fieldId===it.id){
87
+ check=true
88
+ }
89
+ })
90
+ it.checked=check
91
+ })
92
+ }
93
+ })
94
+ let data=[]
95
+ let type=""
96
+ res.tmpl.fields.forEach((item)=>{
97
+ forType.forEach((it)=>{ //选择模板数据,添加type值
98
+ if(item.mStrucFieldGroupId===it.mStrucFieldGroupId){
99
+ type=it.type
100
+ }
101
+ })
102
+ let list={
103
+ key:item.title,
104
+ name:item.title,
105
+ words:item.title,
106
+ fieldId:item.mStrucFieldId,
107
+ compositeId:item.mStrucFieldGroup,
108
+ id:item.id,
109
+ fieldIndex:item.fieldIndex,
110
+ type,
111
+ }
112
+ if(item.mStrucFieldId!==null){
113
+ list.totalname=item.title.split("[")[0]
114
+ }
115
+ data.push(list)
116
+ })
117
+ this.setState({
118
+ tmplId:res.tmpl.id,
119
+ dataSource:data,
120
+ title:res.tmpl.title,
121
+ listLength:res.tmpl.fields.length,
122
+ selectWords
123
+ })
124
+ this.handleVisibleChange(false)
125
+ }
126
+ })
127
+ }
128
+ handleVisibleChange=(value)=>{
129
+ this.setState({ visible:value });
130
+ }
131
+ handleSave=()=>{
132
+ const {menuId}=this.props
133
+ let {tmplId,title,dataSource}=this.state
134
+ const fields=this.getFields(dataSource)
135
+ Super.super({
136
+ url:`v2/menu/${menuId}/ltmpl/importer/tmpls`,
137
+ method:'POST',
138
+ data:JSON.stringify({
139
+ tmplId,
140
+ title,
141
+ fields,
142
+ })
143
+ },'json').then((res)=>{
144
+ if(res && res.status==="success"){
145
+ message.success("保存成功!")
146
+ this.setState({
147
+ tmplId:res.tmplId,
148
+ listLength:dataSource.length,
149
+ dataSource,
150
+ })
151
+ }else{
152
+ message.error("Units.forFile(保存!)")
153
+ }
154
+ })
155
+ }
156
+ visibleModal=()=>{
157
+ const { title }=this.state
158
+ const _this=this
159
+ if(!title){
160
+ message.error("请设置模板名称!")
161
+ return
162
+ }
163
+ this.getdatasource.getdata()
164
+ confirm({
165
+ title: "确定保存导入模板?",
166
+ okText: '确定',
167
+ okType: 'danger',
168
+ cancelText: '取消',
169
+ onOk() {
170
+ _this.handleSave()
171
+ },
172
+ });
173
+ }
174
+ handleDownload=()=>{
175
+ const { tmplId,title,listLength,dataSource }=this.state
176
+ if(dataSource.length!==listLength){
177
+ message.info("请保存模板")
178
+ return
179
+ }
180
+ const hydrocarbonToken=Units.getLocalStorge("hydrocarbonToken")
181
+ if(tmplId){
182
+ confirm({
183
+ title: `确认下载`,
184
+ content: `当前模板[${title}],模板内共有${listLength}个字段`,
185
+ okText: '是的',
186
+ cancelText: '取消',
187
+ onOk() {
188
+ const hydrocarbonToken=Units.getLocalStorge("hydrocarbonToken")
189
+ Units.downloadFile(`v2/importer/${tmplId}/excel?@token=${hydrocarbonToken}`)
190
+ },
191
+ })
192
+ }else{
193
+ message.info("请选择模板")
194
+ }
195
+ }
196
+ setModelName=(e)=>{
197
+ this.setState({
198
+ title:e.target.value
199
+ })
200
+ }
201
+ deleteRow=(record)=>{
202
+ let {dataSource,selectWords}=this.state
203
+ dataSource.forEach((item,i)=>{
204
+ if(item.key===record.key){
205
+ dataSource.splice(i,1)
206
+ }
207
+ })
208
+ if(record.type==="normal"){
209
+ selectWords.forEach((item,i)=>{ //控制模板内tag是否选中
210
+ if(item.fields.length>0){
211
+ item.fields.forEach((it)=>{
212
+ if(it.key===record.key){
213
+ it.checked=false
214
+ }
215
+ })
216
+ }
217
+ })
218
+ }else{
219
+ let len=[]
220
+ let labelarr=[]
221
+ let data=[]
222
+ dataSource.forEach((item)=>{
223
+ if(item.mStrucFieldGroupId===record.mStrucFieldGroupId && !item.key.includes("label")){
224
+ len.push(item)
225
+ }
226
+ if(item.key.includes("label")){
227
+ labelarr.push(item)
228
+ }
229
+ if(item.mStrucFieldGroupId && !item.key.includes("label")){
230
+ data.push(item)
231
+ }
232
+ })
233
+ len.forEach((item,i)=>{
234
+ const NM=`${record.totalname}[${i}].${record.name.split(".")[1]}`
235
+ item.key=NM
236
+ item.name=NM
237
+ item.words=NM
238
+ item.fieldIndex=i
239
+ })
240
+ if(record.type==="relation"){
241
+ let dele=true
242
+ data.forEach((item)=>{
243
+ const dataTotal=item.key.split(".")[0]
244
+ const labelLastTotal=labelarr[labelarr.length-1].key.split(".")[0]
245
+ if(dataTotal===labelLastTotal){
246
+ dele=false
247
+ }
248
+ labelarr[labelarr.length-1].delete=dele
249
+ })
250
+ if(data.length===0){
251
+ labelarr[labelarr.length-1].delete=true
252
+ }
253
+ dataSource.forEach((item,i)=>{
254
+ if(item.delete){
255
+ dataSource.splice(i,1)
256
+ }
257
+ })
258
+ }
259
+ }
260
+ this.setState({
261
+ dataSource:Units.uniq(dataSource,"key"),
262
+ selectWords,
263
+ })
264
+ }
265
+ getWords=(list,type)=>{
266
+ let {dataSource,selectWords}=this.state
267
+ if(type==="normal"){
268
+ dataSource.push(list)
269
+ selectWords.forEach((item,i)=>{ //normal改变tag选中状态
270
+ if(item.fields.length>0 && item.type==="normal"){
271
+ item.fields.forEach((it)=>{
272
+ if(it.id===list.fieldId){
273
+ it.checked=true
274
+ }
275
+ })
276
+ }
277
+ })
278
+ }else{
279
+ let len=[]
280
+ dataSource.forEach((item)=>{
281
+ if(item.mStrucFieldGroupId===list.mStrucFieldGroupId && !item.key.includes("label")){
282
+ len.push(item)
283
+ }
284
+ })
285
+ const NM=`${list.totalname}[${len.length}].${list.name}`
286
+ const res={
287
+ mStrucFieldGroupId:list.mStrucFieldGroupId,
288
+ key:NM,
289
+ name:NM,
290
+ words:NM,
291
+ totalname:list.totalname,
292
+ fieldIndex:len.length,
293
+ type:list.type,
294
+ }
295
+ if(type==="relation"){
296
+ const NLabel=`${list.totalname}[${len.length}].$$label$$`
297
+ const labelRes={
298
+ key:NLabel,
299
+ name:NLabel,
300
+ words:NLabel,
301
+ fieldIndex:len.length,
302
+ totalname:list.totalname,
303
+ compositeId:list.compositeId
304
+ }
305
+ dataSource.push(labelRes)
306
+ }
307
+ dataSource.push(res)
308
+ }
309
+ //console.log(dataSource)
310
+ this.setState({
311
+ dataSource:Units.uniq(dataSource,"key"),
312
+ selectWords,
313
+ })
314
+ }
315
+ getFields=(dataSource)=>{
316
+ const fields=[]
317
+ dataSource.forEach((item)=>{
318
+ const list={}
319
+ if(item.fieldIndex!==null){
320
+ list.fieldIndex=item.fieldIndex
321
+ }
322
+ if(item.mStrucFieldGroupId){
323
+ list.mStrucFieldGroupId=item.mStrucFieldGroupId
324
+ }
325
+ if(item.mStrucFieldId){
326
+ list.mStrucFieldId=item.mStrucFieldId
327
+ }
328
+ if(item.id){
329
+ list.id=item.id
330
+ }
331
+ fields.push(list)
332
+ })
333
+ return fields
334
+ }
335
+ onRef=(ref)=>{
336
+ this.getdatasource=ref
337
+ }
338
+ setdatasource=(data)=>{
339
+ this.setState({
340
+ dataSource:data
341
+ })
342
+ }
343
+ resetForm=()=>{
344
+ this.setState({
345
+ modelList:[],
346
+ title:"",
347
+ visible:false,
348
+ dataSource:[],
349
+ })
350
+ }
351
+ render(){
352
+ const { visible,title,dataSource,selectWords,modelList,tmplId }=this.state
353
+ const content = (
354
+ <div>
355
+ {modelList.map(item =>
356
+ <div key={item.id} className="modelList" onClick={()=>this.handelModel(item.id)}>
357
+ <span className={tmplId===item.id?"light":""}><BulbOutlined /></span>
358
+ <p className="tit">{item.title}</p>
359
+ <p>{Units.formateDate(item.createTime)}</p>
360
+ </div>
361
+ )}
362
+ </div>
363
+ );
364
+ const columns = [{
365
+ title: '表头',
366
+ key: 'name',
367
+ width: 200,
368
+ dataIndex:"name"
369
+ }, {
370
+ title: '字段',
371
+ key: 'words',
372
+ width: 200,
373
+ dataIndex:"words"
374
+ }, {
375
+ title: '操作',
376
+ key: 'action',
377
+ render: (text, record) => (
378
+ <Button
379
+ style={{display:record.key.includes("label")?'none':'block'}}
380
+ size='small' type="danger"
381
+ onClick={()=>this.deleteRow(record)}>
382
+ <DeleteOutlined />
383
+ </Button>
384
+ ),
385
+ }, ]
386
+ return (
387
+ <div className="selectModal">
388
+ <h3>
389
+ 导入模板配置
390
+ <p className="fr">
391
+ <Button className="hoverbig" title="新建模板" onClick={this.resetForm}><FileAddOutlined /></Button>
392
+ <Button className="hoverbig" title="下载导入模板" onClick={this.handleDownload}><DownloadOutlined /></Button>
393
+ <Button className="hoverbig" title="保存模板" onClick={this.visibleModal}><SaveOutlined /></Button>
394
+ <Popover
395
+ content={content}
396
+ placement="bottomRight"
397
+ trigger="click"
398
+ visible={visible}
399
+ onVisibleChange={this.handleVisibleChange}>
400
+ <Button
401
+ className="hoverbig"
402
+ title="切换模板"
403
+ onClick={this.switchTemplate}
404
+ >
405
+ <SnippetsOutlined />
406
+ </Button>
407
+ </Popover>
408
+ </p>
409
+ </h3>
410
+ <div style={{marginBottom:20}}>
411
+ 模板名称:
412
+ <Input placeholder="输入导入模板名称" style={{ width: 200 }} value={title} onChange={this.setModelName}/>
413
+ </div>
414
+ <div className="table">
415
+ <DragTable
416
+ columns={columns}
417
+ dataSource={dataSource}
418
+ onRef={this.onRef}
419
+ setdatasource={this.setdatasource}
420
+ size="small"
421
+
422
+ />
423
+ </div>
424
+ {
425
+ selectWords?<Collapse accordion style={{float:"right"}}>
426
+ {selectWords.map((item)=>{
427
+ if(item.fields.length>0){
428
+ return <Panel header={item.name} key={item.id}>
429
+ {item.fields.map(it =>
430
+ <MyTag
431
+ key={it.name}
432
+ id={it.id}
433
+ name={it.name}
434
+ checked={it.checked}
435
+ getwords={this.getWords}
436
+ type={item.type}
437
+ totalname={item.name}
438
+ compositeid={it.compositeId}
439
+ >{it.name}</MyTag>
440
+ )}
441
+ </Panel>
442
+
443
+ }
444
+ return false
445
+ })}
446
+ </Collapse>:""
447
+ }
448
+ </div>
449
+ )
450
+ }
451
+ }
452
+
453
+ class MyTag extends React.Component {
454
+
455
+ handleChange = (id,name) => {
456
+ const {type,totalname,compositeid}=this.props
457
+ const list={
458
+ key:name,
459
+ fieldId:id,
460
+ name:name,
461
+ words:name,
462
+ totalname,
463
+ type,
464
+ compositeId:compositeid
465
+ }
466
+ this.props.getwords(list,type)
467
+ };
468
+ render() {
469
+ const {name,id,checked}=this.props
470
+ return (
471
+ <CheckableTag {...this.props} onChange={()=>this.handleChange(id,name)} className={checked?"":"borderTag"}/>
472
+ );
473
+ }
474
+ }
@@ -0,0 +1,51 @@
1
+ .modelList {
2
+ margin-bottom:15px;
3
+ cursor: pointer;
4
+ width:200px;
5
+ }
6
+ .modelList:hover{
7
+ color:#1890ff
8
+ }
9
+ .modelList p{
10
+ margin-bottom: 4px;
11
+ line-height: 1.3;
12
+ }
13
+ .modelList p.tit{
14
+ font-weight: bold;
15
+ font-size: 15px
16
+ }
17
+ .modelList span{
18
+ display: inline-block;
19
+ width:40px;
20
+ height:40px;
21
+ border-radius: 50%;
22
+ line-height:45px;
23
+ text-align: center;
24
+ float: left;
25
+ margin-right:10px;
26
+ align-self: center;
27
+ background:#1890ff;
28
+ }
29
+ .modelList span.light{
30
+ background:red;
31
+ color:#fff;
32
+ }
33
+ .selectModal{
34
+ height:400px
35
+ }
36
+ .selectModal .table{
37
+ width:50%;
38
+ float: left;
39
+ overflow-y:auto;
40
+ max-height:300px;
41
+ }
42
+ .ant-collapse{
43
+ width:45%;
44
+ float: right;
45
+ }
46
+ .selectModal .ant-tag{
47
+ margin-bottom: 4px
48
+ }
49
+ .borderTag{
50
+ border:1px solid #ccc!important;
51
+ }