vue2-client 1.15.119 → 1.15.121
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.
- package/package.json +1 -1
- package/src/base-client/components/common/XReport/print.js +186 -186
- package/src/base-client/components/common/XTable/XTableWrapper.vue +3 -0
- package/src/base-client/components/his/XChart/XChart.vue +282 -282
- package/src/base-client/components/his/XChart/dome.vue +19 -19
- package/src/base-client/components/his/XHisEditor/XHisEditor.vue +2 -51
- package/src/base-client/components/his/XImportExcelButton/XFrontImportExcel.vue +2 -4
- package/src/base-client/components/his/XTextCard/XTextCard.vue +207 -207
- package/src/base-client/components/his/threeTestOrders/editor.vue +111 -111
- package/src/utils/map-utils.js +47 -47
- package/.history/public/his/editor/editor_20250606134713.html +0 -51
- package/.history/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox_20250527173925.vue +0 -509
- package/.history/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox_20250527174316.vue +0 -524
- package/.history/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox_20250527174419.vue +0 -524
- package/.history/src/base-client/components/common/AddressSearchCombobox/AddressSearchCombobox_20250527174422.vue +0 -524
- package/.history/src/base-client/components/common/XAddReport/XAddReport_20250611172825.vue +0 -207
- package/.history/src/base-client/components/common/XAddReport/XAddReport_20250611172945.vue +0 -211
- package/.history/src/base-client/components/common/XAddReport/XAddReport_20250611172949.vue +0 -212
- package/.history/src/base-client/components/common/XAddReport/XAddReport_20250611173010.vue +0 -212
- package/.history/src/base-client/components/common/XForm/XFormItem_20250508134122.vue +0 -1320
- package/.history/src/base-client/components/common/XForm/XFormItem_20250527171604.vue +0 -1332
- package/.history/src/base-client/components/common/XForm/XFormItem_20250527171613.vue +0 -1331
- package/.history/src/base-client/components/common/XForm/XFormItem_20250527171703.vue +0 -1331
- package/.history/src/base-client/components/common/XForm/XFormItem_20250527171720.vue +0 -1331
- package/.history/src/base-client/components/common/XForm/XFormItem_20250527174327.vue +0 -1339
- package/.history/src/base-client/components/common/XReportGrid/XReportTrGroup_20250612092804.vue +0 -731
- package/.history/src/base-client/components/common/XReportGrid/XReportTrGroup_20250612112546.vue +0 -748
- package/.history/src/base-client/components/common/XReportGrid/XReportTrGroup_20250612113808.vue +0 -748
- package/.history/src/base-client/components/common/XReportGrid/XReport_20250612115237.vue +0 -1071
- package/.history/src/base-client/components/common/XReportGrid/XReport_20250612115346.vue +0 -1078
- package/.history/src/base-client/components/common/XReportGrid/XReport_20250612115350.vue +0 -1077
- package/.history/src/base-client/components/common/XReportGrid/XReport_20250612115415.vue +0 -1077
- package/.history/src/base-client/components/common/XReportGrid/XReport_20250612115429.vue +0 -1077
- package/.history/src/base-client/components/his/XChart/XChart_20250812134005.vue +0 -160
- package/.history/src/base-client/components/his/XChart/XChart_20250812134010.vue +0 -160
- package/.history/src/base-client/components/his/XChart/XChart_20250812134019.vue +0 -160
- package/.history/src/base-client/components/his/XChart/XChart_20250812134037.vue +0 -160
- package/.history/src/base-client/components/his/XChart/XChart_20250812134112.vue +0 -160
- package/.history/src/base-client/components/his/XChart/XChart_20250812134114.vue +0 -160
- package/.history/src/base-client/components/his/XChart/XChart_20250812134828.vue +0 -148
- package/.history/src/base-client/components/his/XChart/XChart_20250812134838.vue +0 -155
- package/.history/src/base-client/components/his/XChart/XChart_20250812134846.vue +0 -155
- package/.history/src/base-client/components/his/XChart/XChart_20250812134917.vue +0 -155
- package/.history/src/base-client/components/his/XChart/XChart_20250812151145.vue +0 -149
- package/.history/src/base-client/components/his/XChart/XChart_20250812151810.vue +0 -153
- package/.history/src/base-client/components/his/XChart/XChart_20250812151822.vue +0 -153
- package/.history/src/base-client/components/his/XChart/XChart_20250812151910.vue +0 -153
- package/.history/src/base-client/components/his/XChart/XChart_20250812152858.vue +0 -258
- package/.history/src/base-client/components/his/XChart/XChart_20250812152902.vue +0 -258
- package/.history/src/base-client/components/his/XChart/XChart_20250812152907.vue +0 -258
- package/.history/src/base-client/components/his/XChart/XChart_20250812152919.vue +0 -258
- package/.history/src/base-client/components/his/XChart/XChart_20250812153141.vue +0 -269
- package/.history/src/base-client/components/his/XChart/XChart_20250812153149.vue +0 -276
- package/.history/src/base-client/components/his/XChart/XChart_20250812153153.vue +0 -276
- package/.history/src/base-client/components/his/XChart/XChart_20250812153155.vue +0 -276
- package/.history/src/base-client/components/his/XChart/XChart_20250812153157.vue +0 -276
- package/.history/src/base-client/components/his/XChart/XChart_20250812153158.vue +0 -276
- package/.history/src/base-client/components/his/XChart/XChart_20250812153200.vue +0 -276
- package/.history/src/base-client/components/his/XChart/XChart_20250812153210.vue +0 -276
- package/.history/src/base-client/components/his/XChart/XChart_20250812153918.vue +0 -275
- package/.history/src/base-client/components/his/XChart/XChart_20250812154157.vue +0 -280
- package/.history/src/base-client/components/his/XChart/XChart_20250812154212.vue +0 -280
- package/.history/src/base-client/components/his/XChart/XChart_20250812154250.vue +0 -280
- package/.history/src/base-client/components/his/XChart/XChart_20250812154252.vue +0 -280
- package/.history/src/base-client/components/his/XChart/XChart_20250812154444.vue +0 -280
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611091619.vue +0 -442
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611092547.vue +0 -442
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611092552.vue +0 -442
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611092744.vue +0 -475
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611092955.vue +0 -475
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611092957.vue +0 -475
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611095652.vue +0 -477
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611095701.vue +0 -477
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611095704.vue +0 -477
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611100005.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611100011.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611100014.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611100833.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611100853.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611100940.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101011.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101013.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101014.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101159.vue +0 -473
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101238.vue +0 -474
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101240.vue +0 -474
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101242.vue +0 -474
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101404.vue +0 -472
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101410.vue +0 -472
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101459.vue +0 -472
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101500.vue +0 -472
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101502.vue +0 -472
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101504.vue +0 -472
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101610.vue +0 -501
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101700.vue +0 -501
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101702.vue +0 -501
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101741.vue +0 -504
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101749.vue +0 -504
- package/.history/src/base-client/components/his/XHisEditor/XHisEditor_20250611101759.vue +0 -504
- package/.history/src/base-client/components/his/XHisEditor/dome_20250611091349.vue +0 -131
- package/.history/src/base-client/components/his/XHisEditor/dome_20250611105854.vue +0 -160
- package/.history/src/base-client/components/his/XHisEditor/dome_20250611105902.vue +0 -160
- package/.history/src/base-client/components/his/XHisEditor/dome_20250611105924.vue +0 -160
- package/.history/src/base-client/components/his/XHisEditor/dome_20250611105932.vue +0 -158
- package/.history/src/base-client/components/his/XList/XList_20250609135848.vue +0 -173
- package/.history/src/base-client/components/his/XList/XList_20250609141026.vue +0 -222
- package/.history/src/base-client/components/his/XList/XList_20250609141035.vue +0 -229
- package/.history/src/base-client/components/his/XList/XList_20250609141103.vue +0 -229
- package/.history/src/base-client/components/his/XList/XList_20250609141105.vue +0 -229
- package/.history/src/base-client/components/his/XList/XList_20250609141334.vue +0 -241
- package/.history/src/base-client/components/his/XList/XList_20250609141404.vue +0 -241
- package/.history/src/base-client/components/his/XList/XList_20250609141406.vue +0 -241
- package/.history/src/base-client/components/his/XList/XList_20250609141801.vue +0 -245
- package/.history/src/base-client/components/his/XList/XList_20250609142033.vue +0 -245
- package/.history/src/base-client/components/his/XList/XList_20250609142038.vue +0 -245
- package/.history/src/base-client/components/his/XList/XList_20250609142435.vue +0 -255
- package/.history/src/base-client/components/his/XList/XList_20250609142503.vue +0 -255
- package/.history/src/base-client/components/his/XList/XList_20250609142504.vue +0 -255
- package/.history/src/base-client/components/his/XList/XList_20250609143012.vue +0 -270
- package/.history/src/base-client/components/his/XList/XList_20250609143044.vue +0 -270
- package/.history/src/base-client/components/his/XList/XList_20250609143046.vue +0 -270
- package/.history/src/base-client/components/his/XList/XList_20250609143210.vue +0 -270
- package/.history/src/base-client/components/his/XList/XList_20250609144339.vue +0 -294
- package/.history/src/base-client/components/his/XList/XList_20250609144410.vue +0 -294
- package/.history/src/base-client/components/his/XList/XList_20250609144412.vue +0 -294
- package/.history/src/base-client/components/his/XList/XList_20250609144647.vue +0 -303
- package/.history/src/base-client/components/his/XList/XList_20250609144716.vue +0 -303
- package/.history/src/base-client/components/his/XList/XList_20250609144729.vue +0 -303
- package/.history/src/base-client/components/his/XList/XList_20250609151232.vue +0 -288
- package/.history/src/base-client/components/his/XList/XList_20250609151247.vue +0 -288
- package/.history/src/base-client/components/his/XList/XList_20250609151252.vue +0 -288
- package/.history/src/base-client/components/his/XList/XList_20250609161220.vue +0 -317
- package/.history/src/base-client/components/his/XList/XList_20250609161258.vue +0 -306
- package/.history/src/base-client/components/his/XList/XList_20250609161319.vue +0 -306
- package/.history/src/base-client/components/his/XList/XList_20250609161320.vue +0 -306
- package/.history/src/base-client/components/his/XList/XList_20250704142024.vue +0 -495
- package/.history/src/base-client/components/his/XList/XList_20250704142033.vue +0 -495
- package/.history/src/base-client/components/his/XList/XList_20250704142040.vue +0 -494
- package/.history/src/base-client/components/his/XList/XList_20250704142211.vue +0 -494
- package/.history/src/base-client/components/his/XList/XList_20250704142214.vue +0 -494
- package/.history/src/base-client/components/his/XList/XList_20250704143010.vue +0 -495
- package/.history/src/base-client/components/his/XList/XList_20250704143203.vue +0 -495
- package/.history/src/base-client/components/his/XList/XList_20250707095101.vue +0 -492
- package/.history/src/base-client/components/his/XList/XList_20250707100152.vue +0 -492
- package/.history/src/base-client/components/his/XList/XList_20250707100200.vue +0 -485
- package/.history/src/base-client/components/his/XList/XList_20250707100208.vue +0 -485
- package/.history/src/base-client/components/his/XList/XList_20250707100259.vue +0 -488
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807134604.vue +0 -263
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807134615.vue +0 -302
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807134621.vue +0 -301
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807134634.vue +0 -311
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807134644.vue +0 -330
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807134653.vue +0 -330
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807134836.vue +0 -330
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135247.vue +0 -330
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135303.vue +0 -354
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135316.vue +0 -363
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135323.vue +0 -363
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135334.vue +0 -366
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135342.vue +0 -364
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135349.vue +0 -364
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135351.vue +0 -346
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135354.vue +0 -346
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135401.vue +0 -346
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135406.vue +0 -346
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807135424.vue +0 -346
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807143043.vue +0 -254
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807155506.vue +0 -329
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807155535.vue +0 -330
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807155543.vue +0 -330
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807155926.vue +0 -304
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807155928.vue +0 -304
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807172548.vue +0 -298
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807172609.vue +0 -298
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807172623.vue +0 -298
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807172631.vue +0 -298
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807172701.vue +0 -298
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807172704.vue +0 -298
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807175937.vue +0 -290
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807175942.vue +0 -290
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807180210.vue +0 -290
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807180424.vue +0 -290
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807180448.vue +0 -290
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807180915.vue +0 -262
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250807180917.vue +0 -262
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101106.vue +0 -283
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101112.vue +0 -289
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101118.vue +0 -289
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101129.vue +0 -294
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101137.vue +0 -318
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101145.vue +0 -320
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101154.vue +0 -320
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101211.vue +0 -320
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101236.vue +0 -320
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250808101239.vue +0 -320
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114001.vue +0 -342
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114005.vue +0 -342
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114014.vue +0 -345
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114020.vue +0 -345
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114028.vue +0 -345
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114108.vue +0 -345
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114115.vue +0 -345
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114333.vue +0 -346
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114339.vue +0 -350
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114344.vue +0 -355
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114351.vue +0 -355
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114408.vue +0 -355
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250811114410.vue +0 -355
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813154330.vue +0 -389
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813154338.vue +0 -389
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813154402.vue +0 -389
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813154425.vue +0 -389
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813154428.vue +0 -389
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813171922.vue +0 -391
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813171957.vue +0 -391
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813172004.vue +0 -391
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813172012.vue +0 -391
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813172241.vue +0 -391
- package/.history/src/base-client/components/his/XShiftSchedule/XShiftSchedule_20250813172242.vue +0 -391
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103845.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103852.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103857.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103859.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103907.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103910.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103911.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103913.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103916.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807103931.vue +0 -142
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807145127.vue +0 -85
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807145136.vue +0 -81
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807145142.vue +0 -81
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807145145.vue +0 -81
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807145148.vue +0 -81
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807145151.vue +0 -81
- package/.history/src/base-client/components/his/XShiftSchedule/dome_20250807145155.vue +0 -81
- package/Users/objecrt/af-vue2-client/src/base-client/components/his/XShiftSchedule/XShiftSchedule.vue +0 -213
- package/src/base-client/components/TreeList/TreeList.vue +0 -91
- package/src/base-client/components/TreeList/TreeNode.vue +0 -81
- package/src/base-client/components/common/XCardSet/XTiltle.vue +0 -191
- package/src/base-client/components/his/XHisEditor/dome.vue +0 -144
@@ -1,81 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<a-table :columns="columns" :data-source="data">
|
3
|
-
<a slot="name" slot-scope="text">{{ text }}</a>
|
4
|
-
<template slot="tags">
|
5
|
-
<a-input v-for="(item, index) in 3" :key="index" placeholder="Basic usage"/>
|
6
|
-
</template>
|
7
|
-
<span slot="action" slot-scope="text, record">
|
8
|
-
<a>Invite 一 {{ record.name }}</a>
|
9
|
-
<a-divider type="vertical" />
|
10
|
-
<a>Delete</a>
|
11
|
-
<a-divider type="vertical" />
|
12
|
-
<a class="ant-dropdown-link"> More actions <a-icon type="down" /> </a>
|
13
|
-
</span>
|
14
|
-
</a-table>
|
15
|
-
</template>
|
16
|
-
<script>
|
17
|
-
|
18
|
-
const columns = [
|
19
|
-
{
|
20
|
-
title: 'name',
|
21
|
-
dataIndex: 'name',
|
22
|
-
key: 'name',
|
23
|
-
scopedSlots: { customRender: 'name' }
|
24
|
-
},
|
25
|
-
{
|
26
|
-
title: 'Age',
|
27
|
-
dataIndex: 'age',
|
28
|
-
key: 'age'
|
29
|
-
},
|
30
|
-
{
|
31
|
-
title: 'Address',
|
32
|
-
dataIndex: 'address',
|
33
|
-
key: 'address'
|
34
|
-
},
|
35
|
-
{
|
36
|
-
title: 'Tags',
|
37
|
-
key: 'tags',
|
38
|
-
dataIndex: 'tags',
|
39
|
-
scopedSlots: { customRender: 'tags' }
|
40
|
-
},
|
41
|
-
{
|
42
|
-
title: 'Action',
|
43
|
-
key: 'action',
|
44
|
-
scopedSlots: { customRender: 'action' }
|
45
|
-
}
|
46
|
-
]
|
47
|
-
|
48
|
-
const data = [
|
49
|
-
{
|
50
|
-
key: '1',
|
51
|
-
name: 'John Brown',
|
52
|
-
age: 32,
|
53
|
-
address: 'New York No. 1 Lake Park',
|
54
|
-
tags: ['nice', 'developer']
|
55
|
-
},
|
56
|
-
{
|
57
|
-
key: '2',
|
58
|
-
name: 'Jim Green',
|
59
|
-
age: 42,
|
60
|
-
address: 'London No. 1 Lake Park',
|
61
|
-
tags: ['loser']
|
62
|
-
},
|
63
|
-
{
|
64
|
-
key: '3',
|
65
|
-
name: 'Joe Black',
|
66
|
-
age: 32,
|
67
|
-
address: 'Sidney No. 1 Lake Park',
|
68
|
-
tags: ['cool', 'teacher']
|
69
|
-
}
|
70
|
-
]
|
71
|
-
|
72
|
-
export default {
|
73
|
-
|
74
|
-
data () {
|
75
|
-
return {
|
76
|
-
data,
|
77
|
-
columns
|
78
|
-
}
|
79
|
-
}
|
80
|
-
}
|
81
|
-
</script>
|
@@ -1,81 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<a-table :columns="columns" :data-source="data">
|
3
|
-
<a slot="name" slot-scope="text">{{ text }}</a>
|
4
|
-
<template slot="tags">
|
5
|
-
<a-input v-for="(item, index) in 3" :key="index" placeholder="Basic usage"/>
|
6
|
-
</template>
|
7
|
-
<span slot="action" slot-scope="text, record">
|
8
|
-
<a>Invite 一 {{ record.name }}</a>
|
9
|
-
<a-divider type="vertical" />
|
10
|
-
<a>Delete</a>
|
11
|
-
<a-divider type="vertical" />
|
12
|
-
<a class="ant-dropdown-link"> More actions <a-icon type="down" /> </a>
|
13
|
-
</span>
|
14
|
-
</a-table>
|
15
|
-
</template>
|
16
|
-
<script>
|
17
|
-
|
18
|
-
const columns = [
|
19
|
-
{
|
20
|
-
title: 'name',
|
21
|
-
dataIndex: 'name',
|
22
|
-
key: 'name',
|
23
|
-
scopedSlots: { customRender: 'name' }
|
24
|
-
},
|
25
|
-
{
|
26
|
-
title: 'Age',
|
27
|
-
dataIndex: 'age',
|
28
|
-
key: 'age'
|
29
|
-
},
|
30
|
-
{
|
31
|
-
title: 'Address',
|
32
|
-
dataIndex: 'address',
|
33
|
-
key: 'address'
|
34
|
-
},
|
35
|
-
{
|
36
|
-
title: 'Tags',
|
37
|
-
key: 'tags',
|
38
|
-
dataIndex: 'tags',
|
39
|
-
scopedSlots: { customRender: 'tags' }
|
40
|
-
},
|
41
|
-
{
|
42
|
-
title: 'Action',
|
43
|
-
key: 'action',
|
44
|
-
scopedSlots: { customRender: 'action' }
|
45
|
-
}
|
46
|
-
]
|
47
|
-
|
48
|
-
const data = [
|
49
|
-
{
|
50
|
-
key: '1',
|
51
|
-
name: 'John Brown',
|
52
|
-
age: 32,
|
53
|
-
address: 'New York No. 1 Lake Park',
|
54
|
-
tags: ['nice', 'developer']
|
55
|
-
},
|
56
|
-
{
|
57
|
-
key: '2',
|
58
|
-
name: 'Jim Green',
|
59
|
-
age: 42,
|
60
|
-
address: 'London No. 1 Lake Park',
|
61
|
-
tags: ['loser']
|
62
|
-
},
|
63
|
-
{
|
64
|
-
key: '3',
|
65
|
-
name: 'Joe Black',
|
66
|
-
age: 32,
|
67
|
-
address: 'Sidney No. 1 Lake Park',
|
68
|
-
tags: ['cool', 'teacher']
|
69
|
-
}
|
70
|
-
]
|
71
|
-
|
72
|
-
export default {
|
73
|
-
|
74
|
-
data () {
|
75
|
-
return {
|
76
|
-
data,
|
77
|
-
columns
|
78
|
-
}
|
79
|
-
}
|
80
|
-
}
|
81
|
-
</script>
|
@@ -1,81 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<a-table :columns="columns" :data-source="data">
|
3
|
-
<a slot="name" slot-scope="text">{{ text }}</a>
|
4
|
-
<template slot="tags">
|
5
|
-
<a-input v-for="(item, index) in 3" :key="index" placeholder="Basic usage"/>
|
6
|
-
</template>
|
7
|
-
<span slot="action" slot-scope="text, record">
|
8
|
-
<a>Invite 一 {{ record.name }}</a>
|
9
|
-
<a-divider type="vertical" />
|
10
|
-
<a>Delete</a>
|
11
|
-
<a-divider type="vertical" />
|
12
|
-
<a class="ant-dropdown-link"> More actions <a-icon type="down" /> </a>
|
13
|
-
</span>
|
14
|
-
</a-table>
|
15
|
-
</template>
|
16
|
-
<script>
|
17
|
-
|
18
|
-
const columns = [
|
19
|
-
{
|
20
|
-
title: 'name',
|
21
|
-
dataIndex: 'name',
|
22
|
-
key: 'name',
|
23
|
-
scopedSlots: { customRender: 'name' }
|
24
|
-
},
|
25
|
-
{
|
26
|
-
title: 'Age',
|
27
|
-
dataIndex: 'age',
|
28
|
-
key: 'age'
|
29
|
-
},
|
30
|
-
{
|
31
|
-
title: 'Address',
|
32
|
-
dataIndex: 'address',
|
33
|
-
key: 'address'
|
34
|
-
},
|
35
|
-
{
|
36
|
-
title: 'Tags',
|
37
|
-
key: 'tags',
|
38
|
-
dataIndex: 'tags',
|
39
|
-
scopedSlots: { customRender: 'tags' }
|
40
|
-
},
|
41
|
-
{
|
42
|
-
title: 'Action',
|
43
|
-
key: 'action',
|
44
|
-
scopedSlots: { customRender: 'action' }
|
45
|
-
}
|
46
|
-
]
|
47
|
-
|
48
|
-
const data = [
|
49
|
-
{
|
50
|
-
key: '1',
|
51
|
-
name: 'John Brown',
|
52
|
-
age: 32,
|
53
|
-
address: 'New York No. 1 Lake Park',
|
54
|
-
tags: ['nice', 'developer']
|
55
|
-
},
|
56
|
-
{
|
57
|
-
key: '2',
|
58
|
-
name: 'Jim Green',
|
59
|
-
age: 42,
|
60
|
-
address: 'London No. 1 Lake Park',
|
61
|
-
tags: ['loser']
|
62
|
-
},
|
63
|
-
{
|
64
|
-
key: '3',
|
65
|
-
name: 'Joe Black',
|
66
|
-
age: 32,
|
67
|
-
address: 'Sidney No. 1 Lake Park',
|
68
|
-
tags: ['cool', 'teacher']
|
69
|
-
}
|
70
|
-
]
|
71
|
-
|
72
|
-
export default {
|
73
|
-
|
74
|
-
data () {
|
75
|
-
return {
|
76
|
-
data,
|
77
|
-
columns
|
78
|
-
}
|
79
|
-
}
|
80
|
-
}
|
81
|
-
</script>
|
@@ -1,81 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<a-table :columns="columns" :data-source="data">
|
3
|
-
<a slot="name" slot-scope="text">{{ text }}</a>
|
4
|
-
<template slot="tags">
|
5
|
-
<a-input v-for="(item, index) in 3" :key="index" placeholder="Basic usage"/>
|
6
|
-
</template>
|
7
|
-
<span slot="action" slot-scope="text, record">
|
8
|
-
<a>Invite 一 {{ record.name }}</a>
|
9
|
-
<a-divider type="vertical" />
|
10
|
-
<a>Delete</a>
|
11
|
-
<a-divider type="vertical" />
|
12
|
-
<a class="ant-dropdown-link"> More actions <a-icon type="down" /> </a>
|
13
|
-
</span>
|
14
|
-
</a-table>
|
15
|
-
</template>
|
16
|
-
<script>
|
17
|
-
|
18
|
-
const columns = [
|
19
|
-
{
|
20
|
-
title: 'name',
|
21
|
-
dataIndex: 'name',
|
22
|
-
key: 'name',
|
23
|
-
scopedSlots: { customRender: 'name' }
|
24
|
-
},
|
25
|
-
{
|
26
|
-
title: 'Age',
|
27
|
-
dataIndex: 'age',
|
28
|
-
key: 'age'
|
29
|
-
},
|
30
|
-
{
|
31
|
-
title: 'Address',
|
32
|
-
dataIndex: 'address',
|
33
|
-
key: 'address'
|
34
|
-
},
|
35
|
-
{
|
36
|
-
title: 'Tags',
|
37
|
-
key: 'tags',
|
38
|
-
dataIndex: 'tags',
|
39
|
-
scopedSlots: { customRender: 'tags' }
|
40
|
-
},
|
41
|
-
{
|
42
|
-
title: 'Action',
|
43
|
-
key: 'action',
|
44
|
-
scopedSlots: { customRender: 'action' }
|
45
|
-
}
|
46
|
-
]
|
47
|
-
|
48
|
-
const data = [
|
49
|
-
{
|
50
|
-
key: '1',
|
51
|
-
name: 'John Brown',
|
52
|
-
age: 32,
|
53
|
-
address: 'New York No. 1 Lake Park',
|
54
|
-
tags: ['nice', 'developer']
|
55
|
-
},
|
56
|
-
{
|
57
|
-
key: '2',
|
58
|
-
name: 'Jim Green',
|
59
|
-
age: 42,
|
60
|
-
address: 'London No. 1 Lake Park',
|
61
|
-
tags: ['loser']
|
62
|
-
},
|
63
|
-
{
|
64
|
-
key: '3',
|
65
|
-
name: 'Joe Black',
|
66
|
-
age: 32,
|
67
|
-
address: 'Sidney No. 1 Lake Park',
|
68
|
-
tags: ['cool', 'teacher']
|
69
|
-
}
|
70
|
-
]
|
71
|
-
|
72
|
-
export default {
|
73
|
-
|
74
|
-
data () {
|
75
|
-
return {
|
76
|
-
data,
|
77
|
-
columns
|
78
|
-
}
|
79
|
-
}
|
80
|
-
}
|
81
|
-
</script>
|
@@ -1,213 +0,0 @@
|
|
1
|
-
import { getConfigByName, runLogic } from '@vue2-client/services/api/common'
|
2
|
-
|
3
|
-
export default {
|
4
|
-
data () {
|
5
|
-
return {
|
6
|
-
// 输入框数据
|
7
|
-
inputData: [],
|
8
|
-
// 模式
|
9
|
-
pattern: 'schedule',
|
10
|
-
data: [],
|
11
|
-
// 列配置
|
12
|
-
columns: [],
|
13
|
-
// 列名
|
14
|
-
columnNames: [],
|
15
|
-
// 选中的行键值集合
|
16
|
-
selectedRows: [],
|
17
|
-
// 选中的行信息集合
|
18
|
-
selectedRowKeys: [],
|
19
|
-
// 原始数据备份
|
20
|
-
originalData: [],
|
21
|
-
// 配置参数
|
22
|
-
configData: {},
|
23
|
-
// 当前显示的周次日期
|
24
|
-
currentWeekDates: [],
|
25
|
-
weekDays: [...['周一', '周二', '周三', '周四', '周五', '周六', '周日'].map((title, index) => {
|
26
|
-
const key = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'][index]
|
27
|
-
return { title, key }
|
28
|
-
})],
|
29
|
-
// 排班时间表
|
30
|
-
shiftTable: [...['周一', '周二', '周三', '周四', '周五', '周六', '周日'].map((title, index) => {
|
31
|
-
const key = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'][index]
|
32
|
-
return {
|
33
|
-
key, dataIndex: key, scopedSlots: { customRender: key }, slots: { title: key }, align: 'center', width: key === 'Monday' || key === 'Sunday' ? 170 : 120
|
34
|
-
}
|
35
|
-
}),
|
36
|
-
{
|
37
|
-
title: '排班数',
|
38
|
-
key: 'sk_limit',
|
39
|
-
dataIndex: 'sk_limit',
|
40
|
-
scopedSlots: { customRender: 'sk_limit' },
|
41
|
-
align: 'center'
|
42
|
-
}
|
43
|
-
]
|
44
|
-
}
|
45
|
-
},
|
46
|
-
props: {
|
47
|
-
// 配置名
|
48
|
-
queryParamsName: {
|
49
|
-
type: String,
|
50
|
-
default: ''
|
51
|
-
},
|
52
|
-
// 服务名
|
53
|
-
serviceName: {
|
54
|
-
type: String,
|
55
|
-
default: 'af-his'
|
56
|
-
}
|
57
|
-
},
|
58
|
-
computed: {
|
59
|
-
rowSelection () {
|
60
|
-
return {
|
61
|
-
selectedRowKeys: this.selectedRowKeys,
|
62
|
-
onChange: (selectedRowKeys, selectedRows) => {
|
63
|
-
this.onSelectChange(selectedRowKeys, selectedRows)
|
64
|
-
}
|
65
|
-
}
|
66
|
-
}
|
67
|
-
},
|
68
|
-
mounted () {
|
69
|
-
this.initWeekDates()
|
70
|
-
},
|
71
|
-
methods: {
|
72
|
-
handleShiftChange (day, index, record) {
|
73
|
-
// 找到当前记录在data中的索引
|
74
|
-
const dataIndex = this.data.findIndex(item => item.id === record.id)
|
75
|
-
if (dataIndex === -1) return
|
76
|
-
// 获取当前状态
|
77
|
-
const currentValue = record[day][index]
|
78
|
-
const newValue = currentValue === 1 || currentValue === '1' ? 0 : 1
|
79
|
-
// 更新按钮显示
|
80
|
-
this.$set(record[day], index, newValue)
|
81
|
-
// 同步更新data中的数据
|
82
|
-
this.$set(this.data[dataIndex][day], index, newValue)
|
83
|
-
},
|
84
|
-
onSelectChange (selectedRowKeys, selectedRows) {
|
85
|
-
this.selectedRowKeys = selectedRowKeys
|
86
|
-
this.selectedRows = selectedRows
|
87
|
-
},
|
88
|
-
// 获取选中的行数据
|
89
|
-
getSelectedRowData () {
|
90
|
-
return this.selectedRows
|
91
|
-
},
|
92
|
-
// 获取全部数据
|
93
|
-
getAllTable () {
|
94
|
-
return this.data
|
95
|
-
},
|
96
|
-
// 初始化数据
|
97
|
-
async init (queryParamsName) {
|
98
|
-
getConfigByName(queryParamsName, this.serviceName, result => {
|
99
|
-
this.configData = result
|
100
|
-
runLogic(result.dataSource, {}, this.serviceName).then(res => {
|
101
|
-
this.columns = []
|
102
|
-
this.columns = JSON.parse(JSON.stringify(this.configData.columns))
|
103
|
-
this.pattern = result.pattern
|
104
|
-
if (this.pattern == 'schedule') {
|
105
|
-
for (let i = 0; i < this.shiftTable.length; i++) {
|
106
|
-
this.columns.push(this.shiftTable[i])
|
107
|
-
}
|
108
|
-
if (res && Array.isArray(res)) {
|
109
|
-
const weekDays = ['monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday']
|
110
|
-
const shifts = ['am', 'pm', 'evening']
|
111
|
-
let key = 0
|
112
|
-
this.data = res.map(item => {
|
113
|
-
const scheduleData = {
|
114
|
-
key: key++
|
115
|
-
}
|
116
|
-
this.configData.columnsName.forEach(columnName => { scheduleData[columnName] = item[columnName] })
|
117
|
-
weekDays.forEach(day => {
|
118
|
-
scheduleData[day.charAt(0).toUpperCase() + day.slice(1)] = shifts.map(shift => item[`f_${day}_${shift}`] === '1' ? 1 : 0)
|
119
|
-
})
|
120
|
-
return scheduleData
|
121
|
-
})
|
122
|
-
// 保存原始数据
|
123
|
-
this.originalData = JSON.parse(JSON.stringify(this.data))
|
124
|
-
}
|
125
|
-
} else if (this.pattern == 'form') {
|
126
|
-
// 数据格式化:将原始数据转换为包含所有输入字段的格式
|
127
|
-
const inputFields = this.configData.columns
|
128
|
-
.filter(col => col.type === 'input')
|
129
|
-
.map(col => col.dataIndex)
|
130
|
-
this.data = res.map(item => {
|
131
|
-
const newItem = { ...item }
|
132
|
-
// 初始化所有输入框字段
|
133
|
-
inputFields.forEach(field => {
|
134
|
-
// 获取该字段对应的列配置,以确定row的长度
|
135
|
-
const column = this.configData.columns.find(col => col.dataIndex === field)
|
136
|
-
if (column && column.type === 'input' && column.row) {
|
137
|
-
const rowCount = column.row.length
|
138
|
-
// 如果item中已有该字段且为数组,保持原样,否则初始化为空数组
|
139
|
-
newItem[field] = Array.isArray(item[field]) ? item[field] : Array(rowCount).fill('')
|
140
|
-
} else {
|
141
|
-
newItem[field] = item[field] || ''
|
142
|
-
}
|
143
|
-
})
|
144
|
-
return newItem
|
145
|
-
})
|
146
|
-
}
|
147
|
-
})
|
148
|
-
})
|
149
|
-
},
|
150
|
-
// 查询数据函数
|
151
|
-
filterTableData (filters) {
|
152
|
-
if (!filters || Object.keys(filters).length === 0) {
|
153
|
-
// 如果没有过滤条件,恢复原始数据
|
154
|
-
this.data = JSON.parse(JSON.stringify(this.originalData))
|
155
|
-
return
|
156
|
-
}
|
157
|
-
// 从原始数据开始过滤
|
158
|
-
this.data = this.originalData.filter(item => {
|
159
|
-
// 检查每一项是否满足所有过滤条件
|
160
|
-
return Object.entries(filters).every(([key, value]) => {
|
161
|
-
// 如果过滤值是字符串,进行模糊匹配
|
162
|
-
if (typeof value === 'string') {
|
163
|
-
return item[key] && item[key].toString().toLowerCase().includes(value.toLowerCase())
|
164
|
-
}
|
165
|
-
// 如果过滤值是数字,进行精确匹配
|
166
|
-
return item[key] === value
|
167
|
-
})
|
168
|
-
})
|
169
|
-
},
|
170
|
-
// 初始化周次日期
|
171
|
-
initWeekDates () {
|
172
|
-
const today = new Date()
|
173
|
-
const currentDay = today.getDay() || 7 // 将周日的0转换为7
|
174
|
-
const monday = new Date(today)
|
175
|
-
monday.setDate(today.getDate() - currentDay + 1) // 设置为本周一
|
176
|
-
this.currentWeekDates = Array.from({ length: 7 }, (_, index) => {
|
177
|
-
const date = new Date(monday)
|
178
|
-
date.setDate(monday.getDate() + index)
|
179
|
-
return date
|
180
|
-
})
|
181
|
-
},
|
182
|
-
// 切换到上一周
|
183
|
-
handleLastWeek () {
|
184
|
-
const monday = new Date(this.currentWeekDates[0])
|
185
|
-
monday.setDate(monday.getDate() - 7)
|
186
|
-
this.updateWeekDates(monday)
|
187
|
-
},
|
188
|
-
// 切换到下一周
|
189
|
-
handleNextWeek () {
|
190
|
-
const monday = new Date(this.currentWeekDates[0])
|
191
|
-
monday.setDate(monday.getDate() + 7)
|
192
|
-
this.updateWeekDates(monday)
|
193
|
-
},
|
194
|
-
// 更新周次日期
|
195
|
-
updateWeekDates (monday) {
|
196
|
-
this.currentWeekDates = Array.from({ length: 7 }, (_, index) => {
|
197
|
-
const date = new Date(monday)
|
198
|
-
date.setDate(monday.getDate() + index)
|
199
|
-
return date
|
200
|
-
})
|
201
|
-
}
|
202
|
-
},
|
203
|
-
watch: {
|
204
|
-
queryParamsName: {
|
205
|
-
handler (newValue) {
|
206
|
-
this.init(newValue)
|
207
|
-
},
|
208
|
-
deep: true,
|
209
|
-
immediate: true
|
210
|
-
}
|
211
|
-
}
|
212
|
-
}
|
213
|
-
</script>
|
@@ -1,91 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<div class="tree-container">
|
3
|
-
<div class="tree-list">
|
4
|
-
<tree-node
|
5
|
-
v-for="node in treeData"
|
6
|
-
:key="node.id"
|
7
|
-
:node="node"
|
8
|
-
@toggle="toggleNode"/>
|
9
|
-
</div>
|
10
|
-
</div>
|
11
|
-
</template>
|
12
|
-
|
13
|
-
<script>
|
14
|
-
import TreeNode from './TreeNode.vue'
|
15
|
-
|
16
|
-
export default {
|
17
|
-
name: 'TreeList',
|
18
|
-
components: {
|
19
|
-
TreeNode
|
20
|
-
},
|
21
|
-
data() {
|
22
|
-
return {
|
23
|
-
treeData: [
|
24
|
-
{
|
25
|
-
id: '1',
|
26
|
-
title: '体征',
|
27
|
-
expanded: false,
|
28
|
-
children: [
|
29
|
-
{
|
30
|
-
id: '1-1',
|
31
|
-
title: '一般情况'
|
32
|
-
},
|
33
|
-
{
|
34
|
-
id: '1-2',
|
35
|
-
title: '皮肤粘膜'
|
36
|
-
},
|
37
|
-
{
|
38
|
-
id: '1-3',
|
39
|
-
title: '头颈',
|
40
|
-
expanded: false,
|
41
|
-
children: [
|
42
|
-
{
|
43
|
-
id: '1-3-1',
|
44
|
-
title: '头部'
|
45
|
-
},
|
46
|
-
{
|
47
|
-
id: '1-3-2',
|
48
|
-
title: '颈部'
|
49
|
-
}
|
50
|
-
]
|
51
|
-
}
|
52
|
-
]
|
53
|
-
}
|
54
|
-
]
|
55
|
-
}
|
56
|
-
},
|
57
|
-
methods: {
|
58
|
-
toggleNode(node) {
|
59
|
-
node.expanded = !node.expanded
|
60
|
-
}
|
61
|
-
}
|
62
|
-
}
|
63
|
-
</script>
|
64
|
-
|
65
|
-
<style scoped>
|
66
|
-
.tree-container {
|
67
|
-
width: 240px;
|
68
|
-
height: 400px;
|
69
|
-
border: 1px solid #e8e8e8;
|
70
|
-
overflow-y: auto;
|
71
|
-
padding: 8px;
|
72
|
-
}
|
73
|
-
|
74
|
-
/* 自定义滚动条样式 */
|
75
|
-
.tree-container::-webkit-scrollbar {
|
76
|
-
width: 6px;
|
77
|
-
}
|
78
|
-
|
79
|
-
.tree-container::-webkit-scrollbar-thumb {
|
80
|
-
background-color: #ccc;
|
81
|
-
border-radius: 3px;
|
82
|
-
}
|
83
|
-
|
84
|
-
.tree-container::-webkit-scrollbar-track {
|
85
|
-
background-color: #f5f5f5;
|
86
|
-
}
|
87
|
-
|
88
|
-
.tree-list {
|
89
|
-
font-size: 14px;
|
90
|
-
}
|
91
|
-
</style>
|
@@ -1,81 +0,0 @@
|
|
1
|
-
<template>
|
2
|
-
<div class="tree-node">
|
3
|
-
<div class="node-content" @click="handleClick">
|
4
|
-
<span v-if="hasChildren" class="toggle-icon">
|
5
|
-
{{ node.expanded ? '-' : '+' }}
|
6
|
-
</span>
|
7
|
-
<span class="node-title">{{ node.title }}</span>
|
8
|
-
</div>
|
9
|
-
<div v-if="hasChildren && node.expanded" class="node-children">
|
10
|
-
<tree-node
|
11
|
-
v-for="child in node.children"
|
12
|
-
:key="child.id"
|
13
|
-
:node="child"
|
14
|
-
@toggle="$emit('toggle', $event)"
|
15
|
-
:level="level + 1"/>
|
16
|
-
</div>
|
17
|
-
</div>
|
18
|
-
</template>
|
19
|
-
|
20
|
-
<script>
|
21
|
-
export default {
|
22
|
-
name: 'TreeNode',
|
23
|
-
props: {
|
24
|
-
node: {
|
25
|
-
type: Object,
|
26
|
-
required: true
|
27
|
-
},
|
28
|
-
level: {
|
29
|
-
type: Number,
|
30
|
-
default: 0
|
31
|
-
}
|
32
|
-
},
|
33
|
-
computed: {
|
34
|
-
hasChildren() {
|
35
|
-
return this.node.children && this.node.children.length > 0
|
36
|
-
}
|
37
|
-
},
|
38
|
-
methods: {
|
39
|
-
handleClick() {
|
40
|
-
if (this.hasChildren) {
|
41
|
-
this.$emit('toggle', this.node)
|
42
|
-
}
|
43
|
-
}
|
44
|
-
}
|
45
|
-
}
|
46
|
-
</script>
|
47
|
-
|
48
|
-
<style scoped>
|
49
|
-
.tree-node {
|
50
|
-
margin: 2px 0;
|
51
|
-
}
|
52
|
-
|
53
|
-
.node-content {
|
54
|
-
display: flex;
|
55
|
-
align-items: center;
|
56
|
-
padding: 4px 0;
|
57
|
-
user-select: none;
|
58
|
-
}
|
59
|
-
|
60
|
-
.toggle-icon {
|
61
|
-
width: 16px;
|
62
|
-
text-align: center;
|
63
|
-
font-size: 14px;
|
64
|
-
color: #666;
|
65
|
-
margin-right: 4px;
|
66
|
-
cursor: pointer;
|
67
|
-
}
|
68
|
-
|
69
|
-
.node-title {
|
70
|
-
flex: 1;
|
71
|
-
cursor: default;
|
72
|
-
}
|
73
|
-
|
74
|
-
.node-content:hover {
|
75
|
-
background-color: #f5f5f5;
|
76
|
-
}
|
77
|
-
|
78
|
-
.node-children {
|
79
|
-
padding-left: 20px;
|
80
|
-
}
|
81
|
-
</style>
|