Browse Source

Merge branch 'master' of gitee.com:wy786299803/aiplat-vue into master

Ann 3 years ago
parent
commit
b7b8b7140a
57 changed files with 850 additions and 189 deletions
  1. 1 0
      src/assets/img/cnnmnist.svg
  2. 0 0
      src/assets/img/visisvg/BinomialLogisticRegression.svg
  3. 0 0
      src/assets/img/visisvg/CNNtextclassfication.svg
  4. 1 0
      src/assets/img/visisvg/DecisionTreeClassification.svg
  5. 1 0
      src/assets/img/visisvg/KNN.svg
  6. 1 0
      src/assets/img/visisvg/OCR.svg
  7. 1 0
      src/assets/img/visisvg/RNNtextclassfication.svg
  8. 0 0
      src/assets/img/visisvg/SVM.svg
  9. 0 0
      src/assets/img/visisvg/YOLO.svg
  10. 1 0
      src/assets/img/visisvg/cnnmnist.svg
  11. 0 0
      src/assets/img/visisvg/cnntextclassification1.svg
  12. 1 0
      src/assets/img/visisvg/contourCircle2.svg
  13. 0 0
      src/assets/img/visisvg/contourCircle22.svg
  14. 0 0
      src/assets/img/visisvg/contourRect1.svg
  15. 0 0
      src/assets/img/visisvg/contourRect11.svg
  16. 0 0
      src/assets/img/visisvg/feature.svg
  17. 0 0
      src/assets/img/visisvg/intelligent-algorithm.svg
  18. 1 0
      src/assets/img/visisvg/jiebafenci.svg
  19. 1 0
      src/assets/img/visisvg/minmaxscaler.svg
  20. 1 0
      src/assets/img/visisvg/missvalueprocess.svg
  21. 0 0
      src/assets/img/visisvg/resnet50.svg
  22. 1 0
      src/assets/img/visisvg/sentencessimilarity.svg
  23. 1 0
      src/assets/img/visisvg/sentiment.svg
  24. 1 0
      src/assets/img/visisvg/snownlpfenci.svg
  25. 0 0
      src/assets/img/visisvg/sparkBinomialLogisticRegression.svg
  26. 0 0
      src/assets/img/visisvg/sparkDecision-tree-regression.svg
  27. 1 0
      src/assets/img/visisvg/sparkDecisionTreeClassification.svg
  28. 0 0
      src/assets/img/visisvg/sparkFactorizationMachinesRegression.svg
  29. 1 0
      src/assets/img/visisvg/sparkGaussianMixtureModel.svg
  30. 0 0
      src/assets/img/visisvg/sparkGradientBoostedTreeClassification.svg
  31. 1 0
      src/assets/img/visisvg/sparkIsotonicRegression.svg
  32. 0 0
      src/assets/img/visisvg/sparkLatentDirichletAllocation.svg
  33. 1 0
      src/assets/img/visisvg/sparkLinearRegression.svg
  34. 1 0
      src/assets/img/visisvg/sparkMultinomialLogisticRegression.svg
  35. 1 0
      src/assets/img/visisvg/sparkNaiveBayes.svg
  36. 0 0
      src/assets/img/visisvg/sparkRandomForestClassification.svg
  37. 0 0
      src/assets/img/visisvg/sparkmlKmeans.svg
  38. 0 0
      src/assets/img/visisvg/standardscaler.svg
  39. 0 0
      src/assets/img/visisvg/vgg16.svg
  40. 1 0
      src/assets/img/visisvg/wasiyuce.svg
  41. 2 1
      src/router/index.js
  42. 2 2
      src/views/main-navbar.vue
  43. 2 2
      src/views/modules/alg/alg-publish.vue
  44. 2 2
      src/views/modules/alg/alg-update.vue
  45. 7 13
      src/views/modules/alg/models-add-or-update.vue
  46. 1 1
      src/views/modules/visi/create2.vue
  47. 94 0
      src/views/modules/visi/design-create.vue
  48. 7 3
      src/views/modules/visi/design-experconfig.vue
  49. 353 141
      src/views/modules/visi/design-graph1.vue
  50. 2 2
      src/views/modules/visi/design-node-config.vue
  51. 1 1
      src/views/modules/visi/design-workflowlog.vue
  52. 349 13
      src/views/modules/visi/design.vue
  53. 4 4
      src/views/new-menue.vue
  54. 1 1
      static/config/index-prod.js
  55. 1 1
      static/config/index-qa.js
  56. 1 1
      static/config/index-uat.js
  57. 1 1
      static/config/index.js

+ 1 - 0
src/assets/img/cnnmnist.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640351717755" class="icon" viewBox="0 0 1058 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="23347" xmlns:xlink="http://www.w3.org/1999/xlink" width="206.640625" height="200"><defs><style type="text/css"></style></defs><path d="M992.88417 0.262722a49.814807 49.814807 0 0 0-54.591569 55.273964v818.873542c0 17.74226-23.883812 32.754942-60.050727 32.754942a48.450018 48.450018 0 0 1-50.497202-46.402834V59.631054a60.050726 60.050726 0 0 0-43.673255-55.956359V0.262722H68.239462a68.239462 68.239462 0 0 0-68.239462 68.239462v768.37634A188.340915 188.340915 0 0 0 190.388099 1023.85465h687.853775a172.645839 172.645839 0 0 0 179.469785-164.457103V59.631054a62.09791 62.09791 0 0 0-64.827489-59.368332zM648.274888 682.657341h-477.676233a34.119731 34.119731 0 0 1 0-68.239462h477.676233a34.119731 34.119731 0 0 1 0 68.239462z m0-204.718386h-477.676233a34.119731 34.119731 0 0 1 0-68.239462h477.676233a34.119731 34.119731 0 0 1 0 68.239462z m0-204.718386h-272.957848a34.119731 34.119731 0 0 1 0-68.239461h272.957848a34.119731 34.119731 0 0 1 0 68.239461z" p-id="23348"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/BinomialLogisticRegression.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/CNNtextclassfication.svg


+ 1 - 0
src/assets/img/visisvg/DecisionTreeClassification.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640349370492" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7202" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M4.143262 2.378831h1008.246153v1008.246154h-1008.246153z" fill="#000000" p-id="7203"></path><path d="M504.123077 47.261538a94.523077 94.523077 0 0 1 84.283077 137.373539L837.159385 389.498092a94.523077 94.523077 0 1 1 29.365169 176.348554l-77.697969 235.189169a94.523077 94.523077 0 1 1-140.6976 101.691077H375.855262a94.523077 94.523077 0 1 1-140.6976-101.691077L157.443938 565.846646a94.523077 94.523077 0 1 1 27.884308-177.152l235.425477-202.295138A94.523077 94.523077 0 0 1 504.123077 47.261538z m58.226215 168.991508A94.113477 94.113477 0 0 1 504.123077 236.307692a94.097723 94.097723 0 0 1-56.635077-18.8416L217.056492 415.428923A94.113477 94.113477 0 0 1 236.307692 472.615385a94.4128 94.4128 0 0 1-40.802461 77.792492l78.548677 237.757046a94.554585 94.554585 0 0 1 101.817107 73.570462H648.113231a94.554585 94.554585 0 0 1 101.817107-73.570462l78.564431-237.757046A94.4128 94.4128 0 0 1 787.692308 472.615385c0-20.873846 6.774154-40.172308 18.2272-55.800123z" fill="#1890FF" p-id="7204"></path></svg>

+ 1 - 0
src/assets/img/visisvg/KNN.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640335722997" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2686" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M4.143262 2.378831h1008.246153v1008.246154h-1008.246153z" fill="#000000" opacity=".01" p-id="2687"></path><path d="M378.092308 803.446154a78.769231 78.769231 0 1 1 0 157.538461 78.769231 78.769231 0 0 1 0-157.538461z m252.061538-15.753846a78.769231 78.769231 0 1 1 0 157.538461 78.769231 78.769231 0 0 1 0-157.538461z m204.8-157.538462a78.769231 78.769231 0 1 1 0 157.538462 78.769231 78.769231 0 0 1 0-157.538462z m-661.661538 0a78.769231 78.769231 0 1 1 0 157.538462 78.769231 78.769231 0 0 1 0-157.538462z m235.173415-281.174646v187.029662l193.583262-187.029662h53.941169l-162.831754 154.261662L678.675692 708.923077h-55.453538L464.423385 529.959385 408.465723 582.892308v126.030769h-41.338092V348.9792h41.338092zM882.215385 378.092308a78.769231 78.769231 0 1 1 0 157.538461 78.769231 78.769231 0 0 1 0-157.538461zM126.030769 378.092308a78.769231 78.769231 0 1 1 0 157.538461 78.769231 78.769231 0 0 1 0-157.538461z m630.153846-220.553846a78.769231 78.769231 0 1 1 0 157.538461 78.769231 78.769231 0 0 1 0-157.538461z m-504.123077 0a78.769231 78.769231 0 1 1 0 157.538461 78.769231 78.769231 0 0 1 0-157.538461z m252.061539-78.769231a78.769231 78.769231 0 1 1 0 157.538461 78.769231 78.769231 0 0 1 0-157.538461z" fill="#A8ADBB" p-id="2688"></path></svg>

+ 1 - 0
src/assets/img/visisvg/OCR.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640335892407" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4926" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M796.1 929.4c-3.3 0-6.7-0.1-10.2-0.3-38.6-1.9-83-13.9-132-35.7-96-42.6-202.2-119.5-299.1-216.4-96.9-97-173.8-203.2-216.5-299.1-21.8-49-33.8-93.4-35.7-132-2.8-57.8 18.2-91.6 36.3-109.7 18.1-18.1 51.8-39.1 109.7-36.3 38.6 1.9 83 13.9 132 35.7 95.9 42.7 202.1 119.6 299.1 216.5 96.9 96.9 173.8 203.1 216.5 299.1 21.8 49 33.8 93.4 35.7 132 2.8 57.8-18.2 91.6-36.3 109.7-17.1 16.9-47.9 36.5-99.5 36.5z m-558-751c-19.4 0-34.3 4.5-43.4 13.5-22.6 22.6-16.6 81.6 15.6 154 38.9 87.3 110 185.1 200.2 275.4 90.3 90.3 188.1 161.4 275.4 200.2 43.3 19.3 81.8 29.1 110.6 29.1 19.4 0 34.3-4.5 43.4-13.5 22.6-22.6 16.6-81.6-15.6-154-38.9-87.3-110-185.1-200.3-275.4-90.3-90.3-188.1-161.4-275.4-200.2-43.3-19.3-81.8-29.1-110.5-29.1z" p-id="4927"></path><path d="M238.4 929.4c-51.6 0-82.4-19.6-99.4-36.6-18.1-18.1-39.1-51.9-36.3-109.7 1.9-38.6 13.9-83 35.7-132C181 555.2 257.9 449 354.8 352c96.9-96.9 203.1-173.8 299.1-216.5 49-21.8 93.4-33.8 132-35.7 57.8-2.8 91.6 18.2 109.7 36.3 18.1 18.1 39.1 51.9 36.3 109.7-1.9 38.6-13.9 83-35.7 132-42.7 96-119.6 202.2-216.5 299.2S476.6 850.8 380.6 893.5c-49 21.8-93.4 33.8-132 35.7-3.5 0.1-6.9 0.2-10.2 0.2z m558-751c-28.8 0-67.3 9.9-110.6 29.1-87.3 38.9-185.1 110-275.4 200.2-90.2 90.3-161.3 188.1-200.1 275.4-32.2 72.4-38.2 131.4-15.6 154 22.6 22.6 81.6 16.6 154-15.6 87.3-38.8 185.1-110 275.4-200.2 90.3-90.3 161.4-188.1 200.2-275.4 32.2-72.4 38.2-131.4 15.6-154-9.1-9.1-24.1-13.5-43.5-13.5z" p-id="4928"></path></svg>

+ 1 - 0
src/assets/img/visisvg/RNNtextclassfication.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640350635725" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="18433" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M928 960h-832c-19.2 0-32-12.8-32-32v-832c0-19.2 12.8-32 32-32h832c19.2 0 32 12.8 32 32v832c0 19.2-12.8 32-32 32zM896 128H128v768h768V128zM240 332.8L499.2 528c0 3.2 3.2 6.4 0 9.6l-259.2 195.2c-3.2 3.2-6.4 3.2-9.6 0V339.2c0-3.2 3.2-6.4 6.4-6.4h3.2z m54.4 281.6l105.6-80L294.4 454.4v160z m291.2-393.6L672 307.2l86.4-86.4c3.2-3.2 6.4-3.2 9.6 0l35.2 35.2c3.2 3.2 3.2 6.4 0 9.6L716.8 352l86.4 86.4c3.2 3.2 3.2 6.4 0 9.6l-35.2 35.2c-3.2 3.2-6.4 3.2-9.6 0L672 396.8 585.6 483.2c-3.2 3.2-6.4 3.2-9.6 0L540.8 448c-3.2-3.2-3.2-6.4 0-9.6L627.2 352 540.8 265.6c-3.2-3.2-3.2-6.4 0-9.6L576 220.8c3.2-3.2 6.4-3.2 9.6 0z m102.4 323.2C768 544 832 608 832 688S768 832 688 832 544 768 544 688s64-144 144-144z m0 224c44.8 0 80-35.2 80-80s-35.2-80-80-80-80 35.2-80 80 35.2 80 80 80z" p-id="18434"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/SVM.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/YOLO.svg


+ 1 - 0
src/assets/img/visisvg/cnnmnist.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640351717755" class="icon" viewBox="0 0 1058 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="23347" xmlns:xlink="http://www.w3.org/1999/xlink" width="206.640625" height="200"><defs><style type="text/css"></style></defs><path d="M992.88417 0.262722a49.814807 49.814807 0 0 0-54.591569 55.273964v818.873542c0 17.74226-23.883812 32.754942-60.050727 32.754942a48.450018 48.450018 0 0 1-50.497202-46.402834V59.631054a60.050726 60.050726 0 0 0-43.673255-55.956359V0.262722H68.239462a68.239462 68.239462 0 0 0-68.239462 68.239462v768.37634A188.340915 188.340915 0 0 0 190.388099 1023.85465h687.853775a172.645839 172.645839 0 0 0 179.469785-164.457103V59.631054a62.09791 62.09791 0 0 0-64.827489-59.368332zM648.274888 682.657341h-477.676233a34.119731 34.119731 0 0 1 0-68.239462h477.676233a34.119731 34.119731 0 0 1 0 68.239462z m0-204.718386h-477.676233a34.119731 34.119731 0 0 1 0-68.239462h477.676233a34.119731 34.119731 0 0 1 0 68.239462z m0-204.718386h-272.957848a34.119731 34.119731 0 0 1 0-68.239461h272.957848a34.119731 34.119731 0 0 1 0 68.239461z" p-id="23348"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/cnntextclassification1.svg


+ 1 - 0
src/assets/img/visisvg/contourCircle2.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640335952427" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5731" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M512 294.4m-89.6 0a89.6 89.6 0 1 0 179.2 0 89.6 89.6 0 1 0-179.2 0Z" p-id="5732"></path><path d="M755.2 704m-89.6 0a89.6 89.6 0 1 0 179.2 0 89.6 89.6 0 1 0-179.2 0Z" p-id="5733"></path><path d="M268.8 704m-89.6 0a89.6 89.6 0 1 0 179.2 0 89.6 89.6 0 1 0-179.2 0Z" p-id="5734"></path><path d="M896 0H128C57.6 0 0 57.6 0 128v768c0 70.4 57.6 128 128 128h768c70.4 0 128-57.6 128-128V128c0-70.4-57.6-128-128-128zM512 806.4c-44.8 0-83.2-12.8-121.6-32-25.6 44.8-70.4 70.4-121.6 70.4C192 844.8 128 780.8 128 704c0-76.8 64-140.8 140.8-140.8s140.8 64 140.8 140.8v19.2c44.8 25.6 102.4 32 153.6 25.6l12.8 51.2c-25.6 0-44.8 6.4-64 6.4z m0-371.2c-51.2 0-96-32-121.6-70.4-44.8 32-76.8 83.2-89.6 134.4l-51.2-6.4c12.8-70.4 57.6-140.8 121.6-179.2v-19.2c0-76.8 64-140.8 140.8-140.8 76.8 0 140.8 64 140.8 140.8S588.8 435.2 512 435.2z m243.2 409.6c-76.8 0-140.8-64-140.8-140.8 0-70.4 44.8-121.6 108.8-140.8v-25.6c0-51.2-19.2-102.4-57.6-140.8l38.4-32c44.8 51.2 70.4 108.8 70.4 179.2v25.6c70.4 6.4 121.6 64 121.6 134.4 0 76.8-64 140.8-140.8 140.8z" p-id="5735"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/contourCircle22.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/contourRect1.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/contourRect11.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/feature.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/intelligent-algorithm.svg


+ 1 - 0
src/assets/img/visisvg/jiebafenci.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640350701444" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="19244" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M554.496 192v640h277.504v-640h-277.504zM106.496 106.496h810.496v810.496H106.496V106.496z m128 213.504h192V234.496H234.496v85.504z m0 149.504h192V384H234.496v85.504z m0 148.992h192v-85.504H234.496v85.504z m0 149.504h192v-85.504H234.496V768z" fill="#FF6A00" p-id="19245"></path></svg>

+ 1 - 0
src/assets/img/visisvg/minmaxscaler.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640351895483" class="icon" viewBox="0 0 1280 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="26471" xmlns:xlink="http://www.w3.org/1999/xlink" width="250" height="200"><defs><style type="text/css"></style></defs><path d="M223.996375 896.003397h351.990657V306.499045a159.815758 159.815758 0 0 1-86.757698-94.93748l-263.992992-88.517651a31.999151 31.999151 0 0 1-20.159465-40.518924l20.31946-60.67839A31.999151 31.999151 0 0 1 265.99526 1.687135l235.773742 79.077901C529.388269 32.746311 580.606909 0.027179 639.985333 0.027179a159.995753 159.995753 0 0 1 159.995753 159.995754 158.115803 158.115803 0 0 1-1.999947 19.999469l256.793184 86.097714a31.999151 31.999151 0 0 1 20.159465 40.518925l-20.359459 60.738388a31.999151 31.999151 0 0 1-40.598923 20.159465l-283.992462-95.257472a160.955728 160.955728 0 0 1-25.99931 14.239622V992.000849a31.999151 31.999151 0 0 1-31.99915 31.999151H223.996375a31.999151 31.999151 0 0 1-31.999151-31.999151v-63.998301a31.999151 31.999151 0 0 1 31.999151-31.999151z" p-id="26472"></path><path d="M0.00232 608.011042c0 88.357655 114.616958 159.995753 255.993205 159.995753s255.993205-71.638099 255.993205-159.995753c0-31.339168 4.15989-14.499615-169.995487-363.010365-35.359061-70.718123-136.436379-70.578127-171.735442 0C-2.63761 590.551505 0.00232 575.6519 0.00232 608.011042z m111.997027-31.999151l143.996178-287.992356 143.996178 287.992356z m655.982589 287.992356c0 88.357655 114.616958 159.995753 255.993205 159.995753s255.993205-71.638099 255.993205-159.995753c0-31.339168 4.15989-14.499615-170.095485-363.010365-35.359061-70.718123-136.436379-70.578127-171.735442 0C765.342006 846.54471 767.981936 831.645106 767.981936 864.004247z m111.997027-31.999151l143.996178-287.992356 143.996178 287.992356z" p-id="26473"></path></svg>

+ 1 - 0
src/assets/img/visisvg/missvalueprocess.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640351837026" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="25676" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M406.5 56c160.9 0 269.2 26.9 312.6 47.9-43.4 21-151.7 47.9-312.6 47.9s-269.2-26.9-312.6-47.9C137.3 82.9 245.6 56 406.5 56m0-56C194.3 0 22.2 46.5 22.2 103.9s172 103.9 384.3 103.9c212.2 0 384.3-46.5 384.3-103.9S618.7 0 406.5 0zM432.3 1024C149 1024 20 955.6 20 892.1h56c0 22 124.8 75.9 356.3 75.9 21.3 0 42.2-0.5 62.5-1.4l2.5 55.9c-21.2 1-42.9 1.5-65 1.5zM348.8 755.5c-7.3-0.3-14.6-0.5-21.8-0.9-129.9-6.6-240.3-30.8-295.2-64.9l29.5-47.5c46.5 28.9 149.4 50.5 268.5 56.5l21 0.9-2 55.9zM408 466.7c-128.2 0-263.9-20.1-373.4-72.2l24-50.6c222 105.5 554 65.9 677.5 14.2l21.6 51.6c-78.4 32.9-209.6 57-349.7 57z" fill="#231815" p-id="25677"></path><path d="M20.3 104.8h56v371.5h-56zM20.3 577.1h56v327.2h-56zM731.9 90.6h56v371.7h-56z" fill="#231815" p-id="25678"></path><path d="M633.5 1016.4L485.2 642.8l373.6-148.4L1007.1 868l-373.6 148.4z m-90.2-348.5l115.3 290.3L949 842.9 833.6 552.6 543.3 667.9z" fill="#040000" p-id="25679"></path><path d="M487.709 638.792l482.08-191.4 16.53 41.637-482.079 191.4z" fill="#040000" p-id="25680"></path><path d="M575.9 643.9l380.7 157.5 21.5 54.1-332 131.9-131.9-332z" fill="#040000" p-id="25681"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/resnet50.svg


+ 1 - 0
src/assets/img/visisvg/sentencessimilarity.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640351573254" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="21251" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M506.6 911.9c-1.1 0-2.2 0-3.3-0.2C404 901.9 79 860.6 66.9 737.4c-5.6-56.5 36.3-135.7 406.2-250.4V145.3c0-9.5 4-18.5 11-24.8 7-6.4 16.3-9.5 25.8-8.5 99.3 9.7 424.3 51.1 436.5 174.3 5.6 56.5-36.3 135.7-406.2 250.4v341.7c0 9.5-4 18.5-11 24.8-6.3 5.6-14.3 8.7-22.6 8.7z m-33.5-354.6C137.4 663.5 133 724 133.6 730.8 137.4 769.7 292 819 473 840.9V557.3z m67-374.6v283.6c335.7-106.2 340.1-166.7 339.5-173.5-3.8-38.9-158.4-88.2-339.5-110.1z" p-id="21252"></path><path d="M506.6 911.9c-4.1 0-8.4-0.8-12.5-2.4-20-8-195.2-81.8-200.6-206.1-3.4-78.8 63.2-153.4 198-221.5 107.6-54.4 163.4-109.3 161.2-158.7-3-69.1-118.4-130.6-158.6-146.7-17.2-6.9-25.5-26.4-18.7-43.6 6.9-17.2 26.4-25.5 43.6-18.7 20 8 195.2 81.8 200.6 206.1 3.4 78.8-63.2 153.4-198 221.5C414.1 596.1 358.4 651 360.5 700.5c3 69.1 118.4 130.6 158.6 146.7 17.2 6.9 25.5 26.4 18.7 43.6-5.3 13.1-17.9 21.1-31.2 21.1z" p-id="21253"></path><path d="M834.6 540.6c-1 48.2-1 97.5-1 147.2v23.6c0 48.3 0 97 1 145.7l51.6 4.3v16.9H714v-16.9l51.6-4.3c0.5-47.8 0.5-96.5 0.5-145.7v-23.6c0-48.7 0-98.4-0.5-147.2h-74.8l-20.3 79.6h-27l3.4-99.9h306.4l2.9 99.9h-27l-19.8-79.6h-74.8z" p-id="21254"></path></svg>

+ 1 - 0
src/assets/img/visisvg/sentiment.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640350831406" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="20413" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M844.8 140.8c-89.6-38.4-185.6-32-281.6 19.2-19.2 12.8-38.4 19.2-64 0-19.2-6.4-38.4-19.2-64-25.6-108.8-32-204.8-19.2-281.6 51.2C76.8 249.6 44.8 339.2 64 454.4c0 12.8 12.8 25.6 19.2 32 32 6.4 44.8-6.4 51.2-19.2 0-6.4 6.4-12.8 0-38.4-12.8-64 6.4-121.6 44.8-166.4 38.4-44.8 96-70.4 153.6-76.8 64 0 121.6 19.2 172.8 64 19.2 19.2 38.4 19.2 57.6 0 12.8-12.8 32-25.6 51.2-38.4 70.4-38.4 140.8-38.4 204.8-6.4 57.6 32 102.4 83.2 115.2 153.6 12.8 89.6-25.6 166.4-51.2 217.6-83.2 140.8-204.8 236.8-326.4 326.4-19.2 12.8-38.4 6.4-44.8 0-83.2-57.6-179.2-134.4-256-230.4-32-38.4-51.2-38.4-64-38.4-6.4 0-19.2 6.4-19.2 12.8 0 0-6.4 12.8 0 19.2 83.2 108.8 192 211.2 345.6 313.6 6.4 6.4 12.8 6.4 25.6 6.4 6.4 0 19.2 0 25.6-6.4 121.6-83.2 211.2-160 288-243.2 83.2-89.6 128-172.8 147.2-268.8 25.6-140.8-38.4-268.8-160-326.4z" fill="#019bf0" p-id="20414"></path><path d="M396.8 544c0-6.4 6.4-12.8 6.4-19.2l25.6-57.6 19.2 57.6c0 6.4 6.4 12.8 6.4 19.2l6.4 25.6c12.8 51.2 25.6 96 38.4 147.2 6.4 25.6 12.8 38.4 25.6 38.4 19.2 0 25.6-6.4 32-32l19.2-32c12.8-19.2 19.2-38.4 25.6-57.6 12.8-32 32-32 51.2-32h96c12.8 0 32 0 32-19.2 0-6.4 6.4-32-25.6-32H633.6c-38.4 0-51.2 6.4-64 38.4-6.4 25.6-25.6 76.8-32 70.4-6.4-6.4-12.8-44.8-12.8-44.8L512 556.8c-12.8-57.6-32-115.2-44.8-172.8-6.4-32-12.8-32-25.6-38.4-12.8 0-19.2 6.4-32 25.6l-12.8 38.4-38.4 96c-12.8 32-25.6 44.8-64 44.8h-256c-12.8 0-19.2 6.4-25.6 6.4-6.4 6.4-12.8 12.8-6.4 19.2 0 12.8 6.4 25.6 32 25.6H320c57.6 0 57.6 0 76.8-57.6z" fill="#019bf0" p-id="20415"></path></svg>

+ 1 - 0
src/assets/img/visisvg/snownlpfenci.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640350706531" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="19380" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M554.496 192v640h277.504v-640h-277.504zM106.496 106.496h810.496v810.496H106.496V106.496z m128 213.504h192V234.496H234.496v85.504z m0 149.504h192V384H234.496v85.504z m0 148.992h192v-85.504H234.496v85.504z m0 149.504h192v-85.504H234.496V768z" fill="#6415FF" p-id="19381"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/sparkBinomialLogisticRegression.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/sparkDecision-tree-regression.svg


+ 1 - 0
src/assets/img/visisvg/sparkDecisionTreeClassification.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640335959080" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6557" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M928 80v864H96V80h832z m-32 32H128v800h768V112zM608 736v32H416v-32h192z m56.032-400L410.24 608H368l253.76-272h42.272z" fill="#333333" p-id="6558"></path><path d="M624 480a48 48 0 0 1 48 48v32a48 48 0 0 1-96 0v-32a48 48 0 0 1 48-48z m0 32a16 16 0 0 0-15.888 14.128L608 528v32a16 16 0 0 0 31.888 1.872L640 560v-32a16 16 0 0 0-16-16zM416 336a48 48 0 0 1 48 48v32a48 48 0 0 1-96 0v-32a48 48 0 0 1 48-48z m0 32a16 16 0 0 0-15.888 14.128L400 384v32a16 16 0 0 0 31.888 1.872L432 416v-32a16 16 0 0 0-16-16z" fill="#0A74F2" p-id="6559"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/sparkFactorizationMachinesRegression.svg


+ 1 - 0
src/assets/img/visisvg/sparkGaussianMixtureModel.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640335693119" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2150" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M4.143262 2.378831h1008.246153v1008.246154h-1008.246153z" fill="#000000" opacity=".01" p-id="2151"></path><path d="M535.630769 78.769231a94.523077 94.523077 0 0 1 88.946216 126.582154l226.9184 209.368615a94.523077 94.523077 0 1 1-24.418462 166.203077L631.934031 769.701415A94.523077 94.523077 0 1 1 459.067077 839.68H249.856A94.523077 94.523077 0 1 1 137.058462 726.898215l-0.015754-128.393846a94.523077 94.523077 0 1 1 46.395077-179.263015l264.412553-210.786462A94.523077 94.523077 0 0 1 535.630769 78.769231z m253.054031 439.154215l-175.560862 1.811692a94.554585 94.554585 0 0 1-186.147446 1.906216l-192.685292 2.000738a94.696369 94.696369 0 0 1-56.256985 67.804554v135.451569a94.649108 94.649108 0 0 1 71.806031 71.821785H459.067077a94.554585 94.554585 0 0 1 144.336738-58.446769l196.292923-189.959877a93.892923 93.892923 0 0 1-11.027692-32.389908zM602.190769 240.403692A94.208 94.208 0 0 1 535.630769 267.815385a94.192246 94.192246 0 0 1-64.559261-25.489723L216.048246 445.6448c8.459815 10.712615 14.635323 23.315692 17.8176 37.037292l194.418216-2.016492a94.570338 94.570338 0 0 1 182.6816-1.890462l180.696615-1.874707a94.475815 94.475815 0 0 1 23.804061-39.699693z" fill="#A8ADBB" p-id="2152"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/sparkGradientBoostedTreeClassification.svg


+ 1 - 0
src/assets/img/visisvg/sparkIsotonicRegression.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640349539404" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="12210" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M51.2 35.310345m141.241379 0l670.896552 0q141.241379 0 141.241379 141.241379l0 670.896552q0 141.241379-141.241379 141.241379l-670.896552 0q-141.241379 0-141.241379-141.241379l0-670.896552q0-141.241379 141.241379-141.241379Z" fill="#F5222D" opacity=".15" p-id="12211"></path><path d="M548.016552 594.273103c0 2.718897 2.118621 4.943448 4.660965 4.943449h114.829242c2.542345 0 4.660966-2.224552 4.660965-4.943449v-29.801931c0-2.718897-2.118621-4.943448-4.660965-4.943448h-114.829242c-2.542345 0-4.660966 2.224552-4.660965 4.943448v29.801931z m-120.973242 3.778207l119.172414-99.928276a5.014069 5.014069 0 0 0 0-7.627034l-119.172414-99.857655a4.943448 4.943448 0 0 0-8.121379 3.778207v38.912c0 1.483034 0.635586 2.824828 1.800828 3.778207L488.871724 494.344828l-68.148965 57.202758a5.014069 5.014069 0 0 0-1.765518 3.813517v38.912c0 4.237241 4.872828 6.532414 8.12138 3.778207zM774.002759 246.113103H317.086897a19.844414 19.844414 0 0 0-19.844414 19.844414V722.802759c0 10.946207 8.862897 19.844414 19.844414 19.844413H774.002759a19.844414 19.844414 0 0 0 19.844413-19.844413V265.886897a19.844414 19.844414 0 0 0-19.844413-19.844414z m-24.823173 451.866483H341.945379V290.745379h407.198897v407.198897z" fill="#F5222D" p-id="12212"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/sparkLatentDirichletAllocation.svg


+ 1 - 0
src/assets/img/visisvg/sparkLinearRegression.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640351895483" class="icon" viewBox="0 0 1280 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="26471" xmlns:xlink="http://www.w3.org/1999/xlink" width="250" height="200"><defs><style type="text/css"></style></defs><path d="M223.996375 896.003397h351.990657V306.499045a159.815758 159.815758 0 0 1-86.757698-94.93748l-263.992992-88.517651a31.999151 31.999151 0 0 1-20.159465-40.518924l20.31946-60.67839A31.999151 31.999151 0 0 1 265.99526 1.687135l235.773742 79.077901C529.388269 32.746311 580.606909 0.027179 639.985333 0.027179a159.995753 159.995753 0 0 1 159.995753 159.995754 158.115803 158.115803 0 0 1-1.999947 19.999469l256.793184 86.097714a31.999151 31.999151 0 0 1 20.159465 40.518925l-20.359459 60.738388a31.999151 31.999151 0 0 1-40.598923 20.159465l-283.992462-95.257472a160.955728 160.955728 0 0 1-25.99931 14.239622V992.000849a31.999151 31.999151 0 0 1-31.99915 31.999151H223.996375a31.999151 31.999151 0 0 1-31.999151-31.999151v-63.998301a31.999151 31.999151 0 0 1 31.999151-31.999151z" p-id="26472"></path><path d="M0.00232 608.011042c0 88.357655 114.616958 159.995753 255.993205 159.995753s255.993205-71.638099 255.993205-159.995753c0-31.339168 4.15989-14.499615-169.995487-363.010365-35.359061-70.718123-136.436379-70.578127-171.735442 0C-2.63761 590.551505 0.00232 575.6519 0.00232 608.011042z m111.997027-31.999151l143.996178-287.992356 143.996178 287.992356z m655.982589 287.992356c0 88.357655 114.616958 159.995753 255.993205 159.995753s255.993205-71.638099 255.993205-159.995753c0-31.339168 4.15989-14.499615-170.095485-363.010365-35.359061-70.718123-136.436379-70.578127-171.735442 0C765.342006 846.54471 767.981936 831.645106 767.981936 864.004247z m111.997027-31.999151l143.996178-287.992356 143.996178 287.992356z" p-id="26473"></path></svg>

+ 1 - 0
src/assets/img/visisvg/sparkMultinomialLogisticRegression.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640348956756" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6814" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M4.143262 2.378831h1008.246153v1008.246154h-1008.246153z" fill="#000000" opacity=".01" p-id="6815"></path><path d="M504.123077 47.261538a94.523077 94.523077 0 0 1 84.283077 137.373539L837.159385 389.498092a94.523077 94.523077 0 1 1 29.365169 176.348554l-77.697969 235.189169a94.523077 94.523077 0 1 1-140.6976 101.691077H375.855262a94.523077 94.523077 0 1 1-140.6976-101.691077L157.443938 565.846646a94.523077 94.523077 0 1 1 27.884308-177.152l235.425477-202.295138A94.523077 94.523077 0 0 1 504.123077 47.261538z m58.226215 168.991508A94.113477 94.113477 0 0 1 504.123077 236.307692a94.097723 94.097723 0 0 1-56.635077-18.8416L217.056492 415.428923A94.113477 94.113477 0 0 1 236.307692 472.615385a94.4128 94.4128 0 0 1-40.802461 77.792492l78.548677 237.757046a94.554585 94.554585 0 0 1 101.817107 73.570462H648.113231a94.554585 94.554585 0 0 1 101.817107-73.570462l78.564431-237.757046A94.4128 94.4128 0 0 1 787.692308 472.615385c0-20.873846 6.774154-40.172308 18.2272-55.800123z" fill="#A8ADBB" p-id="6816"></path></svg>

+ 1 - 0
src/assets/img/visisvg/sparkNaiveBayes.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640349453478" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="9609" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M209.92 848l631.04-631.04a24 24 0 1 0-33.92-33.92l-631.04 631.04V152a24 24 0 0 0-48 0V896h744a24 24 0 1 0 0-48H209.92zM128 0h768a128 128 0 0 1 128 128v768a128 128 0 0 1-128 128H128a128 128 0 0 1-128-128V128a128 128 0 0 1 128-128z m239.36 486.912a48 48 0 1 0-96 0 48 48 0 0 0 96 0zM512 272.768a48 48 0 1 0-96 0 48 48 0 0 0 96 0z m275.904 287.296a48 48 0 1 0-95.872-0.064 48 48 0 0 0 95.872 0.064z m-187.136 125.888a48 48 0 1 0-96 0 48 48 0 0 0 96 0z" fill="#F57948" p-id="9610"></path></svg>

File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/sparkRandomForestClassification.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/sparkmlKmeans.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/standardscaler.svg


File diff suppressed because it is too large
+ 0 - 0
src/assets/img/visisvg/vgg16.svg


+ 1 - 0
src/assets/img/visisvg/wasiyuce.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1640335739856" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2819" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M0 0h1024v1024H0z" fill="#000000" opacity=".01" p-id="2820"></path><path d="M418.848 824.896l1.088 41.6-395.392 10.304-1.088-41.6 395.392-10.304zM384 480a96 96 0 0 1 90.192 128.944l128.88 141.008h370.08v41.6H584.784l-134-146.576a96.032 96.032 0 0 1-160.528-48.192L54 596.8v-41.6h236.272A96.032 96.032 0 0 1 384 480z m128.208-33.344l456 4.544-0.416 41.6-456-4.544 0.416-41.6z m460.96-245.872v41.6H561.664l-176.096 158.72H111.488v-41.6H369.6l176.144-158.72h427.44z" fill="#A8ADBB" p-id="2821"></path></svg>

+ 2 - 1
src/router/index.js

@@ -73,7 +73,8 @@ const mainRoutes = {
     // 数据探测路由
     { path: '/snoop-measure', component: _import('modules/snoop/measure'), name: 'measure', meta: { title: '创建度量标准', isTab: false } },
     { path: '/snoop-job', component: _import('modules/snoop/job'), name: 'job', meta: { title: '创建调度任务', isTab: false } },
-    { path: '/visi-previewcsv', component: _import('modules/visi/previewcsv'), name: 'previewcsv', meta: { title: '预览csv', isTab: false } }
+    { path: '/visi-previewcsv', component: _import('modules/visi/previewcsv'), name: 'previewcsv', meta: { title: '预览csv', isTab: false } },
+    { path: '/design-create', component: _import('modules/visi/design-graph1'), name: '/design-create', meta: { title: '实验设置', isTab: false } }
   ],
   beforeEnter (to, from, next) {
     let token = Vue.cookie.get('Algtoken')

+ 2 - 2
src/views/main-navbar.vue

@@ -15,7 +15,7 @@
         </el-menu-item>
       </el-menu> -->
       
-      <el-menu
+      <!-- <el-menu
         class="site-navbar__menu site-navbar__menu--right"
         mode="horizontal">
         <el-menu-item index="1" @click="$router.push({ name: 'theme' })">
@@ -36,7 +36,7 @@
             </el-dropdown-menu>
           </el-dropdown>
         </el-menu-item>
-      </el-menu>
+      </el-menu> -->
     </div>
     <!-- 弹窗, 修改密码 -->
     <update-password v-if="updatePassowrdVisible" ref="updatePassowrd"></update-password>

+ 2 - 2
src/views/modules/alg/alg-publish.vue

@@ -160,8 +160,8 @@ export default {
               }else{
                 Message.error(data.msg);
               }
-
-                this.$parent.getDataList();
+              this.visible=false;
+              this.$parent.getDataList();
         });
         /* this.visible=false
         MessageBox.confirm(`是否发布该算法?`, '提示', {

+ 2 - 2
src/views/modules/alg/alg-update.vue

@@ -100,7 +100,7 @@ export default {
       this.$refs["dataForm"].validate((valid) => {
         if (valid) {
           this.visible=false;
-          MessageBox.confirm(`是否下载该数据集?`, '提示', {
+          MessageBox.confirm(`是否修改算法信息?`, '提示', {
           confirmButtonText: '确定',
           cancelButtonText: '取消',
           type: 'warning'
@@ -113,7 +113,7 @@ export default {
           formData.append('uid',this.$store.state.user.id);
           this.$http({
             url: this.$http.adornUrl(
-              `/algs/${!this.dataForm.id ? "save" : "update"}`
+              `/algs/update`
             ),
             method: "post",
             data:formData,

+ 7 - 13
src/views/modules/alg/models-add-or-update.vue

@@ -5,16 +5,6 @@
       <el-form-item label="模板名称" prop="modelName">
         <el-input v-model="dataForm.modelName" placeholder="请输入模板名称"></el-input>
       </el-form-item>
-      <!-- <el-form-item label="密码" prop="password" :class="{ 'is-required': !dataForm.id }">
-        <el-input v-model="dataForm.password" type="password" placeholder="密码"></el-input>
-      </el-form-item>
-      <el-form-item label="确认密码" prop="comfirmPassword" :class="{ 'is-required': !dataForm.id }">
-        <el-input v-model="dataForm.comfirmPassword" type="password" placeholder="确认密码"></el-input>
-      </el-form-item> -->
-
-      <!-- <el-form-item label="手机号" prop="mobile">
-        <el-input v-model="dataForm.mobile" placeholder="手机号"></el-input>
-      </el-form-item> -->
       <el-form-item label="类别" size="mini" prop="categoryId">
         <el-radio-group v-model="dataForm.categoryId">
           <el-radio v-for="category in categoryList" :key="category.categoryId" :label="category.categoryId">{{ category.categoryName }}
@@ -23,14 +13,14 @@
       </el-form-item>
       <el-form-item label="文件" size="mini">
         <el-upload class="upload-demo" action="#" :on-preview="handlePreview"
-          :on-remove="handleRemove" :before-remove="beforeRemove" multiple :limit="10" :on-exceed="handleExceed"
+          :on-remove="handleRemove" multiple :limit="10" :on-exceed="handleExceed"
           :on-change="fileChange"
           :file-list="fileList">
           <el-button size="small" type="primary">点击上传</el-button>
         </el-upload>
       </el-form-item>
 
-      <el-form-item label="形式">
+      <el-form-item label="形式" prop="form">
           <el-select v-model="dataForm.form" placeholder="选择算法形式">
             <el-option v-for="data in forms" :key="data.value" :label="data.label" :value="data.value">
             </el-option>
@@ -88,7 +78,10 @@ export default {
       ],
       dataRule: {
         modelName: [
-          { required: true, message: "用户名不能为空", trigger: "blur" },
+          { required: true, message: "模板名称不能为空", trigger: "blur" },
+        ],
+        form: [
+          { required: true, message: "算法形式不能为空", trigger: "blur" },
         ],
         // email: [
         //   { required: true, message: "邮箱不能为空", trigger: "blur" },
@@ -117,6 +110,7 @@ export default {
           this.categoryList = data && data.code === 0 ? data.list : [];
         })
         .then(() => {
+          this.fileList=[];
           this.visible = true;
           this.$nextTick(() => {
             this.$refs["dataForm"].resetFields();

+ 1 - 1
src/views/modules/visi/create2.vue

@@ -772,7 +772,7 @@ export default {
             sign: 1
           }
 
-          MessageBox.confirm(`确定新建动态数据集?`, '提示', {
+          MessageBox.confirm(`是否新建动态数据集?`, '提示', {
             confirmButtonText: '确定',
             cancelButtonText: '取消',
             type: 'warning'

+ 94 - 0
src/views/modules/visi/design-create.vue

@@ -0,0 +1,94 @@
+<template>
+  <div class="mod-demo-echarts">
+    <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
+      <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
+      <el-breadcrumb-item :to="{ path: '/visi-design'}">可视化设计</el-breadcrumb-item>
+      <el-breadcrumb-item>实验设置</el-breadcrumb-item>
+    </el-breadcrumb>
+    <el-divider class="divi"></el-divider>
+    <!-- <design-graph></design-graph> -->
+    <design-graph-1 :visible.sync="designgraphvisi" v-if="designgraphvisi" ref="designgraph"></design-graph-1>
+  </div>
+</template>
+
+<script>
+// import DesignGraph from "./design-graph.vue"
+import DesignGraph1 from "./design-graph1.vue";
+export default {
+  components: {
+    // DesignGraph,
+    DesignGraph1,
+  },
+  data() {
+    return {
+      // chartLine: null,
+      // chartBar: null,
+      // chartPie: null,
+      // chartScatter: null,
+      designgraphvisi: false,
+    };
+  },
+  mounted() {
+    
+  },
+  // watch: {    
+	//     '$route' (to, from) {   
+	//          this.$router.go(0);
+	// 		 }
+	// 	},
+  activated() {
+    //自动刷新一次
+    // if (location.href.indexOf("#reloaded") == -1) {
+    //   location.href = location.href + "#reloaded";
+    //   location.reload();
+    // }
+    this.designgraphvisi = true;
+    
+    if(this.$route.query.update==true){
+      this.init(this.$route.query.winfo);
+    }
+    
+  },
+  methods: {
+    init(winfo){
+      this.$nextTick(() => {
+        this.$refs.designgraph.initGraph(winfo);
+      })
+    }
+  },
+};
+</script>
+
+<style lang="scss">
+.mod-demo-echarts {
+  > .el-alert {
+    margin-bottom: 10px;
+  }
+  > .el-row {
+    margin-top: -10px;
+    margin-bottom: -10px;
+    .el-col {
+      padding-top: 10px;
+      padding-bottom: 10px;
+    }
+  }
+  .chart-box {
+    min-height: 400px;
+  }
+}
+.divi {
+  display: block;
+  height: 1px;
+  width: 100%;
+  margin: 24px 0;
+  background-color: #dcdfe6;
+  position: relative;
+}
+.divi2 {
+  display: block;
+  height: 1px;
+  width: 100%;
+  position: relative;
+}
+</style>
+

+ 7 - 3
src/views/modules/visi/design-experconfig.vue

@@ -10,9 +10,9 @@
             ></el-input>
           </el-form-item>
 
-          <!-- <el-form-item :wrapper-col="buttonItemLayout.wrapperCol">
-            <el-button type="primary"> 保存 </el-button>
-          </el-form-item> -->
+          <el-form-item :wrapper-col="buttonItemLayout.wrapperCol">
+            <el-button type="primary" @click="primary"> 保存 </el-button>
+          </el-form-item>
         </el-form>
       </el-tab-pane>
     </el-tabs>
@@ -45,6 +45,10 @@ export default {
       this.visible = true;
       // this.conditionForm.sourcedatalist =sourcedatalist;
     },
+    primary() {
+      
+      this.$emit("primaryExperimentclick", this.experimentName);
+    },
   },
   computed: {
     formItemLayout() {

+ 353 - 141
src/views/modules/visi/design-graph1.vue

@@ -1,117 +1,227 @@
 <template>
-  <a-layout id="components-layout-demo-responsive">
-    <!-- 左侧组件栏 default-expand-all-->
-
-    <a-layout-sider
-      breakpoint="lg"
-      collapsed-width="0"
-      @collapse="onCollapse"
-      @breakpoint="onBreakpoint"
-      theme="light"
-      v-model="collapsed"
-      collapsible
-    >
-      <div>
-        <a-tree
-          show-line
-          show-icon
-          :tree-data="treeData"
-          :default-selected-keys="['0-0-0']"
-          @select="onSelect"
-        >
-          <a-icon slot="icon" type="carry-out" />
-        </a-tree>
-      </div>
-    </a-layout-sider>
-    <!-- <div class="box" ref="box"> -->
-    <!-- <div class="left"> -->
-    <!-- 右侧画布 -->
-    <div class="content">
-      <div class="app-content">
-        <div class="box" ref="box">
-          <div class="left">
-            <!-- <a-layout style="width:'100%',height:'100%',display:'flex'"> -->
-            <el-form class="boxform">
-              <el-form-item class="boxformitem">
-                <!-- 画布上方按钮 undo redo-->
-                <el-row>
-                  <el-button-group>
-                    <el-button
-                      plain
-                      type="primary"
-                      icon="el-icon-arrow-left"
-                      @click="onUndo"
-                    ></el-button>
-                    <el-button type="primary" @click="onRedo" plain
-                      ><i class="el-icon-arrow-right el-icon--right"></i
-                    ></el-button>
-                    <el-button type="primary" @click="onRun">提交</el-button>
-                    <el-button type="primary" @click="onPrimary"
-                      >保存</el-button
-                    >
-                    <el-button type="info" @click="onCancel">取消</el-button>
-                    <el-button type="info" @click="onGetcontour"
-                      >示例</el-button
-                    >
-                    <el-button
-                      type="info"
-                      @click="onCleargraph"
-                      icon="el-icon-delete"
-                      >清空</el-button
-                    >
-
-                    <el-button type="info" @click="getParaTemp()"
-                      >获得代码模板</el-button
+  <div class="mod-demo-echarts">
+    <el-breadcrumb class="divi2" separator-class="el-icon-arrow-right">
+      <el-breadcrumb-item :to="{ path: '/' }">首页</el-breadcrumb-item>
+      <el-breadcrumb-item :to="{ path: '/visi-design' }"
+        >可视化设计</el-breadcrumb-item
+      >
+      <el-breadcrumb-item>实验设置</el-breadcrumb-item>
+    </el-breadcrumb>
+    <el-divider class="divi"></el-divider>
+    <!-- <design-graph></design-graph> -->
+    <!-- <design-graph-1 :visible.sync="designgraphvisi" v-if="designgraphvisi" ref="designgraph"></design-graph-1> -->
+
+    <a-layout id="components-layout-demo-responsive">
+      <!-- 左侧组件栏 default-expand-all-->
+
+      <a-layout-sider
+        breakpoint="lg"
+        collapsed-width="0"
+        @collapse="onCollapse"
+        @breakpoint="onBreakpoint"
+        theme="light"
+        v-model="collapsed"
+        collapsible
+      >
+        <div>
+          <a-tree
+            show-line
+            show-icon
+            :tree-data="treeData"
+            :default-selected-keys="['0-0-0']"
+            @select="onSelect"
+          >
+            <a-icon slot="icon" type="carry-out" />
+          </a-tree>
+        </div>
+      </a-layout-sider>
+      <!-- <div class="box" ref="box"> -->
+      <!-- <div class="left"> -->
+      <!-- 右侧画布 -->
+      <div class="content">
+        <div class="app-content">
+          <div class="box" ref="box">
+            <div class="left">
+              <!-- <a-layout style="width:'100%',height:'100%',display:'flex'"> -->
+              <el-form class="boxform">
+                <el-form-item class="boxformitem">
+                  <!-- 画布上方按钮 undo redo-->
+                  <el-row>
+                    <el-tooltip
+                      content="提交"
+                      placement="bottom-end"
+                      effect="dark"
                     >
-                    <el-button
-                      type="info"
-                      @click="getworkflowContent"
-                      icon="el-icon-document"
-                      >日志</el-button
+                      <i
+                        @click="onRun"
+                        style="
+                          height: 50px;
+                          width: 50px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="iconfont icon-yunXang"
+                      ></i>
+                    </el-tooltip>
+                    <el-tooltip
+                      content="保存"
+                      placement="bottom-end"
+                      effect="dark"
                     >
-                    <el-button
-                      type="info"
-                      @click="getgraphContentcenter"
-                      icon="el-icon-document"
-                      >节点居中</el-button
+                      <i
+                        @click="onPrimary"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="el-icon-document-checked"
+                      >
+                      </i>
+                    </el-tooltip>
+                    <el-tooltip content="取消" effect="dark">
+                      <i
+                        @click="onCancel"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="el-icon-error"
+                      >
+                      </i>
+                    </el-tooltip>
+                    <el-tooltip content="<" effect="dark">
+                      <i
+                        @click="onUndo"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="el-icon-arrow-left"
+                      >
+                      </i>
+                    </el-tooltip>
+                    <el-tooltip content=">" effect="dark">
+                      <i
+                        @click="onRedo"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="el-icon-arrow-right"
+                      >
+                      </i>
+                    </el-tooltip>
+                    <el-tooltip content="示例" effect="dark">
+                      <i
+                        @click="onGetcontour"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="el-icon-notebook-2"
+                      >
+                      </i>
+                    </el-tooltip>
+                    <el-tooltip content="清空" effect="dark">
+                      <i
+                        @click="onCleargraph"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="el-icon-delete"
+                      >
+                      </i>
+                    </el-tooltip>
+                    <el-tooltip content="获取代码模板" effect="dark">
+                      <i
+                        @click="getParaTemp()"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="el-icon-tickets"
+                      >
+                      </i>
+                    </el-tooltip>
+                    <el-tooltip content="日志" effect="dark">
+                      <i
+                        @click="getworkflowContent"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="el-icon-document"
+                      >
+                      </i>
+                    </el-tooltip>
+                    <el-tooltip content="节点居中" effect="dark">
+                      <i
+                        @click="getgraphContentcenter"
+                        style="
+                          height: 25px;
+                          width: 25px;
+                          margin: 10px 5px 10px 10px;
+                          font-size: 23px;
+                        "
+                        class="iconfont icon-tishi"
+                      >
+                      </i>
+                    </el-tooltip>
+
+                    <el-tag
+                      :key="workflowstatustag.name"
+                      :type="workflowstatustag.type"
+                      @click="getWorkflowStatus"
+                      >{{ workflowstatustag.name }}</el-tag
                     >
-                  </el-button-group>
-                  <el-tag
-                    :key="workflowstatustag.name"
-                    :type="workflowstatustag.type"
-                    @click="getWorkflowStatus"
-                    >{{ workflowstatustag.name }}</el-tag
+                  </el-row>
+                </el-form-item>
+                <el-form-item class="boxformitem">
+                  <!-- 画布具体位置 -->
+                  <!-- <a-layout-content :style="{ margin: '0px 0px 0' }"> -->
+                  <!-- <div :style="{ padding: '24px', background: '#fff', minHeight: '360px' }"> -->
+                  <div
+                    style="width: 100%; height: 100%; display: flex"
+                    :style="{
+                      padding: '0px',
+                      background: '#fff',
+                      minHeight: '800px',
+                    }"
                   >
-                </el-row>
-              </el-form-item>
-              <el-form-item class="boxformitem">
-                <!-- 画布具体位置 -->
-                <!-- <a-layout-content :style="{ margin: '0px 0px 0' }"> -->
-                <!-- <div :style="{ padding: '24px', background: '#fff', minHeight: '360px' }"> -->
-                <div
-                  style="width: 100%; height: 100%; display: flex"
-                  :style="{
-                    padding: '0px',
-                    background: '#fff',
-                    minHeight: '800px',
-                  }"
-                >
-                  <!-- content -->
-                  <!-- 画布                     style="width: 100%; height: 100%"   class="app-content"-->
-                  <div id="container" style="flex: 1"></div>
-                </div>
-                <!-- </a-layout-content> -->
-              </el-form-item>
-            </el-form>
-            <!-- </a-layout> -->
-          </div>
-
-          <div class="resize" title="收缩侧边栏"></div>
-          <div class="right">
-            <!-- 右侧组件栏 width="290px"   style="width: 100%"   width="239px" 309px-->
-            <ExperimentConfig
+                    <!-- content -->
+                    <!-- 画布                     style="width: 100%; height: 100%"   class="app-content"-->
+                    <div id="container" style="flex: 1"></div>
+                  </div>
+                  <!-- </a-layout-content> -->
+                </el-form-item>
+              </el-form>
+              <!-- </a-layout> -->
+            </div>
+
+            <div class="resize" title="收缩侧边栏"></div>
+            <div class="right">
+              <!-- 右侧组件栏 width="290px"   style="width: 100%"   width="239px" 309px-->
+              <ExperimentConfig
                 v-show="experimentVisi"
                 ref="experConfig"
+                @primaryExperimentclick="primaryExperimentConfig(arguments)"
               ></ExperimentConfig>
               <NodeConfig
                 v-show="nodeConfigVisi"
@@ -123,7 +233,7 @@
                 ref="newConNodeConfig"
                 @primaryclick="primaryConNodeConfig(arguments)"
               ></ConNodeConfig>
-            <!-- <a-layout-sider
+              <!-- <a-layout-sider
               breakpoint="lg"
               theme="light"
               width="100%"
@@ -147,24 +257,28 @@
                 @primaryclick="primaryConNodeConfig(arguments)"
               ></ConNodeConfig>
             </a-layout-sider> -->
+            </div>
           </div>
         </div>
       </div>
-    </div>
-    <NodeParaTemp v-if="paraTempVisible" ref="paraTemp"></NodeParaTemp>
-    <InputNodeConfig
-      v-if="inputNodeConVisible"
-      ref="inputNodeConfig"
-      @refreshinputnode="primaryInputnodeConfig(arguments)"
-    ></InputNodeConfig>
-    <OutputNodeConfig
-      v-if="outputNodeConVisible"
-      ref="outputNodeConfig"
-    ></OutputNodeConfig>
-    <Workflowlog v-if="workflowContentVisi" ref="getworkflowlog"></Workflowlog>
-  </a-layout>
-  <!-- 弹窗 -->
-  <!-- <ConWatch v-if="newWatchVisible" ref="newWatch" @refreshDataList="getDataList"></ConWatch> -->
+      <NodeParaTemp v-if="paraTempVisible" ref="paraTemp"></NodeParaTemp>
+      <InputNodeConfig
+        v-if="inputNodeConVisible"
+        ref="inputNodeConfig"
+        @refreshinputnode="primaryInputnodeConfig(arguments)"
+      ></InputNodeConfig>
+      <OutputNodeConfig
+        v-if="outputNodeConVisible"
+        ref="outputNodeConfig"
+      ></OutputNodeConfig>
+      <Workflowlog
+        v-if="workflowContentVisi"
+        ref="getworkflowlog"
+      ></Workflowlog>
+    </a-layout>
+    <!-- 弹窗 -->
+    <!-- <ConWatch v-if="newWatchVisible" ref="newWatch" @refreshDataList="getDataList"></ConWatch> -->
+  </div>
 </template>
 
 
@@ -206,6 +320,9 @@ export default {
       form: this.$form.createForm(this, { name: "coordinated" }),
       collapsed: false, //设置左侧侧边栏可收起
 
+      addorupdate: true,//true表示update,新增  false表示add
+      workflowId: null,//当前工作流id
+      experimentName: "",//当前实验名称
       workflowName: "", //当前画布工作流名称
       workflowContent: { main: "", wait: "", init: "" }, //当前画布工作流整个日志
       workflowContentlog: "",
@@ -310,6 +427,7 @@ export default {
       showLine: true,
       showIcon: false,
       nodedata: [],
+      imageurl: require("@/assets/img/cnnmnist.svg"),
     };
   },
   components: {
@@ -325,6 +443,15 @@ export default {
   },
   activated() {
     this.getalgorithmDataList();
+    this.onCleargraph();
+    this.addorupdate = this.$route.query.update;
+    console.log("addorupdate")
+    console.log(this.addorupdate)
+    //路由跳转--如果是修改,则加载画布信息;如果为新建,则不加载
+    if(this.$route.query.update==true){
+      this.initGraph(this.$route.query.winfo);
+      
+    }
     // this.createGraph();
     // this.addalgorithmdata();
   },
@@ -902,6 +1029,11 @@ export default {
       scroller: {
         enabled: true,
         pannable: true,
+        minVisibleHeight: 800,
+        minVisibleWidth: 800,
+        autoResize: true,
+        height: 800,
+        className: "x6-graph-scroller",
       },
       mousewheel: {
         enabled: true,
@@ -1120,7 +1252,6 @@ export default {
       }
     });
 
-
     //节点删除    边未完成
     graph.on("node:delete", ({ view, e }) => {
       e.stopPropagation();
@@ -3115,8 +3246,20 @@ export default {
     //设置布局左右可拖动
     let me = this;
     me.dragControllerDiv();
+    console.log("yu");
   },
   methods: {
+    initGraph(info) {
+      //修改当前画布
+      //查询画布数据,导入画布
+      this.workflowId = info.workflowId;
+      this.graph.fromJSON(JSON.parse(info.graphJson).cells);
+      console.log("fromJson"+info.graphJson)
+      
+      
+      console.log(JSON.parse(info.graphJson).cells)
+
+    },
     createGraph() {
       const graph = new Graph({
         grid: true,
@@ -3125,9 +3268,9 @@ export default {
         // width: 1200,
         // height: 750,
         autoResize: true,
-        panning: {
-          enabled: true,
-        },
+        // panning: {
+        //   enabled: true,
+        // },
         resizing: {
           enabled: true,
         },
@@ -3342,7 +3485,24 @@ export default {
         type: "warning",
       })
         .then(() => {
+          console.log("任务取消")
+          console.log(this.workflowName);
           //确定取消任务后的操作
+          if(this.workflowstatustag.name == "Running" && this.workflowName!=""){
+            this.$http({
+              url: this.$http.adornUrl("/visi/visiworkflow/stopworkflow"),
+              method: "post",
+              data: this.$http.adornData({workflowName: this.workflowName}),
+            }).then(({ data }) => {
+              if (data && data.code === 0) {
+                this.workflowStatus = data.statusPhase;
+                if(this.workflowStatus == "Failed"){
+                  Message.success("任务已取消");
+                } 
+                console.log("任务已取消")
+              }
+            });
+          }
         })
         .catch(() => {});
     },
@@ -3360,11 +3520,18 @@ export default {
           this.$http({
             url: this.$http.adornUrl("/visi/visiworkflow/submit"),
             method: "post",
-            data: this.$http.adornData(this.graph.toJSON()),
+            data: this.$http.adornData({
+              graphJson: JSON.stringify(this.graph.toJSON()),
+              workflowId: this.workflowId,
+              experimentName: this.experimentName,
+              addorupdate: this.addorupdate,
+              }
+              ),
           }).then(({ data }) => {
             if (data && data.code === 0) {
               this.workflowName = data.workflowName;
               this.idTemplateNameMap = data.idTemplateNameMap; //节点id与 DAG中task和Template 的对应关系
+              this.workflowId = data.workflowId;//若为新增,返回新增的主键ID  workflowId
               // 迭代属性名称:
               for (let nodeid of Object.keys(this.idTemplateNameMap)) {
                 var tempname = this.idTemplateNameMap[nodeid];
@@ -3485,7 +3652,7 @@ export default {
     },
     //20211109  测试  能否保存至数据库
     onPrimary() {
-      MessageBox.confirm(`确定进行[退出]操作?`, "提示", {
+      MessageBox.confirm(`确定进行[保存]操作?`, "提示", {
         confirmButtonText: "确定",
         cancelButtonText: "取消",
         type: "warning",
@@ -3497,7 +3664,7 @@ export default {
             data: this.$http.adornData({
               userId: this.$store.state.user.id,
               workflowId: undefined,
-              experimentName: "实验1",
+              experimentName: this.experimentName,
               workflowtempName: "",
               workflowName: "",
               graphJson: JSON.stringify(this.graph.toJSON()),
@@ -5672,9 +5839,17 @@ export default {
         //   scopedSlots: { icon: "custom" },
         // });
         console.log(this.treeData);
-        var imageurl =
-          "/src/assets/img/" + this.algorithmdataList[i].algonodeName + ".svg";
+        // var imageurl =
+        //   "/src/assets/img/" + this.algorithmdataList[i].algonodeName + ".svg";
         //节点名称后跟随机参数
+        if (
+          this.algorithmdataList[i].algotreetype != "传统算法" &&
+          this.algorithmdataList[i].algotreetype != "智能应用"
+        ) {
+          this.imageurl = require("@/assets/img/visisvg/" +
+            this.algorithmdataList[i].algonodeName +
+            ".svg");
+        }
 
         var newalgonode = this.graph.createNode({
           x: 0,
@@ -5699,16 +5874,9 @@ export default {
             //   fill: "#DA2625",
             // },
             image: {
-              "xlink:href":
-                "https://gw.alipayobjects.com/zos/bmw-prod/6eb71764-18ed-4149-b868-53ad1542c405.svg",
+              "xlink:href": this.imageurl,
+              // "https://gw.alipayobjects.com/zos/bmw-prod/6eb71764-18ed-4149-b868-53ad1542c405.svg",
               // "src/views/modules/visi/visisvg/算法.svg",  /src/assets/img/   ../../../assets/img/
-              // href:
-              //   "src/views/modules/visi/visisvg/" +
-              //   this.algorithmdataList[i].algonodeName +
-              //   ".svg",
-
-              //   "https://gw.alipayobjects.com/zos/bmw-prod/6eb71764-18ed-4149-b868-53ad1542c405.svg",
-              // "xlink:href":  "https://gw.alipayobjects.com/os/s/prod/antv/assets/image/logo-with-text-73b8a.svg",
               //可放图标
             },
           },
@@ -5850,6 +6018,14 @@ export default {
       // })
     },
 
+    //保存实验名称
+    primaryExperimentConfig(args) {
+      console.log("保存实验名称");
+      console.log(args);
+      this.experimentName = args[0];
+      console.log(this.experimentName);
+    },
+
     //20210810  保存条件节点设置
     primaryConNodeConfig(args) {
       this.graph
@@ -6688,5 +6864,41 @@ export default {
   border-width: 1px;
   border-color: #dcdfe6;
 }
+// .el-icon-video-play:before {
+//   content: "提交";
+// }
+.mod-demo-echarts {
+  > .el-alert {
+    margin-bottom: 10px;
+  }
+  > .el-row {
+    margin-top: -10px;
+    margin-bottom: -10px;
+    .el-col {
+      padding-top: 10px;
+      padding-bottom: 10px;
+    }
+  }
+  .chart-box {
+    min-height: 400px;
+  }
+}
+.divi {
+  display: block;
+  height: 1px;
+  width: 100%;
+  margin: 24px 0;
+  background-color: #dcdfe6;
+  position: relative;
+}
+.divi2 {
+  display: block;
+  height: 1px;
+  width: 100%;
+  position: relative;
+}
+.x6-graph-scroller {
+  min-height: 800px;
+}
 </style>
 

+ 2 - 2
src/views/modules/visi/design-node-config.vue

@@ -928,7 +928,7 @@ export default {
               // console.log(this.podcontent.init);
               // console.log(this.podcontent.wait);
               // console.log(this.podphase);
-              
+
               // this.podlogs = data.podlogs;
               // console.log("workflowcontent")
               // console.log(this.workflowContentlog);
@@ -963,7 +963,7 @@ export default {
               window.clearInterval(intervalID);
             }
           });
-      }, 5000);
+      }, 3000);
     },
     podcontainerchange(e) {
       if (this.containertype == "main") {

+ 1 - 1
src/views/modules/visi/design-workflowlog.vue

@@ -122,7 +122,7 @@ export default {
               this.workflowStatus = data.workflowStatus;
               // this.handleLog();
               // this.podlogs = data.podlogs;
-              
+
               // console.log("workflowcontent");
               // console.log(this.workflowContent);
               // console.log(this.workflowContent.main);

+ 349 - 13
src/views/modules/visi/design.vue

@@ -6,13 +6,151 @@
     </el-breadcrumb>
     <el-divider class="divi"></el-divider>
     <!-- <design-graph></design-graph> -->
-    <design-graph-1></design-graph-1>
+    <el-form
+      :inline="true"
+      :model="dataForm"
+      @keyup.enter.native="getDataList()"
+    >
+      <el-form-item>
+        <el-button type="primary" @click="addHandle()">新建实验</el-button>
+        <el-button
+          type="danger"
+          @click="deleteHandle()" :disabled="dataListSelections.length <= 0">批量删除</el-button
+        >
+      </el-form-item>
+      <el-form-item>
+        <el-input
+          v-model="dataForm.workflowName"
+          placeholder="请输入实验名称"
+          clearable
+          @keyup.enter.native="
+            pageIndex = 1;
+            getDataList();
+          "
+        ></el-input>
+      </el-form-item>
+      <el-form-item>
+        <el-button
+          @click="
+            pageIndex = 1;
+            getDataList();
+          "
+          >查询</el-button
+        >
+      </el-form-item>
+
+    </el-form>
+
+    <el-table
+      :data="dataList"
+      border
+      v-loading="dataListLoading"
+      @selection-change="selectionChangeHandle"
+      style="width: 100%"
+    >
+      <el-table-column
+        type="selection"
+        header-align="center"
+        align="center"
+        width="50"
+      >
+      </el-table-column>
+      <!--      <el-table-column prop="datasetId" header-align="center" align="center" width="80" label="数据集ID">-->
+      <!--      </el-table-column>-->
+
+      <el-table-column
+        label="序号"
+        header-align="center"
+        align="center"
+        width="80"
+        type="index"
+        :index="
+          (index) => {
+            return index + 1 + (this.pageIndex - 1) * this.pageSize;
+          }
+        "
+      >
+      </el-table-column>
+
+      <el-table-column
+        prop="experimentName"
+        header-align="center"
+        align="center"
+        label="实验名称"
+      >
+      </el-table-column>
+
+      <!-- <el-table-column
+        prop="username"
+        header-align="center"
+        align="center"
+        label="创建人"
+      >
+      </el-table-column> -->
+      <el-table-column
+        prop="workflowtempName"
+        header-align="center"
+        align="center"
+        label="模板名称"
+      >
+      </el-table-column>
+      <el-table-column
+        prop="workflowName"
+        header-align="center"
+        align="center"
+
+        label="工作流名称"
+      >
+      </el-table-column>
+      <el-table-column
+        fixed="right"
+        header-align="center"
+        align="center"
+
+        label="操作"
+      >
+        <template slot-scope="scope">
+          <el-button
+            type="text"
+            size="small"
+            @click="addOrUpdateHandle(scope.row)"
+            >查看
+          </el-button>
+          <el-button
+            type="text"
+            size="small"
+            @click="addOrUpdateHandle(scope.row)"
+            >修改</el-button
+          >
+          <el-button
+            type="text"
+            size="small"
+            @click="deleteHandle(scope.row)"
+          >
+            删除</el-button
+          >
+        </template>
+      </el-table-column>
+    </el-table>
+    <el-pagination
+      @size-change="sizeChangeHandle"
+      @current-change="currentChangeHandle"
+      :current-page="pageIndex"
+      :page-sizes="[10, 20, 50, 100]"
+      :page-size="pageSize"
+      :total="totalPage"
+      layout="total, sizes, prev, pager, next, jumper"
+    >
+    </el-pagination>
   </div>
 </template>
 
 <script>
+import { info } from '../../../mock/modules/sys-menu';
 // import DesignGraph from "./design-graph.vue"
 import DesignGraph1 from "./design-graph1.vue";
+import { Message } from "element-ui";
+import { MessageBox } from "element-ui";
 export default {
   components: {
     // DesignGraph,
@@ -20,22 +158,220 @@ export default {
   },
   data() {
     return {
-      // chartLine: null,
-      // chartBar: null,
-      // chartPie: null,
-      // chartScatter: null,
+      dataForm: {
+        key: "",
+      },
+      username: this.$store.state.user.name,
+      dataList: [],
+      pageIndex: 1,
+      pageSize: 10,
+      totalPage: 0,
+      dataListLoading: false,
+      dataListSelections: [],
+      addOrUpdateVisible: false,
     };
   },
-  mounted() {
-    
-  },
+  mounted() {},
   activated() {
-    if (location.href.indexOf("#reloaded") == -1) {
-      location.href = location.href + "#reloaded";
-      location.reload();
-    }
+    // if (location.href.indexOf("#reloaded") == -1) {
+    //   location.href = location.href + "#reloaded";
+    //   location.reload();
+    // }
+    this.getDataList();
+  },
+  methods: {
+    addHandle() {
+      this.$router.replace({ path: "/design-create"  ,query: {
+                update: false
+              }});
+    },
+    getDataList() {
+      this.dataListLoading = true;
+      this.$http({
+        url: this.$http.adornUrl("/visi/visiworkflow/list"),
+        method: "get",
+        params: this.$http.adornParams({
+          page: this.pageIndex,
+          limit: this.pageSize,
+          key: this.dataForm.key,
+        }),
+      }).then(({ data }) => {
+        if (data && data.code === 0) {
+          this.dataList = data.page.list;
+          this.totalPage = data.page.totalCount;
+        } else {
+          this.dataList = [];
+          this.totalPage = 0;
+        }
+        this.dataListLoading = false;
+      });
+    },
+    // 筛选查询
+    getDataList2 () {
+      this.dataListLoading = true
+
+      if (this.status === '1') {
+        // 获取静态数据集
+        this.st_dataList = []
+        this.$http({
+          url: this.$http.adornUrl('/dataset/list'),
+          method: 'get',
+          params: this.$http.adornParams({
+            page: this.pageIndex,
+            limit: this.pageSize,
+            modelName: this.dataForm.modelName,
+            // 增加status参数用于筛选查询
+            classificationtag: this.classificationtag,
+            status: this.status
+          })
+        }).then(({ data }) => {
+          if (data && data.code === 0) {
+            this.st_dataList = data.page.list.reverse()
+            this.totalPage = data.page.totalCount
+          } else {
+            this.st_dataList = []
+            this.totalPage = 0
+          }
+          this.dataListLoading = false
+        })
+      } else {
+        this.dy_dataList = []
+        // 获取动态数据集
+        this.$http({
+          url: this.$http.adornUrl('/datasetdy/list'),
+          method: 'get',
+          params: this.$http.adornParams({
+            page: this.pageIndex,
+            limit: this.pageSize,
+            modelName: this.dataForm.modelName,
+            // 增加status参数用于筛选查询
+            classificationtag: this.classificationtag,
+            status: this.status
+          })
+        }).then(({ data }) => {
+          if (data && data.code === 0) {
+            this.dy_dataList = data.page.list.reverse()
+            this.totalPage = data.page.totalCount
+          } else {
+            this.dy_dataList = []
+            this.totalPage = 0
+          }
+          this.dataListLoading = false
+        })
+        this.dataListLoading = false
+      }
+    },
+    
+    // 每页数
+    sizeChangeHandle(val) {
+      this.pageSize = val;
+      this.pageIndex = 1;
+      this.getDataList();
+    },
+    // 当前页
+    currentChangeHandle(val) {
+      this.pageIndex = val;
+      this.getDataList();
+    },
+    // 多选
+    selectionChangeHandle(val) {
+      this.dataListSelections = val;
+    },
+    // 新增 / 修改
+    addOrUpdateHandle(info) {
+      // this.addOrUpdateVisible = true;
+      // this.$nextTick(() => {
+      //   this.$refs.addOrUpdate.init(info);
+      // });
+
+      this.$router.replace({ path: '/design-create' ,query: {
+                winfo: info,update: true
+              },})
+    },
+    // // 删除
+    // deleteHandle (info) {
+    //   var datasetId = info.datasetId
+    //     ? [info.datasetId] : this.dataListSelections.map((item) => {
+    //       return item.datasetId
+    //     })
+    //   var datasetName = info.datasetName ? [info.datasetName] : this.dataListSelections.map(item => {
+    //     return item.datasetName
+    //   })
+
+    //   MessageBox.confirm(
+    //     `确定对[数据集=${datasetName.join(' , ')}]进行[${info.datasetId ? '删除' : '批量删除'}]操作?`,
+    //     '提示',
+    //     {
+    //       confirmButtonText: '确定',
+    //       cancelButtonText: '取消',
+    //       type: 'warning'
+    //     }
+    //   )
+    //     .then(() => {
+    //       this.dataListLoading = true
+    //       this.$http({
+    //         url: this.$http.adornUrl('/dataset/delete'),
+    //         method: 'post',
+    //         data: this.$http.adornData(datasetId, false)
+    //       }).then(({ data }) => {
+    //         if (data && data.code === 0) {
+    //           this.dataListLoading = false
+    //           Message({
+    //             message: '操作成功',
+    //             type: 'success',
+    //             duration: 1500,
+    //             onClose: () => {
+    //               this.getDataList()
+    //             }
+    //           })
+    //           this.pageIndex = 1
+    //         } else {
+    //           Message.error(data.msg)
+    //         }
+    //       })
+    //     })
+    //     .catch(() => {})
+    // },
+    // 删除
+    deleteHandle(info) {
+      var ids = info.workflowId
+        ? [info.workflowId]
+        : this.dataListSelections.map((item) => {
+            return item.workflowId;
+          });
+      var experimentName = info.experimentName ? [info.experimentName] : this.dataListSelections.map(item => {
+        return item.experimentName
+      })
+      MessageBox.confirm(
+        `确定对[实验=${experimentName.join(' , ')}]进行[${info.workflowId ? "删除" : "批量删除"}]操作?`,
+        "提示",
+        {
+          confirmButtonText: "确定",
+          cancelButtonText: "取消",
+          type: "warning",
+        }
+      ).then(() => {
+        this.$http({
+          url: this.$http.adornUrl("/visi/visiworkflow/delete"),
+          method: "post",
+          data: this.$http.adornData(ids, false),
+        }).then(({ data }) => {
+          if (data && data.code === 0) {
+            this.$message({
+              message: "操作成功",
+              type: "success",
+              duration: 1500,
+              onClose: () => {
+                this.getDataList();
+              },
+            });
+          } else {
+            this.$message.error(data.msg);
+          }
+        });
+      });
+    },
   },
-  methods: {},
 };
 </script>
 

+ 4 - 4
src/views/new-menue.vue

@@ -78,13 +78,13 @@
           </el-dropdown>
         </el-menu-item>
 
-        <el-menu-item style="float:right" index="5" @click="$router.push({ name: 'theme' })">
+        <!-- <el-menu-item style="float:right" index="5" @click="$router.push({ name: 'theme' })">
           <template slot="title">
-            <!-- <el-badge value="new"> -->
+            
             <icon-svg name="shezhi" class="el-icon-setting"></icon-svg>
-            <!-- </el-badge> -->
+            
           </template>
-        </el-menu-item>
+        </el-menu-item> -->
         <!-- 弹窗, 修改密码 -->
         <update-password v-if="updatePassowrdVisible" ref="updatePassowrd"></update-password>
 

+ 1 - 1
static/config/index-prod.js

@@ -5,7 +5,7 @@
   window.SITE_CONFIG = {};
 
   // api接口请求地址
-  window.SITE_CONFIG['baseUrl'] = 'http://150.158.138.99:8082/renren-fast';
+  window.SITE_CONFIG['baseUrl'] = 'http://localhost:8082/renren-fast';
 
   // cdn地址 = 域名 + 版本号
   window.SITE_CONFIG['domain']  = './'; // 域名

+ 1 - 1
static/config/index-qa.js

@@ -5,7 +5,7 @@
   window.SITE_CONFIG = {};
 
   // api接口请求地址
-  window.SITE_CONFIG['baseUrl'] = 'http://150.158.138.99:8082/renren-fast';
+  window.SITE_CONFIG['baseUrl'] = 'http://localhost:8082/renren-fast';
 
   // cdn地址 = 域名 + 版本号
   window.SITE_CONFIG['domain']  = './'; // 域名

+ 1 - 1
static/config/index-uat.js

@@ -5,7 +5,7 @@
   window.SITE_CONFIG = {};
 
   // api接口请求地址
-  window.SITE_CONFIG['baseUrl'] = 'http://150.158.138.99:8082/renren-fast';
+  window.SITE_CONFIG['baseUrl'] = 'http://localhost:8082/renren-fast';
 
   // cdn地址 = 域名 + 版本号
   window.SITE_CONFIG['domain']  = './'; // 域名

+ 1 - 1
static/config/index.js

@@ -5,7 +5,7 @@
   window.SITE_CONFIG = {};
 
   // api接口请求地址
-  window.SITE_CONFIG['baseUrl'] = 'http://127.0.0.1:8082/renren-fast';
+  window.SITE_CONFIG['baseUrl'] = 'http://localhost:8082/renren-fast';
 
   // cdn地址 = 域名 + 版本号
   window.SITE_CONFIG['domain']  = './'; // 域名

Some files were not shown because too many files changed in this diff