cloud-web-corejs 1.1.0-dev.10 → 1.1.0-dev.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/package.json +1 -1
  2. package/src/components/VabUpload/view.vue +25 -25
  3. package/src/components/excelExport/exportColumnMemory.js +118 -0
  4. package/src/components/excelExport/exportFieldDialog.vue +50 -38
  5. package/src/components/excelExport/index.js +30 -13
  6. package/src/components/excelExport/mixins.js +390 -64
  7. package/src/components/excelImport/mixins.js +898 -850
  8. package/src/components/mobile/wf/addTaskUserdialog.vue +100 -100
  9. package/src/components/mobile/wf/content.vue +5 -5
  10. package/src/components/mobile/wf/deleteTaskUserDialog.vue +73 -73
  11. package/src/components/mobile/wf/selectUserDialog.vue +8 -12
  12. package/src/components/mobile/wf/setCandidateDialog.vue +69 -69
  13. package/src/components/mobile/wf/urgingDialog.vue +75 -75
  14. package/src/components/table/index.js +14 -1
  15. package/src/components/table/vxeFilter/mixin.js +28 -18
  16. package/src/components/xform/docs/2026-07 table/344/270/216excelExport/344/277/256/345/244/215/345/217/212/345/257/274/345/207/272/344/274/230/345/214/226.md" +64 -57
  17. package/src/components/xform/docs/2026-09 /346/235/241/344/273/266/345/257/274/345/207/272/345/244/247/346/225/260/346/215/256/351/207/217/345/264/251/346/272/203/346/216/222/346/237/245.md" +389 -0
  18. package/src/components/xform/form-designer/form-widget/container-widget/detail-h5-widget.vue +243 -243
  19. package/src/components/xform/form-designer/form-widget/container-widget/h5-card-pane-widget.vue +228 -228
  20. package/src/components/xform/form-designer/form-widget/container-widget/h5-card-widget.vue +165 -165
  21. package/src/components/xform/form-designer/form-widget/dialog/importDialogMixin.js +61 -2
  22. package/src/components/xform/form-designer/form-widget/field-widget/select-export-item-button-widget.vue +3 -0
  23. package/src/components/xform/form-designer/form-widget/field-widget/singleUpload-widget.vue +145 -145
  24. package/src/components/xform/form-render/container-item/data-table-item.vue +350 -347
  25. package/src/components/xform/form-render/container-item/data-table-mixin.js +240 -37
  26. package/src/components/xform/form-render/container-item/detail-h5-item.vue +1 -1
  27. package/src/components/xform/form-render/container-item/list-h5-item.vue +1 -1
  28. package/src/components/xform/styles/h5.scss +483 -459
  29. package/src/components/xform/utils/dynamicSchemaUtil.js +385 -361
  30. package/src/layout/components/TagsView/index.vue +325 -323
  31. package/src/store/modules/tagsView.js +241 -217
  32. package/src/utils/importLimit.js +72 -0
  33. package/src/utils/pdfUtil.js +6 -1
  34. package/src/utils/request.js +17 -0
@@ -313,8 +313,9 @@ $xformH5Size:14px;
313
313
  }
314
314
 
315
315
  > .el-form-item__content {
316
- width: auto !important; // 压对手二的 !important;本方 (0,7,1)+!important
317
- text-align: right;
316
+ text-align: right;
317
+ display: flex;
318
+ justify-content: flex-end;
318
319
  /* 对手一 (0,3,2),本方 (0,8,2) */
319
320
  span {
320
321
  font-size:$xformH5Size;
@@ -529,6 +530,7 @@ $xformH5Size:14px;
529
530
  }
530
531
 
531
532
  /* ============ 块 H:底部动作栏(胶囊按钮,单行、最多三个 + 图标下拉) ============ */
533
+
532
534
  .xform-h5 .h5-detail-wrap .h5-fixed-bottom-btns {
533
535
  display: flex;
534
536
  align-items: center;
@@ -884,13 +886,13 @@ $xformH5Size:14px;
884
886
  align-items: center;
885
887
  justify-content: center;
886
888
  height: 36px;
887
- border-radius: $xformH5CardRadius;
889
+ border-radius: 8px;
888
890
  background: #fff;
889
- border: solid 1px #eee;
891
+ //border: solid 1px #eee;
890
892
  color: $baseColor;
891
893
  font-size: 13px;
892
894
  cursor: pointer;
893
-
895
+ margin:-4px 0 8px;
894
896
  .h5-list-more-count {
895
897
  color: #999;
896
898
  }
@@ -968,7 +970,7 @@ $xformH5Size:14px;
968
970
  overflow: visible;
969
971
  background: #fff;
970
972
  border: solid 1px $xformH5RowBorder;
971
- border-radius: 10px;
973
+ border-radius: 8px;
972
974
  transition: none; // element 的 item 有 transform 过渡,行式下没意义还会闪
973
975
 
974
976
  /* 行本体。li 下只有这一个 div,所有子块都在它里面 */
@@ -1332,7 +1334,7 @@ $xformH5Size:14px;
1332
1334
 
1333
1335
  > div {
1334
1336
  position: fixed;
1335
- top: 24%;
1337
+ top: 19%;
1336
1338
  left: 32px;
1337
1339
  right: 32px;
1338
1340
  box-shadow: 0 0 14px rgba(0, 0, 0, 0.16);
@@ -1405,7 +1407,7 @@ $xformH5Size:14px;
1405
1407
  .line {
1406
1408
  border: solid 1px #e8e8e8;
1407
1409
  }
1408
- .el-input{width:100% !important}
1410
+ .el-input,.el-select{width:100% !important}
1409
1411
  }
1410
1412
  }
1411
1413
 
@@ -1608,219 +1610,6 @@ $xformH5Size:14px;
1608
1610
 
1609
1611
  }
1610
1612
 
1611
- /* 搜索行(选用户 / 加签):输入框 + 右侧「高级筛选」 */
1612
- .search-H5box {
1613
- flex: none;
1614
- position: relative;
1615
- display: flex;
1616
- padding: 8px 16px 0;
1617
-
1618
- .txt {
1619
- flex: 1;
1620
- position: relative;
1621
- height: 38px;
1622
- background: #fff;
1623
- border: solid 1px #e4e4e4;
1624
- border-radius: 38px 0 0 38px;
1625
-
1626
- .el-input {
1627
- width: 100% !important;
1628
- }
1629
-
1630
- .el-input__inner {
1631
- height: 38px !important;
1632
- width: 100%;
1633
- border: none;
1634
- background: none;
1635
- line-height: 38px;
1636
- padding-left: 39px;
1637
- font-size: 13px;
1638
- }
1639
-
1640
- /* 放大镜挪到左侧(element 默认在右) */
1641
- .el-input__suffix {
1642
- position: absolute;
1643
- left: 12px;
1644
- right: inherit;
1645
- top: 7px;
1646
- width: 20px;
1647
- transform: inherit !important;
1648
- }
1649
-
1650
- .el-input-group__append {
1651
- border: none;
1652
- background: none;
1653
-
1654
- .el-button {
1655
- border: none;
1656
- background: $baseColor;
1657
- color: #fff;
1658
- width: 53px;
1659
- height: 30px;
1660
- padding: 0;
1661
- position: absolute;
1662
- right: 4px;
1663
- top: 4px;
1664
- /* element 给 .el-input-group__append .el-button 定了 margin:-10px -20px,
1665
- 绝对定位后这对负边距会把按钮整体往右上顶出去(实测右溢 16px、上溢
1666
- 5px,正好压在「高级筛选」上)。原文是用 right:26px/top:14px 反向补
1667
- 偿的,这里直接清零,right/top 才是所见即所得。 */
1668
- margin: 0;
1669
- border-radius: 30px;
1670
- outline: none;
1671
- font-size: 13px;
1672
- }
1673
- }
1674
- }
1675
-
1676
- .icon-screen {
1677
- flex: none;
1678
- height: 38px;
1679
- line-height: 38px;
1680
- padding: 0 10px;
1681
- font-size: 13px;
1682
- color: $baseColor;
1683
- background: transparentize($baseColor, 0.88);
1684
- border: solid 1px #e4e4e4;
1685
- border-left: none;
1686
- border-radius: 0 10px 10px 0;
1687
-
1688
- i {
1689
- margin-right: 5px;
1690
- font-size: 14px;
1691
- }
1692
- }
1693
- }
1694
-
1695
- /* 修改单据:表单直接挂在骨架下,不套 .flex */
1696
- > .el-dialog__body > div > .form-box {
1697
- flex: 1;
1698
- min-height: 0;
1699
- overflow-y: auto;
1700
- }
1701
-
1702
- .flex {
1703
- display: flex;
1704
- flex-direction: column;
1705
- flex: 1;
1706
- min-height: 0;
1707
-
1708
- /* 可滚动的候选列表 */
1709
- .checkbox-all_list {
1710
- flex: 1;
1711
- min-height: 0;
1712
- /* 只放开纵向。写成 overflow:auto 时横向也可滚,卡片里一旦有超长内容
1713
- (用户资料的「地址」字段存的是一整条图片 URL)就会拖出一条横向滚动条。 */
1714
- overflow-y: auto;
1715
- overflow-x: hidden;
1716
- padding: 0 12px;
1717
-
1718
- .order-item {
1719
- background: #fff;
1720
-
1721
- .is-checked {
1722
- position: absolute;
1723
- right: 0;
1724
- top: 0;
1725
- width: 62px;
1726
- height: 22px;
1727
- line-height: 20px;
1728
- text-align: center;
1729
- font-size: 13px;
1730
- color: #fff;
1731
- background: #e2e2e2;
1732
- border: solid 1px #dcdcdc;
1733
- border-radius: 0 8px 0 6px;
1734
-
1735
- i {
1736
- margin-right: 3px;
1737
- font-size: 13px;
1738
- }
1739
- }
1740
-
1741
- &.on {
1742
- border: solid 1px $baseColor;
1743
-
1744
- .is-checked {
1745
- border-color: $baseColor;
1746
- background: $baseColor;
1747
- }
1748
- }
1749
- }
1750
- }
1751
-
1752
- /* 已选区(底部固定,不滚) */
1753
- .checkbox-all {
1754
- flex: none;
1755
- position: relative;
1756
- min-height: 80px;
1757
- padding: 0 12px 8px;
1758
- background: #fff;
1759
- box-shadow: 0 -3px 4px rgba(0, 0, 0, 0.06);
1760
-
1761
- .ca-t {
1762
- margin: 8px 0;
1763
- font-size: 14px;
1764
- font-weight: 600;
1765
- }
1766
-
1767
- .ca-c span {
1768
- display: inline-block;
1769
- position: relative;
1770
- height: 24px;
1771
- line-height: 24px;
1772
- padding: 0 28px 0 2px;
1773
- margin: 4px 10px 4px 0;
1774
- font-size: 13px;
1775
- color: $baseColor;
1776
- border: solid 1px $baseColor;
1777
- border-radius: 4px;
1778
-
1779
- i {
1780
- position: absolute;
1781
- top: 0;
1782
- right: 0;
1783
- width: 24px;
1784
- height: 24px;
1785
- line-height: 24px;
1786
- text-align: center;
1787
- background: transparentize($baseColor, 0.91);
1788
- }
1789
- }
1790
- }
1791
-
1792
- .form-box {
1793
- display: flex;
1794
- flex-direction: column;
1795
- flex: 1;
1796
- overflow: hidden;
1797
-
1798
- .tit {
1799
- margin: 8px 12px;
1800
- background: rgba(51, 106, 153, 0.1);
1801
- border-radius: 11px;
1802
- padding: 10px 12px;
1803
- font-size: 13px;
1804
- color: $baseColor;
1805
-
1806
- &:before {
1807
- content: "";
1808
- width: 5px;
1809
- height: 5px;
1810
- background: $baseColor;
1811
- border-radius: 50%;
1812
- vertical-align: middle;
1813
- margin-right: 5px;
1814
- display: inline-block;
1815
- }
1816
-
1817
- > span {
1818
- vertical-align: middle;
1819
- }
1820
- }
1821
- }
1822
- }
1823
-
1824
1613
  /* 按钮口径与块 H 的底部动作栏、块 G 的明细详情弹框页脚保持一致(40px 高胶囊)。
1825
1614
  原文搬过来时是 border-radius:14px —— 那是手写移动页 resources/css/h5.scss 的
1826
1615
  口径,跟包内基线不是一套,同一屏里会出现两种按钮,故改齐。
@@ -1845,78 +1634,7 @@ $xformH5Size:14px;
1845
1634
  }
1846
1635
  }
1847
1636
 
1848
- /* 列表里的一张候选卡片。原文挂在 .h5-box 下(不在 .pop-box 段内),
1849
- xform 里只有这批弹层用得到,就收进来。 */
1850
- .order-item {
1851
- position: relative;
1852
- border: solid 1px #f0f1f1;
1853
- border-radius: 12px;
1854
- padding: 8px 10px;
1855
- margin: 8px 0;
1856
-
1857
- /* 左侧那道竖条 */
1858
- &:before {
1859
- content: "";
1860
- position: absolute;
1861
- left: 0;
1862
- top: 6px;
1863
- width: 3px;
1864
- height: 50px;
1865
- background: $baseColor;
1866
- border-radius: 5px;
1867
- }
1868
-
1869
- /* 卡片里放的是用户资料原值,可能出现超长且无空格的串(「地址」字段实际存的
1870
- 是一整条图片 URL)。默认不允许在非空白处断行,这种串会把卡片整体撑宽、
1871
- 连带拖出横向滚动条,所以这里统一允许任意位置断行。 */
1872
- .t1,
1873
- .t2 {
1874
- word-break: break-all;
1875
- overflow-wrap: anywhere;
1876
- }
1877
-
1878
- .t1 {
1879
- margin-bottom: 6px;
1880
-
1881
- /* 模板里恒有 <i class="icon">(原文设了一圈头像样式后又 display:none,
1882
- 等于留着没用)。照原样隐藏,避免哪天有人给裸 .icon 加了全局规则时冒出来。 */
1883
- .icon {
1884
- display: none;
1885
- }
1886
-
1887
- span {
1888
- vertical-align: middle;
1889
- margin: 0 5px 0 0;
1890
- }
1891
- }
1892
-
1893
- .t2 {
1894
- font-size: 11px;
1895
- color: rgba(128, 128, 128, 0.8);
1896
-
1897
- p {
1898
- min-width: 50%;
1899
- /* 没有 max-width 时,inline-block 会被里面的长串顶到超出卡片宽度 */
1900
- max-width: 100%;
1901
- margin: 4px 0;
1902
- display: inline-block;
1903
- vertical-align: top;
1904
- font-size:13px;
1905
- }
1906
- }
1907
-
1908
- /* 修改候选人:卡片内的「设置候选人」按钮 */
1909
- .btns {
1910
- text-align: right;
1911
- margin-top: 4px;
1912
1637
 
1913
- .btn {
1914
- height: 28px;
1915
- padding: 0 10px;
1916
- font-size: 13px;
1917
- }
1918
- }
1919
- }
1920
1638
 
1921
1639
  }
1922
1640
 
@@ -2010,28 +1728,413 @@ $xformH5Size:14px;
2010
1728
  flex: 1;
2011
1729
  margin: 0 8px;
2012
1730
  height: 42px;
2013
- border-radius: 12px;
1731
+ border-radius: 42px;
2014
1732
  }
2015
1733
  }
2016
1734
  }
2017
1735
  }
2018
1736
 
2019
1737
  .el-dialog.h5view-dialog {
2020
- margin: 0 !important;
2021
- /* 同上:手机浏览器地址栏占位时 100vh 比可视区高,弹框底部的「关闭」会被顶出屏幕。
2022
- dvh 打头、vh 兜底,见块 G 的说明。 */
2023
- height: calc(100vh - 15px);
2024
- height: calc(100dvh - 15px);
1738
+ margin: 0 !important;
1739
+ /* 同上:手机浏览器地址栏占位时 100vh 比可视区高,弹框底部的「关闭」会被顶出屏幕。
1740
+ dvh 打头、vh 兜底,见块 G 的说明。 */
1741
+ height: calc(100vh - 15px);
1742
+ height: calc(100dvh - 15px);
1743
+ display: flex;
1744
+ flex-direction: column;
1745
+ border-radius: 0;
1746
+
1747
+ > .el-dialog__body {
1748
+ flex: 1;
1749
+ min-height: 0;
1750
+ overflow-y: auto;
1751
+ -webkit-overflow-scrolling: touch;
1752
+ }
1753
+ .form-box {
1754
+ display: flex;
1755
+ flex-direction: column;
1756
+ flex: 1;
1757
+ overflow: hidden;
1758
+ background:#FFF;
1759
+ .tit {
1760
+ margin: 8px 12px;
1761
+ background: rgba(51, 106, 153, 0.1);
1762
+ border-radius: 11px;
1763
+ padding: 10px 12px;
1764
+ font-size: 13px;
1765
+ color: $baseColor;
1766
+
1767
+ &:before {
1768
+ content: "";
1769
+ width: 5px;
1770
+ height: 5px;
1771
+ background: $baseColor;
1772
+ border-radius: 50%;
1773
+ vertical-align: middle;
1774
+ margin-right: 5px;
1775
+ display: inline-block;
1776
+ }
1777
+
1778
+ > span {
1779
+ vertical-align: middle;
1780
+ }
1781
+ }
1782
+ }
1783
+
1784
+ /* 内容区的 height 是模板里的内联样式,只能用 !important 压掉,
1785
+ 改由上面的 flex 决定高度 */
1786
+ .cont {
1787
+ height: 100% !important;overflow: auto;
1788
+ .h5-list-box{
1789
+ margin:12px;padding:0 !important;background:none !important;
1790
+ .item{
1791
+ border:none;
1792
+ .t2{
1793
+ dl{
1794
+ font-size:14px;color:#666;
1795
+ dd{
1796
+ margin:0;
1797
+ color:#323232;
1798
+ text-align:right;
1799
+ }
1800
+ }
1801
+ }
1802
+ }
1803
+ }
1804
+ }
1805
+
1806
+ /* 底部「关闭」:与底部动作栏同款胶囊,铺满一行 */
1807
+ > .el-dialog__footer {
1808
+ flex: none;
1809
+ padding: 8px 13px;
1810
+ box-shadow: 0 0 10px rgba(0, 0, 0, 0.06);
1811
+ .dialog-footer{display:flex;}
1812
+ .button-sty,
1813
+ .el-button {
1814
+ height: 40px;
1815
+ border-radius: 30px;
1816
+ padding: 0;
1817
+ font-size: 13px;
1818
+ flex:1;
1819
+ i {
1820
+ margin-right: 3px;
1821
+ }
1822
+ }
1823
+ }
1824
+
1825
+ /*步骤条*/
1826
+ /* ---- 任务情况时间轴 ---- */
1827
+ .h5-process-info {
1828
+ font-size: $xformH5Size;
1829
+ padding: 12px 16px;
1830
+ background: #fff;
1831
+ margin: 12px 16px;
1832
+ border-radius: 15px;
1833
+ overflow:auto;
1834
+ .item {
1835
+ display: flex;
1836
+ line-height: 1.4;
1837
+ padding: 6px 0 8px;
1838
+ position: relative;
1839
+
1840
+ &:after {
1841
+ content: "";
1842
+ width: 2px;
1843
+ position: absolute;
1844
+ background: #e9e9e9;
1845
+ top: 22px;
1846
+ bottom: -10px;
1847
+ left: 76px;
1848
+ z-index: 2;
1849
+ }
1850
+
1851
+ &:last-child:after {
1852
+ display: none;
1853
+ }
1854
+
1855
+ .time {
1856
+ color: #666;
1857
+ width: 82px;
1858
+ position: absolute;
1859
+ top: 37px;
1860
+ left: -14px;
1861
+ right: 0;
1862
+ text-align: center;
1863
+ zoom: 0.9;
1864
+ }
1865
+
1866
+ .status {
1867
+ width: 50px;
1868
+ line-height: 16px;
1869
+ padding: 2px 0;
1870
+ height: 100%;
1871
+ text-align: center;
1872
+ border-radius: 22px;
1873
+ vertical-align: middle;
1874
+ background: #fff;
1875
+ border: 1px solid #dcdfe6;
1876
+ color: #606266;
1877
+
1878
+ &.green {
1879
+ border: solid 1px #acedc9;
1880
+ background: #e7faf0;
1881
+ color: #67c23a;
1882
+ }
1883
+ &.red {
1884
+ border: solid 1px #ffcaca;
1885
+ background: #ffeded;
1886
+ color: #f56c6c;
1887
+ }
1888
+ &.gray {
1889
+ color: #d6d6d6;
1890
+ background: #f4f4f5;
1891
+ border-color: #d3d4d6;
1892
+ }
1893
+ &.orgn {
1894
+ color: #e6a23c;
1895
+ background: #fdf6ec;
1896
+ border-color: #f5dab1;
1897
+ }
1898
+ &.blue {
1899
+ background-color: transparentize($baseColor, 0.94);
1900
+ color: $baseColor;
1901
+ border: solid 1px transparentize($baseColor, 0.72);
1902
+ }
1903
+ }
1904
+
1905
+ .circle {
1906
+ background: $baseColor;
1907
+ width: 14px;
1908
+ height: 14px;
1909
+ border-radius: 50%;
1910
+ border: solid 3px #fff;
1911
+ display: inline-block;
1912
+ margin: 3px 20px;
1913
+ z-index: 9;
1914
+ }
1915
+
1916
+ .info {
1917
+ width: calc(100% - 100px);
1918
+ color:#666;
1919
+ p {
1920
+ margin: 2px 0;
1921
+ display: block;
1922
+
1923
+ > span {
1924
+ display: inline-block;
1925
+ min-width: 50%;
1926
+
1927
+ &.name {
1928
+ font-weight: 600;
1929
+ width: 100%;
1930
+ margin-bottom: 3px;
1931
+ color:#323232;
1932
+ }
1933
+ }
1934
+
1935
+ &.t {
1936
+ display: flex;
1937
+
1938
+ .t1 {
1939
+ min-width: 65px;
1940
+ margin-right: 0;
1941
+ flex: none;
1942
+ }
1943
+
1944
+ span {
1945
+ flex: 1;
1946
+ white-space: pre-line;
1947
+ }
1948
+ }
1949
+ }
1950
+ }
1951
+ }
1952
+ }
1953
+
1954
+
1955
+ /* 搜索行(选用户 / 加签):输入框 + 右侧「高级筛选」 */
1956
+ .search-H5box {
1957
+ flex: none;
1958
+ position: relative;
1959
+ display: flex;
1960
+ padding: 8px 16px 0;
1961
+
1962
+ .txt {
1963
+ flex: 1;
1964
+ position: relative;
1965
+ height: 38px;
1966
+ background: #fff;
1967
+ border: solid 1px #e4e4e4;
1968
+ border-radius: 38px 0 0 38px;
1969
+
1970
+ .el-input {
1971
+ width: 100% !important;
1972
+ }
1973
+
1974
+ .el-input__inner {
1975
+ height: 38px !important;
1976
+ width: 100%;
1977
+ border: none;
1978
+ background: none;
1979
+ line-height: 38px;
1980
+ padding-left: 39px;
1981
+ font-size: 13px;
1982
+ }
1983
+
1984
+ /* 放大镜挪到左侧(element 默认在右) */
1985
+ .el-input__suffix {
1986
+ position: absolute;
1987
+ left: 12px;
1988
+ right: inherit;
1989
+ top: 7px;
1990
+ width: 20px;
1991
+ transform: inherit !important;
1992
+ }
1993
+
1994
+ .el-input-group__append {
1995
+ border: none;
1996
+ background: none;
1997
+
1998
+ .el-button {
1999
+ border: none;
2000
+ background: $baseColor;
2001
+ color: #fff;
2002
+ width: 53px;
2003
+ height: 30px;
2004
+ padding: 0;
2005
+ position: absolute;
2006
+ right: 4px;
2007
+ top: 4px;
2008
+ /* element 给 .el-input-group__append .el-button 定了 margin:-10px -20px,
2009
+ 绝对定位后这对负边距会把按钮整体往右上顶出去(实测右溢 16px、上溢
2010
+ 5px,正好压在「高级筛选」上)。原文是用 right:26px/top:14px 反向补
2011
+ 偿的,这里直接清零,right/top 才是所见即所得。 */
2012
+ margin: 0;
2013
+ border-radius: 30px;
2014
+ outline: none;
2015
+ font-size: 13px;
2016
+ }
2017
+ }
2018
+ }
2019
+
2020
+ .icon-screen {
2021
+ flex: none;
2022
+ height: 38px;
2023
+ line-height: 38px;
2024
+ padding: 0 10px;
2025
+ font-size: 13px;
2026
+ color: $baseColor;
2027
+ background: transparentize($baseColor, 0.88);
2028
+ border: solid 1px #e4e4e4;
2029
+ border-left: none;
2030
+ border-radius: 0 10px 10px 0;
2031
+
2032
+ i {
2033
+ margin-right: 5px;
2034
+ font-size: 14px;
2035
+ }
2036
+ }
2037
+ }
2038
+
2039
+ /* 修改单据:表单直接挂在骨架下,不套 .flex */
2040
+ > .el-dialog__body > div > .form-box {
2041
+ flex: 1;
2042
+ min-height: 0;
2043
+ overflow-y: auto;
2044
+ }
2045
+ .selected-flex-box{
2046
+ display: flex;height:100%;flex-direction: column;
2047
+ }
2048
+ .flex {
2025
2049
  display: flex;
2026
2050
  flex-direction: column;
2027
- border-radius: 0;
2051
+ flex: 1;
2052
+ min-height: 0;
2028
2053
 
2029
- > .el-dialog__body {
2054
+ /* 可滚动的候选列表 */
2055
+ .checkbox-all_list {
2030
2056
  flex: 1;
2031
2057
  min-height: 0;
2058
+ /* 只放开纵向。写成 overflow:auto 时横向也可滚,卡片里一旦有超长内容
2059
+ (用户资料的「地址」字段存的是一整条图片 URL)就会拖出一条横向滚动条。 */
2032
2060
  overflow-y: auto;
2033
- -webkit-overflow-scrolling: touch;
2061
+ overflow-x: hidden;
2062
+ padding: 0 12px;
2063
+
2064
+ .order-item {
2065
+ background: #fff;
2066
+
2067
+ .is-checked {
2068
+ position: absolute;
2069
+ right: 0;
2070
+ top: 0;
2071
+ width: 62px;
2072
+ height: 22px;
2073
+ line-height: 20px;
2074
+ text-align: center;
2075
+ font-size: 13px;
2076
+ color: #fff;
2077
+ background: #e2e2e2;
2078
+ border: solid 1px #dcdcdc;
2079
+ border-radius: 0 8px 0 6px;
2080
+
2081
+ i {
2082
+ margin-right: 3px;
2083
+ font-size: 13px;
2084
+ }
2085
+ }
2086
+
2087
+ &.on {
2088
+ border: solid 1px $baseColor;
2089
+
2090
+ .is-checked {
2091
+ border-color: $baseColor;
2092
+ background: $baseColor;
2093
+ }
2094
+ }
2095
+ }
2096
+ }
2097
+
2098
+ /* 已选区(底部固定,不滚) */
2099
+ .checkbox-all {
2100
+ flex: none;
2101
+ position: relative;
2102
+ min-height: 80px;
2103
+ padding: 0 12px 8px;
2104
+ background: #fff;
2105
+ box-shadow: 0 -3px 4px rgba(0, 0, 0, 0.06);
2106
+ border-bottom: solid 1px $xformH5RowBorder;
2107
+ .ca-t {
2108
+ margin: 8px 0;
2109
+ font-size: 14px;
2110
+ font-weight: 600;
2111
+ }
2112
+
2113
+ .ca-c span {
2114
+ display: inline-block;
2115
+ position: relative;
2116
+ height: 24px;
2117
+ line-height: 24px;
2118
+ padding: 0 28px 0 2px;
2119
+ margin: 4px 10px 4px 0;
2120
+ font-size: 13px;
2121
+ color: $baseColor;
2122
+ border: solid 1px $baseColor;
2123
+ border-radius: 4px;
2124
+
2125
+ i {
2126
+ position: absolute;
2127
+ top: 0;
2128
+ right: 0;
2129
+ width: 24px;
2130
+ height: 24px;
2131
+ line-height: 24px;
2132
+ text-align: center;
2133
+ background: transparentize($baseColor, 0.91);
2134
+ }
2135
+ }
2034
2136
  }
2137
+
2035
2138
  .form-box {
2036
2139
  display: flex;
2037
2140
  flex-direction: column;
@@ -2062,177 +2165,98 @@ $xformH5Size:14px;
2062
2165
  }
2063
2166
  }
2064
2167
  }
2168
+ }
2065
2169
 
2066
- /* 内容区的 height 是模板里的内联样式,只能用 !important 压掉,
2067
- 改由上面的 flex 决定高度 */
2068
- .cont {
2069
- height: 100% !important;overflow: auto;
2070
- .h5-list-box{
2071
- margin:12px;padding:0 !important;background:none !important;
2072
- .item{
2073
- border:none;
2074
- .t2{
2075
- dl{
2076
- font-size:14px;color:#666;
2077
- dd{
2078
- margin:0;
2079
- color:#323232;
2080
- text-align:right;
2081
- }
2082
- }
2083
- }
2084
- }
2085
- }
2086
- }
2087
-
2088
- /* 底部「关闭」:与底部动作栏同款胶囊,铺满一行 */
2089
- > .el-dialog__footer {
2090
- flex: none;
2091
- padding: 8px 13px;
2092
- box-shadow: 0 0 10px rgba(0, 0, 0, 0.06);
2093
2170
 
2094
- .button-sty,
2095
- .el-button {
2096
- width: 100%;
2097
- height: 40px;
2098
- border-radius: 30px;
2099
- padding: 0;
2100
- font-size: 13px;
2171
+ /* 列表里的一张候选卡片。原文挂在 .h5-box 下(不在 .pop-box 段内),
2172
+ xform 里只有这批弹层用得到,就收进来。 */
2173
+ .order-item {
2174
+ position: relative;
2175
+ border: solid 1px #f0f1f1;
2176
+ border-radius: 12px;
2177
+ padding: 8px 10px;
2178
+ margin: 8px 0;
2101
2179
 
2102
- i {
2103
- margin-right: 3px;
2104
- }
2105
- }
2180
+ /* 左侧那道竖条 */
2181
+ &:before {
2182
+ content: "";
2183
+ position: absolute;
2184
+ left: 0;
2185
+ top: 6px;
2186
+ width: 3px;
2187
+ height: 50px;
2188
+ background: $baseColor;
2189
+ border-radius: 5px;
2106
2190
  }
2107
2191
 
2108
- /*步骤条*/
2109
- /* ---- 任务情况时间轴 ---- */
2110
- .h5-process-info {
2111
- font-size: $xformH5Size;
2112
- padding: 12px 16px;
2113
- background: #fff;
2114
- margin: 12px 16px;
2115
- border-radius: 15px;
2116
- overflow:auto;
2117
- width:100%;
2118
- .item {
2119
- display: flex;
2120
- line-height: 1.4;
2121
- padding: 6px 0 8px;
2122
- position: relative;
2123
-
2124
- &:after {
2125
- content: "";
2126
- width: 2px;
2127
- position: absolute;
2128
- background: #e9e9e9;
2129
- top: 22px;
2130
- bottom: -10px;
2131
- left: 76px;
2132
- z-index: 2;
2133
- }
2192
+ /* 卡片里放的是用户资料原值,可能出现超长且无空格的串(「地址」字段实际存的
2193
+ 是一整条图片 URL)。默认不允许在非空白处断行,这种串会把卡片整体撑宽、
2194
+ 连带拖出横向滚动条,所以这里统一允许任意位置断行。 */
2195
+ .t1,
2196
+ .t2 {
2197
+ word-break: break-all;
2198
+ overflow-wrap: anywhere;
2199
+ }
2134
2200
 
2135
- &:last-child:after {
2136
- display: none;
2137
- }
2201
+ .t1 {
2202
+ margin-bottom: 6px;
2138
2203
 
2139
- .time {
2140
- color: #666;
2141
- width: 82px;
2142
- position: absolute;
2143
- top: 37px;
2144
- left: -14px;
2145
- right: 0;
2146
- text-align: center;
2147
- zoom: 0.9;
2148
- }
2149
-
2150
- .status {
2151
- width: 50px;
2152
- line-height: 16px;
2153
- padding: 2px 0;
2154
- height: 100%;
2155
- text-align: center;
2156
- border-radius: 22px;
2157
- vertical-align: middle;
2158
- background: #fff;
2159
- border: 1px solid #dcdfe6;
2160
- color: #606266;
2161
-
2162
- &.green {
2163
- border: solid 1px #acedc9;
2164
- background: #e7faf0;
2165
- color: #67c23a;
2166
- }
2167
- &.red {
2168
- border: solid 1px #ffcaca;
2169
- background: #ffeded;
2170
- color: #f56c6c;
2171
- }
2172
- &.gray {
2173
- color: #d6d6d6;
2174
- background: #f4f4f5;
2175
- border-color: #d3d4d6;
2176
- }
2177
- &.orgn {
2178
- color: #e6a23c;
2179
- background: #fdf6ec;
2180
- border-color: #f5dab1;
2181
- }
2182
- &.blue {
2183
- background-color: transparentize($baseColor, 0.94);
2184
- color: $baseColor;
2185
- border: solid 1px transparentize($baseColor, 0.72);
2186
- }
2187
- }
2204
+ /* 模板里恒有 <i class="icon">(原文设了一圈头像样式后又 display:none,
2205
+ 等于留着没用)。照原样隐藏,避免哪天有人给裸 .icon 加了全局规则时冒出来。 */
2206
+ .icon {
2207
+ display: none;
2208
+ }
2188
2209
 
2189
- .circle {
2190
- background: $baseColor;
2191
- width: 14px;
2192
- height: 14px;
2193
- border-radius: 50%;
2194
- border: solid 3px #fff;
2195
- display: inline-block;
2196
- margin: 3px 20px;
2197
- z-index: 9;
2198
- }
2210
+ span {
2211
+ vertical-align: middle;
2212
+ margin: 0 5px 0 0;
2213
+ }
2214
+ }
2199
2215
 
2200
- .info {
2201
- width: calc(100% - 100px);
2202
- color:#666;
2203
- p {
2204
- margin: 2px 0;
2205
- display: block;
2206
-
2207
- > span {
2208
- display: inline-block;
2209
- min-width: 50%;
2210
-
2211
- &.name {
2212
- font-weight: 600;
2213
- width: 100%;
2214
- margin-bottom: 3px;
2215
- color:#323232;
2216
- }
2217
- }
2216
+ .t2 {
2217
+ font-size: 11px;
2218
+ color: rgba(128, 128, 128, 0.8);
2218
2219
 
2219
- &.t {
2220
- display: flex;
2220
+ p {
2221
+ min-width: 50%;
2222
+ /* 没有 max-width 时,inline-block 会被里面的长串顶到超出卡片宽度 */
2223
+ max-width: 100%;
2224
+ margin: 4px 0;
2225
+ display: inline-block;
2226
+ vertical-align: top;
2227
+ font-size:13px;
2228
+ }
2229
+ }
2221
2230
 
2222
- .t1 {
2223
- min-width: 65px;
2224
- margin-right: 0;
2225
- flex: none;
2226
- }
2231
+ /* 修改候选人:卡片内的「设置候选人」按钮 */
2232
+ .btns {
2233
+ text-align: right;
2234
+ margin-top: 4px;
2227
2235
 
2228
- span {
2229
- flex: 1;
2230
- white-space: pre-line;
2231
- }
2232
- }
2233
- }
2234
- }
2236
+ .btn {
2237
+ height: 28px;
2238
+ padding: 0 10px;
2239
+ font-size: 13px;
2235
2240
  }
2236
2241
  }
2242
+ }
2237
2243
 
2244
+ }
2245
+ .el-dropdown-menu__item:not(.is-disabled):hover, .el-dropdown-menu__item:focus{
2246
+ background:none
2247
+ }
2248
+ .h5-dropdown-button.button-sty{
2249
+ width: 100%;
2250
+ height: 40px;
2251
+ border-radius: 30px;
2252
+ padding: 0;
2253
+ /* 三个并排时按钮偏窄:字号收一档、超长省略,避免文字撑破 */
2254
+ font-size: 13px;
2255
+ overflow: hidden;
2256
+ text-overflow: ellipsis;
2257
+ white-space: nowrap;
2258
+
2259
+ i {
2260
+ margin-right: 3px;
2238
2261
  }
2262
+ }