插件更新导致问题 更新

master
张同海 8 months ago
parent 3f08a70970
commit 6d072d6947

@ -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="1551058675966" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="7872" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M85.333333 512h85.333334a340.736 340.736 0 0 1 99.712-241.621333 337.493333 337.493333 0 0 1 108.458666-72.96 346.453333 346.453333 0 0 1 261.546667-1.749334A106.154667 106.154667 0 0 0 746.666667 298.666667C805.802667 298.666667 853.333333 251.136 853.333333 192S805.802667 85.333333 746.666667 85.333333c-29.397333 0-55.978667 11.776-75.221334 30.933334-103.722667-41.514667-222.848-40.874667-325.76 2.517333a423.594667 423.594667 0 0 0-135.68 91.264 423.253333 423.253333 0 0 0-91.306666 135.637333A426.88 426.88 0 0 0 85.333333 512z m741.248 133.205333c-17.109333 40.618667-41.685333 77.141333-72.96 108.416s-67.797333 55.850667-108.458666 72.96a346.453333 346.453333 0 0 1-261.546667 1.749334A106.154667 106.154667 0 0 0 277.333333 725.333333C218.197333 725.333333 170.666667 772.864 170.666667 832S218.197333 938.666667 277.333333 938.666667c29.397333 0 55.978667-11.776 75.221334-30.933334A425.173333 425.173333 0 0 0 512 938.666667a425.941333 425.941333 0 0 0 393.258667-260.352A426.325333 426.325333 0 0 0 938.666667 512h-85.333334a341.034667 341.034667 0 0 1-26.752 133.205333z" p-id="7873"></path><path d="M512 318.378667c-106.752 0-193.621333 86.869333-193.621333 193.621333S405.248 705.621333 512 705.621333s193.621333-86.869333 193.621333-193.621333S618.752 318.378667 512 318.378667z m0 301.909333c-59.690667 0-108.288-48.597333-108.288-108.288S452.309333 403.712 512 403.712s108.288 48.597333 108.288 108.288-48.597333 108.288-108.288 108.288z" p-id="7874"></path></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="17px" height="17px" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(1 0 0 1 -365 -36 )">
<path d="M 9.817057291666668 4.349609375 C 9.883463541666668 4.416015625 9.916666666666668 4.500868055555554 9.916666666666668 4.604166666666667 L 9.916666666666668 9.5625 C 9.916666666666668 9.66579861111111 9.883463541666668 9.750651041666666 9.817057291666668 9.817057291666666 C 9.750651041666668 9.883463541666666 9.665798611111112 9.916666666666666 9.5625 9.916666666666666 L 6.020833333333334 9.916666666666666 C 5.917534722222223 9.916666666666666 5.832682291666666 9.883463541666666 5.766276041666666 9.817057291666666 C 5.699869791666666 9.750651041666666 5.666666666666666 9.66579861111111 5.666666666666666 9.5625 L 5.666666666666666 8.854166666666666 C 5.666666666666666 8.750868055555555 5.699869791666666 8.666015625 5.766276041666666 8.599609375 C 5.832682291666666 8.533203125 5.917534722222223 8.5 6.020833333333334 8.5 L 8.5 8.5 L 8.5 4.604166666666667 C 8.5 4.500868055555554 8.533203125 4.416015625 8.599609375 4.349609375 C 8.666015625000002 4.283203125 8.750868055555557 4.25 8.854166666666668 4.25 L 9.5625 4.25 C 9.665798611111112 4.25 9.750651041666668 4.283203125 9.817057291666668 4.349609375 Z M 13.712890625 11.521484375 C 14.251519097222223 10.599175347222221 14.520833333333332 9.59201388888889 14.520833333333332 8.5 C 14.520833333333332 7.407986111111111 14.251519097222223 6.400824652777778 13.712890625 5.478515625 C 13.174262152777779 4.5562065972222205 12.443793402777779 3.8257378472222205 11.521484375 3.287109375 C 10.599175347222223 2.7484809027777777 9.59201388888889 2.4791666666666674 8.5 2.4791666666666674 C 7.407986111111112 2.4791666666666674 6.400824652777779 2.7484809027777777 5.478515625 3.287109375 C 4.556206597222222 3.8257378472222205 3.8257378472222223 4.5562065972222205 3.287109375 5.478515625 C 2.748480902777778 6.400824652777778 2.479166666666667 7.407986111111111 2.479166666666667 8.5 C 2.479166666666667 9.59201388888889 2.748480902777778 10.599175347222221 3.287109375 11.521484375 C 3.8257378472222223 12.443793402777775 4.556206597222222 13.174262152777777 5.478515625 13.712890625 C 6.400824652777779 14.251519097222223 7.407986111111112 14.520833333333332 8.5 14.520833333333332 C 9.59201388888889 14.520833333333332 10.599175347222223 14.251519097222223 11.521484375 13.712890625 C 12.443793402777779 13.174262152777777 13.174262152777779 12.443793402777775 13.712890625 11.521484375 Z M 15.860026041666668 4.2333984375 C 16.620008680555554 5.5356987847222205 17 6.957899305555554 17 8.5 C 17 10.042100694444445 16.620008680555554 11.464301215277775 15.860026041666668 12.7666015625 C 15.100043402777779 14.068901909722223 14.068901909722223 15.100043402777777 12.7666015625 15.860026041666668 C 11.464301215277779 16.620008680555557 10.042100694444445 17 8.5 17 C 6.957899305555556 17 5.535698784722222 16.620008680555557 4.2333984375 15.860026041666668 C 2.931098090277778 15.100043402777777 1.8999565972222223 14.068901909722223 1.1399739583333335 12.7666015625 C 0.3799913194444444 11.464301215277775 0 10.042100694444445 0 8.5 C 0 6.957899305555554 0.3799913194444444 5.5356987847222205 1.1399739583333335 4.2333984375 C 1.8999565972222223 2.9310980902777777 2.931098090277778 1.8999565972222205 4.2333984375 1.1399739583333326 C 5.535698784722222 0.379991319444443 6.957899305555556 0 8.5 0 C 10.042100694444445 0 11.464301215277779 0.379991319444443 12.7666015625 1.1399739583333326 C 14.068901909722223 1.8999565972222205 15.100043402777779 2.9310980902777777 15.860026041666668 4.2333984375 Z " fill-rule="nonzero" fill="#63a103" stroke="none" transform="matrix(1 0 0 1 365 36 )" />
</g>
</svg>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="14px" height="14px" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(1 0 0 1 -8 -10 )">
<path d="M 7.351562499999999 2.372747747747747 C 7.450520833333334 2.272897897897897 7.500000000000002 2.154654654654654 7.5 2.018018018018018 C 7.500000000000002 1.8813813813813798 7.450520833333334 1.7631381381381366 7.351562499999999 1.663288288288288 C 7.252604166666667 1.5634384384384379 7.135416666666667 1.5135135135135136 7 1.5135135135135136 C 6.864583333333334 1.5135135135135136 6.747395833333334 1.5634384384384379 6.6484375 1.663288288288288 C 6.549479166666667 1.7631381381381366 6.5 1.8813813813813798 6.5 2.018018018018018 C 6.5 2.154654654654654 6.549479166666667 2.272897897897897 6.6484375 2.372747747747747 C 6.747395833333334 2.472597597597596 6.864583333333334 2.5225225225225234 7 2.5225225225225234 C 7.135416666666667 2.5225225225225234 7.252604166666667 2.472597597597596 7.351562499999999 2.372747747747747 Z M 13.9296875 9.152027027027028 C 13.9765625 9.199324324324323 14 9.25975975975976 14 9.333333333333334 L 14 12.108108108108109 C 14 12.223723723723724 13.947916666666668 12.302552552552552 13.84375 12.344594594594595 C 13.802083333333336 12.355105105105105 13.770833333333336 12.36036036036036 13.75 12.36036036036036 C 13.6875 12.36036036036036 13.627604166666668 12.336711711711711 13.5703125 12.289414414414415 L 12.84375 11.556306306306308 C 12.223958333333334 12.307807807807807 11.39453125 12.902965465465465 10.35546875 13.34177927927928 C 9.31640625 13.780593093093094 8.197916666666668 14 7 14 C 5.802083333333334 14 4.68359375 13.780593093093094 3.64453125 13.34177927927928 C 2.60546875 12.902965465465465 1.776041666666667 12.307807807807807 1.15625 11.556306306306308 L 0.4296875 12.289414414414415 C 0.3828125 12.336711711711711 0.3229166666666667 12.36036036036036 0.25 12.36036036036036 C 0.22916666666666669 12.36036036036036 0.19791666666666669 12.355105105105105 0.15625 12.344594594594595 C 0.05208333333333333 12.302552552552552 0 12.223723723723724 0 12.108108108108109 L 0 9.333333333333334 C 0 9.25975975975976 0.0234375 9.199324324324323 0.0703125 9.152027027027028 C 0.11718750000000003 9.10472972972973 0.17708333333333334 9.08108108108108 0.25 9.08108108108108 L 3 9.08108108108108 C 3.1145833333333335 9.08108108108108 3.1927083333333335 9.133633633633634 3.234375 9.23873873873874 C 3.276041666666667 9.338588588588587 3.2578125 9.430555555555555 3.1796875 9.51463963963964 L 2.3984375 10.302927927927929 C 2.7473958333333335 10.781156156156158 3.240885416666667 11.184496996996996 3.87890625 11.51295045045045 C 4.516927083333334 11.841403903903904 5.223958333333334 12.058183183183182 6 12.163288288288289 L 6 7.063063063063062 L 4.5 7.063063063063062 C 4.364583333333334 7.063063063063062 4.247395833333334 7.013138138138138 4.1484375 6.913288288288288 C 4.049479166666667 6.813438438438438 4 6.695195195195195 4 6.558558558558558 L 4 5.549549549549549 C 4 5.412912912912911 4.049479166666667 5.294669669669668 4.1484375 5.194819819819819 C 4.247395833333334 5.094969969969969 4.364583333333334 5.045045045045045 4.5 5.045045045045045 L 6 5.045045045045045 L 6 3.760135135135134 C 5.697916666666667 3.5814564564564555 5.455729166666667 3.3384009009009006 5.2734375 3.030968468468469 C 5.091145833333334 2.7235360360360366 5 2.3858858858858856 5 2.018018018018018 C 5 1.460960960960961 5.1953125 0.98536036036036 5.5859375 0.591216216216216 C 5.9765625 0.197072072072072 6.447916666666667 0 7 0 C 7.552083333333334 0 8.0234375 0.197072072072072 8.4140625 0.591216216216216 C 8.8046875 0.98536036036036 9 1.460960960960961 9 2.018018018018018 C 9 2.3858858858858856 8.908854166666668 2.7235360360360366 8.7265625 3.030968468468469 C 8.544270833333334 3.3384009009009006 8.302083333333334 3.5814564564564555 8 3.760135135135134 L 8 5.045045045045045 L 9.5 5.045045045045045 C 9.635416666666668 5.045045045045045 9.752604166666668 5.094969969969969 9.8515625 5.194819819819819 C 9.950520833333334 5.294669669669668 10 5.412912912912911 10 5.549549549549549 L 10 6.558558558558558 C 10 6.695195195195195 9.950520833333334 6.813438438438438 9.8515625 6.913288288288288 C 9.752604166666668 7.013138138138138 9.635416666666668 7.063063063063062 9.5 7.063063063063062 L 8 7.063063063063062 L 8 12.163288288288289 C 8.776041666666668 12.058183183183182 9.483072916666668 11.841403903903904 10.12109375 11.51295045045045 C 10.759114583333334 11.184496996996996 11.252604166666668 10.781156156156158 11.6015625 10.302927927927929 L 10.8203125 9.51463963963964 C 10.7421875 9.430555555555555 10.723958333333334 9.338588588588587 10.765625 9.23873873873874 C 10.807291666666668 9.133633633633634 10.885416666666668 9.08108108108108 11 9.08108108108108 L 13.75 9.08108108108108 C 13.822916666666668 9.08108108108108 13.8828125 9.10472972972973 13.9296875 9.152027027027028 Z " fill-rule="nonzero" fill="#02a7f0" stroke="none" transform="matrix(1 0 0 1 8 10 )" />
</g>
</svg>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="14px" height="14px" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(1 0 0 1 -34 -37 )">
<path d="M 1.7702546296296298 0.341796875 C 1.972800925925926 0.5696614583333328 2.074074074074074 0.8446180555555547 2.074074074074074 1.1666666666666672 C 2.074074074074074 1.6041666666666672 1.9012345679012348 1.9383680555555547 1.5555555555555554 2.169270833333333 L 1.5555555555555554 13.708333333333332 C 1.5555555555555554 13.78732638888889 1.5298996913580247 13.85568576388889 1.478587962962963 13.913411458333332 C 1.4272762345679015 13.971137152777777 1.3665123456790127 14 1.2962962962962963 14 L 0.7777777777777777 14 C 0.7075617283950617 14 0.6467978395061729 13.971137152777777 0.5954861111111112 13.913411458333332 C 0.5441743827160496 13.85568576388889 0.5185185185185185 13.78732638888889 0.5185185185185185 13.708333333333332 L 0.5185185185185185 2.169270833333333 C 0.1728395061728396 1.9383680555555547 0 1.6041666666666672 0 1.1666666666666672 C 0 0.8446180555555547 0.10127314814814815 0.5696614583333328 0.3038194444444444 0.341796875 C 0.5063657407407407 0.11393229166666718 0.7507716049382718 0 1.037037037037037 0 C 1.3233024691358026 0 1.5677083333333335 0.11393229166666718 1.7702546296296298 0.341796875 Z M 13.846064814814815 1.33984375 C 13.94868827160494 1.4552951388888875 14 1.5920138888888875 14 1.75 L 14 8.704427083333334 C 14 8.856336805555554 13.966242283950619 8.973307291666666 13.898726851851851 9.055338541666666 C 13.831211419753089 9.137369791666666 13.724537037037038 9.220920138888888 13.578703703703704 9.305989583333334 C 12.41743827160494 10.010850694444443 11.420910493827162 10.36328125 10.58912037037037 10.36328125 C 10.259645061728396 10.36328125 9.926118827160494 10.296440972222221 9.588541666666668 10.162760416666666 C 9.25096450617284 10.029079861111109 8.957947530864198 9.883246527777779 8.70949074074074 9.725260416666666 C 8.461033950617285 9.567274305555554 8.149112654320987 9.421440972222221 7.773726851851852 9.287760416666666 C 7.398341049382716 9.154079861111109 7.013503086419753 9.087239583333334 6.619212962962963 9.087239583333334 C 5.582175925925926 9.087239583333334 4.329089506172839 9.530815972222221 2.8599537037037037 10.41796875 C 2.768132716049383 10.47265625 2.6790123456790127 10.5 2.5925925925925926 10.5 C 2.4521604938271606 10.5 2.330632716049383 10.442274305555554 2.228009259259259 10.326822916666666 C 2.125385802469136 10.211371527777779 2.074074074074074 10.074652777777779 2.074074074074074 9.916666666666666 L 2.074074074074074 3.153645833333333 C 2.074074074074074 2.9592013888888875 2.1577932098765435 2.7921006944444438 2.3252314814814814 2.65234375 C 2.4386574074074074 2.5672743055555545 2.6520061728395063 2.4366319444444438 2.9652777777777777 2.260416666666667 C 4.23996913580247 1.53125 5.37692901234568 1.1666666666666672 6.376157407407407 1.1666666666666672 C 6.954089506172839 1.1666666666666672 7.494212962962963 1.2547743055555547 7.996527777777779 1.4309895833333328 C 8.498842592592593 1.607204861111111 9.090277777777779 1.8745659722222203 9.770833333333332 2.233072916666667 C 9.97608024691358 2.3485243055555545 10.213734567901236 2.40625 10.483796296296296 2.40625 C 10.775462962962964 2.40625 11.092785493827162 2.342447916666667 11.43576388888889 2.21484375 C 11.778742283950619 2.087239583333333 12.075810185185187 1.9444444444444438 12.326967592592593 1.7864583333333328 C 12.578125000000002 1.6284722222222203 12.815779320987655 1.4856770833333328 13.039930555555557 1.3580729166666672 C 13.264081790123457 1.23046875 13.411265432098766 1.1666666666666672 13.481481481481481 1.1666666666666672 C 13.621913580246915 1.1666666666666672 13.743441358024693 1.224392361111111 13.846064814814815 1.33984375 Z " fill-rule="nonzero" fill="#f59a23" stroke="none" transform="matrix(1 0 0 1 34 37 )" />
</g>
</svg>

File diff suppressed because one or more lines are too long

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="14px" height="14px" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(1 0 0 1 -34 -61 )">
<path d="M 1.26875 0 L 12.731250000000001 0 C 12.898958333333335 0 13.059375000000001 0.02775941837409146 13.2125 0.08327825512227438 C 13.453125 0.1634721304252018 13.64453125 0.2899317030182853 13.78671875 0.4626569729015202 C 13.928906249999999 0.6353822427847535 14 0.8266137915840484 14 1.0363516192994047 L 14 12.963648380700596 C 14 13.173386208415952 13.928906249999999 13.364617757215244 13.78671875 13.53734302709848 C 13.64453125 13.710068296981715 13.453125 13.836527869574795 13.2125 13.916721744877727 C 13.073958333333335 13.96607182198722 12.913541666666667 13.99074686054197 12.731250000000001 13.99074686054197 C 12.38125 13.99074686054197 12.078645833333335 13.892046706322978 11.823437499999999 13.694646397884997 L 7 9.771315267680105 L 2.1765624999999997 13.694646397884997 C 1.9140625 13.898215465961666 1.6114583333333334 14 1.26875 14 C 1.1010416666666667 14 0.9406249999999999 13.972240581625908 0.7875 13.916721744877727 C 0.546875 13.836527869574795 0.35546875 13.710068296981715 0.21328125 13.53734302709848 C 0.07109375 13.364617757215244 0 13.173386208415952 0 12.963648380700596 L 0 1.0363516192994047 C 0 0.8266137915840484 0.07109375 0.6353822427847535 0.21328125 0.4626569729015202 C 0.35546875 0.2899317030182853 0.546875 0.1634721304252018 0.7875 0.08327825512227438 C 0.9406249999999999 0.02775941837409146 1.1010416666666667 0 1.26875 0 Z " fill-rule="nonzero" fill="#aaaa00" stroke="none" transform="matrix(1 0 0 1 34 61 )" />
</g>
</svg>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="20px" height="20px" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(1 0 0 1 -85 -532 )">
<path d="M 10.769230769230768 9.002403846153847 L 10.769230769230768 18.040865384615387 L 18.461538461538463 13.846153846153847 L 18.461538461538463 6.201923076923077 L 10.769230769230768 9.002403846153847 Z M 1.6105769230769231 4.591346153846154 L 10 7.644230769230768 L 18.389423076923077 4.591346153846154 L 10 1.5384615384615374 L 1.6105769230769231 4.591346153846154 Z M 19.723557692307693 3.7379807692307687 C 19.907852564102566 4.002403846153846 20 4.294871794871793 20 4.615384615384615 L 20 13.846153846153847 C 20 14.126602564102564 19.927884615384613 14.387019230769232 19.783653846153847 14.627403846153847 C 19.639423076923077 14.867788461538463 19.443108974358974 15.056089743589745 19.194711538461537 15.192307692307692 L 10.733173076923077 19.807692307692307 C 10.508814102564104 19.935897435897438 10.264423076923077 20 10 20 C 9.735576923076923 20 9.491185897435898 19.935897435897438 9.266826923076923 19.807692307692307 L 0.8052884615384616 15.192307692307692 C 0.5568910256410257 15.056089743589745 0.36057692307692313 14.867788461538463 0.21634615384615385 14.627403846153847 C 0.07211538461538462 14.387019230769232 0 14.126602564102564 0 13.846153846153847 L 0 4.615384615384615 C 0 4.294871794871793 0.09214743589743588 4.002403846153846 0.2764423076923077 3.7379807692307687 C 0.4607371794871795 3.4735576923076916 0.7051282051282051 3.2852564102564097 1.0096153846153846 3.173076923076923 L 9.471153846153847 0.09615384615384581 C 9.647435897435898 0.03205128205127972 9.82371794871795 0 10 0 C 10.176282051282053 0 10.352564102564104 0.03205128205127972 10.528846153846153 0.09615384615384581 L 18.990384615384613 3.173076923076923 C 19.294871794871796 3.2852564102564097 19.53926282051282 3.4735576923076916 19.723557692307693 3.7379807692307687 Z " fill-rule="nonzero" fill="#8400ff" stroke="none" transform="matrix(1 0 0 1 85 532 )" />
</g>
</svg>

File diff suppressed because one or more lines are too long

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="24px" height="29px" xmlns="http://www.w3.org/2000/svg">
<defs>
<filter x="14px" y="32px" width="24px" height="29px" filterUnits="userSpaceOnUse" id="filter85">
<feOffset dx="1" dy="1" in="SourceAlpha" result="shadowOffsetInner" />
<feGaussianBlur stdDeviation="2.5" in="shadowOffsetInner" result="shadowGaussian" />
<feComposite in2="shadowGaussian" operator="atop" in="SourceAlpha" result="shadowComposite" />
<feColorMatrix type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.6980392156862745 0 " in="shadowComposite" />
</filter>
<g id="widget86">
<path d="M 25 54.0253083967845 C 22.4 49.650189782636616 18.5 47.025118614147885 18.5 42.65 C 18.5 40.36571428571428 19.8 36.5 25 36.5 C 30.2 36.5 31.5 40.36571428571428 31.5 42.65 C 31.5 47.025118614147885 27.6 49.650189782636616 25 54.0253083967845 Z " fill-rule="nonzero" fill="#00c2ff" stroke="none" />
<path d="M 25 55 C 22.2 50.25 18 47.4 18 42.65 C 18 40.18 19.4 36 25 36 C 30.6 36 32 40.18 32 42.65 C 32 47.4 27.799999999999997 50.25 25 55 Z M 25 53.050616793569006 C 27.4 49.05037956527323 31 46.65023722829577 31 42.65 C 31 40.55142857142857 29.8 37 25 37 C 20.2 37 19 40.55142857142857 19 42.65 C 19 46.65023722829577 22.6 49.05037956527323 25 53.050616793569006 Z " fill-rule="nonzero" fill="#ffffff" stroke="none" />
</g>
</defs>
<g transform="matrix(1 0 0 1 -14 -32 )">
<use xlink:href="#widget86" filter="url(#filter85)" />
<use xlink:href="#widget86" />
</g>
</svg>

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="30px" height="10px" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(1 0 0 1 -115 -10 )">
<path d="M 29.826388888888886 4.668400520156046 C 29.942129629629633 4.755093194625054 30.000000000000007 4.854789770264412 30 4.967490247074123 C 30.000000000000007 5.088859991330732 29.942129629629633 5.19289120069354 29.826388888888886 5.279583875162549 L 23.15972222222222 9.88296488946684 C 22.974537037037038 10.004334633723449 22.77199074074074 10.030342436064153 22.552083333333336 9.960988296488946 C 22.332175925925927 9.88296488946684 22.22222222222222 9.757260511486779 22.22222222222222 9.583875162548765 L 22.22222222222222 6.671001300390117 L 0.5555555555555556 6.671001300390117 C 0.39351851851851855 6.671001300390117 0.2604166666666667 6.631989596879064 0.15625 6.553966189856957 C 0.05208333333333333 6.47594278283485 0 6.376246207195491 0 6.254876462938881 L 0 3.758127438231469 C 0 3.636757693974859 0.05208333333333333 3.5370611183355005 0.15625 3.4590377113133943 C 0.2604166666666667 3.3810143042912877 0.39351851851851855 3.342002600780234 0.5555555555555556 3.342002600780234 L 22.22222222222222 3.342002600780234 L 22.22222222222222 0.42912873862158696 C 22.22222222222222 0.24707412223667125 22.332175925925927 0.12136974425660974 22.552083333333336 0.05201560468140465 C 22.77199074074074 -0.01733853489380266 22.974537037037038 0.004334633723449555 23.15972222222222 0.11703511053316018 L 29.826388888888886 4.668400520156046 Z " fill-rule="nonzero" fill="#aaaaaa" stroke="none" transform="matrix(1 0 0 1 115 10 )" />
</g>
</svg>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="20px" height="20px" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(1 0 0 1 -85 -313 )">
<path d="M 10.769230769230768 9.002403846153847 L 10.769230769230768 18.040865384615387 L 18.461538461538463 13.846153846153847 L 18.461538461538463 6.201923076923077 L 10.769230769230768 9.002403846153847 Z M 1.6105769230769231 4.591346153846154 L 10 7.644230769230768 L 18.389423076923077 4.591346153846154 L 10 1.5384615384615374 L 1.6105769230769231 4.591346153846154 Z M 19.723557692307693 3.7379807692307687 C 19.907852564102566 4.002403846153846 20 4.294871794871793 20 4.615384615384615 L 20 13.846153846153847 C 20 14.126602564102564 19.927884615384613 14.387019230769232 19.783653846153847 14.627403846153847 C 19.639423076923077 14.867788461538463 19.443108974358974 15.056089743589745 19.194711538461537 15.192307692307692 L 10.733173076923077 19.807692307692307 C 10.508814102564104 19.935897435897438 10.264423076923077 20 10 20 C 9.735576923076923 20 9.491185897435898 19.935897435897438 9.266826923076923 19.807692307692307 L 0.8052884615384616 15.192307692307692 C 0.5568910256410257 15.056089743589745 0.36057692307692313 14.867788461538463 0.21634615384615385 14.627403846153847 C 0.07211538461538462 14.387019230769232 0 14.126602564102564 0 13.846153846153847 L 0 4.615384615384615 C 0 4.294871794871793 0.09214743589743588 4.002403846153846 0.2764423076923077 3.7379807692307687 C 0.4607371794871795 3.4735576923076916 0.7051282051282051 3.2852564102564097 1.0096153846153846 3.173076923076923 L 9.471153846153847 0.09615384615384581 C 9.647435897435898 0.03205128205127972 9.82371794871795 0 10 0 C 10.176282051282053 0 10.352564102564104 0.03205128205127972 10.528846153846153 0.09615384615384581 L 18.990384615384613 3.173076923076923 C 19.294871794871796 3.2852564102564097 19.53926282051282 3.4735576923076916 19.723557692307693 3.7379807692307687 Z " fill-rule="nonzero" fill="#a36717" stroke="none" transform="matrix(1 0 0 1 85 313 )" />
</g>
</svg>

@ -470,8 +470,8 @@
permissionId: '',
content: JSON.stringify({
columns: data,
rowSelection: table.getProps.value.rowSelection != undefined,
showIndexColumn: table.getProps.value.showIndexColumn,
rowSelection: table.getRowSelection() != undefined,
showIndexColumn: table.getBindValues.value.showIndexColumn,
}),
}
usePermissionStore().getWrouteList.forEach((item) => {

@ -40,7 +40,6 @@
import { useMessage } from '/@/hooks/web/useMessage'
import { Icon } from '/@/components/Icon'
import { useModal } from '/@/components/Modal'
import { getColumns } from '/@/api/system/role'
const props = defineProps({
schemaArr: { type: Array },
})

@ -43,12 +43,11 @@
import { BasicModal, useModalInner } from '/@/components/Modal'
import { BasicForm, useForm } from '/@/components/Form/index'
import { formSchema } from './columns'
import { editCodeGoodsType, getCodeGoodsTypeInfo } from './api'
import { editCodeGoodsType, getCodeGoodsTypeInfo, getColumnsByClient } from './api'
import { useMessage } from '/@/hooks/web/useMessage'
import { Icon } from '/@/components/Icon'
import { useModal } from '/@/components/Modal'
import Modal from './Modal.vue'
import { getColumns } from '/@/api/system/role'
const [register, { openModal }] = useModal()
// Emits
const emit = defineEmits(['success', 'register'])
@ -100,7 +99,9 @@
if (model.columnView) {
schemaArr.value = []
let schemaA = []
const res: API.DataResult = await getColumns({ tableViewName: model.columnView })
const res: API.DataResult = await getColumnsByClient({
tableViewName: model.columnView,
})
// const res: API.DataResult = await getCodeGoodsTypeInfo({ id: unref(rowId) })
if (res.succeeded) {
res.data.forEach((e) => {

@ -6,6 +6,8 @@ enum Api {
EditCodeGoodsType = '/mainApi/FormCopy/EditFormCopy',
GetCodeGoodsTypeInfo = '/mainApi/FormCopy/GetFormCopyInfo',
GetTablesByClient = '/mainApi/Common/GetTablesByClient',
GetColumnsByClient = '/mainApi/Common/GetColumnsByClient',
}
// 列表 (Auth)
export function getCodeGoodsTypeList(data: PageRequest) {
@ -30,4 +32,23 @@ export function getCodeGoodsTypeInfo(query) {
method: 'get',
params: query,
})
}
// 获取数据库表及视图名-客户端 (Auth)
export function getTablesByClient(query) {
return request<DataResult>({
url: Api.GetTablesByClient,
method: 'get',
params: query,
})
}
// 获取数据库表及视图名-客户端 (Auth)
export function getColumnsByClient(query) {
return request<DataResult>({
url: Api.GetColumnsByClient,
method: 'get',
params: query,
})
}

@ -1,10 +1,11 @@
import { BasicColumn, FormSchema } from '/@/components/Table'
import { Tag } from 'ant-design-vue'
import { getTables, getColumns, getClientPermissionList } from '/@/api/system/role'
import { getClientPermissionList } from '/@/api/system/role'
import { getTablesByClient } from '/@/views/baseinfo/formcopy/api'
import { Icon } from '/@/components/Icon'
import { h } from 'vue'
let columnViewData = []
const res: API.DataResult = await getTables()
const res: API.DataResult = await getTablesByClient()
if (res.succeeded) {
res.data.forEach((item) => {
columnViewData.push({

@ -48,7 +48,7 @@
import { Icon } from '/@/components/Icon'
import { useModal } from '/@/components/Modal'
import Modal from './Modal.vue'
import { getColumns } from '/@/api/system/role'
import { getColumnsByClient } from '/@/views/baseinfo/formcopy/api'
const [register, { openModal }] = useModal()
// Emits
const emit = defineEmits(['success', 'register'])
@ -100,7 +100,9 @@
if (model.columnView) {
schemaArr.value = []
let schemaA = []
const res: API.DataResult = await getColumns({ tableViewName: model.columnView })
const res: API.DataResult = await getColumnsByClient({
tableViewName: model.columnView,
})
// const res: API.DataResult = await getCodeGoodsTypeInfo({ id: unref(rowId) })
if (res.succeeded) {
res.data.forEach((e) => {

@ -1,10 +1,11 @@
import { BasicColumn, FormSchema } from '/@/components/Table'
import { Tag } from 'ant-design-vue'
import { getTables, getColumns, getClientPermissionList } from '/@/api/system/role'
import { getClientPermissionList } from '/@/api/system/role'
import { getTablesByClient } from '/@/views/baseinfo/formcopy/api'
import { Icon } from '/@/components/Icon'
import { h } from 'vue'
let columnViewData = []
const res: API.DataResult = await getTables()
const res: API.DataResult = await getTablesByClient()
if (res.succeeded) {
res.data.forEach((item) => {
columnViewData.push({

@ -11,7 +11,29 @@ export function BookingOrderPage(parameter) {
params: parameter,
})
}
export function PageDataByBooking(parameter) {
return request({
url: '/mainApi/SeaExport/GetSeaExportList',
method: 'post',
data: parameter,
})
}
// 更新用户高级查询条件设置 (Auth)
export function UpdateUserQuerySet(parameter) {
return request({
url: '/mainApi/ClientCommon/UpdateUserQuerySet',
method: 'post',
data: parameter,
})
}
// 获取用户高级查询条件设置 (Auth)
export function GetUserQuerySet(parameter) {
return request({
url: '/mainApi/ClientCommon/GetUserQuerySet',
method: 'get',
params: parameter,
})
}
/**
* 获取订舱明细
* @params Id
@ -944,14 +966,6 @@ export function refreshSailingDate(parameter) {
})
}
export function PageDataByBooking(parameter) {
return request({
url: '/mainApi/SeaExport/GetSeaExportList',
method: 'post',
data: parameter,
})
}
export function RefreshBillTrace(parameter) {
return request({
url: '/BookingYunZong/RefreshYunZong?' + parameter,

@ -0,0 +1,45 @@
[
{
"ConditionalList": [
{
"Key": -1,
"Value": {
"FieldName": "id",
"FieldValue": "2",
"ConditionalType": 0
}
},
{
"Key": 0,
"Value": {
"FieldName": "name",
"FieldValue": "2",
"ConditionalType": 0
}
},
{
"Key": 0,
"Value": {
"ConditionalList": [
{
"Key": -1,
"Value": {
"FieldName": "price",
"FieldValue": "1",
"ConditionalType": 0
}
},
{
"Key": 0,
"Value": {
"FieldName": "CustomId",
"FieldValue": "1",
"ConditionalType": 0
}
}
]
}
}
]
}
]

@ -1,11 +1,11 @@
<template>
<div class="auto-input-content">
<!-- optionLabelProp="label" -->
<auto-complete
class="auto-input"
size="small"
:allowClear="true"
v-model="value"
optionLabelProp="label"
:dropdown-match-select-width="false"
:defaultActiveFirstOption="false"
:dropdown-style="dropdownStyle"

@ -1,6 +1,7 @@
<template>
<div class="select-content">
<div class="select-input">
<!-- optionLabelProp="label" -->
<a-select
size="small"
ref="selectView"
@ -12,7 +13,6 @@
:dropdownMatchSelectWidth="false"
:showArrow="!this.openSearch ? true : true"
:open="open"
optionLabelProp="label"
:notFoundContent="inLoading ? '加载中...' : '暂无数据'"
@focus="getSelectFirst"
@blur="getSelectBlur"
@ -66,7 +66,7 @@
</div>
</template>
<script>
import Vue from 'vue'
// import Vue from 'vue'
// import {
// GetPortloadlist,
// GetPortlist,
@ -83,27 +83,27 @@
// } from '/@/views/operation/seaexport/api/BookingLedger'
import { mapGetters, mapActions } from 'vuex'
let timer
Vue.directive('clickDown', {
inserted(el, binding, vnode) {
let clickTimer = null
el.addEventListener('click', () => {
if (clickTimer) {
window.clearTimeout(clickTimer)
clickTimer = null
}
clickTimer = setTimeout(() => {
binding.value.clickFun()
}, 300)
})
el.addEventListener('dblclick', () => {
if (clickTimer) {
window.clearTimeout(clickTimer)
clickTimer = null
}
binding.value.dblclickFun()
})
},
})
// Vue.directive('clickDown', {
// inserted(el, binding, vnode) {
// let clickTimer = null
// el.addEventListener('click', () => {
// if (clickTimer) {
// window.clearTimeout(clickTimer)
// clickTimer = null
// }
// clickTimer = setTimeout(() => {
// binding.value.clickFun()
// }, 300)
// })
// el.addEventListener('dblclick', () => {
// if (clickTimer) {
// window.clearTimeout(clickTimer)
// clickTimer = null
// }
// binding.value.dblclickFun()
// })
// },
// })
export default {
name: '',
props: {

@ -1,11 +1,11 @@
<template>
<div class="auto-input-content">
<!-- optionLabelProp="label" -->
<auto-complete
class="auto-input"
size="small"
:allowClear="true"
v-model="value"
optionLabelProp="label"
:dropdown-match-select-width="false"
:defaultActiveFirstOption="false"
:dropdown-style="dropdownStyle"

@ -1,6 +1,7 @@
<template>
<div class="select-content">
<div class="select-input">
<!-- optionLabelProp="label" -->
<a-select
size="small"
ref="selectView"
@ -12,7 +13,6 @@
:dropdownMatchSelectWidth="false"
:showArrow="!this.openSearch ? true : true"
:open="open && !disabled"
optionLabelProp="label"
:notFoundContent="inLoading ? '加载中...' : '暂无数据'"
:disabled="disabled"
@focus="getSelectFirst"

@ -1,4 +1,4 @@
@import "~ant-design-vue/lib/style/index";
@import "ant-design-vue/lib/style/index.less";
// The prefix to use on all css classes from ant-pro.
@ant-pro-prefix : ant-pro;

@ -49,7 +49,7 @@
<div id="tab-content1" class="tab-content" v-show="mainOrderActiveKey === '1-1'">
<div class="pane-box">
<basicInfo
ref="basicInfo"
ref="RefbasicInfo"
:type="type"
:details="bookingDetails"
:rules="basicRules"
@ -61,7 +61,7 @@
>
</basicInfo>
<mailingInfo
ref="mailingInfo"
ref="RefmailingInfo"
:details="bookingDetails"
:rules="mailingRules"
:isLockBooking="isLockBooking"
@ -72,7 +72,7 @@
>
</mailingInfo>
<cargoInfo
ref="cargoInfo"
ref="RefcargoInfo"
:details="bookingDetails"
:rules="cargoRules"
:moreStr="moreStr"
@ -146,17 +146,17 @@
</a-tabs>
</div>
</template>
<script lang="ts">
<!-- <script lang="ts">
import { defineComponent } from 'vue'
export default defineComponent({
beforeRouteEnter(to, from, next) {
console.log('beforeRouteEnter', to, from)
next((vm) => {
// vm.getRouterHis()
vm.getRouterHis()
})
},
})
</script>
</script> -->
<script lang="ts" setup>
import { ref, reactive, getCurrentInstance, h, watch, onMounted } from 'vue'
import { onBeforeRouteLeave, onBeforeRouteUpdate } from 'vue-router'
@ -183,6 +183,9 @@
const go = useGo()
const { notification } = useMessage()
import operationArea from './modules/operationArea.vue'
import basicInfo from './modules/basicInfo.vue'
import mailingInfo from './modules/mailingInfo.vue'
import cargoInfo from './modules/cargoInfo.vue'
const initDetail = {
id: 0,
parentId: 0,
@ -399,9 +402,9 @@
const excuteRulesType = ref('')
const sedOrder = ref()
const goodsTable = ref()
const basicInfo = ref()
const mailingInfo = ref()
const cargoInfo = ref()
const RefbasicInfo = ref()
const RefmailingInfo = ref()
const RefcargoInfo = ref()
const ediMore = ref()
const mainOrderActiveKey = ref('1-1')
const ediRules = ref(rules.ediRules)
@ -818,9 +821,9 @@
inChildLoading.value = false
}, 500)
}
basicInfo.value.$refs.basicFrom.clearValidate()
mailingInfo.value.$refs.mailingFrom.clearValidate()
cargoInfo.value.$refs.cargoFrom.clearValidate()
RefbasicInfo.value.$refs.basicFrom.clearValidate()
RefmailingInfo.value.$refs.mailingFrom.clearValidate()
RefcargoInfo.value.$refs.cargoFrom.clearValidate()
}
function fileNewUpadte(file) {
bookingDetails.value.tempFiles.push({
@ -945,7 +948,7 @@
bookingDetails.value.kgs = val || bookingDetails.value.kgs
} else if (type === 'totalPkgs') {
bookingDetails.value.pkgs = val || bookingDetails.value.pkgs
const enCapitalRes = cargoInfo.value.SetTOTALNO(bookingDetails.value.pkgs)
const enCapitalRes = RefcargoInfo.value.SetTOTALNO(bookingDetails.value.pkgs)
bookingDetails.value.totalno = enCapitalRes
} else if (type === 'totalCbm') {
bookingDetails.value.cbm = val || bookingDetails.value.cbm
@ -954,7 +957,7 @@
function changeCtnInfoFun({ type, val }) {
if (type === 'kindpkgs') {
bookingDetails.value.kindpkgs = val
const enCapitalRes = cargoInfo.value.SetTOTALNO(bookingDetails.value.pkgs)
const enCapitalRes = RefcargoInfo.value.SetTOTALNO(bookingDetails.value.pkgs)
bookingDetails.value.totalno = enCapitalRes
}
}
@ -963,7 +966,7 @@
}
function editLineNameFun(type) {
if (type) {
mailingInfo.value.$data.userHasLine = !!bookingDetails.value.lineName
RefmailingInfo.value.$data.userHasLine = !!bookingDetails.value.lineName
}
}
function pkgsEnCapitalFun(data) {
@ -1377,7 +1380,7 @@
that.$forceUpdate()
}
function frompre(data) {
basicInfo.value._data.frompre = data.data1
RefbasicInfo.value._data.frompre = data.data1
}
function changePage(type) {
const nowId = route.query.id
@ -1429,16 +1432,16 @@
function bookingOrderUpdate() {
let basicFrom = true
let basicObject = true
basicInfo.value.$refs.basicFrom.validate((valid, object) => {
RefbasicInfo.value.$refs.basicFrom.validate((valid, object) => {
basicFrom = valid
basicObject = object
})
let mailingFrom = true
mailingInfo.value.$refs.mailingFrom.validate((valid) => {
RefmailingInfo.value.$refs.mailingFrom.validate((valid) => {
mailingFrom = valid
})
let cargoFrom = true
cargoInfo.value.$refs.cargoFrom.validate((valid) => {
RefcargoInfo.value.$refs.cargoFrom.validate((valid) => {
cargoFrom = valid
})
if (!basicFrom && mailingFrom && cargoFrom) {

@ -14,7 +14,12 @@
has-feedback
prop="dclass"
>
<inputView type="dclass" size="small" :parentVal="details.dclass" @getInputChange="inputChange"/>
<inputView
type="dclass"
size="small"
:parentVal="details.dclass"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="6">
@ -26,7 +31,12 @@
has-feedback
prop="dunno"
>
<inputView type="dunno" size="small" :parentVal="details.dunno" @getInputChange="inputChange"/>
<inputView
type="dunno"
size="small"
:parentVal="details.dunno"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="6">
@ -38,7 +48,12 @@
has-feedback
prop="dpage"
>
<inputView type="dpage" size="small" :parentVal="details.dpage" @getInputChange="inputChange"/>
<inputView
type="dpage"
size="small"
:parentVal="details.dpage"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="6">
@ -50,7 +65,12 @@
has-feedback
prop="dlabel"
>
<inputView type="dlabel" size="small" :parentVal="details.dlabel" @getInputChange="inputChange"/>
<inputView
type="dlabel"
size="small"
:parentVal="details.dlabel"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :xs="12" :sm="12" :md="12" :lg="8" :xl="6">
@ -62,7 +82,12 @@
has-feedback
prop="linkman"
>
<inputView type="linkman" size="small" :parentVal="details.linkman" @getInputChange="inputChange"/>
<inputView
type="linkman"
size="small"
:parentVal="details.linkman"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
</template>
@ -73,124 +98,132 @@
</a-collapse>
</template>
<script>
import inputView from '../components/inputView'
import selectView from '../components/selectView'
import datePickerView from '../components/datePickerView'
import inputView from '../components/inputView.vue'
import selectView from '../components/selectView.vue'
import datePickerView from '../components/datePickerView.vue'
export default {
name: '',
components: {
selectView,
inputView,
datePickerView
},
props: {
details: {
type: Object,
default: () => {
return {}
}
},
rules: {
type: Object,
default: () => {
return {}
}
export default {
name: '',
components: {
selectView,
inputView,
datePickerView,
},
inSave: {
type: Boolean,
default: false
},
isParent: {
type: String,
default: ''
}
},
data() {
return {
labelCol: {
xs: { span: 24 },
sm: { span: 8 },
md: { span: 10 }
props: {
details: {
type: Object,
default: () => {
return {}
},
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 15 },
md: { span: 13 }
rules: {
type: Object,
default: () => {
return {}
},
},
showKey: ['1']
}
},
watch: {
details: {
handler(nval, oval) {
if (!this.inSave) {
this.$emit('changeDetail', {
detail: nval,
type: 'billInfo'
})
}
this.$forceUpdate()
inSave: {
type: Boolean,
default: false,
},
isParent: {
type: String,
default: '',
},
deep: true
},
'$route.query': {
immediate: true,
handler(nD, oD) {
this.id = this.$route.query.id
data() {
return {
labelCol: {
xs: { span: 24 },
sm: { span: 8 },
md: { span: 10 },
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 15 },
md: { span: 13 },
},
showKey: ['1'],
}
}
},
created() { },
methods: {
checkbasic () {
this.$refs.billFrom.validate(valid => {
if (valid) {
return true;
} else {
return false;
}
});
},
getSelectViewRes({ type, res }) {
if (['issuetype', 'blfrt'].includes(type)) {
this.details[type] = res.enName || ''
if (type === 'blfrt') {
if (this.details.blfrt === 'FREIGHT COLLECT') {
this.details.payableat = this.details.payableat ? this.details.payableat : this.details.portdischarge || ''
this.details.payableatid = this.details.payableatid ? this.details.payableatid : this.details.portdischargeid || ''
watch: {
details: {
handler(nval, oval) {
if (!this.inSave) {
this.$emit('changeDetail', {
detail: nval,
type: 'billInfo',
})
}
this.$forceUpdate()
},
deep: true,
},
'$route.query': {
immediate: true,
handler(nD, oD) {
this.id = this.$route.query.id
},
},
},
created() {},
methods: {
checkbasic() {
this.$refs.billFrom.validate((valid) => {
if (valid) {
return true
} else {
this.details.prepardat = this.details.prepardat ? this.details.prepardat : this.details.portload || ''
this.details.prepardatid = this.details.prepardatid ? this.details.prepardatid : this.details.portloadid || ''
return false
}
})
},
getSelectViewRes({ type, res }) {
if (['issuetype', 'blfrt'].includes(type)) {
this.details[type] = res.enName || ''
if (type === 'blfrt') {
if (this.details.blfrt === 'FREIGHT COLLECT') {
this.details.payableat = this.details.payableat
? this.details.payableat
: this.details.portdischarge || ''
this.details.payableatid = this.details.payableatid
? this.details.payableatid
: this.details.portdischargeid || ''
} else {
this.details.prepardat = this.details.prepardat
? this.details.prepardat
: this.details.portload || ''
this.details.prepardatid = this.details.prepardatid
? this.details.prepardatid
: this.details.portloadid || ''
}
}
} else if (['issueplace', 'prepardat', 'payableat'].includes(type)) {
this.details[type] = res.enName || ''
this.details[`${type}id`] = res.ediCode || ''
} else if (['service'].includes(type)) {
this.details[type] = res.name || ''
} else if (['nobill', 'copynobill'].includes(type)) {
this.details[type] = res.code || ''
}
} else if (['issueplace', 'prepardat', 'payableat'].includes(type)) {
this.details[type] = res.enName || ''
this.details[`${type}id`] = res.ediCode || ''
} else if (['service'].includes(type)) {
this.details[type] = res.name || ''
} else if (['nobill', 'copynobill'].includes(type)) {
this.details[type] = res.code || ''
}
},
inputChange({ type, value }) {
this.details[type] = value
this.$forceUpdate()
},
inputChange({ type, value }) {
this.details[type] = value
this.$forceUpdate()
},
dateChangeFun({ type, value }) {
this.details[type] = value || ''
},
},
dateChangeFun ({ type, value }) {
this.details[type] = value || ''
}
}
}
</script>
<style lang="less" scoped>
/deep/ .ant-form-explain{
display: none !important;
}
/deep/ .ant-form-item-children-icon .anticon-check-circle{
display: none;
}
/deep/ .ant-form-explain {
display: none !important;
}
/deep/ .ant-form-item-children-icon .anticon-check-circle {
display: none;
}
</style>
<style lang="less" scoped>
@import url('../style/billInfo.less');
@import url('../style/billInfo.less');
</style>

@ -1,26 +1,35 @@
<template>
<a-collapse class="collapse-box" :bordered="false" v-model="showKey">
<a-collapse-panel key="1" :showArrow="false">
<template slot="header">
<div class="base-tit"><i class="iconfont icon-goods"></i>货物信息 <span
class="click-btn"
@click.stop="tabStopFun"></span></div>
<template #header>
<div class="base-tit"
><i class="iconfont icon-goods"></i>货物信息
<span class="click-btn" @click.stop="tabStopFun"></span
></div>
</template>
<template slot="extra">
<div class="tab-change"><i class="iconfont icon-xia" :class="{ 'active': !showKey.includes('1') }"></i></div>
<template #extra>
<div class="tab-change"
><i class="iconfont icon-xia" :class="{ active: !showKey.includes('1') }"></i
></div>
</template>
<div class="container cargo-info">
<a-form-model :selfUpdate="true" ref="cargoFrom" :model="details" :rules="rules">
<a-form :selfUpdate="true" ref="cargoFrom" :model="details" :rules="rules">
<a-row :gutter="10">
<a-col :span="5">
<div class="cargo-info-tit" :class="{ 'required': rules['marks'] && rules['marks'][0].required }">
<div>Seal No.(封志号)<span
@click="handleOpen(1)"
style="cursor: pointer;"
class="copy-btn iconfont icon-bianji"></span></div>
<div
class="cargo-info-tit"
:class="{ required: rules['marks'] && rules['marks'][0].required }"
>
<div
>Seal No.(封志号)<span
@click="handleOpen(1)"
style="cursor: pointer"
class="copy-btn iconfont icon-bianji"
></span
></div>
<div>Marks & Nos.(标记与号码)</div>
</div>
<a-form-model-item has-feedback prop="marks" class="textarea-label" label="">
<a-form-item has-feedback prop="marks" class="textarea-label" label="">
<div class="bottom">
<textareaView
class="input-box"
@ -30,862 +39,54 @@
:disabled="BookingLockOrder['marks'] && isLockBooking"
:height="100"
:openToCDB="true"
@getTextareaChange="getTextareaChange" />
@getTextareaChange="getTextareaChange"
/>
<div
class="line-count"
id="marks-scroll-right"
v-if="Object.keys(details).length > 1 && details.marks.length > 1">
<div v-for="(num, index) in details.marks.split('\n')" :key="index">{{ num.length }}</div>
</div>
</div>
</a-form-model-item>
</a-col>
<a-col :span="10">
<div class="line">
<!-- <div
class="left"
:class="{ 'required': rules['description'] && rules['description'][0].required }"
v-if="details.carrierid !== 'PIL'">
<div>Description of Goods</div>
<div>(包装种类与货名)<span
@click="handleOpen(2)"
style="cursor: pointer;"
class="copy-btn iconfont icon-bianji"></span></div>
</div> -->
<div class="left" >
<div class="title" :class="{ 'required': rules['description'] && rules['description'][0].required }">
<span
@click="handleOpen(2)"
style="cursor: pointer;color: black;margin: 0px;"
class="copy-btn iconfont icon-bianji"></span>
Description of Goods (包装种类与货名)</div>
<a-form-model-item
has-feedback
prop="goodsname"
label=""
:class="{ 'goods-name-box': rules['goodsname'] && rules['goodsname'][0].required }">
<i
style="top: 4px;"
class="icon required goods-required"
v-if="rules['goodsname'] && rules['goodsname'][0].required"></i>
<!-- :showLabel="['goodsNameEN', 'goodsCode']" -->
<selectView
type="goodsname"
:defaultVal="details.goodsname"
searchApi="getGoodsname"
:disabled="BookingLockOrder['goodsname'] && isLockBooking"
:searchQuery="{ queryItem: '', top: 50 }"
:showLabel="['goodsNameEN', 'goodsCode']"
:openSearch="true"
@change="getSelectViewRes"
style="width: 75%;max-width:210px;"></selectView>
</a-form-model-item>
</div>
<div class="cargo-mark">
<div :class="{ 'required': rules['cargoid'] && rules['cargoid'][0].required }" class="tit">货物标志</div>
<a-form-model-item class="cargoid" has-feedback prop="cargoid" label="" style="margin-top:-6px;">
<selectView
type="cargoid"
:defaultVal="details.cargoid"
searchApi="cargoData"
:searchQuery="{ name: '' }"
:disabled="BookingLockOrder['cargoid'] && isLockBooking"
:showLabel="['name']"
:openSearch="false"
@change="getSelectViewRes"
style="width: 120px;margin-top:7px;"></selectView>
</a-form-model-item>
</div>
<div class="input">
<div :class="{ 'required': rules['hscode'] && rules['hscode'][0].required }" calss="tit">HS编码</div>
<a-form-model-item class="cargoid" has-feedback prop="hscode" label="" style="margin-top:-2px;">
<!-- <a-input size="small" :allowClear="true" v-model="details.hscode" /> -->
<inputView :ishd="BookingLockOrder['hscode'] && isLockBooking" type="hscode" size="small" :parentVal="details.hscode" @getInputChange="inputChange" />
</a-form-model-item>
</div>
</div>
<a-form-model-item has-feedback prop="description" class="textarea-label" label="">
<div class="bottom">
<textareaView
id="description-scroll"
class="input-box"
:parentVal="details.description"
:disabled="BookingLockOrder['description'] && isLockBooking"
type="description"
:height="100"
:openToCDB="true"
@getTextareaChange="getTextareaChange" />
<div
class="line-count"
id="description-scroll-right"
v-if="Object.keys(details).length > 1 && details.description.length > 1">
<div v-for="(num, index) in details.description.split('\n')" :key="index">{{ num.length }}</div>
v-if="Object.keys(details).length > 1 && details.marks.length > 1"
>
<div v-for="(num, index) in details.marks.split('\n')" :key="index">{{
num.length
}}</div>
</div>
</div>
</a-form-model-item>
</a-col>
<a-col :span="9">
<a-col :span="12">
<a-form-model-item
class="from-label pkgs-line-box"
label="件数"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="pkgs">
<div class="line-box">
<a-input
:allowClear="true"
size="small"
:disabled="BookingLockOrder['pkgs'] && isLockBooking"
v-model="details.pkgs"
type="number"
@change="changePkgs" />
<i class="iconfont icon-bianji1 edit-icon" @click="editTextEntryModel('pkgs')"></i>
</div>
</a-form-model-item>
</a-col>
<a-col :span="12" style="overflow: hidden">
<a-form-model-item
class="from-label"
label="包装"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="kindpkgs">
<selectView
type="kindpkgs"
:defaultVal="details.kindpkgs"
searchApi="GetPackage"
:disabled="BookingLockOrder['kindpkgs'] && isLockBooking"
:searchQuery="{ KeyWord: '' }"
:showLabel="['name']"
:openSearch="false"
@change="getSelectViewRes">
</selectView>
</a-form-model-item>
</a-col>
<a-col :span="12" style="overflow: hidden">
<a-form-model-item
class="from-label kgs-line-box"
label="毛重"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="kgs">
<div class="line-box">
<a-input :disabled="BookingLockOrder['kgs'] && isLockBooking" size="small" :allowClear="true" v-model="details.kgs" />
<i class="iconfont icon-bianji1 edit-icon" @click="editTextEntryModel('kgs')"></i>
<span class="unit">KGS</span>
</div>
</a-form-model-item>
</a-col>
<a-col :span="12" style="overflow: hidden">
<a-form-model-item
class="from-label cbm-line-box"
label="尺寸"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="cbm">
<div class="line-box">
<a-input :disabled="BookingLockOrder['cbm'] && isLockBooking" size="small" :allowClear="true" v-model="details.cbm" />
<i class="iconfont icon-bianji1 edit-icon" @click="editTextEntryModel('cbm')"></i>
<span class="unit">CBM</span>
</div>
</a-form-model-item>
</a-col>
<template v-if="details.cargoid == 'R'">
<a-col :span="12">
<a-form-model-item
class="from-label"
label="设置温度"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="tempset"
>
<inputView :ishd="BookingLockOrder['tempset'] && isLockBooking" type="tempset" size="small" :parentVal="details.tempset" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="冷藏通风量"
:labelCol="labelColCode"
:wrapperCol="wrapperColCode"
has-feedback
prop="reeferf"
>
<inputView :ishd="BookingLockOrder['reeferf'] && isLockBooking" type="reeferf" size="small" :parentVal="details.reeferf" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="温度单位"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="tempid"
>
<a-select :disabled="BookingLockOrder['tempid'] && isLockBooking" size="small" :default-value="details.tempid || 'C'" v-model="details.tempid">
<a-select-option value="C"> C摄氏 </a-select-option>
<a-select-option value="F"> F华氏 </a-select-option>
</a-select>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="最低温度"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="tempmin"
>
<inputView :ishd="BookingLockOrder['tempmin'] && isLockBooking" type="tempmin" size="small" :parentVal="details.tempmin" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="最高温度"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="tempmax"
>
<inputView :ishd="BookingLockOrder['tempmax'] && isLockBooking" type="tempmax" size="small" :parentVal="details.tempmax" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="湿度"
:labelCol="labelCol"
:wrapperCol="wrapperCol"
has-feedback
prop="humidity">
<inputView :ishd="BookingLockOrder['humidity'] && isLockBooking" type="humidity" size="small" :parentVal="details.humidity" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
</template>
<template v-if="details.cargoid == 'D'">
<a-col :span="12">
<a-form-model-item
class="from-label"
label="危险品等级"
:labelCol="labelColCode"
:wrapperCol="wrapperColCode"
has-feedback
prop="dclass"
>
<inputView :ishd="BookingLockOrder['dclass'] && isLockBooking" type="dclass" size="small" :parentVal="details.dclass" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="危险品编号"
:labelCol="labelColCode"
:wrapperCol="wrapperColCode"
has-feedback
prop="dunno"
>
<inputView :ishd="BookingLockOrder['dunno'] && isLockBooking" type="dunno" size="small" :parentVal="details.dunno" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="危险品页号"
:labelCol="labelColCode"
:wrapperCol="wrapperColCode"
has-feedback
prop="dpage"
>
<inputView :ishd="BookingLockOrder['dpage'] && isLockBooking" type="dpage" size="small" :parentVal="details.dpage" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="危险品标签"
:labelCol="labelColCode"
:wrapperCol="wrapperColCode"
has-feedback
prop="dlabel"
>
<inputView :ishd="BookingLockOrder['dlabel'] && isLockBooking" type="dlabel" size="small" :parentVal="details.dlabel" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item
class="from-label"
label="危险品联系人"
:labelCol="{
xs: { span: 24 },
sm: { span: 10 },
md: { span: 12 }
}"
:wrapperCol="{
xs: { span: 24 },
sm: { span: 14 },
md: { span: 12 }
}"
has-feedback
prop="linkman"
>
<inputView :ishd="BookingLockOrder['linkman'] && isLockBooking" type="linkman" size="small" :parentVal="details.linkman" @getInputChange="inputChange"/>
</a-form-model-item>
</a-col>
</template>
</a-col>
<a-col class="num-box" :span="24">
<span class="label">件数大写: </span>
<a-input
:allowClear="true"
class="input-val num-box-right"
v-model="details.totalno"
disabled
placeholder="自动生成" />
</a-form-item>
</a-col>
</a-row>
</a-form-model>
</a-form>
</div>
<a-modal :title="modelTitle" :width="900" :visible="visible" @ok="visible = false" @cancel="visible = false">
<div>
<div v-if="modelType === 1" style="display: flex;">
<textareaView
class="input-box"
id="marks-scroll"
:parentVal="details.marks"
type="marks"
:height="500"
style="font-size:20px;margin-right: 10px;"
:openToCDB="true"
@getTextareaChange="getTextareaChange" />
<div
class="line-count"
id="marks-scroll-right"
v-if="Object.keys(details).length > 1 && details.marks.length > 1">
<div v-for="(num, index) in details.marks.split('\n')" :key="index">{{ num.length }}</div>
</div>
</div>
<div v-if="modelType === 2" style="display: flex;">
<textareaView
id="description-scroll"
class="input-box"
:parentVal="details.description"
type="description"
:height="500"
style="font-size:20px;margin-right: 10px;"
:openToCDB="true"
@getTextareaChange="getTextareaChange" />
<div
class="line-count"
id="description-scroll-right"
v-if="Object.keys(details).length > 1 && details.description.length > 1">
<div v-for="(num, index) in details.description.split('\n')" :key="index">{{ num.length }}</div>
</div>
</div>
</div>
</a-modal>
<a-modal width="500px" :maskClosable="false" v-model="textEntryModalVisible" :title="textEntryModalTitle">
<div class="text-entry-box">
<!-- 件数包装 -->
<a-form v-if="textEntryType === 'pkgs'">
<div class="text-input">
<a-textarea
v-model="details.pkgstotal"
placeholder="请输入内容"
:auto-size="{ minRows: 6, maxRows: 9 }"
@change="pkgsTextChange" />
</div>
<div class="total" v-if="pkgstotalRes">{{ pkgstotalRes }}</div>
</a-form>
<!-- 毛重 -->
<a-form v-if="textEntryType === 'kgs'">
<div class="text-input">
<a-textarea
v-model="details.kgstotal"
placeholder="请输入内容"
:auto-size="{ minRows: 6, maxRows: 9 }"
@change="kgsTextChange" />
</div>
<div class="total" v-if="kgstotalRes">{{ kgstotalRes }} / KGS</div>
</a-form>
<!-- 尺码 -->
<a-form v-if="textEntryType === 'cbm'">
<div class="text-input">
<a-textarea
v-model="details.cbmtotal"
placeholder="请输入内容"
:auto-size="{ minRows: 6, maxRows: 9 }"
@change="cbmTextChange" />
</div>
<div class="total" v-if="cbmtotalRes">{{ cbmtotalRes }} / CBM</div>
</a-form>
</div>
<template slot="footer">
<a-button type="primary" @click="textEntryClose"></a-button>
</template>
</a-modal>
</a-collapse-panel>
</a-collapse>
</template>
<script>
import textareaView from '../components/textareaView'
import selectView from '../components/selectView'
import inputView from '../components/inputView'
let timer;
export default {
name: '',
components: {
textareaView,
selectView,
inputView
},
props: {
details: {
type: Object,
default: () => {
return {}
}
},
moreStr: {
type: String,
default: ''
},
rules: {
type: Object,
default: () => {
return {}
}
},
inSave: {
type: Boolean,
default: false
},
isParent: {
type: String,
default: ''
},
isLockBooking: {
type: Boolean,
default: false
}
},
data() {
return {
showKey: ['1'],
modelTitle: '',
modelType: 0,
visible: false,
labelCol: {
xs: { span: 24 },
sm: { span: 8 },
md: { span: 8 }
},
wrapperCol: {
xs: { span: 24 },
sm: { span: 16 },
md: { span: 16 }
},
labelColCode: {
xs: { span: 24 },
sm: { span: 8 },
md: { span: 10 }
},
wrapperColCode: {
xs: { span: 24 },
sm: { span: 16 },
md: { span: 14 }
},
shippername: '',
consigneename: '',
notifypartyname: '',
foreignAgentname: '',
notifypartY2name: '',
modelVisible: false,
modelconfirm: false,
BookingLockOrder: {},
modelName: '',
yardType: '',
yardVisible: false,
customerModelconfirm: false,
textEntryModalVisible: false,
textEntryType: '',
textEntryModalTitle: '',
pkgstotalRes: 0,
kgstotalRes: 0,
cbmtotalRes: 0,
portdischargeHasline: false,
destinationidHasline: false,
userHasLine: false
// goodsnameData: []
}
},
watch: {
details: {
handler(nval, oval) {
if (!this.inSave) {
this.$emit('changeDetail', {
detail: nval,
type: 'cargoInfo'
})
}
},
deep: true
},
moreStr(nval, oval) {
if (nval !== oval) {
let str = this.details.description
if (str.length > 0) {
str += '\n'
}
this.details.description = str + nval
}
},
'$route.query': {
immediate: true,
handler(nD, oD) {
this.id = this.$route.query.id
}
}
},
created() { },
mounted() {
const marksScroll = document.getElementById('marks-scroll')
if (marksScroll) {
marksScroll.addEventListener('scroll', () => {
document.getElementById('marks-scroll-right').scrollTop = marksScroll.scrollTop
})
}
const descriptionScroll = document.getElementById('description-scroll')
if (descriptionScroll) {
descriptionScroll.addEventListener('scroll', () => {
document.getElementById('description-scroll-right').scrollTop = descriptionScroll.scrollTop
})
}
const obj = {}
this.$options.filters['dictData']('BookingLockOrder').forEach(item => {
obj[item.code] = true
})
this.BookingLockOrder = obj
setTimeout(() => {
this.changePkgs()
}, 2000)
},
methods: {
SetTOTALNO(SS) {
SS = SS.toString()
const i = SS.indexOf('\n')
let num = 0
let strKind = ''
let enCapital = ''
if (i > 0) {
const slist = SS.split('\n')
for (let i = 0; i < slist.length; i += 1) {
const member = slist[i]
const strNum = this.GetStringNum(member)
if (i == 0) {
strKind = member.substring(strNum.length)
}
num = parseFloat(num).add(parseFloat(strNum))
}
if (strKind !== '') {
enCapital = strKind
} else {
strKind = this.details.kindpkgs
enCapital = this.ToEn(num).toUpperCase() + ' ' + strKind + ' ONLY.'
}
} else {
const strNum = this.GetStringNum(SS)
strKind = SS.substring(strNum.length)
if (strKind !== '') {
console.log(strKind)
enCapital = strKind
} else {
strKind = this.details.kindpkgs
enCapital = 'SAY:' + this.ToEn(strNum).toUpperCase() + ' ' + strKind + ' ONLY.'
}
}
return enCapital
},
ToEn(a) {
// eslint-disable-next-line no-array-constructor
const arr1 = new Array('', ' thousand', ' million', ' billion')
const b = a.length
let f = null
let h = 0
let g = ''
const e = Math.ceil(b / 3)
const k = b - e * 3
g = ''
for (f = k; f < b; f += 3) {
++h
// eslint-disable-next-line no-undef
const num3 = f >= 0 ? a.substring(f, f + 3) : a.substring(0, k + 3)
// eslint-disable-next-line no-undef
const strEng = this.English(num3)
// eslint-disable-next-line eqeqeq
if (strEng != '') {
// eslint-disable-next-line eqeqeq
if (g != '') g += ' '
g += this.English(num3) + arr1[e - h]
}
}
return g
},
English(a) {
// eslint-disable-next-line no-array-constructor
var arr1 = new Array('', ' thousand', ' million', ' billion')
// eslint-disable-next-line no-array-constructor
var arr2 = new Array('zero', 'ten', 'twenty', 'thirty', 'forty', 'fifty', 'sixty', 'seventy', 'eighty', 'ninety')
// eslint-disable-next-line no-array-constructor
var arr3 = new Array('zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine')
// eslint-disable-next-line no-array-constructor
var arr4 = new Array(
'ten',
'eleven',
'twelve',
'thirteen',
'fourteen',
'fifteen',
'sixteen',
'seventeen',
'eighteen',
'nineteen'
)
let strRet = ''
// eslint-disable-next-line eqeqeq
if (a.length == 3 && a.substr(0, 3) != '000') {
if (a.substr(0, 1) != '0') {
strRet += arr3[a.substr(0, 1)] + ' hundred'
if (a.substr(1, 2) != '00') strRet += ' and '
} else {
strRet += ' and '
}
a = a.substring(1)
}
if (a.length == 2) {
if (a.substr(0, 1) == '0') a = a.substring(1)
else if (a.substr(0, 1) == '1') strRet += arr4[a.substr(1, 2)]
else {
strRet += arr2[a.substr(0, 1)]
if (a.substr(1, 1) != '0') strRet += '-'
a = a.substring(1)
}
}
if (a.length == 1 && a.substr(0, 1) != '0') strRet += arr3[a.substr(0, 1)]
return strRet
},
editTextEntryModel(type) {
this.textEntryModalVisible = true
this.textEntryType = type
if (type === 'pkgs') {
this.textEntryModalTitle = '件数/包装'
if (this.details.pkgstotal) {
this.pkgsTextChange()
} else {
this.pkgstotalRes = 0
}
} else if (type === 'kgs') {
this.textEntryModalTitle = '毛重'
if (this.details.kgstotal) {
this.kgsTextChange()
} else {
this.kgstotalRes = 0
}
} else if (type === 'cbm') {
this.textEntryModalTitle = '尺码'
if (this.details.cbmtotal) {
this.cbmTextChange()
} else {
this.cbmtotalRes = 0
}
}
},
textEntryClose() {
this.textEntryModalVisible = false
this.textEntryModalTitle = ''
this.textEntryType = false
},
GetStringNum(str) {
var num = 0
if (str == null || str == '') return num
if (str.length == 0) return num
var if_find = false
var str_num = ''
for (var i = 0; i < str.length; i += 1) {
var member = str.substr(i, 1)
if (
member == '0' ||
member == '1' ||
member == '2' ||
member == '3' ||
member == '4' ||
member == '5' ||
member == '6' ||
member == '7' ||
member == '8' ||
member == '9' ||
member == '.' ||
member == '-'
) {
if (!if_find) {
str_num = str_num + member
}
} else {
if_find = true
}
}
return str_num
},
pkgsTextChange() {
const pkgsTexyVal = this.details.pkgstotal
const arr = pkgsTexyVal.split(/\n|\r/g)
let pkgs = 0
let kindpkgs = ''
arr.map((item, index) => {
const regexStr = item.match(/[a-zA-Z]+|[0-9]+(?:\.[0-9]+|)/g)
if (regexStr && Number(regexStr[0])) {
const num1 = Number(regexStr[0])
pkgs = (pkgs * 100 + num1 * 100) / 100
}
if (!kindpkgs && regexStr && /^[a-zA-Z]+$/.test(regexStr[1])) {
kindpkgs = regexStr[1]
}
})
this.details.pkgs = parseInt(pkgs)
this.details.kindpkgs = kindpkgs
this.pkgstotalRes = parseInt(pkgs)
},
kgsTextChange() {
const kgsTexyVal = this.details.kgstotal
const arr = kgsTexyVal.split(/\n|\r/g)
let kgs = 0
arr.map((item, index) => {
const regexStr = item.match(/[a-zA-Z]+|[0-9]+(?:\.[0-9]+|)/g)
if (regexStr && Number(regexStr[0])) {
const num1 = Number(regexStr[0])
kgs = (kgs * 100 + num1 * 100) / 100
}
})
this.details.kgs = kgs
this.kgstotalRes = kgs
},
cbmTextChange() {
const cbmTexyVal = this.details.cbmtotal
const arr = cbmTexyVal.split(/\n|\r/g)
let cbm = 0
arr.map((item, index) => {
const regexStr = item.match(/[a-zA-Z]+|[0-9]+(?:\.[0-9]+|)/g)
if (regexStr && Number(regexStr[0])) {
const num1 = Number(regexStr[0])
cbm = (cbm * 100 + num1 * 100) / 100
}
})
this.details.cbm = cbm
this.cbmtotalRes = cbm
},
handleOpen(type) {
this.modelType = type
if (type === 1) {
this.modelTitle = '唛头'
} else {
this.modelTitle = '货物描述'
}
this.visible = true
},
debounce(func, wait, ...args) {
if (timer) clearTimeout(timer);
timer = setTimeout(() => {
func.apply(this, args);
}, wait);
},
checkbasic() {
this.$refs.cargoFrom.validate(valid => {
if (valid) {
console.log('验证成功!');
return true;
} else {
console.log('验证失败!');
return false;
}
});
},
handleChange(value) {
this.details.cargoid = value
},
getTextareaChange({ type, value }) {
this.details[type] = value
this.$forceUpdate()
},
getSelectViewRes({ type, res }) {
if (type === 'goodsname') {
this.details.goodscode = res.goodsCode || ''
this.details.goodsname = res.goodsNameEN || ''
} else if (type === 'cargoid') {
this.details.cargoid = res.code || ''
if (res.code == 'R') {
this.rules['goodsname'][0].required = true
} else {
this.rules['goodsname'][0].required = false
}
} else if (['kindpkgs'].includes(type)) {
this.details.kindpkgs = res['name'] || ''
const enCapitalRes = this.SetTOTALNO(this.details.pkgs)
this.$emit('pkgsEnCapital', enCapitalRes)
}
},
changePkgs() {
const enCapitalRes = this.SetTOTALNO(this.details.pkgs)
this.$emit('pkgsEnCapital', enCapitalRes)
},
inputChange({ type, value }) {
this.details[type] = value
if (type === 'pkgs') {
this.changePkgs()
}
this.$forceUpdate()
},
tabStopFun() {
return false
},
tabChangeFun() {
}
<script lang="ts" setup>
import { ref, reactive, getCurrentInstance, h, watch, onMounted } from 'vue'
const showKey = ref(['1'])
function tabStopFun() {
return false
}
}
</script>
<style lang="less" scoped>
.copy-btn {
margin-left: 10px;
.copy-btn {
margin-left: 10px;
&:hover {
color: @primary-color !important;
&:hover {
color: @primary-color !important;
}
}
}
/deep/ .ant-form-explain {
display: none !important;
}
/deep/ .ant-form-explain {
display: none !important;
}
/deep/ .ant-form-item-children-icon .anticon-check-circle {
display: none;
}
/deep/ .ant-form-item-children-icon .anticon-check-circle {
display: none;
}
</style>
<style lang="less" scoped>
@import url('../style/cargoInfo.less');
@import url('../style/mailingInfo.less');
.cargo-info {
@import url('../style/cargoInfo.less');
@import url('../style/mailingInfo.less');
.cargo-info {
padding-bottom: 20px;
}
}
</style>

@ -12,7 +12,11 @@
prop="bookingEDIExt.sendCode"
>
<!-- <a-input :allowClear="true" v-model="details.bookingEDIExt.sendCode" /> -->
<inputView type="sendCode" :parentVal="details.bookingEDIExt.sendCode" @getInputChange="inputChange" />
<inputView
type="sendCode"
:parentVal="details.bookingEDIExt.sendCode"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -40,7 +44,11 @@
prop="bookingEDIExt.ediAttn"
>
<!-- <a-input :allowClear="true" v-model="details.bookingEDIExt.ediAttn" /> -->
<inputView type="ediAttn" :parentVal="details.bookingEDIExt.ediAttn" @getInputChange="inputChange" />
<inputView
type="ediAttn"
:parentVal="details.bookingEDIExt.ediAttn"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -116,7 +124,11 @@
prop="bookingEDIExt.opEName"
>
<!-- <a-input :allowClear="true" v-model="details.bookingEDIExt.opEName" /> -->
<inputView type="opEName" :parentVal="details.bookingEDIExt.opEName" @getInputChange="inputChange" />
<inputView
type="opEName"
:parentVal="details.bookingEDIExt.opEName"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -128,7 +140,11 @@
prop="bookingEDIExt.opTel"
>
<!-- <a-input :allowClear="true" v-model="details.bookingEDIExt.opTel" /> -->
<inputView type="opTel" :parentVal="details.bookingEDIExt.opTel" @getInputChange="inputChange" />
<inputView
type="opTel"
:parentVal="details.bookingEDIExt.opTel"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -140,7 +156,11 @@
prop="bookingEDIExt.opEmail"
>
<!-- <a-input :allowClear="true" v-model="details.bookingEDIExt.opEmail" /> -->
<inputView type="opEmail" :parentVal="details.bookingEDIExt.opEmail" @getInputChange="inputChange" />
<inputView
type="opEmail"
:parentVal="details.bookingEDIExt.opEmail"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -152,7 +172,11 @@
prop="bookingEDIExt.goodsName"
>
<!-- <a-input :allowClear="true" v-model="details.bookingEDIExt.goodsName" /> -->
<inputView type="goodsName" :parentVal="details.bookingEDIExt.goodsName" @getInputChange="inputChange" />
<inputView
type="goodsName"
:parentVal="details.bookingEDIExt.goodsName"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -163,7 +187,12 @@
has-feedback
prop="iscontainersoc"
>
<a-select size="small" :default-value="iscontainersoc" style="width: 120px" v-model="iscontainersoc">
<a-select
size="small"
:default-value="iscontainersoc"
style="width: 120px"
v-model="iscontainersoc"
>
<a-select-option value="1"> </a-select-option>
<a-select-option value="0"> </a-select-option>
</a-select>
@ -178,7 +207,11 @@
prop="scaccode"
>
<!-- <a-input :allowClear="true" v-model="details.scaccode" /> -->
<inputView type="scaccode" :parentVal="details.scaccode" @getInputChange="inputChange" />
<inputView
type="scaccode"
:parentVal="details.scaccode"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -190,7 +223,11 @@
prop="itncode"
>
<!-- <a-input :allowClear="true" v-model="details.itncode" /> -->
<inputView type="itncode" :parentVal="details.itncode" @getInputChange="inputChange" />
<inputView
type="itncode"
:parentVal="details.itncode"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -219,7 +256,11 @@
prop="freightpayer"
>
<!-- <a-input :allowClear="true" v-model="details.freightpayer" /> -->
<inputView type="freightpayer" :parentVal="details.freightpayer" @getInputChange="inputChange" />
<inputView
type="freightpayer"
:parentVal="details.freightpayer"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="8">
@ -274,7 +315,7 @@
:wrapperCol="{ xs: { span: 24 }, sm: { span: 21 } }"
has-feedback
prop="bookingEDIExt.weiTuoFang"
style="margin-top:4px;"
style="margin-top: 4px"
>
<a-textarea
size="small"
@ -485,7 +526,7 @@
:wrapperCol="{ xs: { span: 24 }, sm: { span: 15 } }"
has-feedback
prop="bookingEDIExt.s0CC0C"
style="margin-top:4px;"
style="margin-top: 4px"
>
<a-textarea
size="small"
@ -502,9 +543,13 @@
:wrapperCol="{ xs: { span: 24 }, sm: { span: 15 } }"
has-feedback
prop="bookingEDIExt.ckhi"
style="margin-top:4px;"
style="margin-top: 4px"
>
<a-textarea size="small" v-model="details.bookingEDIExt.ckhi" :auto-size="{ minRows: 2, maxRows: 5 }" />
<a-textarea
size="small"
v-model="details.bookingEDIExt.ckhi"
:auto-size="{ minRows: 2, maxRows: 5 }"
/>
</a-form-model-item>
</a-col>
</a-row>
@ -519,7 +564,11 @@
has-feedback
prop="bookingEDIExt.cncm"
>
<a-textarea size="small" v-model="details.bookingEDIExt.cncm" :auto-size="{ minRows: 2, maxRows: 5 }" />
<a-textarea
size="small"
v-model="details.bookingEDIExt.cncm"
:auto-size="{ minRows: 2, maxRows: 5 }"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
@ -530,7 +579,11 @@
has-feedback
prop="bookingEDIExt.wncm"
>
<a-textarea size="small" v-model="details.bookingEDIExt.wncm" :auto-size="{ minRows: 2, maxRows: 5 }" />
<a-textarea
size="small"
v-model="details.bookingEDIExt.wncm"
:auto-size="{ minRows: 2, maxRows: 5 }"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
@ -542,7 +595,11 @@
prop="bookingEDIExt.acihbl"
>
<!-- <a-input :allowClear="true" v-model="details.bookingEDIExt.acihbl" /> -->
<inputView type="acihbl" :parentVal="details.bookingEDIExt.acihbl" @getInputChange="inputChange" />
<inputView
type="acihbl"
:parentVal="details.bookingEDIExt.acihbl"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
@ -553,7 +610,11 @@
has-feedback
prop="bookingEDIExt.cnptNo"
>
<inputView type="CNPTNo" :parentVal="details.bookingEDIExt.cnptNo" @getInputChange="inputChange" />
<inputView
type="CNPTNo"
:parentVal="details.bookingEDIExt.cnptNo"
@getInputChange="inputChange"
/>
</a-form-model-item>
</a-col>
</a-row>
@ -564,152 +625,152 @@
</div>
</template>
<script>
import inputView from '../components/inputView'
import selectView from '../components/selectView'
let timer
export default {
components: {
inputView,
selectView
},
props: {
details: {
type: Object,
default: () => {
return {}
}
import inputView from '../components/inputView.vue'
import selectView from '../components/selectView.vue'
let timer
export default {
components: {
inputView,
selectView,
},
rules: {
type: Object,
default: () => {
return {}
}
props: {
details: {
type: Object,
default: () => {
return {}
},
},
rules: {
type: Object,
default: () => {
return {}
},
},
inSave: {
type: Boolean,
default: false,
},
isParent: {
type: String,
default: '',
},
},
inSave: {
type: Boolean,
default: false
data() {
return {
iscontainersoc: '',
StoreSalesRepCode: [
{ ID: 'CN087', NAME: 'CN087 | GRACE SUN' },
{ ID: 'CN096', NAME: 'CN096 | LEON LIANG' },
{ ID: 'CN097', NAME: 'CN097 | CHARLES GAO' },
{ ID: 'CN098', NAME: 'CN098 | TERESA LIU SHAN' },
{ ID: 'CN106', NAME: 'CN106 | HOKI YU' },
{ ID: 'CN107', NAME: 'CN107 | WILLIAM YANG JING YU' },
{ ID: 'CN099', NAME: 'CN099 | HELEN ZHANG' },
{ ID: 'CN100', NAME: 'CN100 | LEOREN' },
],
StoreMasterBOLIndicator: [
{ ID: '1', NAME: 'Carrier filing HBL | 船公司发HBL' },
{ ID: '2', NAME: 'Self filing HBL | 自己发' },
{ ID: '3', NAME: 'Not Applicable/Straight bl | 无HBL' },
],
}
},
isParent: {
type: String,
default: ''
}
},
data() {
return {
iscontainersoc: '',
StoreSalesRepCode: [
{ ID: 'CN087', NAME: 'CN087 | GRACE SUN' },
{ ID: 'CN096', NAME: 'CN096 | LEON LIANG' },
{ ID: 'CN097', NAME: 'CN097 | CHARLES GAO' },
{ ID: 'CN098', NAME: 'CN098 | TERESA LIU SHAN' },
{ ID: 'CN106', NAME: 'CN106 | HOKI YU' },
{ ID: 'CN107', NAME: 'CN107 | WILLIAM YANG JING YU' },
{ ID: 'CN099', NAME: 'CN099 | HELEN ZHANG' },
{ ID: 'CN100', NAME: 'CN100 | LEOREN' }
],
StoreMasterBOLIndicator: [
{ ID: '1', NAME: 'Carrier filing HBL | 船公司发HBL' },
{ ID: '2', NAME: 'Self filing HBL | 自己发' },
{ ID: '3', NAME: 'Not Applicable/Straight bl | 无HBL' }
]
}
},
watch: {
details: {
handler(nval, oval) {
if (!this.inSave) {
this.$emit('changeDetail', {
detail: nval,
type: 'ediMore'
})
}
watch: {
details: {
handler(nval, oval) {
if (!this.inSave) {
this.$emit('changeDetail', {
detail: nval,
type: 'ediMore',
})
}
},
deep: true,
},
iscontainersoc(nval, oval) {
this.details.iscontainersoc = nval !== '0'
},
'$route.query': {
immediate: true,
handler(nD, oD) {
if (this.$route.name === 'BookingDetail') {
this.id = this.$route.query.id
}
},
},
deep: true
},
iscontainersoc(nval, oval) {
this.details.iscontainersoc = nval !== '0'
created() {},
mounted() {
this.iscontainersoc = this.details.iscontainersoc ? '1' : '0'
},
'$route.query': {
immediate: true,
handler(nD, oD) {
if (this.$route.name === 'BookingDetail') {
this.id = this.$route.query.id
}
}
}
},
created() {},
mounted() {
this.iscontainersoc = this.details.iscontainersoc ? '1' : '0'
},
methods: {
debounce(func, wait, ...args) {
if (timer) clearTimeout(timer)
timer = setTimeout(() => {
func.apply(this, args)
}, wait)
},
checkbasic() {
this.$refs.ediFrom.validate(valid => {
if (valid) {
return true
methods: {
debounce(func, wait, ...args) {
if (timer) clearTimeout(timer)
timer = setTimeout(() => {
func.apply(this, args)
}, wait)
},
checkbasic() {
this.$refs.ediFrom.validate((valid) => {
if (valid) {
return true
} else {
return false
}
})
},
inputChange({ type, value }) {
const bookingEDIExtArr = [
'sendCode',
'receiveCode',
'ediAttn',
'ediAttnTel',
'ediAttnMail',
'amsConsignee',
'amsNotifyParty',
'opEName',
'opTel',
'opEmail',
'goodsName',
'orderRemark',
'consigneeEdiCode',
'shipperEdiCode',
'notifyCdoe',
'emanifestHbl',
'acihbl',
'CNPTNo',
'kingTareweight',
'xmcywy',
'emcNameAccount',
]
if (bookingEDIExtArr.includes(type)) {
this.details.bookingEDIExt[type] = value
} else {
return false
this.details[type] = value
}
})
},
inputChange({ type, value }) {
const bookingEDIExtArr = [
'sendCode',
'receiveCode',
'ediAttn',
'ediAttnTel',
'ediAttnMail',
'amsConsignee',
'amsNotifyParty',
'opEName',
'opTel',
'opEmail',
'goodsName',
'orderRemark',
'consigneeEdiCode',
'shipperEdiCode',
'notifyCdoe',
'emanifestHbl',
'acihbl',
'CNPTNo',
'kingTareweight',
'xmcywy',
'emcNameAccount'
]
if (bookingEDIExtArr.includes(type)) {
this.details.bookingEDIExt[type] = value
} else {
this.details[type] = value
}
this.$forceUpdate()
this.$forceUpdate()
},
getSelectViewRes({ type, res }) {
if (type === 'masterBolIndicator') {
this.details.bookingEDIExt.masterBolIndicator = res.ID || ''
this.details.bookingEDIExt.masterBolIndicatorName = res.NAME || ''
} else if (type === 'salerCode') {
this.details.bookingEDIExt.salerCode = res.ID
this.details.bookingEDIExt.salerCodeName = res.NAME
}
},
},
getSelectViewRes({ type, res }) {
if (type === 'masterBolIndicator') {
this.details.bookingEDIExt.masterBolIndicator = res.ID || ''
this.details.bookingEDIExt.masterBolIndicatorName = res.NAME || ''
} else if (type === 'salerCode') {
this.details.bookingEDIExt.salerCode = res.ID
this.details.bookingEDIExt.salerCodeName = res.NAME
}
}
}
}
</script>
<style lang="less" scoped>
/deep/ .ant-form-explain {
display: none !important;
}
/deep/ .ant-form-explain {
display: none !important;
}
/deep/ .ant-form-item-children-icon .anticon-check-circle {
display: none;
}
/deep/ .ant-form-item-children-icon .anticon-check-circle {
display: none;
}
</style>
<style lang="less" scoped>
@import url('../style/ediMore.less');
@import url('../style/ediMore.less');
</style>

@ -145,14 +145,14 @@
</div>
</template>
<script>
import sedOperationArea from './sedOperationArea'
import basicInfo from './basicInfo'
import mailingInfo from './mailingInfo'
import cargoInfo from './cargoInfo'
import billInfo from './billInfo'
import remarksInfo from './remarksInfo'
import goodsTable from './goodsTable'
import ediMore from './ediMore'
import sedOperationArea from './sedOperationArea.vue'
import basicInfo from './basicInfo.vue'
import mailingInfo from './mailingInfo.vue'
import cargoInfo from './cargoInfo.vue'
import billInfo from './billInfo.vue'
import remarksInfo from './remarksInfo.vue'
import goodsTable from './goodsTable.vue'
import ediMore from './ediMore.vue'
import rules from '../rules'
import {
BookingOrderSave,

@ -149,9 +149,9 @@
// === 0217更新样式 ===
.booking-detail {
margin-top: -16px;
margin-left: -16px;
margin-right: -16px;
margin-top: 8px;
margin-left: 8px;
margin-right: 8px;
/deep/ .ant-card-body {
margin-bottom: 2px !important;

@ -511,7 +511,7 @@
// border: 1px solid #f00;
}
/deep/ .ant-form-item-control{
height:36px !important;
// height:36px !important;
line-height: 36px !important;
}
}

@ -1,7 +1,7 @@
<template>
<div @click="pageClick">
<div @click="pageClick" class="booking-list">
<a-spin tip="Loading..." :spinning="spinning">
<a-row :gutter="24">
<a-row :gutter="24" style="margin: 0">
<a-col :md="24" :sm="24" style="padding: 0 0 0 0" class="content-box">
<XCard class="content-nav">
<div class="table-page-search-wrapper">
@ -54,6 +54,9 @@
:class="advanced ? 'icon-shouqi' : 'icon-zhankai'"
></i>
</a>
<a-button size="small" class="more-search" @click="FnOpenAdvancedQuery">
高级
</a-button>
</template>
<template v-else>
<a-button size="small" class="more-search" @click="tableMoreRefresh">
@ -676,6 +679,20 @@
</XCard>
</a-col>
</a-row>
<!-- -------------------Z----------------------->
<a-modal
title="高级查询"
:maskClosable="false"
width="40%"
:visible="AdvancedQueryVisible"
@ok="FnAdvancedQuery"
@cancel="FnCancelAdvancedQuery"
>
<div class="CsConditionFilter">
<ConditionFilter v-model="AdvancedQueryData" :filter-fields="fields" :disabled="false" />
</div>
</a-modal>
<!-- ------------------------------------------->
<a-modal
:title="
TaskShippingOrderCompareData.isExistsDiff ? '下货纸比对(有差异)' : '下货纸比对(正常)'
@ -1512,6 +1529,7 @@
})
</script> -->
<script lang="ts" setup>
import ConditionFilter from '/@/components/Condition/index.vue'
import { onMounted, ref, reactive, getCurrentInstance, watch } from 'vue'
import { onBeforeRouteLeave } from 'vue-router'
import XCard from '/@/components/xnComponents/XCard.vue'
@ -1522,7 +1540,12 @@
import importBc from './modules/importBc.vue'
import importBcMore from './modules/importBcMore.vue'
import initData from './modules/initData.js'
import { FilterRules } from '/@/components/Condition/index'
import { Field } from '/@/components/Render/interface'
import { getColumnsByClient } from '/@/views/baseinfo/formcopy/api'
import {
UpdateUserQuerySet,
GetUserQuerySet,
PageDataByBooking,
SendTrace,
getVesselInfoService,
@ -1564,12 +1587,14 @@
import { DjyUserConfigGet, DjyUserConfigAdd } from './api/DjyUserConfig.js'
import { useAppStore } from '/@/store/modules/app'
import { useMessage } from '/@/hooks/web/useMessage'
import { useRouter } from 'vue-router'
import { useRouter, useRoute } from 'vue-router'
const router = useRouter()
const route = useRoute()
const appStore = useAppStore()
const go = useGo()
const { notification } = useMessage()
let { ctx: that, proxy }: any = getCurrentInstance()
import { usePermissionStore } from '/@/store/modules/permission'
const formInitData = [
{ title: '主提单号', align: 'center', width: '90', label: 'MBLNO', type: 'input' },
{ title: '分提单号', align: 'center', width: '90', label: 'HBLNO', type: 'input' },
@ -1604,6 +1629,7 @@
const moreNumVal = ref('')
const formatFlag = ref(false)
const moreNumVisible = ref(false)
const AdvancedQueryVisible = ref(false)
const advanced = ref(false)
const goodStatusShow = ref(false)
const goodStatusData = ref(null)
@ -1728,6 +1754,10 @@
const setTableForm = ref()
const showColumns = ref({})
const fromTableAllData = ref({})
const AdvancedQueryData = ref<FilterRules>({ logicalOperator: 'and', conditions: [], groups: [] })
const fields = ref<Field[]>([])
const permissionId = ref<String>('')
const ConditionalList = ref<String>('')
// ========
onBeforeRouteLeave((to, from, next) => {
appStore.setbookingGridOptions(gridOptions)
@ -1735,8 +1765,10 @@
next()
})
watch(
() => router.currentRoute.value.path,
() => route,
(nD, oD) => {
console.log(nD, nD.name)
if (nD.name === 'booking_ledger') {
if (appStore.getsaveNeedNumber !== null) {
let index = -1
@ -1767,10 +1799,13 @@
appStore.setinBookingDetailsSave(false)
}
},
{ immediate: true, deep: true },
{ deep: true },
)
createdInit()
//------ ZTH createdInit------
getList()
// ----------------------------------------------------
const arr = localStorage.getItem('bookingSetting')
? JSON.parse(localStorage.getItem('bookingSetting'))
: []
@ -1783,6 +1818,64 @@
onresize()
})
// ========
function FnOpenAdvancedQuery() {
AdvancedQueryVisible.value = true
}
function FnCancelAdvancedQuery() {
AdvancedQueryVisible.value = false
}
async function FnAdvancedQuery() {
let Api = (data) => {
let Obj: any = {}
let key: number = 0
console.log(data)
data.logicalOperator == 'and' ? (key = 0) : (key = 1)
if (data.conditions.length) {
if (!Obj.ConditionalList) {
Obj.ConditionalList = []
}
let Arr: any[] = []
data.conditions.forEach((item) => {
Arr.push({
Key: key,
Value: {
FieldName: item.field,
FieldValue: item.operator,
ConditionalType: item.value,
},
})
})
Obj.ConditionalList.push(...Arr)
}
if (data.groups.length) {
if (!Obj.ConditionalList) {
Obj.ConditionalList = []
}
let Arr: any[] = []
data.groups.forEach((item) => {
Arr.push({
Key: key,
Value: Api(item),
})
})
Obj.ConditionalList.push(...Arr)
}
return Obj
}
ConditionalList.value = JSON.stringify(Api(AdvancedQueryData.value).ConditionalList)
let ApiData = {
permissionId: permissionId.value,
content: JSON.stringify(AdvancedQueryData.value),
}
const res: API.DataResult = await UpdateUserQuerySet(ApiData)
if (res.succeeded) {
console.log(res)
getList(searchData.value)
FnCancelAdvancedQuery()
}
}
function getListByone(listId, listIndex) {
PageDataByBooking({ id: listId }).then((res) => {
const item = res.data[0]
@ -1843,14 +1936,59 @@
xGrid.value.setCurrentRow(gridOptions.data[listIndex])
})
}
function createdInit() {
async function createdInit() {
showColumns.value = JSON.parse(JSON.stringify(initData.columns))
formAllData.value = JSON.parse(JSON.stringify(initData.condAllData))
fromTableAllData.value = JSON.parse(JSON.stringify(initData.columnsAllData))
tableHeight.value = document.body.clientHeight - 230
const res: API.DataResult = await getColumnsByClient({
tableViewName: 'op_sea_export',
})
const fullPath = ref(router.currentRoute.value.fullPath)
usePermissionStore().getWrouteList.forEach((item: Record<any, any>) => {
item.children[0].children?.forEach((item2: Record<any, any>) => {
if (fullPath.value.indexOf(item2.path) != -1) {
permissionId.value = item2.id
}
})
})
if (res.succeeded) {
console.log(res)
let data: any[] = []
res.data.forEach((item) => {
data.push({
id: item.dbColumnName,
title: item.columnDescription,
name: 'Select',
value: null,
props: {
disabled: false,
multiple: false,
// placeholder: '',
options: [],
},
style: {
width: '100%',
},
})
})
fields.value = data
}
FnGetUserQuerySet()
getConfigUser(true)
getCarrier()
}
async function FnGetUserQuerySet() {
const res: API.DataResult = await GetUserQuerySet({
permissionId: permissionId.value,
})
if (res.succeeded) {
console.log(res)
AdvancedQueryData.value = JSON.parse(res.data.content)
}
}
function getConfigUser(isInit = false) {
const query = {
typeArr: ['booking_list_cond', 'booking_list_column', 'booking_list_page', 'booking_sort'],
@ -2185,13 +2323,6 @@
gridOptions.data = []
getList(queryParam)
}
function RListData(data) {
let Rdata = []
Object.keys(data).forEach((item) => {
Rdata.push({ FieldName: item, FieldValue: data[item], ConditionalType: 1 })
})
return JSON.stringify(Rdata)
}
function getList(queryParam = {}, isInit = false, isAdd = 'normal') {
gridOptions.loading = true
const { currentPage, pageSize } = gridOptions.pagerConfig
@ -2234,10 +2365,9 @@
}
PageDataByBooking({
...query,
queryCondition: RListData(query.queryCondition),
ConditionalList: ConditionalList.value,
})
.then((res) => {
console.log(res)
if (res.succeeded) {
let newBookingList = {}
if (query.queryCondition.PageNo !== 1) {
@ -3545,6 +3675,14 @@
}
</script>
<style lang="less" scoped>
.CsConditionFilter {
padding: 16px;
}
.booking-list {
padding-top: 8px;
padding-left: 8px;
padding-right: 8px;
}
/*.ant-layout{
background: #f4f4f4;
}*/

Loading…
Cancel
Save