Browse Source

Merge remote-tracking branch 'origin/developerB' into developerB

zhengjinyi 4 years ago
parent
commit
bee02463f5
32 changed files with 2220 additions and 2827 deletions
  1. 2 2
      src/main/resources/static/css/base/base.h5.css
  2. 3 2
      src/main/resources/static/css/base/base.pc.css
  3. 1 1
      src/main/resources/static/css/base/form.css
  4. 0 154
      src/main/resources/static/css/shopping/cart.css
  5. 0 248
      src/main/resources/static/css/shopping/confirm.css
  6. 285 0
      src/main/resources/static/css/shopping/shopping.css
  7. 61 367
      src/main/resources/static/css/supplier-center/order/delivery.css
  8. 76 456
      src/main/resources/static/css/supplier-center/order/detail.css
  9. 72 217
      src/main/resources/static/css/supplier-center/order/logistics-detail.css
  10. 327 5
      src/main/resources/static/css/supplier-center/order/logistics.css
  11. 45 266
      src/main/resources/static/css/supplier-center/order/record.css
  12. 54 106
      src/main/resources/static/css/supplier-center/order/saleslist.css
  13. 124 0
      src/main/resources/static/css/supplier-center/shop/goods.css
  14. BIN
      src/main/resources/static/img/base/icon_m.png
  15. 399 516
      src/main/resources/static/js/shopping/confirm.js
  16. 0 5
      src/main/resources/static/js/supplier-center/order/detail.js
  17. 0 4
      src/main/resources/static/js/supplier-center/order/logistics.js
  18. 0 4
      src/main/resources/static/js/supplier-center/order/orderlist.js
  19. 0 7
      src/main/resources/static/js/supplier-center/order/record.js
  20. 2 3
      src/main/resources/static/js/supplier-center/shop/brand.js
  21. 345 129
      src/main/resources/static/js/supplier-center/shop/goods.js
  22. 1 1
      src/main/resources/templates/components/head-link.html
  23. 2 2
      src/main/resources/templates/product/detail.html
  24. 7 8
      src/main/resources/templates/shopping/cart.html
  25. 259 207
      src/main/resources/templates/shopping/confirm.html
  26. 1 1
      src/main/resources/templates/supplier-center/dashboard.html
  27. 4 6
      src/main/resources/templates/supplier-center/order/delivery-record.html
  28. 1 1
      src/main/resources/templates/supplier-center/order/delivery.html
  29. 7 11
      src/main/resources/templates/supplier-center/order/detail.html
  30. 3 3
      src/main/resources/templates/supplier-center/order/logistics-detail.html
  31. 0 2
      src/main/resources/templates/supplier-center/order/logistics.html
  32. 139 93
      src/main/resources/templates/supplier-center/shop/goods.html

+ 2 - 2
src/main/resources/static/css/base/base.h5.css

@@ -179,9 +179,9 @@
 .priceTag .ladder i{font-style:normal;display:inline-block;width:35vw;text-align:center}
 .priceTag .ladder .t{color:#627386}
 .priceTag .ladder .p{color:#f94b4b}
-.priceTag .close{display:block;width:46vw;height:10vw;line-height:10vw;text-align:center;background-color:#ffe6dc;border-radius:2px;border:1px solid #e15616;margin:6vw auto 0}
+.priceTag .close{display:block;width:46vw;height:10vw;line-height:10vw;text-align:center;background-color:#ffe6dc;border-radius:2px;border:1px solid #e15616;margin:6vw auto 0;}
 .priceTag .promotion>div{display:block;box-sizing:border-box;width:82vw;padding:3.3vw;background:#FFF;border-radius:1.6vw;position:relative;top:50%;margin:-60vw auto 0 auto;line-height:8vw;font-size:3.7vw}
-.priceTag .promotion p{text-align:left}
+.priceTag .promotion p{text-align:left;clear:both;}
 .priceTag .promotion p>em{color:#E15616;font-style:normal}
 .priceTag .promotion .p{display:block;height:12vw;padding:1vw 0 1vw 12vw;position:relative;line-height:5vw}
 .priceTag .promotion .p img{width:10vw;height:10vw;position:absolute;left:0;top:1vw}

+ 3 - 2
src/main/resources/static/css/base/base.pc.css

@@ -271,12 +271,13 @@ header{box-shadow: 0 2px 10px #ebecef;}
 .priceTag .ladder .p{color:#f94b4b}
 .priceTag .close{background:#E15616;color:#fff;border-radius:2px;cursor:pointer;display:inline-block;padding:0 20px;height:30px;line-height:30px;font-style:normal;}
 .priceTag .promotion{font-size:14px;line-height:30px;padding:8px 15px;width:320px;}
-.priceTag .promotion p{text-align:left}
+.priceTag .promotion p{text-align:left;clear:both;}
 .priceTag .promotion p>em{color:#E15616;font-style:normal}
-.priceTag .promotion .p{display:block;height:40px;padding:10px 0 10px 50px;position:relative;line-height:20px}
+.priceTag .promotion .p{display:block;height:40px;padding:10px 0 10px 50px;position:relative;line-height:20px;}
 .priceTag .promotion .p img{width:40px;height:40px;position:absolute;left:0;top:10px}
 .priceTag .promotion .p span{display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
 .priceTag .promotion p.r{text-align:right;}
+.priceTag .promotion p.c{text-align:center;}
 .priceTag .promotion .more{color:#f55c5c;text-decoration:underline;float:right;}
 /*  加载  */
 .loading {box-sizing: border-box;padding: 200px 0;text-align: center;}

+ 1 - 1
src/main/resources/static/css/base/form.css

@@ -8,7 +8,7 @@
 .formLine input,.formLine select{box-sizing:border-box;width:100%;height:36px;line-height:34px;text-indent:1.2em;background-color:#FFF;border:1px solid #b8bfca;border-radius:2px}
 .formLine textarea{width:100%;height:114px;margin-top: 20px; box-sizing:border-box;border:solid 1px #b8bfca;padding:10px 16px;line-height:20px;resize: none;border-radius: 2px;outline: none;}
 .formLine select{width:154px}
-.formLine.error input{border-color:#f94b4b}
+.formLine.error input,.formLine.error textarea{border-color:#f94b4b}
 .formLine input:focus{border-color:#ffe6dc;}
 .formLine p{height:auto;line-height:32px}
 .formLine p em{font-style:normal;color:#f94b4b;margin:0 5px}

+ 0 - 154
src/main/resources/static/css/shopping/cart.css

@@ -1,154 +0,0 @@
-@charset "utf-8";
-li{list-style:none}
-/**
- * PC端
- */
-@media screen and (min-width:768px){
-    input[type="number"]{-moz-appearance:none;-webkit-appearance: none;}
-    input::-webkit-outer-spin-button,input::-webkit-inner-spin-button {-webkit-appearance:none;}
-    .loading{box-sizing:border-box;padding:200px 0;text-align:center}
-    .empty{box-sizing:border-box;padding:100px 0;text-align:center;color:#4A4F58;line-height:30px;font-size:16px}
-    .empty img{width:180px;height:180px}
-    .empty a{color:#E15616}
-    .pageTitle{height:57px;line-height:57px;padding-top:16px}
-    .pageTitle h1{color:#2D3036;font-size:16px;font-weight:bold;float:left}
-    .pageTitle .step{float:right;color:#999999;font-size:14px;height:44px;line-height:44px}
-    .pageTitle .step span{display:inline-block;height:20px;line-height:20px;vertical-align:middle;position:relative;}
-    .pageTitle .step span:before{font-style:normal;font-size:20px;vertical-align:text-top;margin-right:5px}
-    .pageTitle .step span:nth-of-type(1):before{content:'\2776'}
-    .pageTitle .step span:nth-of-type(2):before{content:'\2777'}
-    .pageTitle .step span:nth-of-type(3):before{content:'\2778'}
-    .pageTitle .step span:after{position:absolute;left:0;top:10px;content:'';width:50px;}
-    .pageTitle .step span:first-child{padding-left:0}
-    .pageTitle .step span:first-child:after{display:none}
-    .pageTitle .step span.on{color:#E15616}
-    .listWrap{width:1184px}
-    .listWrap .cartTit,.listWrap .supplierItem{box-sizing:border-box;padding:0 14px;text-align:center;width:100%;background:#FFF;margin-bottom:8px;box-shadow:0px 3px 6px rgba(0,0,0,0.07)}
-    .listWrap .supplierItem.disable{background:#f1f0f5}
-    .listWrap .supplierItem em{font-style: normal}
-    .listWrap .supplierTit{border-bottom:1px solid #F7F7F7;height:60px;line-height:60px;text-align: left;}
-    .listWrap .supplierTit .img{width:auto;height:32px;border:1px solid #F7F7F7;margin-right:10px}
-    .listWrap .supplierTit .name{color:#9aa5b5}
-    .listWrap .cartTit,.listWrap .supplierBtn{height:60px;line-height:60px}
-    .listWrap .cartTit{color:#333333}
-    .listWrap .supplierItem,.listWrap .supplierBtn{color:#22272E}
-    .listWrap .supplierBtn{border-top:1px solid #F5F5F5;text-align:right;}
-    .listWrap .supplierBtn em {color:#f55c5c;font-size:16px;}
-    .listWrap .cartItem{width:100%;height:100px;line-height:100px;margin-top:10px;padding:14px 0;font-size: 16px}
-    .listWrap .cartItem:first-child{margin-top:0}
-    .listWrap .cartItem .c2{text-align:left}
-    .listWrap .cartItem>div>*{vertical-align:middle}
-    .listWrap .c0{float:left;width:34px;text-align:left;}
-    .listWrap .c1{float:left;}
-    .listWrap .c2{float:left;width:400px}
-    .listWrap .cartTit .c2{padding-left: 75px;}
-    .listWrap .c3{float:left;width:200px}
-    .listWrap .c4{float:left;width:142px;}
-    .listWrap .c5{float:left;width:185px;position: relative}
-    .listWrap .c6{float:left;width:142px}
-    .listWrap .c7{float:right;width:118px}
-    .listWrap .c10{float:left;width:495px}
-    .listWrap .check{width:16px;height:16px;line-height:14px;vertical-align:middle}
-    .listWrap .image{display:block;width:100px;height:100px;border:1px solid #F7F7F7}
-    .listWrap .name, .listWrap .unit{line-height:20px;display:inline-block;max-height:100px;overflow:hidden;vertical-align:middle}
-    .listWrap .cartItem .name{padding-left:14px}
-    .listWrap .cartItem .name .tag{display: inline-block;background:#f94b4b;color:#FFF;font-size:12px;padding:0 6px;height:20px;line-height:20px;border-radius:2px;font-style:normal;margin-right:5px}
-    .listWrap .c7 em,.listWrap .c10 em{color:#f94b4b;font-style:normal}
-    .listWrap .number{display:inline-block;width:96px;line-height:24px;height:24px;box-sizing:border-box;border:1px solid #FFE6DC;border-radius:2px;font-size:0;white-space:nowrap;text-align:center;overflow:hidden;vertical-align:top}
-    .listWrap .number>em{display:inline-block;width:24px;height:22px;background:#FFE6DC;font-size:20px;font-style:normal;line-height:20px;vertical-align:top;cursor:pointer}
-    .listWrap .number input{width:48px;border:none;line-height:22px;font-size:14px;vertical-align:top;text-align:center;color:#E15616}
-    .listWrap .del{color: #9AA5B5;font-size:20px;position:relative;cursor:pointer;display:inline-block;height:40px;line-height:40px;width:30px}
-    .listWrap .del .tips{position:absolute;top:40px;left:4px;opacity:0;white-space:nowrap;background-color:#f94b4b;color:#FFF;border-radius:3px;line-height:30px;font-size:12px;text-align:center;display:inline-block;transition:all .8s;padding:0 10px;font-style:normal}
-    .listWrap .del .tips:before{content:"";width:10px;height:10px;background:#f94b4b;position:absolute;top:-3px;left:6px;transform:rotate(45deg)}
-    .listWrap .del:hover{color:#f94b4b}
-    .listWrap .del:hover .tips{opacity:1}
-    .listWrap .price{position:relative;display:inline-block;line-height:24px;}
-    .listWrap .price>em{font-style:normal;font-size:16px;display:inline-block;width:100%;}
-    .listWrap .price>del{font-size:16px;display:inline-block;width:100%;}
-    .invalidTit{height:44px;line-height:44px;padding-top:16px;font-size:16px}
-    .invalidTit .tit{color:#22272e;float:left}
-    .invalidTit .delAll{color:#e15616;float:right;cursor:pointer;}
-    .invalidTit .tit em{font-style:normal;color:#e15616}
-    .summaryWrap{width:100%;background:#FFF;margin:16px 0 -29px 0;}
-    .summaryWrap .summary{width:1184px;margin:0 auto;font-size:18px;padding:11px 0;height:50px;line-height:50px;text-align:right;}
-    .summaryWrap .summary em{font-style:normal}
-    .summaryWrap .summary .left,.summaryWrap .summary .right{display:inline;}
-    .summaryWrap .summary .left .item:first-child{float:left;}
-    .summaryWrap .summary .item{display:inline-block;margin-right:32px;position:relative;}
-    .summaryWrap .summary .check{width:14px;height:14px;line-height:14px;vertical-align:top;margin:18px 16px 0 16px}
-    .summaryWrap .summary .delete{margin-left:16px;color:#f55c5c}
-    .summaryWrap .summary .right .item{position:relative;text-align:right;}
-    .summaryWrap .summary .right .item em{color:#f55c5c}
-    .summaryWrap .summary .submit{display:inline-block;width:232px;height:50px;line-height:50px;text-align:center;background-color:#e15616;border-radius:2px;color:#FFF}
-    .summaryWrap.fixed{position:fixed;bottom:0;left:0;margin:0;z-index:99999;box-shadow:20px 20px 102px rgba(0,0,0,0.1)}
-    .pageTitle .step label.line{width: 50px;height: 1px;background: #707070;display: inline-block; margin: 0px 10px}
-    .summaryWrap .summary .item .del{position:absolute;right:0;top:-20px;cursor:pointer;height:24px;font-size:14px}
-    .summaryWrap .summary .item .del em{position:absolute;top:-12px;height:24px;white-space:nowrap;right:0;background:#ff4500;line-height:24px;color:#FFF;padding:0 12px;border-radius:2px}
-    .summaryWrap .summary .item .del em:before{content:'';width:0;height:0;border-width:5px 5px 0 5px;border-style:solid;border-color:#ff4500 transparent;position:absolute;top:24px;left:50%}
-
-
-
-}
-
-/**
-* 移动端
-*/
-@media screen and (max-width:768px){
-    .loading{box-sizing:border-box;padding:20vw 0;text-align:center}
-    .empty{box-sizing:border-box;padding:15vw 0;text-align:center;color:#4A4F58;line-height:8vw;font-size:3.4vw}
-    .empty img{width:40vw;height:40vw}
-    .empty a{color:#E15616}
-    .pageTitle .step{width:100%;height:12.4vw;line-height:12.4vw;background:#FFF;color:#9AA5B5;font-size:3.1vw;text-align:center;}
-    .pageTitle .step span{display:inline-block;height:4.2vw;line-height:4.2vw;vertical-align:middle;position:relative;padding-left:6.4vw}
-    .pageTitle .step span:before{font-style:normal;font-size:5.2vw;vertical-align:text-top;margin-right:1vw}
-    .pageTitle .step span:nth-of-type(1):before{content:'\2776'}
-    .pageTitle .step span:nth-of-type(2):before{content:'\2777'}
-    .pageTitle .step span:nth-of-type(3):before{content:'\2778'}
-    .pageTitle .step span:after{position:absolute;left:0;top:2.05vw;content:'';width:5.4vw;border-top:1px solid #9AA5B5}
-    .pageTitle .step span:first-child{padding-left:0}
-    .pageTitle .step span:first-child:after{display:none}
-    .pageTitle .step span.on{color:#E15616}
-    .pageTitle h1{color:#2D3036;font-size:3.7vw;font-weight:bold;height:10vw;line-height:10vw;padding:0 3.3vw;}
-    .listWrap .supplierItem{width:100%;background:#FFF;color:#9aa5b5;font-size:3.4vw;margin-bottom:1.2vw;}
-    .listWrap .supplierItem.disable{background:#f1f0f5}
-    .listWrap .supplierItem em{font-style: normal}
-    .listWrap .supplierTit{border-bottom:1px solid #F7F7F7;height:7.4vw;line-height:7.4vw;padding:1.3vw 3.3vw;}
-    .listWrap .cartItem{padding:2.2vw 3.3vw;height:24vw;line-height:24vw;position:relative;}
-    .listWrap .supplierBtn{border-top:1px solid #F7F7F7;width:93vw;margin:0 auto;height:10.6vw;line-height:10.6vw;color:#22272e;font-size:3.4vw;text-align:right;}
-    .listWrap .supplierBtn em {color: #f55c5c;}
-    .listWrap .supplierItem .c0{float:left;width:9.6vw;text-align:center}
-    .listWrap .check{width:3.5vw;height:3.5vw;line-height:3.5vw;vertical-align:middle}
-    .listWrap .supplierItem .c1{float:left;width:24vw}
-    .listWrap .supplierItem .image{display:block;box-sizing:border-box;width:24vw;height:24vw;border:1px solid #F7F7F7}
-    .listWrap .supplierTit .img{width:7.4vw;height:7.4vw;border:1px solid #F7F7F7;margin-right:2vw}
-    .listWrap .supplierTit .name{color:#9aa5b5}
-    .listWrap .cartItem .c2,.listWrap .cartItem .c3,.listWrap .cartItem .c4,.listWrap .cartItem .c10{position:absolute;left:39vw;line-height:5vw}
-    .listWrap .cartItem .c2{top:2.2vw;height:10vw;width:58vw;}
-    .listWrap .cartItem .c2 .name{color:#22272e;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
-    .listWrap .cartItem .c3{top:14vw;height:5vw}
-    .listWrap .cartItem .c4{bottom:2.2vw;height:5vw}
-    .listWrap .cartItem .c5{position:absolute;right:3.3vw;bottom:2.2vw;height:6.4vw;line-height:6.4vw}
-    .listWrap .cartItem .c10{color:#f94b4b;top:16vw;height:5vw}
-    .listWrap .cartItem .number{display:inline-block;width:26.6vw;line-height:6.4vw;height:6.4vw;box-sizing:border-box;border:1px solid #FFE6DC;border-radius:2px;font-size:0;white-space:nowrap;text-align:center;overflow:hidden;vertical-align:top}
-    .listWrap .cartItem .number>em{display:inline-block;width:6.4vw;height:6.4vw;background:#FFE6DC;font-size:4vw;line-height:6vw;vertical-align:top}
-    .listWrap .cartItem .number input{width:13.5vw;border:none;line-height:6vw;vertical-align:top;text-align:center;color:#E15616;font-size:3.4vw}
-    .invalidTit{height:9vw;line-height:9vw;font-size:3.7vw;padding:0 3.3vw;}
-    .invalidTit .tit{color:#22272e;float:left}
-    .invalidTit .delAll{color:#e15616;float:right}
-    .invalidTit .tit em{font-style:normal;color:#e15616}
-    .summaryWrap{width:100%;background:#FFF;margin:1.4vw 0}
-    .summaryWrap .summary{width:93vw;margin:0 auto;font-size:3.4vw;padding-bottom:3.3vw}
-    .summaryWrap .summary em{font-style:normal}
-    .summaryWrap .summary .left{height:9.4vw;line-height:9.4vw}
-    .summaryWrap .summary .right{height:11.2vw;line-height:11.2vw}
-    .summaryWrap .summary .check{width:3.5vw;height:3.5vw;line-height:3.5vw;vertical-align:top;margin:3vw 3vw 0 3.3vw}
-    .summaryWrap .summary .delete{width:12vw;height:6vw;line-height:6vw;display:inline-block;text-align:center;color:#f55c5c}
-    .summaryWrap .summary .right .item{position:relative;text-align:right;margin-left:6.8vw}
-    .summaryWrap .summary .right .item em{color:#f55c5c}
-    .summaryWrap .summary .submit{display:inline-block;width:30.4vw;height:11.2vw;line-height:11.2vw;text-align:center;background-color:#e15616;border-radius:2px;color:#FFF}
-    .summaryWrap.fixed{position:fixed;bottom:0;left:0;margin:0;z-index:99999;box-shadow:20px 20px 102px rgba(0,0,0,0.1)}
-    .summaryWrap .summary .item .del{position:absolute;right:0;top:-4vw;cursor:pointer;height:6vw;font-size:3.1vw}
-    .summaryWrap .summary .item .del em{position:absolute;top:0;left:100%;height:5vw;white-space:nowrap;background:#ff4500;line-height:5vw;color:#FFF;padding:0 1vw;border-radius:2px}
-
-}
-

+ 0 - 248
src/main/resources/static/css/shopping/confirm.css

@@ -1,248 +0,0 @@
-@charset "utf-8";
-li{list-style:none}
-/**
- * PC端
- */
-@media screen and (min-width:768px){
-    input[type="number"]{-moz-appearance:none;-webkit-appearance: none;}
-    input::-webkit-outer-spin-button,input::-webkit-inner-spin-button {-webkit-appearance:none;}
-    .loading{box-sizing:border-box;padding:200px 0;text-align:center}
-    .empty{box-sizing:border-box;padding:100px 0;text-align:center;color:#4A4F58;line-height:30px;font-size:16px}
-    .empty img{width:180px;height:180px}
-    .empty a{color:#E15616}
-    .pageTitle{height:57px;line-height:57px;padding-top:16px;width: 100%;box-sizing: border-box;padding: 0 16px;}
-    .pageTitle h1{color:#2D3036;font-size:16px;font-weight:bold;float:left}
-    .pageTitle h1 span{color:#627386;font-size:12px;font-weight:normal;}
-    .pageTitle .step{float:right;color:#999999;font-size:14px;height:44px;line-height:44px}
-    .pageTitle .step span{display:inline-block;height:20px;line-height:20px;vertical-align:middle;position:relative;}
-    .pageTitle .step span:before{font-style:normal;font-size:20px;vertical-align:text-top;margin-right:5px}
-    .pageTitle .step span:nth-of-type(1):before{content:'\2776'}
-    .pageTitle .step span:nth-of-type(2):before{content:'\2777'}
-    .pageTitle .step span:nth-of-type(3):before{content:'\2778'}
-    .pageTitle .step span:after{position:absolute;left:0;top:10px;content:'';width:50px;}
-    .pageTitle .step span:first-child{padding-left:0}
-    .pageTitle .step span:first-child:after{display:none}
-    .pageTitle .step span.on{color:#E15616}
-    .pageTitle .step label.line{width: 50px;height: 1px;background: #707070;display: inline-block; margin: 0px 10px}
-    .pageTitle .step label.line.on{background: #E15616;}
-
-    .container{width:1184px;min-height: 600px;margin: 0 auto;}
-    .container .content{width:100%;height: auto;float: left;margin-bottom: 20px;position: relative;}
-    .container .content .title{width:100%;height: 36px;float: left;font-size: 16px;box-sizing: border-box;padding: 0 16px;line-height: 36px;color: #22272e;}
-    .container .content .section{width:100%;height: auto;float: left;box-sizing: border-box;padding:16px;box-shadow: 0px 3px 6px 0px rgba(34, 39, 46, 0.07);background-color: #ffffff;}
-    .container .content .section.address-none{height: 318px;position: absolute;left: 0;top: 36px;}
-    .container .content .section.address-none .address-main{width: 626px; float: left;height: 100%;}
-    .container .content .section.address-none .formLine{padding-bottom:16px;font-size:14px;position:relative;width: 100%;height: auto;float: left;}
-    .container .content .section.address-none .formLine input{box-sizing:border-box;width:100%;height:36px;line-height:34px;text-indent:1.2em;background-color:#FFF;border:1px solid #b8bfca;border-radius:2px}
-    .container .content .section.address-none .formLine select{box-sizing:border-box;width:162px;height:36px;line-height:34px;text-indent:1.2em;background-color:#FFF;border:1px solid #b8bfca;border-radius:2px}
-    .container .content .section.address-none .formLine textarea{width:100%;height:114px;box-sizing:border-box;border:solid 1px #b8bfca;padding:10px 16px;line-height:20px;resize: none;border-radius: 2px;outline: none;}
-    .container .content .section.address-none .label{width: 90px;float: left;}
-    .container .content .section.address-none .label.tex{height: 114px;}
-    .container .content .section.address-none .label p{height:auto;line-height:36px;font-size: 14px;text-align: right;}
-    .container .content .section.address-none .label p em{font-style:normal;color:#f94b4b;margin:0 5px}
-    .container .content .section.address-none .form-input{width: 496px;float: left;}
-    .container .content .section.address-none .address-sub{width: 456px; float: right;height: 100%;position: relative;box-sizing: border-box;padding: 98px 90px;}
-    .container .content .section.address-none .address-sub:before{content:'';width: 1px;height: 90px;border-left: 1px dashed #b8bfca;position: absolute;left: 0;top: 50%;margin-top: -45px;}
-    .container .content .section.address-none .address-sub .checked{width: 100%;height: 16px;line-height: 16px;float: left;cursor: pointer;}
-    .container .content .section.address-none .address-sub .checked .icon{width:16px;height: 16px;display: block;float: left;margin-right: 5px;}
-    .container .content .section.address-none .address-sub .checked .icon-weigouxuan:before{width:16px;height: 16px;background-position: -288px 0;}
-    .container .content .section.address-none .address-sub .checked .icon-gouxuan:before{width:16px;height: 16px;background-position: -262px 0;}
-    .container .content .section.address-none .address-sub .checked span{font-size: 14px;color:#1890f9;}
-    .container .content .section.address-none .address-sub .button{width: 100%;height: 36px;float: left;margin-top: 35px;}
-    .container .content .section.address-none .address-sub .btn{width: 128px;height: 34px;float: left;line-height: 34px;text-align: center;font-size: 14px;display: block;border: 1px solid #E15616;}
-    .container .content .section.address-none .address-sub .btn-confirm{background-color: #E15616;color: #ffffff;margin-right: 15px;}
-    .container .content .section.address-none .address-sub .btn-cancel{background-color: #FFE6DC;color: #E15616;}
-
-    .container .content .section.address{height: 123px;}
-    .container .content .section.address .address-info{width: 810px;float: left;height: 100%;}
-    .container .content .section.address .address-info .info-p{line-height: 91px;text-align: center;color: #b8bfca;}
-    .container .content .section.address .address-info .info-left{width: 580px;float: left;height: 100%;}
-    .container .content .section.address .address-info .info-left p{width: 100%;height: 30px;line-height: 30px;font-size: 14px;color: #22272e;}
-    .container .content .section.address .address-info .info-left p .label{color: #627386;margin-right: 5px;display: inline-block;min-width: 60px;height:30px;text-align: justify;vertical-align: top;}
-    .container .content .section.address .address-info .info-left p .label:after{content: '';display: inline-block;width: 100%;}
-    .container .content .section.address .address-info .info-right{width: 150px;height: 100%;float: right;}
-    .container .content .section.address .address-info .info-right .info-top{height: 24px;width: 100%;line-height: 24px;font-size: 14px;}
-    .container .content .section.address .address-info .info-right .info-top .defau{height: 100%;float: left;}
-    .container .content .section.address .address-info .info-right .icon{height: 24px;width: 24px;display: block;float: left;margin-right: 5px;}
-    .container .content .section.address .address-info .info-right .icon:before{height: 24px;width: 24px;background-position: -255px -330px;}
-    .container .content .section.address .address-info .info-right .span-s{display: inline-block;height: 24px;width: 73px;background-color: #f94b4b;font-size: 12px;color: #FFFFFF;border-radius: 12px;text-align: center;}
-    .container .content .section.address .address-info .info-right a{display: inline-block;height: 24px;font-size: 14px;color: #1890f9;margin-left: 8px;float: left}
-    .container .content .section.address .address-sub{width: 320px; float: right;height: 100%;position: relative;box-sizing: border-box;padding:0 96px;}
-    .container .content .section.address .address-sub.add{padding:27px 96px;}
-    .container .content .section.address .address-sub:before{content:'';width: 1px;height: 90px;border-left: 1px dashed #b8bfca;position: absolute;left: 0;top: 0;}
-    .container .content .section.address .address-sub .btn{width: 128px;height: 34px;float: left;line-height: 34px;text-align: center;font-size: 14px;display: block;border: 1px solid #FFFFFF;margin: 3px 0}
-    .container .content .section.address .address-sub .btn-none{color: #1890f9;}
-    .container .content .section.address .address-sub .btn-confirm{background-color: #FFE6DC;color: #E15616;border-color: #E15616;}
-    /*  选择地址  */
-    .model-address-content{width: 100%;height: 100%;position: fixed;top: 0;left: 0;background-color: rgba(0,0,0,.4);}
-    .model-address-content .model-content{width: 650px;height: 593px;padding:0 0 16px 0;position: absolute;top: 0;left: 0;right:0;bottom:0;background-color:#FFFFFF;margin: auto;border-radius: 2px;box-sizing: border-box;}
-    .model-address-content .title{width: 100%;height: 42px;float: left;box-sizing: border-box;position: relative;padding: 0 16px;border-bottom: 1px solid #e2e7ef;}
-    .model-address-content .title p{font-size: 14px;line-height: 42px;text-align: left;color: #22272e;float: left;}
-    .model-address-content .title .icon{width: 16px;height: 16px;display: block;position: absolute;right:0;top: 0;cursor: pointer;padding: 10px;}
-    .model-address-content .title .icon:before{width: 16px;height: 16px;background-position: -318px 0;}
-    .model-address-content .content{width:100%;height: 499px;box-sizing: border-box;padding: 16px;float: left;overflow: hidden;overflow-y: auto;}
-    .model-address-content .content .list{cursor:pointer;position: relative;width:100%;height: 145px;box-sizing: border-box;padding: 16px;float: left;margin-bottom: 16px;border: 1px solid #b8bfca;border-radius: 2px;}
-    .model-address-content .content .list .list-left{width: 100%;height:auto;float: left}
-    .model-address-content .content .list .list-right{width:auto;height:24px;position: absolute;top: 16px;right: 12px;}
-    .model-address-content .content .list p{width: 100%;height: 36px;line-height: 36px;font-size: 14px;color: #22272e;}
-    .model-address-content .content .list p .label{color: #627386;margin-right: 5px;display: inline-block;min-width: 60px;height:36px;text-align: justify;vertical-align: top;}
-    .model-address-content .content .list p .label:after{content: '';display: inline-block;width: 100%;}
-    .model-address-content .content .list .list-defalut{float: left;}
-    .model-address-content .content .list .list-btn{background-color: #ffe6dc;border-radius: 12px;border: 1px solid #E15616;color:#E15616;float: left;display: inline-block;width:48px;height: 22px;font-size: 12px;margin-left: 8px;text-align: center;line-height: 22px;}
-    .model-address-content .content .list .list-defalut .icon{height: 24px;width: 24px;display: block;float: left;margin-right: 5px;}
-    .model-address-content .content .list .list-defalut .icon:before{height: 24px;width: 24px;background-position: -255px -330px;}
-    .model-address-content .content .list .list-defalut .span-s{display: inline-block;height: 24px;line-height:24px;padding: 0 15px;background-color: #f94b4b;font-size: 12px;color: #FFFFFF;border-radius: 12px;text-align: center;cursor: pointer;}
-    .model-address-content .content .list .seclet{width: 40px;height: 40px;position: absolute;bottom: 0;right: 0;opacity: 0;}
-    .model-address-content .content .list .seclet .icon{width:40px;height: 40px;display: block;}
-    .model-address-content .content .list .seclet .icon:before{width: 40px;height: 40px;background-position: -308px -453px;}
-    .model-address-content .content .list.checked{border-color: #E15616;}
-    .model-address-content .content .list.checked .seclet{opacity: 1;}
-    .model-address-content .button{width: 100%;height: 36px;float: left;box-sizing: border-box;padding: 0 187px;}
-    .model-address-content .button .btn{width: 128px;height: 34px;float: left;line-height: 34px;text-align: center;font-size: 14px;display: block;border: 1px solid #E15616;}
-    .model-address-content .button .btn-confirm{background-color: #E15616;color: #ffffff;margin-right: 15px;}
-    .model-address-content .button .btn-cancel{background-color: #FFE6DC;color: #E15616;}
-    /* 进货单 */
-    .container .section.product{}
-    .container .section.product .title{width: 100%;height: 50px;line-height: 50px;box-sizing: border-box;float: left;font-size: 14px;line-height: 40px;border-bottom: 1px solid #efefef;}
-    .container .section.product .tr {float: left;}
-    .container .section.product .tr-info {width: 440px;}
-    .container .section.product .tr-amount {width: 240px;text-align: center;}
-    .container .section.product .tr-price {width: 240px;text-align: center;}
-    .container .section.product .tr-sum {width: 200px;text-align: center;}
-    .container .section.product .good_content{width: 100%;height: auto;float: left;}
-    .container .section.product .good_main{width: 100%;height: auto;}
-    .container .section.product .good_main .main_title{width: 100%;height: 50px;font-size: 16px;text-align: left;line-height: 50px;color: #22272e;}
-    .container .section.product .good_main .main_content_ul{width: 100%;height: 100px;padding: 12px 0;border-bottom: 1px solid #F7F7F7;}
-    .container .section.product .good_main .main_content .th{height: 100px;line-height: 100px;float: left;}
-    .container .section.product .good_main .main_content .th-info{width: 440px;}
-    .container .section.product .good_main .main_content .th-info .th-name{    float: left;width: 265px;padding: 10px;line-height: 40px;margin-left: 10px;display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;overflow: hidden;text-align: justify;}
-    .container .section.product .good_main .main_content .th-info .th-image{width: 100px;height: 100px;border: 1px solid #F7F7F7;float: left;}
-    .container .section.product .good_main .main_content .th-info .th-image img{width: 100px;height: 100px;display: block;}
-    .container .section.product .good_main .main_content .th-amount {width: 240px;text-align: center;}
-    .container .section.product .good_main .main_content .th-price {width: 240px;text-align: center;}
-    .container .section.product .good_main .main_content .th-sum {width: 200px;text-align: center;}
-    .container .section.product .good_main .main_content_bt{width: 100%;height: 50px;font-size: 16px;text-align: right;line-height: 50px;color: #22272e;}
-    .container .section.product .good_main .main_content_bt span{color: #f94b4b;}
-    .container .section.product .main_footer{line-height: 42px;font-size: 14px;color: #333333;}
-    .container .section.product .main_footer .main_input {width: 1094px;height: 42px;background: #FFF;border-radius: 3px;border: none;padding: 0 10px;font-size: 14px;border: solid 1px #b8bfca;}
-    /* 发票信息   */
-    .container .section.invoice{}
-    .container .section.invoice .invoice-tabs{width: 100%;height: 38px;float: left;margin-bottom: 10px;}
-    .container .section.invoice .invoice-tabs span{display: inline-block;float: left;line-height: 36px;font-size: 14px;color: #333;}
-    .container .section.invoice .invoice-tabs .tab-radio{float: left;margin-left: 10px;}
-    .container .section.invoice .tab-radio .diyBox{width:180px;height:36px;margin-right:10px;line-height:34px;box-sizing:border-box;font-size:14px;text-align:center;display:inline-block}
-    .container .section.invoice .tab-radio .diyBox i {display: block;font-style: normal;cursor: pointer;width: 100%;height: 100%;position: relative;overflow: hidden;border-radius: 2px;background: #FFF;border: 1px solid #b8bfca;color: #627386;}
-    .container .section.invoice .tab-radio .diyBox.second{width:100px;}
-    .container .section.invoice .tab-radio .diyBox input{display:none}
-    .container .section.invoice .tab-radio .diyBox i:before{position:absolute;right:0;bottom:0;display:none;width:20px;height:20px;background-position:-208px -253px}
-    .container .section.invoice .tab-radio .diyBox input:checked + i{border-color:#e15616;color:#e15616}
-    .container .section.invoice .tab-radio .diyBox input:checked + i:before{display:block}
-    .container .section.invoice .invoice-content{width: 100%;height:auto;float: left;}
-    .container .section.invoice .main_content{width: 100%;height:auto;float: left;margin: 10px 0;}
-    .container .section.invoice .main_content span{display: inline-block;float: left;line-height: 36px;font-size: 14px;color: #333;}
-    .container .section.invoice .main_content .main_item{display: inline-block;float: left;line-height: 36px;font-size: 14px;color: #333;margin-left: 10px;}
-    .container .section.invoice .main_content .tab-radio{float: left;margin-left: 10px;}
-    .container .section.invoice .main_content .main_item_conten{width: 100%;height:auto;padding-left: 70px;box-sizing: border-box;}
-    .container .section.invoice .main_content .group-from{width: 100%;height: 38px;margin:10px 0;}
-    .container .section.invoice .main_content .label-input{width:540px;height: 36px;background: #FFF;border-radius: 3px;font-size: 14px;border: solid 1px #b8bfca;padding: 0 10px;line-height: 36px;}
-    .container .section.invoice .invoice-main{width: 100%;height:auto;float: left;}
-    .container .section.invoice .invoice-from{width: 100%;height:38px;float: left;margin: 10px 0;}
-    .container .section.invoice .invoice-from .label{width: 104px;height:38px;line-height:38px;float: left;display: inline-block;font-size: 14px;color: #627386;text-align: right;margin-right: 5px;}
-    .container .section.invoice .invoice-from .label-input{width:500px;height: 36px;background: #FFF;border-radius: 3px;font-size: 14px;border: solid 1px #b8bfca;padding: 0 10px;line-height: 36px;}
-    /*余额抵扣*/
-    .container .section.userMoney{padding:17px 16px;}
-    .container .section.userMoney .icon{width: 16px;height: 16px;display: block;float: left;margin-right: 5px;cursor: pointer;}
-    .container .section.userMoney .icon-weigouxuan:before{width: 16px;height: 16px;background-position: -236px 0;}
-    .container .section.userMoney .icon-gouxuan:before{width: 16px;height: 16px;background-position: -210px 0;}
-    .container .section.userMoney .text{float: left;height: 16px;line-height: 16px;font-size: 14px;color: #333;margin-right: 15px;}
-    .container .section.userMoney .text .red{color: #FF2A2A;}
-    .container .section.footer .footer_content{width: 340px;height: 100%;float: right;}
-    .footer_content .footer_left{height: 100%;}
-    .footer_content .footer_left p{height: 36px;line-height: 36px;font-size: 14px;color: #333;text-align: right;}
-    .footer_content .footer_right p{height: 36px;line-height: 36px;font-size: 14px;color: #333;text-align: right;}
-    .footer_content .footer_right p.red{color: #FF2A2A;}
-    .footer_content .footer_right .select{height: 36px;}
-    .footer_content .footer_right .select select{cursor: pointer;width: 80px;height: 30px;border: 1px solid #CECECE;line-height: 30px;color: #2A81FF;font-size: 14px;margin-top: 3px;float: right;}
-    /* 底部按钮 */
-    .footer_button{width: 100%;background: #FFFFFF;margin-bottom: 20px;float: left;box-sizing: border-box;padding:10px 16px;}
-    .footer_button .footer_inner{width: 1152px;margin: 0 auto;padding: 0;}
-    .footer_button .button_back .back{display: block;line-height: 54px;font-size: 16px;color: #E15616;position: relative;padding-left: 30px;}
-    .footer_button .button_back .back .icon{width: 20px;height: 20px;display: block;position: absolute;left: 0;top: 5px;}
-    .footer_button .button_back .back .icon:before{width: 20px;height: 20px;background-position:-345px 0;}
-    .footer_button .button_confim{width: 410px;}
-    .footer_button .button_confim p{float: left;line-height: 50px;font-size: 14px;color: #333;}
-    .footer_button .button_confim p.red{color: #FF2A2A;}
-    .footer_button .confimBtn{width: 232px;height: 50px;border-radius: 2px;display: block;line-height: 50px;text-align: center;font-size: 14px;float: right;background: #e15616;color: #FFF;cursor: pointer;display: block;}
-    .footer_button .confimBtn.active{background: #EFEFEF;color:#999999;}
-
-
-
-
-
-
-
-
-}
-
-/**
-* 移动端
-*/
-@media screen and (max-width:768px){
-    .loading{box-sizing:border-box;padding:20vw 0;text-align:center}
-    .empty{box-sizing:border-box;padding:15vw 0;text-align:center;color:#4A4F58;line-height:8vw;font-size:3.4vw}
-    .empty img{width:40vw;height:40vw}
-    .empty a{color:#E15616}
-    .pageTitle .step{width:100%;height:12.4vw;line-height:12.4vw;background:#FFF;color:#9AA5B5;font-size:3.1vw;text-align:center;}
-    .pageTitle .step span{display:inline-block;height:4.2vw;line-height:4.2vw;vertical-align:middle;position:relative;padding-left:6.4vw}
-    .pageTitle .step span:before{font-style:normal;font-size:5.2vw;vertical-align:text-top;margin-right:1vw}
-    .pageTitle .step span:nth-of-type(1):before{content:'\2776'}
-    .pageTitle .step span:nth-of-type(2):before{content:'\2777'}
-    .pageTitle .step span:nth-of-type(3):before{content:'\2778'}
-    .pageTitle .step span:after{position:absolute;left:0;top:2.05vw;content:'';width:5.4vw;border-top:1px solid #9AA5B5}
-    .pageTitle .step span:first-child{padding-left:0}
-    .pageTitle .step span:first-child:after{display:none}
-    .pageTitle .step span.on{color:#E15616}
-    .pageTitle h1{color:#2D3036;font-size:3.7vw;font-weight:bold;height:10vw;line-height:10vw;padding:0 3.3vw;}
-    .listWrap .supplierItem{width:100%;background:#FFF;color:#9aa5b5;font-size:3.4vw;margin-bottom:1.2vw;}
-    .listWrap .supplierItem.disable{background:#f1f0f5}
-    .listWrap .supplierItem em{font-style: normal}
-    .listWrap .supplierTit{border-bottom:1px solid #F7F7F7;height:7.4vw;line-height:7.4vw;padding:1.3vw 3.3vw;}
-    .listWrap .cartItem{padding:2.2vw 3.3vw;height:24vw;line-height:24vw;position:relative;}
-    .listWrap .supplierBtn{border-top:1px solid #F7F7F7;width:93vw;margin:0 auto;height:10.6vw;line-height:10.6vw;color:#22272e;font-size:3.4vw;text-align:right;}
-    .listWrap .supplierBtn em {color: #f55c5c;}
-    .listWrap .supplierItem .c0{float:left;width:9.6vw;text-align:center}
-    .listWrap .check{width:3.5vw;height:3.5vw;line-height:3.5vw;vertical-align:middle}
-    .listWrap .supplierItem .c1{float:left;width:24vw}
-    .listWrap .supplierItem .image{display:block;box-sizing:border-box;width:24vw;height:24vw;border:1px solid #F7F7F7}
-    .listWrap .supplierTit .img{width:7.4vw;height:7.4vw;border:1px solid #F7F7F7;margin-right:2vw}
-    .listWrap .supplierTit .name{color:#9aa5b5}
-    .listWrap .cartItem .c2,.listWrap .cartItem .c3,.listWrap .cartItem .c4,.listWrap .cartItem .c10{position:absolute;left:39vw;line-height:5vw}
-    .listWrap .cartItem .c2{top:2.2vw;height:10vw;width:58vw;}
-    .listWrap .cartItem .c2 .name{color:#22272e;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
-    .listWrap .cartItem .c3{top:14vw;height:5vw}
-    .listWrap .cartItem .c4{bottom:2.2vw;height:5vw}
-    .listWrap .cartItem .c5{position:absolute;right:3.3vw;bottom:2.2vw;height:6.4vw;line-height:6.4vw}
-    .listWrap .cartItem .c10{color:#f94b4b;top:16vw;height:5vw}
-    .listWrap .cartItem .number{display:inline-block;width:26.6vw;line-height:6.4vw;height:6.4vw;box-sizing:border-box;border:1px solid #FFE6DC;border-radius:2px;font-size:0;white-space:nowrap;text-align:center;overflow:hidden;vertical-align:top}
-    .listWrap .cartItem .number>em{display:inline-block;width:6.4vw;height:6.4vw;background:#FFE6DC;font-size:4vw;line-height:6vw;vertical-align:top}
-    .listWrap .cartItem .number input{width:13.5vw;border:none;line-height:6vw;vertical-align:top;text-align:center;color:#E15616;font-size:3.4vw}
-    .invalidTit{height:9vw;line-height:9vw;font-size:3.7vw;padding:0 3.3vw;}
-    .invalidTit .tit{color:#22272e;float:left}
-    .invalidTit .delAll{color:#e15616;float:right}
-    .invalidTit .tit em{font-style:normal;color:#e15616}
-    .summaryWrap{width:100%;background:#FFF;margin:1.4vw 0}
-    .summaryWrap .summary{width:93vw;margin:0 auto;font-size:3.4vw;padding-bottom:3.3vw}
-    .summaryWrap .summary em{font-style:normal}
-    .summaryWrap .summary .left{height:9.4vw;line-height:9.4vw}
-    .summaryWrap .summary .right{height:11.2vw;line-height:11.2vw}
-    .summaryWrap .summary .check{width:3.5vw;height:3.5vw;line-height:3.5vw;vertical-align:top;margin:3vw 3vw 0 3.3vw}
-    .summaryWrap .summary .delete{width:12vw;height:6vw;line-height:6vw;display:inline-block;text-align:center;color:#f55c5c}
-    .summaryWrap .summary .right .item{position:relative;text-align:right;margin-left:6.8vw}
-    .summaryWrap .summary .right .item em{color:#f55c5c}
-    .summaryWrap .summary .submit{display:inline-block;width:30.4vw;height:11.2vw;line-height:11.2vw;text-align:center;background-color:#e15616;border-radius:2px;color:#FFF}
-    .summaryWrap.fixed{position:fixed;bottom:0;left:0;margin:0;z-index:99999;box-shadow:20px 20px 102px rgba(0,0,0,0.1)}
-    .summaryWrap .summary .item .del{position:absolute;right:0;top:-4vw;cursor:pointer;height:6vw;font-size:3.1vw}
-    .summaryWrap .summary .item .del em{position:absolute;top:0;left:100%;height:5vw;white-space:nowrap;background:#ff4500;line-height:5vw;color:#FFF;padding:0 1vw;border-radius:2px}
-
-}
-

+ 285 - 0
src/main/resources/static/css/shopping/shopping.css

@@ -0,0 +1,285 @@
+@charset "utf-8";
+li{list-style:none}
+.addressWrap input[type=checkbox]:after{color:#1890f9;border-color:#1890f9;}
+.addressWrap input[type=checkbox]:checked:after{background:#1890f9;border-color:#1890f9;color:#FFF;}
+/**
+ * PC端
+ */
+@media screen and (min-width:768px){
+    input[type="number"]{-moz-appearance:none;-webkit-appearance:none}
+    input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance:none}
+    .loading{box-sizing:border-box;padding:200px 0;text-align:center}
+    .empty{box-sizing:border-box;padding:100px 0;text-align:center;color:#4A4F58;line-height:30px;font-size:16px}
+    .empty img{width:180px;height:180px}
+    .empty a{color:#E15616}
+    .pageTitle{height:57px;line-height:57px;padding-top:16px}
+    .pageTitle h1{color:#2D3036;font-size:16px;font-weight:bold;float:left}
+    .pageTitle h1 span{color:#627386;font-size:12px;font-weight:normal;margin-left:10px}
+    h2.title{height:36px;font-size:16px;padding:0 16px;line-height:36px;color:#22272e;font-weight:normal;clear:both}
+    .pageTitle .step{float:right;color:#999999;font-size:14px;height:44px;line-height:44px}
+    .pageTitle .step span{display:inline-block;height:20px;line-height:20px;vertical-align:middle;position:relative;padding-right:55px;}
+    .pageTitle .step span:before{font-style:normal;font-size:20px;vertical-align:text-top;margin-right:5px}
+    .pageTitle .step span:nth-of-type(1):before{content:'\2776'}
+    .pageTitle .step span:nth-of-type(2):before{content:'\2777'}
+    .pageTitle .step span:nth-of-type(3):before{content:'\2778'}
+    .pageTitle .step span:after{position:absolute;right:0;top:10px;content:'';width:50px;border-top:1px solid #9AA5B5;}
+    .pageTitle .step span:nth-of-type(3){padding-right:0}
+    .pageTitle .step span:nth-of-type(3):after{display:none}
+    .pageTitle .step span.on,.pageTitle .step span.prev{color:#E15616}
+    .pageTitle .step span.prev:after{border-color:#E15616;}
+    .listWrap .cartTit,.listWrap .supplierItem,.addressWrap,.balanceWrap,.invoiceWrap,.totalPriceWrap{box-sizing:border-box;padding:0 14px;text-align:center;width:100%;background:#FFF;margin-bottom:8px;box-shadow:0px 3px 6px rgba(0,0,0,0.07)}
+    /* 商品清单 */
+    .listWrap{width:1184px}
+    .listWrap .supplierItem.disable{background:#f1f0f5}
+    .listWrap .supplierItem em{font-style:normal}
+    .listWrap .supplierTit{border-bottom:1px solid #F7F7F7;height:60px;line-height:60px;text-align:left}
+    .listWrap .supplierTit .img{width:auto;height:32px;border:1px solid #F7F7F7;margin-right:10px}
+    .listWrap .supplierTit .name{color:#9aa5b5}
+    .listWrap .cartTit,.listWrap .supplierBtn{height:60px;line-height:60px}
+    .listWrap .cartTit{color:#333333}
+    .listWrap .supplierItem,.listWrap .supplierBtn{color:#22272E}
+    .listWrap .supplierBtn{border-top:1px solid #F5F5F5;text-align:right}
+    .listWrap .supplierBtn em{color:#f55c5c;font-size:16px}
+    .listWrap .supplierBtn .note{float:left;}
+    .listWrap .supplierBtn .note input{width:600px;height:36px;line-height:36px;background:#F7F7F7;border-radius:5px;border:none;padding:0 10px;font-size:14px}
+    .listWrap .cartItem{width:100%;height:100px;line-height:100px;margin-top:10px;padding:14px 0;font-size:16px}
+    .listWrap .cartItem:first-child{margin-top:0}
+    .listWrap .cartItem .c2{text-align:left}
+    .listWrap .cartItem>div>*{vertical-align:middle}
+    .listWrap .c0{float:left;width:34px;text-align:left}
+    .listWrap .c1{float:left;width:102px;height:100%}
+    .listWrap .c2{float:left;width:400px}
+    .listWrap .c3{float:left;width:200px}
+    .listWrap .c4{float:left;width:142px}
+    .listWrap .c5{float:left;width:185px;position:relative}
+    .listWrap .c6{float:left;width:142px}
+    .listWrap .c7{float:right;width:118px}
+    .listWrap .c10{float:left;width:495px}
+    .listWrap .c11{float:left;width:480px;text-align:left}
+    .listWrap .check{width:16px;height:16px;line-height:14px;vertical-align:middle}
+    .listWrap .image{display:block;width:100px;height:100px;border:1px solid #F7F7F7}
+    .listWrap .name,.listWrap .unit{line-height:20px;display:inline-block;max-height:100px;overflow:hidden;vertical-align:middle}
+    .listWrap .cartItem .name{padding-left:14px}
+    .listWrap .cartItem .name .tag{display:inline-block;background:#f94b4b;color:#FFF;font-size:12px;padding:0 6px;height:20px;line-height:20px;border-radius:2px;font-style:normal;margin-right:5px}
+    .listWrap .c7 em,.listWrap .c10 em{color:#f94b4b;font-style:normal}
+    .listWrap .number{display:inline-block;width:96px;line-height:24px;height:24px;box-sizing:border-box;border:1px solid #FFE6DC;border-radius:2px;font-size:0;white-space:nowrap;text-align:center;overflow:hidden;vertical-align:top}
+    .listWrap .number>em{display:inline-block;width:24px;height:22px;background:#FFE6DC;font-size:20px;font-style:normal;line-height:20px;vertical-align:top;cursor:pointer}
+    .listWrap .number input{width:48px;border:none;line-height:22px;font-size:14px;vertical-align:top;text-align:center;color:#E15616}
+    .listWrap .del{color:#9AA5B5;font-size:20px;position:relative;cursor:pointer;display:inline-block;height:40px;line-height:40px;width:30px}
+    .listWrap .del .tips{position:absolute;top:40px;left:4px;opacity:0;white-space:nowrap;background-color:#f94b4b;color:#FFF;border-radius:3px;line-height:30px;font-size:12px;text-align:center;display:inline-block;transition:all .8s;padding:0 10px;font-style:normal}
+    .listWrap .del .tips:before{content:"";width:10px;height:10px;background:#f94b4b;position:absolute;top:-3px;left:6px;transform:rotate(45deg)}
+    .listWrap .del:hover{color:#f94b4b}
+    .listWrap .del:hover .tips{opacity:1}
+    .listWrap .price{position:relative;display:inline-block;line-height:24px}
+    .listWrap .price>em{font-style:normal;font-size:16px;display:inline-block;width:100%}
+    .listWrap .price>del{font-size:16px;display:inline-block;width:100%}
+    .invalidTit{height:44px;line-height:44px;padding-top:16px;font-size:16px}
+    .invalidTit .tit{color:#22272e;float:left}
+    .invalidTit .delAll{color:#e15616;float:right;cursor:pointer}
+    .invalidTit .tit em{font-style:normal;color:#e15616}
+    /* 底部结算 */
+    .summaryWrap{width:100%;background:#FFF;margin:16px 0 -29px 0;position:relative}
+    .summaryWrap .summary{width:1184px;margin:0 auto;font-size:18px;padding:11px 0;height:50px;line-height:50px;text-align:right}
+    .summaryWrap .summary em{font-style:normal}
+    .summaryWrap .summary .left,.summaryWrap .summary .right{display:inline}
+    .summaryWrap .summary .left .item:first-child{float:left}
+    .summaryWrap .summary .item{display:inline-block;margin-right:32px;position:relative}
+    .summaryWrap .summary .check{width:14px;height:14px;line-height:14px;vertical-align:top;margin:18px 16px 0 16px}
+    .summaryWrap .summary .delete{margin-left:16px;color:#f55c5c}
+    .summaryWrap .summary .right .item{position:relative;text-align:right}
+    .summaryWrap .summary .right .item em{color:#f55c5c}
+    .summaryWrap .summary .submit{display:inline-block;width:232px;height:50px;line-height:50px;text-align:center;background-color:#e15616;border-radius:2px;color:#FFF}
+    .summaryWrap.fixed{position:fixed;bottom:0;left:0;margin:0;z-index:99999;box-shadow:20px 20px 102px rgba(0,0,0,0.1)}
+    .summaryWrap .summary .item .del{position:absolute;right:0;top:-20px;cursor:pointer;height:24px;font-size:14px}
+    .summaryWrap .summary .item .del em{position:absolute;top:-12px;height:24px;white-space:nowrap;right:0;background:#ff4500;line-height:24px;color:#FFF;padding:0 12px;border-radius:2px}
+    .summaryWrap .summary .item .del em:before{content:'';width:0;height:0;border-width:5px 5px 0 5px;border-style:solid;border-color:#ff4500 transparent;position:absolute;top:24px;left:50%}
+    .summaryWrap .summary .back{color:#f55c5c}
+    .summaryWrap .summary .back .icon:before{width:20px;height:20px;background-position:-345px 0;margin-right:15px}
+    /* 收货地址 */
+    .addressWrap{padding:16px;position:relative}
+    .addressWrap .info{position:relative;width:810px;text-align:left}
+    .addressWrap .info>p{height:30px;line-height:30px;font-size:14px;color:#22272e}
+    .addressWrap .info>p .label{color:#627386;margin-right:5px;display:inline-block;min-width:60px;height:30px;text-align:justify;vertical-align:top}
+    .addressWrap .info>p .label:after{content:'';display:inline-block;width:100%}
+    .addressWrap .info .btnBox{height:24px;line-height:24px;font-size:14px;color:#1890f9;position:absolute;top:0;right:0}
+    .addressWrap .info .btnBox .default .icon:before{height:24px;width:24px;background-position:-255px -330px}
+    .addressWrap .info .btnBox .default span{display:inline-block;height:24px;background-color:#f94b4b;font-size:12px;color:#FFFFFF;border-radius:12px;text-align:center;vertical-align:top;padding:0 12px;margin-left:5px;cursor:pointer}
+    .addressWrap .info .btnBox .default a{display:inline-block;height:24px;line-height:24px;vertical-align:top;margin-left:15px;color:#1890f9}
+    .addressWrap .info .btnBox .group{position:absolute;right:-345px;top:0}
+    .addressWrap .btnBox .group{text-align:center;width:320px;height:92px;padding-top:5px;box-sizing:border-box;border-left:1px dashed #b8bfca}
+    .addressWrap .btnBox .group .btn{display:block;width:128px;height:34px;line-height:34px;margin:0 auto;text-align:center;font-size:14px;color:#1890f9;border:1px solid #FFFFFF}
+    .addressWrap .btnBox .group .btn.con{background-color:#FFE6DC;color:#E15616;border-color:#E15616}
+    .addressWrap .btnBox .group .btn.save{background-color:#E15616;color:#FFF;border-color:#E15616}
+    .addressWrap .formLine{padding-bottom:16px;font-size:14px;position:relative;padding-left:90px;text-align:left;width:526px}
+    .addressWrap .formLine .label{position:absolute;left:0;top:0;width:90px;text-align:right;line-height:36px;font-size:14px}
+    .addressWrap .formLine .checked{top:8px}
+    .addressWrap .formLine .errTips{display:none}
+    .addressWrap .formLine.error .errTips{display:block}
+    .addressWrap .formLine input{width:496px;height:36px}
+    .addressWrap .formLine textarea{width:496px;min-height:114px;padding:10px 16px;line-height:20px;resize:none}
+    .addressWrap .formLine select{width:162px;height:36px}
+    .addressWrap .form{position:relative}
+    .addressWrap .form .btnBox{position:absolute;left:686px;top:100px}
+    .addressWrap .form .btnBox .group{width:450px}
+    .addressWrap .form .btnBox .group .btn{display:inline-block}
+    .addressWrap .form .btnBox .group .btn.save{margin-right:15px}
+    .addressWrap .btnBox .group p:first-child{line-height:32px}
+    .addressWrap .btnBox .group .check{display:inline-block;height:18px;line-height:18px;color:#1890f9}
+    .addressWrap .btnBox .group .check input{vertical-align:top;margin-right:10px}
+    .model-address-content{width:100%;height:100%;position:fixed;top:0;left:0;background-color:rgba(0,0,0,.4)}
+    .model-address-content .model-content{width:650px;height:593px;padding:0 0 16px 0;position:absolute;top:0;left:0;right:0;bottom:0;background-color:#FFFFFF;margin:auto;border-radius:2px;box-sizing:border-box}
+    .model-address-content .title{width:100%;height:42px;float:left;box-sizing:border-box;position:relative;padding:0 16px;border-bottom:1px solid #e2e7ef}
+    .model-address-content .title p{font-size:14px;line-height:42px;text-align:left;color:#22272e;float:left}
+    .model-address-content .title .icon{width:16px;height:16px;display:block;position:absolute;right:0;top:0;cursor:pointer;padding:10px}
+    .model-address-content .title .icon:before{width:16px;height:16px;background-position:-318px 0}
+    .model-address-content .content{width:100%;height:499px;box-sizing:border-box;padding:16px;float:left;overflow:hidden;overflow-y:auto}
+    .model-address-content .content .list{cursor:pointer;position:relative;width:100%;height:145px;box-sizing:border-box;padding:16px;float:left;margin-bottom:16px;border:1px solid #b8bfca;border-radius:2px}
+    .model-address-content .content .list .list-left{width:100%;height:auto;float:left}
+    .model-address-content .content .list .list-right{width:auto;height:24px;position:absolute;top:16px;right:12px}
+    .model-address-content .content .list p{width:100%;height:36px;line-height:36px;font-size:14px;color:#22272e}
+    .model-address-content .content .list p .label{color:#627386;margin-right:5px;display:inline-block;min-width:60px;height:36px;text-align:justify;vertical-align:top}
+    .model-address-content .content .list p .label:after{content:'';display:inline-block;width:100%}
+    .model-address-content .content .list .list-defalut{float:left}
+    .model-address-content .content .list .list-btn{background-color:#ffe6dc;border-radius:12px;border:1px solid #E15616;color:#E15616;float:left;display:inline-block;width:48px;height:22px;font-size:12px;margin-left:8px;text-align:center;line-height:22px}
+    .model-address-content .content .list .list-defalut .icon{height:24px;width:24px;display:block;float:left;margin-right:5px}
+    .model-address-content .content .list .list-defalut .icon:before{height:24px;width:24px;background-position:-255px -330px}
+    .model-address-content .content .list .list-defalut .span-s{display:inline-block;height:24px;line-height:24px;padding:0 15px;background-color:#f94b4b;font-size:12px;color:#FFFFFF;border-radius:12px;text-align:center;cursor:pointer}
+    .model-address-content .content .list .list-defalut a{display:inline-block;height:24px;line-height:24px;vertical-align:top;margin-left:15px;color:#1890f9}
+    .model-address-content .content .list .seclet{width:40px;height:40px;position:absolute;bottom:0;right:0;opacity:0}
+    .model-address-content .content .list .seclet .icon{width:40px;height:40px;display:block}
+    .model-address-content .content .list .seclet .icon:before{width:40px;height:40px;background-position:-308px -453px}
+    .model-address-content .content .list.checked{border-color:#E15616}
+    .model-address-content .content .list.checked .seclet{opacity:1}
+    .model-address-content .button{width:100%;height:36px;float:left;box-sizing:border-box;padding:0 187px}
+    .model-address-content .button .btn{width:128px;height:34px;float:left;line-height:34px;text-align:center;font-size:14px;display:block;border:1px solid #E15616}
+    .model-address-content .button .btn-confirm{background-color:#E15616;color:#ffffff;margin-right:15px}
+    .model-address-content .button .btn-cancel{background-color:#FFE6DC;color:#E15616}
+    /* 余额 */
+    .balanceWrap{padding:16px;text-align:left}
+    .balanceWrap .text{display:inline-block;height:16px;line-height:16px;font-size:14px;color:#333;margin-left:15px;vertical-align:top}
+    .balanceWrap .text .red{color:#FF2A2A}
+    .totalPriceWrap{line-height:36px;text-align:right;padding:16px}
+    .totalPriceWrap span{display:inline-block;width:200px}
+    .totalPriceWrap span em{font-style:normal;color:#FF2A2A}
+    /* 发票 */
+    .invoiceWrap{padding:16px;text-align:left}
+    .invoiceForm .formLine{position:relative;padding-left:120px;width:456px}
+    .invoiceForm .formLine .label{position:absolute;left:0;top:0;width:120px;text-align:right;line-height:36px;font-size:14px}
+    .invoiceForm .formLine input[disabled]{border:none}
+
+}
+
+/**
+* 移动端
+*/
+@media screen and (max-width:768px){
+    .loading{box-sizing:border-box;padding:20vw 0;text-align:center}
+    .empty{box-sizing:border-box;padding:15vw 0;text-align:center;color:#4A4F58;line-height:8vw;font-size:3.4vw}
+    .empty img{width:40vw;height:40vw}
+    .empty a{color:#E15616}
+    .pageTitle .step{width:100%;height:12.4vw;line-height:12.4vw;background:#FFF;color:#9AA5B5;font-size:3.1vw;text-align:center}
+    .pageTitle .step span{display:inline-block;height:4.2vw;line-height:4.2vw;vertical-align:middle;position:relative;padding-right:6.4vw}
+    .pageTitle .step span:before{font-style:normal;font-size:5.2vw;vertical-align:text-top;margin-right:1vw}
+    .pageTitle .step span:nth-of-type(1):before{content:'\2776'}
+    .pageTitle .step span:nth-of-type(2):before{content:'\2777'}
+    .pageTitle .step span:nth-of-type(3):before{content:'\2778'}
+    .pageTitle .step span:after{position:absolute;right:0;top:2.05vw;content:'';width:5.4vw;border-top:1px solid #9AA5B5}
+    .pageTitle .step span:nth-of-type(3){padding-right:0}
+    .pageTitle .step span:nth-of-type(3):after{display:none}
+    .pageTitle .step span.on,.pageTitle .step span.prev{color:#E15616}
+    .pageTitle .step span.prev:after{border-color:#E15616;}
+    .pageTitle h1,h2.title{color:#2D3036;font-size:3.7vw;font-weight:bold;height:10vw;line-height:10vw;padding:0 3.3vw}
+    .pageTitle h1 span{font-size:3.1vw;font-weight:normal;color:#627386;margin-left:2vw}
+    .gradient i{width:5vw;height:1vw;background:linear-gradient(-45deg,#f9d14b 25%,#e15616 0,#e15616 50%,#1674e1 0,#1674e1 75%,#f9d14b 0)}
+    /* 商品清单 */
+    .listWrap .supplierItem{width:100%;background:#FFF;color:#9aa5b5;font-size:3.4vw;margin-bottom:1.2vw}
+    .listWrap .supplierItem.disable{background:#f1f0f5}
+    .listWrap .supplierItem em{font-style:normal}
+    .listWrap .supplierTit{border-bottom:1px solid #F7F7F7;height:7.4vw;line-height:7.4vw;padding:1.3vw 3.3vw}
+    .listWrap .cartItem{padding:2.2vw 3.3vw;height:24vw;line-height:24vw;position:relative}
+    .listWrap .supplierBtn{border-top:1px solid #F7F7F7;width:93vw;margin:0 auto;line-height:10.6vw;color:#22272e;font-size:3.4vw;text-align:right}
+    .listWrap .supplierBtn em{color:#f55c5c}
+    .listWrap .supplierBtn .note{text-align:left;white-space:nowrap;overflow:hidden}
+    .listWrap .supplierBtn .note input{width:79vw;height:8vw;line-height:8vw;background:#F7F7F7;border-radius:1vw;border:none;padding:0 2vw;font-size:3.1vw}
+    .listWrap .supplierItem .c0{float:left;width:9.6vw;text-align:center}
+    .listWrap .check{width:3.5vw;height:3.5vw;line-height:3.5vw;vertical-align:middle}
+    .listWrap .supplierItem .c1{float:left;width:24vw}
+    .listWrap .supplierItem .image{display:block;box-sizing:border-box;width:24vw;height:24vw;border:1px solid #F7F7F7}
+    .listWrap .supplierTit .img{width:7.4vw;height:7.4vw;border:1px solid #F7F7F7;margin-right:2vw}
+    .listWrap .supplierTit .name{color:#9aa5b5}
+    .listWrap .cartItem .c2,.listWrap .cartItem .c3,.listWrap .cartItem .c4,.listWrap .cartItem .c10{position:absolute;left:39vw;line-height:5vw}
+    .listWrap .cartItem .c2{top:2.2vw;height:10vw;width:58vw}
+    .listWrap .cartItem .c2 .name{color:#22272e;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
+    .listWrap .cartItem .c3{top:14vw;height:5vw}
+    .listWrap .cartItem .c4{bottom:2.2vw;height:5vw}
+    .listWrap .cartItem .c5{position:absolute;right:3.3vw;bottom:2.2vw;height:6.4vw;line-height:6.4vw}
+    .listWrap .cartItem .c10{color:#f94b4b;top:16vw;height:5vw}
+    .listWrap .cartItem .number{display:inline-block;width:26.6vw;line-height:6.4vw;height:6.4vw;box-sizing:border-box;border:1px solid #FFE6DC;border-radius:2px;font-size:0;white-space:nowrap;text-align:center;overflow:hidden;vertical-align:top}
+    .listWrap .cartItem .number>em{display:inline-block;width:6.4vw;height:6.4vw;background:#FFE6DC;font-size:4vw;line-height:6vw;vertical-align:top}
+    .listWrap .cartItem .number input{width:13.5vw;border:none;line-height:6vw;vertical-align:top;text-align:center;color:#E15616;font-size:3.4vw}
+    .invalidTit{height:9vw;line-height:9vw;font-size:3.7vw;padding:0 3.3vw}
+    .invalidTit .tit{color:#22272e;float:left}
+    .invalidTit .delAll{color:#e15616;float:right}
+    .invalidTit .tit em{font-style:normal;color:#e15616}
+    /* 底部结算 */
+    .summaryWrap{width:100%;background:#FFF;margin:1.4vw 0}
+    .summaryWrap .summary{width:93vw;margin:0 auto;font-size:3.4vw;padding:1.5vw 0}
+    .summaryWrap .summary em{font-style:normal}
+    .summaryWrap .summary .left{height:9.4vw;line-height:9.4vw}
+    .summaryWrap .summary .right{height:11.2vw;line-height:11.2vw}
+    .summaryWrap .summary .check{width:3.5vw;height:3.5vw;line-height:3.5vw;vertical-align:top;margin:3vw 3vw 0 3.3vw}
+    .summaryWrap .summary .delete{width:12vw;height:6vw;line-height:6vw;display:inline-block;text-align:center;color:#f55c5c}
+    .summaryWrap .summary .right .item{position:relative;text-align:right;margin-left:6.8vw}
+    .summaryWrap .summary .right .item em{color:#f55c5c}
+    .summaryWrap .summary .submit{display:inline-block;width:30.4vw;height:11.2vw;line-height:11.2vw;text-align:center;background-color:#e15616;border-radius:2px;color:#FFF}
+    .summaryWrap.fixed{position:fixed;bottom:0;left:0;margin:0;z-index:99999;box-shadow:20px 20px 102px rgba(0,0,0,0.1)}
+    .summaryWrap .summary .item .del{position:absolute;right:0;top:-4vw;cursor:pointer;height:6vw;font-size:3.1vw}
+    .summaryWrap .summary .item .del em{position:absolute;top:0;left:100%;height:5vw;white-space:nowrap;background:#ff4500;line-height:5vw;color:#FFF;padding:0 1vw;border-radius:2px}
+    /* 收货地址 */
+    .addressWrap{box-sizing:border-box;width:100%;position:relative}
+    .addressWrap .info,.model-address-content .content .list{line-height:7.4vw;background:#FFF;padding:3.3vw}
+    .model-address-content .content .list{margin-bottom:1vw;border-bottom:1px dashed #eee;position:relative}
+    .addressWrap .info>p,.model-address-content .content .list p{display:inline-block;min-width:49%;line-height:5vw;font-size:3.4vw;color:#22272e}
+    .addressWrap .info>p .label,.model-address-content .content .list p .label{color:#627386;margin-right:2vw}
+    .addressWrap .info .btnBox,.model-address-content .content .list-right{padding-top:2vw}
+    .addressWrap .info .btnBox .btn,.model-address-content .content .list-btn{display:inline-block;height:8vw;line-height:8vw;font-size:3.4vw;color:#1890f9;padding:0 3vw;border-radius:4.5vw;background-color:#e0f1ff;border:solid 1px #1890f9}
+    .addressWrap .info .btnBox .btn.con,.model-address-content .content .list-btn{background-color:#ffd8d8;color:#f94b4b;border-color:#f94b4b;margin-left:2vw}
+    .model-address-content .content .list-btn{padding:0 6vw}
+    .addressWrap .btnBox .group .btn.save{background-color:#E15616;color:#FFF;border-color:#E15616}
+    .addressWrap .info .btnBox .default,.model-address-content .content .list-defalut{height:8vw;line-height:8vw}
+    .addressWrap .info .btnBox .default .mIcon,.model-address-content .content .list-defalut .mIcon{display:inline-block;vertical-align:middle}
+    .addressWrap .info .btnBox .default .mIcon:before,.model-address-content .content .list-defalut .mIcon:before{height:8vw;width:8vw;background-position:-94.1vw -36.7vw}
+    .addressWrap .info .btnBox .default span,.model-address-content .content .list-defalut span{display:inline-block;height:6vw;line-height:6vw;font-size:3.1vw;color:#FFFFFF;background-color:#f94b4b;border-radius:3vw;padding:0 3vw;vertical-align:middle}
+    .addressWrap .info .btnBox .default a,.model-address-content .content .list-defalut a{display:inline-block;height:6vw;line-height:6vw;margin-left:2vw;color:#1890f9;vertical-align:middle}
+    .model-address-content .content .list-defalut a{padding:0;margin:0}
+    .addressWrap .formWrap,.model-address-content{position:fixed;bottom:0;left:0;width:100%;height:100%;margin:0 auto;background-color:rgba(74,79,88,.7);z-index:999}
+    .addressWrap .formWrap .form,.model-content{width:100%;box-sizing:border-box;position:absolute;bottom:0;left:0;background:#FFF;border-radius:2vw 2vw 0 0;padding:3.3vw}
+    .addressWrap .formWrap .form .group{text-align:center}
+    .addressWrap .btnBox .group p:first-child{margin-bottom:5vw}
+    .addressWrap .formWrap .form .group .check{display:inline-block;color:#1890f9}
+    .addressWrap .formWrap .form .group .check input{vertical-align:top;margin-right:2vw}
+    .addressWrap .formWrap .form .group .btn{display:inline-block;width:40vw;height:11vw;line-height:11vw;text-align:center;font-size:3.4vw;color:#e15616;border:1px solid #e15616;background:#FFE6DC}
+    .addressWrap .formWrap .form .group .btn.save{background-color:#E15616;color:#FFF;border-color:#E15616}
+    .model-address-content .content{max-height:80vh;box-sizing:border-box;overflow:hidden;overflow-y:auto}
+    .model-address-content .content .list .seclet{width:6vw;height:6vw;position:absolute;bottom:0;right:0;opacity:0}
+    .model-address-content .content .list .seclet .mIcon{width:6vw;height:6vw;display:block}
+    .model-address-content .content .list .seclet .mIcon:before{width:6vw;height:6vw;background-position:-75.1vw -7.8vw}
+    .model-address-content .content .list.checked{border:1px solid #E15616}
+    .model-address-content .content .list.checked .seclet{opacity:1}
+    .model-address-content .button{text-align:center;padding-top:3.3vw}
+    .model-address-content .button .btn{display:inline-block;width:40vw;height:11vw;line-height:11vw;text-align:center;font-size:3.4vw;color:#e15616;border:1px solid #e15616;background:#FFE6DC}
+    .model-address-content .button .btn-confirm{background-color:#E15616;color:#FFF;border-color:#E15616;margin-right:2vw}
+    /* 余额 */
+    .balanceWrap,.totalPriceWrap,.invoiceWrap{width:100%;box-sizing:border-box;background:#FFF;color:#9aa5b5;font-size:3.4vw;margin-bottom:1.2vw;text-align:left;padding:3.4vw}
+    .balanceWrap .text{display:inline-block;height:4vw;line-height:4vw;color:#333;margin-left:2vw;vertical-align:top;white-space:nowrap}
+    .balanceWrap .text .red{color:#FF2A2A}
+    .totalPriceWrap{color:#333;line-height:6vw;text-align:left;padding:3.3vw}
+    .totalPriceWrap span{width:46vw;float:right;text-align:right}
+    .totalPriceWrap span em{font-style:normal;color:#FF2A2A}
+    .totalPriceWrap:after,.invoiceWrap:after,.invoiceWrap .formLine:after{content:'';display:table;clear:both}
+    /* 发票 */
+    .invoiceWrap .formLine .diyBox {width: 28vw;}
+
+
+}
+

+ 61 - 367
src/main/resources/static/css/supplier-center/order/delivery.css

@@ -1,375 +1,69 @@
 @media screen and (min-width:768px) {
-.crumbs{
-    font-size: 16px;
-    color: #22272e
-}
-.right{
-    width: 968px;
-    float: right;
-}
-.userinfo{
-    padding: 5px 20px;
-    background: #fff;
-    box-shadow: 0px 3px 6px 0px
-		rgba(0, 0, 0, 0.07);
-}
-.info{
-    height: 56px;
-    line-height: 56px;
-    border-bottom: solid 1px #e2e7ef;
-    font-size: 16px;
-    color: #22272e;
-    overflow: hidden
-}
-.comback{
-    width: 90px;
-    height: 36px;
-    background-color: #ffe6dc;
-    border-radius: 2px;
-    border: solid 1px #e15616;
-    float: right;
-    line-height: 36px;
-    margin-top: 10px;
-    cursor: pointer;
-    color: #e15616;
-}
-.userinfo .user p{
-    display: inline-block;
-    color: #627386;
-    margin: 15px 45px 15px 0px;
-}
-.userinfo .user p span{
-    color: #22272e;
-}
-.address{
-    margin-bottom: 15px;
-    color: #627386;
-}
-.address span{
-    color: #22272e;
-}
-.goods-info{
-    margin-top: 30px;
-    box-shadow: 0px 3px 6px 0px
-		rgba(0, 0, 0, 0.07);
-}
-.protitle{
-    font-size: 16px;
-    margin: 15px 20px;
-    color: #22272e
-}
-.goods_img{
-    width: 100px;
-	height: 100px;
-	border: solid 1px #e2e7ef;
-    float: left
-}
-.goods_img img{
-    width: 100%;
-    height: 100%;
-}
-.goods-list{
-    overflow: hidden;
-    height: 136px;
-    background: #fff;
-    padding-top: 10px
-}
-.goods-btn{
-    float: left;
-    width: 40px;
-    height: 100%;
-    position: relative;
-    margin-left: 20px;
-    line-height: 136px
-}
-.goods{
-    float: left;
-    margin-top: 15px;
-}
-.goods_item{
-    float: left;
-    margin-left: 15px;
-}
-.goods_item h3{
-    color: #22272e;
-    font-size: 16px;
-    text-overflow: ellipsis;
-    width: 500px;
-    white-space: nowrap
-}
-.goods_item p span{
-    color: #627386;
-    margin: 15px 30px 15px 0;
-    display: inline-block
-}
-.red{
-    color: #f94b4b;
-}
-.delivery-number{
-    color: #627386;
-}
-.sp-delivery-cal{
-    width: 24px;
-	height: 24px;
-    line-height:24px;
-    text-align: center;
-	background-color: #fef6f3;
-	border-radius: 2px;
-	border: solid 1px #ffe6dc;
-    display: inline-block;
-    vertical-align: middle;
-    cursor: pointer
-}
-.del-num{
-    line-height: 24px;
-    width: 48px;
-    height: 24px;
-    margin: 0 -5px;
-    border-left: 0;
-    border-right: 0;
-    outline: 0;
-    text-align: center;
-    border: solid 1px #ffe6dc;
-    vertical-align: middle;
-    color: #E15616;
-}
-input::-webkit-outer-spin-button,
-    input::-webkit-inner-spin-button {
-        -webkit-appearance: none;
-    }
-    input[type="number"]{
-        -moz-appearance: textfield;
-    }
-.allcheck{
-    height: 60px;
-    background: #fff;
-    font-size: 16px;
-    color: #22272e;
-    border-top: solid 1px #efefef
-}
-.delivery-button{
-    float: right;
-    margin: 10px;
-}
-.all-election{
-    float: left;
-    width: 60px;
-    height: 100%;
-    margin-left: 20px;
-    line-height: 60px;
-}
-.delivery-button button{
-    width: 90px;
-	height: 36px;
-	line-height: 36px;
-	text-align: center;
-	background-color: #ffe6dc;
-	border-radius: 2px;
-	border: solid 1px #e15616;
-	color: #e15616;
-	margin-right: 15px;
-	cursor: pointer;
-}
+    .crumbs{font-size: 16px;color: #22272e}
+    .userinfo{padding: 5px 20px;background: #fff;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .info{height: 56px;line-height: 56px;border-bottom: solid 1px #e2e7ef;font-size: 16px;color: #22272e;overflow: hidden}
+    .comback{width: 90px;height: 36px;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;float: right;line-height: 36px;margin-top: 10px;cursor: pointer;color: #e15616;}
+    .userinfo .user p{display: inline-block;color: #627386;margin: 15px 45px 15px 0px;}
+    .userinfo .user p span{color: #22272e;}
+    .address{margin-bottom: 15px;color: #627386;}
+    .address span{color: #22272e;}
+    .goods-info{margin-top: 30px;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .protitle{font-size: 16px;margin: 15px 20px;color: #22272e}
+    .goods_img{width: 100px;height: 100px;border: solid 1px #e2e7ef;float: left}
+    .goods_img img{width: 100%;height: 100%;}
+    .goods-list{overflow: hidden;height: 136px;background: #fff;padding-top: 10px}
+    .goods-btn{float: left;width: 40px;height: 100%;position: relative;margin-left: 20px;line-height: 136px}
+    .goods{float: left;margin-top: 15px;}
+    .goods_item{float: left;margin-left: 15px;}
+    .goods_item h3{color: #22272e;font-size: 16px;text-overflow: ellipsis;width: 500px;white-space: nowrap}
+    .goods_item p span{color: #627386;margin: 15px 30px 15px 0;display: inline-block}
+    .red{color: #f94b4b;}
+    .delivery-number{color: #627386;}
+    .sp-delivery-cal{width: 24px;height: 24px;line-height:24px;text-align: center;background-color: #fef6f3;border-radius: 2px;border: solid 1px #ffe6dc;display: inline-block;vertical-align: middle;cursor: pointer}
+    .del-num{line-height: 24px;width: 48px;height: 24px;margin: 0 -5px;border-left: 0;border-right: 0;outline: 0;text-align: center;border: solid 1px #ffe6dc;vertical-align: middle;color: #E15616;}
+    input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {-webkit-appearance: none;}
+    input[type="number"]{-moz-appearance: textfield;}
+    .allcheck{height: 60px;background: #fff;font-size: 16px;color: #22272e;border-top: solid 1px #efefef}
+    .delivery-button{float: right;margin: 10px;}
+    .all-election{float: left;width: 60px;height: 100%;margin-left: 20px;line-height: 60px;}
+    .delivery-button button{width: 90px;height: 36px;line-height: 36px;text-align: center;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;color: #e15616;margin-right: 15px;cursor: pointer;}
 }
 
 
 
 /*移动端*/
 @media screen and (max-width:768px) {
-.wrap_tittle {
-    height: 10.6vw;
-    line-height: 10.6vw;
-    background: #fff;
-    padding: 0 2.7vw;
-    font-size: 3.4vw;
-    color: #22272e;
-    border-bottom: solid .27vw #e2e7ef;
-}
-.mIcon.wrap_tittle:before {
-    width: 6.7vw;
-    height: 6.7vw;
-    background-position: -50.7vw -51.5vw;
-    position: absolute;
-    top: 28vw;
-    }
-    .mIcon.open:before {
-    width: 10.6vw;
-    height: 11.2vw;
-    float: right;
-    background-position: -48.8vw 2.7vw;
-    }
-.right{
-    width: 100%;
-}
-.userinfo{
-    padding: 5px 20px;
-    background: #fff;
-    box-shadow: 0px 3px 6px 0px
-		rgba(0, 0, 0, 0.07);
-}
-.info{
-    height: 13.3vw;
-    line-height: 13.3vw;
-    font-size: 3.4vw;
-    color: #22272e;
-    overflow: hidden
-}
-.comback{
-    width: 22.4vw;
-    height: 7.2vw;
-    background-color: #ffe6dc;
-    border-radius: 4.5vw;
-    border: solid 1px #e15616;
-    float: right;
-    line-height: 7.2vw;
-    margin-top: 2.7vw;
-    cursor: pointer;
-    color: #e15616
-}
-.userinfo .user p{
-    display: inline-block;
-    color: #627386;
-    margin: 0 10px 10px 0;
-}
-.userinfo .user p:nth-child(1){
-    width: 100%;
-}
-.userinfo .user p span{
-    color: #22272e;
-}
-.address{
-    margin-bottom: 15px;
-    color: #627386;
-}
-.address span{
-    color: #22272e;
-}
-.goods-info{
-    box-shadow: 0px 3px 6px 0px
-		rgba(0, 0, 0, 0.07);
-}
-.protitle{
-    font-size: 3.7vw;
-    margin: 3.3vw 5.3vw;
-    color: #22272e
-}
-.goods_img{
-    width: 24vw;
-    height: 24vw;
-    border: solid 1px #e2e7ef;
-    float: left;
-    margin-top: 4vw
-}
-.goods_img img{
-    width: 100%;
-    height: 100%;
-}
-.goods-list{
-    overflow: hidden;
-    height: 41.6vw;
-    background: #fff;
-}
-.goods-btn{
-    float: left;
-    width: 8vw;
-    height: 100%;
-    position: relative;
-    margin-left: 4vw;
-    line-height: 41.6vw
-}
-.goods{
-    float: left;
-    width: 85%;
-}
-.goods_item{
-   width: 63%;
-    float: left;
-    margin-left: 2.7vw
-}
-.goods_item h3{
-    color: #22272e;
-    font-size: 3.7vw;
-    padding-top: 3.5vw;
-}
-.goods_item p span:nth-child(1){
-    width: 100%;
-}
-.goods_item p span{
-    color: #627386;
-    margin: 1.3vw 5.3vw 1.3vw 0;
-    display: inline-block
-}
-.red{
-    color: #f94b4b;
-}
-.delivery-number{
-    color: #627386;
-}
-.sp-delivery-cal{
-    width: 4.8vw;
-    height: 4.8vw;
-    line-height: 4.8vw;
-    text-align: center;
-    background-color: #fef6f3;
-    border-radius: .53vw;
-    border: solid .27vw #ffe6dc;
-    display: inline-block;
-    vertical-align: middle;
-    cursor: pointer
-}
-.del-num{
-    line-height: 24px;
-    width: 10.2vw;
-    height: 4.8vw;
-    margin: 0 -1.3vw;
-    border-left: 0;
-    border-right: 0;
-    outline: 0;
-    text-align: center;
-    border: solid .27vw #ffe6dc;
-    vertical-align: middle;
-    color: #E15616;
-    font-size: 2.9vw;
-}
-input::-webkit-outer-spin-button,
-    input::-webkit-inner-spin-button {
-        -webkit-appearance: none;
-    }
-    input[type="number"]{
-        -moz-appearance: textfield;
-    }
-.allcheck{
-    height: 60px;
-    background: #fff;
-    color: #22272e;
-    border-top: solid 1px #efefef
-}
-.delivery-button{
-    float: right;
-    margin: 10px;
-}
-.all-election{
-    float: left;
-    width: 16vw;
-    height: 100%;
-    margin-left: 4vw;
-    line-height: 16vw;
-    color: #4a4f58
-}
-.delivery-button button{
-    width: 22.4vw;
-	height: 9.6vw;
-	line-height: 9.6vw;
-	text-align: center;
-	background-color: #ffe6dc;
-	border-radius: .53vw;
-	border: solid .27vw #e15616;
-	color: #e15616;
-	margin-right: 3.8vw;
-	cursor: pointer;
-}
-.delivery-button button.delivery{
-   background-color: #e15616;
-   color: #fff;
-}
+.wrap_tittle {height: 10.6vw;line-height: 10.6vw;background: #fff;padding: 0 2.7vw;font-size: 3.4vw;color: #22272e;border-bottom: solid .27vw #e2e7ef;}
+.mIcon.wrap_tittle:before {width: 6.7vw;height: 6.7vw;background-position: -50.7vw -51.5vw;position: absolute;top: 28vw;}  .mIcon.open:before {width: 10.6vw;height: 11.2vw;float: right;background-position: -48.8vw 2.7vw;}
+.right{width: 100%;}
+.userinfo{padding: 1.3vw 5.3vw;background: #fff;box-shadow: 0 .8vw 1.6vw 0 rgba(0, 0, 0, 0.07);}
+.info{height: 13.3vw;line-height: 13.3vw;font-size: 3.4vw;color: #22272e;overflow: hidden}
+.comback{width: 22.4vw;height: 7.2vw;background-color: #ffe6dc;border-radius: 4.5vw;border: solid 1px #e15616;float: right;line-height: 7.2vw;margin-top: 2.7vw;cursor: pointer;color: #e15616}
+.userinfo .user p{display: inline-block;color: #627386;margin: 0 6.7vw 2.7vw 0;}
+.userinfo .user p:nth-child(1){width: 100%;}
+.userinfo .user p span{color: #22272e;}
+.address{margin-bottom: 4vw;color: #627386;}
+.address span{color: #22272e;}
+.goods-info{box-shadow: 0px .8vw 1.6vw 0px rgba(0, 0, 0, 0.07);}
+.protitle{font-size: 3.7vw;margin: 3.3vw 5.3vw;color: #22272e}
+.goods_img{width: 24vw;height: 24vw;border: solid .27vw #e2e7ef;float: left;margin-top: 4vw}
+.goods_img img{width: 100%;height: 100%;}
+.goods-list{overflow: hidden;background: #fff;padding-bottom: 3.8vw;}
+.goods-btn{float: left;width: 8vw;height: 100%;position: relative;margin-left: 4vw;line-height: 41.6vw;}
+.goods{float: left;width: 85%;}
+.goods_item{width: 63%;float: left;margin-left: 2.7vw}
+.goods_item h3{color: #22272e;font-size: 3.7vw;padding-top: 3.5vw;}
+.goods_item p span:nth-child(1){width: 100%;}
+.goods_item p span{color: #627386;margin: 1.3vw 5.3vw 1.3vw 0;display: inline-block}
+.red{color: #f94b4b;}
+.delivery-number{color: #627386;}
+.sp-delivery-cal{width: 4.8vw;height: 4.8vw;line-height: 4.8vw;text-align: center;background-color: #fef6f3;border-radius: .53vw;border: solid .27vw #ffe6dc;display: inline-block;vertical-align: middle;cursor: pointer}
+.del-num{line-height: 24px;width: 10.2vw;height: 4.8vw;margin: 0 -1.3vw;border-left: 0;border-right: 0;outline: 0;text-align: center;border: solid .27vw #ffe6dc;vertical-align: middle;color: #E15616;font-size: 2.9vw;}
+input::-webkit-outer-spin-button, input::-webkit-inner-spin-button {-webkit-appearance: none;}
+input[type="number"]{-moz-appearance: textfield;}
+.allcheck{height: 16vw;background: #fff;color: #22272e;border-top: solid .27vw #efefef;margin-top: 3.8vw}
+.delivery-button{float: right;margin:2.7vw;}
+.all-election{float: left;width: 16vw;height: 100%;margin-left: 4vw;line-height: 16vw;color: #4a4f58}
+.delivery-button button{width: 22.4vw;height: 9.6vw;line-height: 9.6vw;text-align: center;background-color: #ffe6dc;border-radius: .53vw;border: solid .27vw #e15616;color: #e15616;margin-right: 3.8vw;cursor: pointer;}
+.delivery-button button.delivery{background-color: #e15616;color: #fff;}
 }

+ 76 - 456
src/main/resources/static/css/supplier-center/order/detail.css

@@ -1,463 +1,83 @@
 @media screen and (min-width:768px) {
-    .crumbs {
-        font-size: 16px;
-        color: #22272e
-    }
-
-    .right {
-        width: 968px;
-        float: right;
-    }
-
-    .userinfo {
-        padding: 5px 20px;
-        background: #fff;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-    }
-
-    .info {
-        height: 56px;
-        line-height: 56px;
-        border-bottom: solid 1px #e2e7ef;
-        font-size: 16px;
-        color: #22272e;
-        overflow: hidden
-    }
-
-    .comback {
-        width: 90px;
-        height: 36px;
-        background-color: #ffe6dc;
-        border-radius: 2px;
-        border: solid 1px #e15616;
-        float: right;
-        line-height: 36px;
-        margin-top: 10px;
-        cursor: pointer;
-        color: #e15616;
-    }
-
-    .userinfo .user p {
-        display: inline-block;
-        color: #627386;
-        margin: 15px 45px 15px 0px;
-    }
-
-    .userinfo .user p span {
-        color: #22272e;
-    }
-
-    .address {
-        margin-bottom: 15px;
-        color: #627386;
-    }
-
-    .address span {
-        color: #22272e;
-    }
-
-    .product-info {
-        margin-top: 20px;
-    }
-
-    .price {
-        overflow: hidden;
-    }
-
-    .protitle {
-        color: #22272e;
-        font-size: 16px;
-        padding: 15px;
-        float: left;
-    }
-
-    .price-right {
-        float: right;
-        padding: 15px;
-        color: #22272e;
-    }
-
-    .red {
-        color: #f94b4b;
-    }
-
-    .product {
-        background: #fff;
-        padding: 10px 15px;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-    }
-
-    .product-title {
-        border-bottom: solid 1px #e2e7ef;
-        height: 54px;
-        line-height: 54px
-    }
-
-    .product-title li {
-        display: inline-block;
-        list-style: none;
-        color: #627386;
-        width: 17%;
-        text-align: center;
-
-    }
-
-    .product-title li:nth-child(1) {
-        width: 46%;
-        text-align: left
-    }
-
-    .pro-information li {
-        list-style: none;
-    }
-
-    .pro-information li {
-        width: 100%;
-        padding: 10px 0;
-    }
-
-    .pro-information li div {
-        display: inline-block;
-        width: 17%;
-        text-align: center;
-        color: #627386;
-    }
-
-    .pro-information li div.product-img {
-        width: 46%;
-        text-align: left;
-    }
-
-    .product-img img {
-        width: 70px;
-        height: 70px;
-        border: solid 1px #e2e7ef;
-    }
-
-    .product-img h3 {
-        display: inline-block;
-        width: 300px;
-        margin-left: 10px;
-        font-size: 16px;
-        color: #22272e;
-        vertical-align: middle;
-        word-break: break-all;
-        overflow: hidden;
-        text-overflow: ellipsis;
-        display: -webkit-inline-box;
-        -webkit-line-clamp: 2;
-        -webkit-box-orient: vertical
-    }
-
-    .info-title {
-        color: #22272e;
-        font-size: 16px;
-        padding: 15px;
-    }
-
-    .title-name {
-        color: #22272e;
-        margin-bottom: 20px
-    }
-
-    .title-time {
-        float: right;
-        color: #9aa5b5;
-    }
-
-    .order-item {
-        display: flex
-    }
-
-    .order-item p {
-        margin-bottom: 20px;
-        display: inline-block;
-        color: #627386;
-        width: 25%
-    }
-
-    .red {
-        color: #f94b4b;
-    }
-
-    .order-info {
-        margin-top: 20px;
-    }
-
-    .order-info .content {
-        background: #fff;
-        padding: 15px;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-    }
-
-    .order-item.pay span {
-        color: #e15616;
-    }
-
-    .sett-re {
-        margin-top: 20px
-    }
-
-    .sett-re div:nth-child(1) {
-        color: #22272e;
-        font-size: 16px;
-        padding: 15px
-    }
-
-    .sett-re div:nth-child(2) {
-        background: #fff;
-        height: 60px;
-        line-height: 60px;
-        padding-left: 15px;
-        color: #22272e
-    }
-
-    .sett-re div:nth-child(2) p {
-        display: inline-block;
-        margin-right: 15px
-    }
+    .crumbs {font-size: 16px;color: #22272e}
+    .userinfo {padding: 5px 20px;background: #fff;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .info {height: 56px;line-height: 56px;border-bottom: solid 1px #e2e7ef;font-size: 16px;color: #22272e;overflow: hidden}
+    .comback {width: 90px;height: 36px;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;float: right;line-height: 36px;margin-top: 10px;cursor: pointer;color: #e15616;}
+    .userinfo .user p {display: inline-block;color: #627386;margin: 15px 45px 15px 0px;}
+    .userinfo .user p span {color: #22272e;}
+    .address {margin-bottom: 15px;color: #627386;}
+    .address span {color: #22272e;}
+    .product-info {margin-top: 20px;}
+    .price {overflow: hidden;}
+    .protitle {color: #22272e;font-size: 16px;padding: 15px;float: left;}
+    .price-right {float: right;padding: 15px;color: #22272e;}
+    .red {color: #f94b4b;}
+    .product {background: #fff;padding: 10px 15px;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .product-title {border-bottom: solid 1px #e2e7ef;height: 54px;line-height: 54px}
+    .product-title li {display: inline-block;list-style: none;color: #627386;width: 17%;text-align: center;}
+    .product-title li:nth-child(1) {width: 46%;text-align: left}
+    .pro-information li {list-style: none;}
+    .pro-information li {width: 100%;padding: 10px 0;}
+    .pro-information li div {display: inline-block;width: 17%;text-align: center;color: #627386;}
+    .pro-information li div.product-img {width: 46%;text-align: left;}
+    .product-img img {width: 70px;height: 70px;border: solid 1px #e2e7ef;}
+    .product-img h3 {display: inline-block;width: 300px;margin-left: 10px;font-size: 16px;color: #22272e;vertical-align: middle;word-break: break-all;overflow: hidden;text-overflow: ellipsis;display: -webkit-inline-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical}
+    .info-title {color: #22272e;font-size: 16px;padding: 15px;}
+    .title-name {color: #22272e;margin-bottom: 20px}
+    .title-time {float: right;color: #9aa5b5;}
+    .order-item {display: flex}
+    .order-item p {margin-bottom: 20px;display: inline-block;color: #627386;width: 25%}
+    .red {color: #f94b4b;}
+    .order-info {margin-top: 20px;}
+    .order-info .content {background: #fff;padding: 15px;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .order-item.pay span {color: #e15616;}
+    .sett-re {margin-top: 20px}
+    .sett-re div:nth-child(1) {color: #22272e;font-size: 16px;padding: 15px}
+    .sett-re div:nth-child(2) {background: #fff;height: 60px;line-height: 60px;padding-left: 15px;color: #22272e}
+    .sett-re div:nth-child(2) p {display: inline-block;margin-right: 15px}
 }
 
 
 /*移动*/
 @media screen and (max-width:768px) {
-    .wrap_tittle {
-        height: 10.6vw;
-        line-height: 10.6vw;
-        background: #fff;
-        padding: 0 2.7vw;
-        font-size: 3.4vw;
-        color: #22272e;
-        border-bottom: solid .27vw #e2e7ef;
-    }
-    .mIcon.wrap_tittle:before {
-        width: 6.7vw;
-        height: 6.7vw;
-        background-position: -50.7vw -51.5vw;
-        position: absolute;
-        top: 28vw;
-        }
-        .mIcon.open:before {
-        width: 10.6vw;
-        height: 11.2vw;
-        float: right;
-        background-position: -48.8vw 2.7vw;
-        }
-    .right{
-        width: 100%;
-    }
-
-    .userinfo {
-        padding: 5px 20px;
-        background: #fff;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-    }
-
-    .info {
-        height: 13vw;
-        line-height: 13vw;
-        font-size: 3.4vw;
-        color: #22272e;
-        overflow: hidden
-    }
-
-    .comback {
-        width: 22.4vw;
-        height: 7.2vw;
-        background-color: #ffe6dc;
-        border-radius: 4.8vw;
-        border: solid .27vw #e15616;
-        float: right;
-        line-height: 7.2vw;
-        margin-top: 2.7vw;
-        cursor: pointer;
-        color: #e15616
-    }
-    .userinfo .user p:nth-child(1){
-        width: 100%;
-    }
-    .userinfo .user p {
-        display: inline-block;
-        color: #627386;
-        margin: 0 10px 10px 0;
-    }
-
-    .userinfo .user p span {
-        color: #22272e;
-    }
-
-    .address {
-        margin-bottom: 15px;
-        color: #627386;
-    }
-
-    .address span {
-        color: #22272e;
-    }
-
-    .product-info {
-       margin-top: 4vw;
-        background: #fff
-    }
-
-    .price {
-        overflow: hidden;
-    }
-
-    .protitle {
-        color: #22272e;
-        font-size: 3.4vw;
-        padding: 4vw;
-        float: left
-    }
-
-    .price-right {
-        float: right;
-        padding: 4vw;
-        color: #22272e
-    }
-
-    .red {
-        color: #f94b4b;
-    }
-
-    .product {
-        background: #fff;
-        padding: 0 4vw;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-        position: relative;
-        height: 45vw
-    }
-
-    .product-title {
-        height: 5.3vw;
-        line-height: 5.3vw;
-        position: relative;
-         width: 100%
-    }
-
-    .product-title li {
-        display: inline-block;
-        list-style: none;
-        color: #627386;
-        position: relative;
-        top: 20vw;
-        width: 30%;
-        text-align: center
-    }
-
-    .product-title li:nth-child(1) {
-        width: 100%;
-        text-align: left;
-        top: 0
-    }
-     .product-title li:nth-child(2) {
-        text-align: left
-    }
-
-    .pro-information li {
-        width: 100%;
-        padding: 10px 0;
-        list-style: none;
-    }
-
-    .pro-information li div {
-        display: inline-block;
-        text-align: center;
-        top: 9.6vw;
-        width: 30%;
-        position: relative
-    }
-
-    .pro-information li div.product-img {
-        width: 100%;
-        text-align: left;
-        top: 0
-    }
-    .pro-information li div:nth-child(2){
-        text-align: left;
-    }
-    .product-img img {
-        width: 15vw;
-        height: 15vw;
-        border: solid 1px #e2e7ef
-    }
-
-    .product-img h3 {
-        display: inline-block;
-        width: 78%;
-        font-size:3.4vw;
-        letter-spacing: .27vw;
-        overflow: hidden;
-        text-overflow: ellipsis;
-        white-space: nowrap
-    }
-
-    .info-title {
-        color: #22272e;
-        font-size: 16px;
-        padding: 15px;
-    }
-
-    .title-name {
-        color: #22272e;
-        margin-bottom: 20px
-    }
-
-    .title-time {
-        float: right;
-        color: #9aa5b5;
-    }
-
-    .order-item {
-        display: flex
-    }
-
-    .order-item p {
-        margin-bottom: 20px;
-        display: inline-block;
-        color: #627386;
-        width: 25%
-    }
-
-    .red {
-        color: #f94b4b;
-    }
-
-    .order-info {
-        margin-top: 20px;
-    }
-
-    .order-info .content {
-        background: #fff;
-        padding: 15px;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-    }
-
-    .order-item.pay span {
-        color: #e15616;
-    }
-
-    .sett-re {
-        margin-top: 20px
-    }
-
-    .sett-re div:nth-child(1) {
-        color: #22272e;
-        font-size: 16px;
-        padding: 15px
-    }
-
-    .sett-re div:nth-child(2) {
-        background: #fff;
-        height: 60px;
-        line-height: 60px;
-        padding-left: 15px;
-        color: #22272e
-    }
-
-    .sett-re div:nth-child(2) p {
-        display: inline-block;
-        margin-right: 15px
-    }
+    .wrap_tittle {height: 10.6vw;line-height: 10.6vw;background: #fff;padding: 0 2.7vw;font-size: 3.4vw;color: #22272e;border-bottom: solid .27vw #e2e7ef;}
+    .mIcon.wrap_tittle:before {width: 6.7vw;height: 6.7vw;background-position: -50.7vw -51.5vw;position: absolute;top: 28vw;}
+    .mIcon.open:before {width: 10.6vw;height: 11.2vw;float: right;background-position: -48.8vw 2.7vw;}
+    .right{width: 100%;}
+    .userinfo {padding: 1.3vw 5.3vw;background: #fff;box-shadow: 0px .8vw 1.6vw 0px rgba(0, 0, 0, 0.07);}
+    .info {height: 13vw;line-height: 13vw;font-size: 3.4vw;color: #22272e;overflow: hidden}
+    .comback {width: 22.4vw;height: 7.2vw;background-color: #ffe6dc;border-radius: 4.8vw;border: solid .27vw #e15616;float: right;line-height: 7.2vw;margin-top: 2.7vw;cursor: pointer;color: #e15616}
+    .userinfo .user p:nth-child(1){width: 100%;}
+    .userinfo .user p {display: inline-block;color: #627386;margin: 0 6.7vw 2.7vw 0;}
+    .userinfo .user p span {color: #22272e;}
+    .address {margin-bottom: 4vw;color: #627386;}
+    .address span {color: #22272e;}
+    .product-info {margin-top: 4vw;background: #fff}
+    .price {overflow: hidden;}
+    .protitle {color: #22272e;font-size: 3.4vw;padding: 4vw;float: left}
+    .price-right {float: right;padding: 4vw;color: #22272e}
+    .red {color: #f94b4b;}
+    .product {background: #fff;padding: 0 4vw;box-shadow: 0px .8vw 1.6vw 0px rgba(0, 0, 0, 0.07);position: relative;height: 45vw}
+    .product-title {height: 5.3vw;line-height: 5.3vw;position: relative;width: 100%}
+    .product-title li {display: inline-block;list-style: none;color: #627386;position: relative;top: 20vw;width: 30%;text-align: center}
+    .product-title li:nth-child(1) {width: 100%;text-align: left;top: 0}
+    .product-title li:nth-child(2) {text-align: left}
+    .pro-information li {width: 100%;padding: 2.7vw 0;list-style: none;}
+    .pro-information li div {display: inline-block;text-align: center;top: 9.6vw;width: 30%;position: relative}
+    .pro-information li div.product-img {width: 100%;text-align: left;top: 0}
+    .pro-information li div:nth-child(2){text-align: left;}
+    .product-img img {width: 15vw;height: 15vw;border: solid 1px #e2e7ef}
+    .product-img h3 {width: 36.8vw;font-size: 3.4vw;letter-spacing: .27vw;white-space: normal;vertical-align: middle;word-break: break-all;overflow: hidden;text-overflow: ellipsis;display: -webkit-inline-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical}
+    .info-title {color: #22272e;font-size: 3.4vw;padding: 4vw;}
+    .title-name {color: #22272e;margin-bottom: 5.3vw}
+    .title-time {float: right;color: #9aa5b5;}
+    .order-item p {margin-bottom: 5.3vw;display: inline-block;color: #627386;width: 48%}
+    .red {color: #f94b4b;}
+    .order-info {margin-top:5.3vw;}
+    .order-info .content {background: #fff;padding: 4vw;box-shadow: 0px .8vw 1.6vw 0px rgba(0, 0, 0, 0.07);}
+    .order-item.pay span {color: #e15616;}
+    .sett-re {margin-top:5.3vw}
+    .sett-re div:nth-child(1) {color: #22272e;font-size:3.4vw;padding: 4vw}
+    .sett-re div:nth-child(2) {background: #fff;line-height: 8vw;padding-left: 4vw;color: #22272e}
+    .sett-re div:nth-child(2) p {display: inline-block;margin-right: 2.7vw}
 }

+ 72 - 217
src/main/resources/static/css/supplier-center/order/logistics-detail.css

@@ -1,221 +1,76 @@
 
 @media screen and (min-width:768px) {
-    .crumbs {
-        font-size: 16px;
-        color: #22272e
-    }
-
-    .right {
-        width: 968px;
-        float: right;
-    }
-
-    .userinfo {
-        padding: 5px 20px;
-        background: #fff;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-    }
-
-    .info {
-        height: 56px;
-        line-height: 56px;
-        border-bottom: solid 1px #e2e7ef;
-        font-size: 16px;
-        color: #22272e;
-        overflow: hidden
-    }
-
-    .comback {
-        width: 90px;
-        height: 36px;
-        background-color: #ffe6dc;
-        border-radius: 2px;
-        border: solid 1px #e15616;
-        float: right;
-        line-height: 36px;
-        margin-top: 10px;
-        cursor: pointer;
-        color: #e15616;
-    }
-
-    .userinfo .user p {
-        display: inline-block;
-        color: #627386;
-        margin: 15px 45px 15px 0px;
-    }
-
-    .userinfo .user p span {
-        color: #22272e;
-    }
-
-    .address {
-        margin-bottom: 15px;
-        color: #627386;
-    }
-
-    .address span {
-        color: #22272e;
-    }
-
-    .record-product {
-        margin-top: 20px;
-    }
-
-    .protitle {
-        color: #22272e;
-        font-size: 16px;
-        padding: 15px 20px;
-    }
-
-    .product ul li {
-        list-style: none;
-        display: inline-block;
-    }
-
-    .product-title li {
-        width: 11%;
-        text-align: center;
-    }
-
-    .product-title li:nth-child(1) {
-        width: 50%;
-        text-align: left;
-    }
-
-    .product {
-        padding: 0 21px;
-        background: #fff;
-        overflow: hidden;
-        padding-bottom: 30px;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07)
-    }
-
-    .product-title {
-        height: 56px;
-        line-height: 56px;
-        color: #627386;
-        border-bottom: solid 1px #e2e7ef
-    }
-
-    .product-info li {
-        width: 100%;
-        padding: 15px 0
-    }
-
-    .product-img h3 {
-        display: inline-block;
-        width: 300px;
-        margin-left: 10px;
-        font-size: 16px;
-        letter-spacing: 1px;
-        color: #22272e;
-        vertical-align: middle;
-        word-break: break-all;
-        overflow: hidden;
-        text-overflow: ellipsis;
-        display: -webkit-inline-box;
-        -webkit-line-clamp: 2;
-        -webkit-box-orient: vertical
-    }
-
-    .product-info li div.product-img {
-        width: 50%;
-        text-align: left
-    }
-
-    .product-img img {
-        width: 70px;
-        height: 70px;
-        border: solid 1px #e2e7ef;
-    }
-
-    .product-info li div {
-        display: inline-block;
-        width: 11%;
-        text-align: center;
-        color: #627386
-    }
-
-    .record-time {
-        color: #9aa5b5;
-        font-size: 12px;
-        padding-top: 5px
-    }
-
-    .img-remark span {
-        color: #627386;
-    }
-
-    .img-remark ul {
-        display: inline-block;
-    }
-
-    .img-remark li {
-        display: inline-block;
-        width: 50px;
-        height: 50px;
-        margin-left: 10px;
-    }
-    .img-remark{
-        margin: 30px 0;
-    }
-
-    .img-remark li img {
-        width: 100%;
-        height: 100%;
-    }
-
-    .remark {
-        color: #627386;
-    }
-
-    .remark span {
-        color: #22272e;
-    }
-
-    .record-button {
-        float: right;
-        padding: 20px
-    }
-
-    .record-button button {
-        width: 90px;
-        height: 36px;
-        line-height: 36PX;
-        background-color: #ffe6dc;
-        border-radius: 2px;
-        border: solid 1px #e15616;
-        text-align: center;
-        color: #e15616;
-        margin-left: 10px;
-        cursor: pointer;
-    }
+    .crumbs {font-size: 16px;color: #22272e}
+   .userinfo {padding: 5px 20px;background: #fff;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .info {height: 56px;line-height: 56px;border-bottom: solid 1px #e2e7ef;font-size: 16px;color: #22272e;overflow: hidden}
+    .comback {width: 90px;height: 36px;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;float: right;line-height: 36px;margin-top: 10px;cursor: pointer;color: #e15616;}
+    .userinfo .user p {display: inline-block;color: #627386;margin: 15px 45px 15px 0px;}
+    .userinfo .user p span {color: #22272e;}
+    .address {margin-bottom: 15px;color: #627386;}
+    .address span {color: #22272e;}
+    .record-product {margin-top: 20px;}
+    .protitle {color: #22272e;font-size: 16px;padding: 15px 20px;}
+    .product ul li {list-style: none;display: inline-block;}
+    .product-title li {width: 11%;text-align: center;}
+    .product-title li:nth-child(1) {width: 50%;text-align: left;}
+    .product {padding: 0 21px;background: #fff;overflow: hidden;padding-bottom: 30px;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07)}
+    .product-title {height: 56px;line-height: 56px;color: #627386;border-bottom: solid 1px #e2e7ef}
+    .product-info li {width: 100%;padding: 15px 0}
+    .product-img h3 {display: inline-block;width: 300px;margin-left: 10px;font-size: 16px;letter-spacing: 1px;color: #22272e;vertical-align: middle;word-break: break-all;overflow: hidden;text-overflow: ellipsis;display: -webkit-inline-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical}
+    .product-info li div.product-img {width: 50%;text-align: left}
+    .product-img img {width: 70px;height: 70px;border: solid 1px #e2e7ef;}
+    .product-info li div {display: inline-block;width: 11%;text-align: center;color: #627386}
+    .record-time {color: #9aa5b5;font-size: 12px;padding-top: 5px}
+    .img-remark span {color: #627386;}
+    .img-remark ul {display: inline-block;}
+    .img-remark li {display: inline-block;width: 50px;height: 50px;margin-left: 10px;}
+    .img-remark{margin: 30px 0;}
+    .img-remark li img {width: 100%;height: 100%;}
+    .remark {color: #627386;}
+    .remark span {color: #22272e;}
+    .record-button {float: right;padding: 20px}
+    .record-button button {width: 90px;height: 36px;line-height: 36PX;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;text-align: center;color: #e15616;margin-left: 10px;cursor: pointer;}
+    .logis{margin-top: 30px;}
+    .delivery-logis-title{color: #22272e;font-size: 16px;padding: 15px 20px;}
+    .logistics-info{background: #fff;padding: 15px 20px;color: #627386;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .logistics-info div{margin-right: 65px;display: inline-block;line-height: 24px}
+    .logistics-record{display: inline-block;width: 100%;color: #333;font-size: 16px;margin: 10px 15px}
+}
 
-    .logis{
-        margin-top: 30px;
-    }
-    .delivery-logis-title{
-        color: #22272e;
-        font-size: 16px;
-        padding: 15px 20px;
-    }
-    .logistics-info{
-        background: #fff;
-        padding: 15px 20px;
-        color: #627386;
-        box-shadow: 0px 3px 6px 0px
-		rgba(0, 0, 0, 0.07);
-    }
-    .logistics-info div{
-         margin-right: 65px;
-         display: inline-block;
-         line-height: 24px
-    }
-    .logistics-record{
-        display: inline-block;
-        width: 100%;
-        color: #333;
-        font-size: 16px;
-        margin: 10px 15px
-    }
+/*移动*/
+@media screen and (max-width:768px) {
+    .crumbs {font-size: 3.4vw;color: #22272e}
+    .userinfo {padding: 1.3vw 5.3vw;background: #fff;box-shadow: 0 .8vw 1.6vw 0 rgba(0, 0, 0, 0.07);}
+    .info {height: 13vw;line-height: 13vw;font-size: 3.4vw;color: #22272e;overflow: hidden}
+    .comback {width: 22.4vw;height: 7.2vw;background-color: #ffe6dc;border-radius: .53vw;border: solid .27vw #e15616;float: right;line-height: 7.2vw;margin-top: 2.7vw;cursor: pointer;color: #e15616;}
+    .userinfo .user p {display: inline-block;color: #627386;margin: 0 6.7vw 2.7vw 0;}
+    .userinfo .user p span {color: #22272e;}
+    .address {margin-bottom: 4vw;color: #627386;}
+    .address span {color: #22272e;}
+    .protitle {color: #22272e;font-size: 16px;padding: 15px 20px;}
+    .product ul li {list-style: none;display: inline-block;}
+    .product-title li {width: 11%;text-align: center;}
+    .product-title li:nth-child(1) {width: 50%;text-align: left;}
+    .product {padding: 0 21px;background: #fff;overflow: hidden;padding-bottom: 30px;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07)}
+    .product-title {height: 56px;line-height: 56px;color: #627386;border-bottom: solid 1px #e2e7ef}
+    .product-info li {width: 100%;padding: 15px 0}
+    .product-img h3 {display: inline-block;width: 300px;margin-left: 10px;font-size: 16px;letter-spacing: 1px;color: #22272e;vertical-align: middle;word-break: break-all;overflow: hidden;text-overflow: ellipsis;display: -webkit-inline-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical}
+    .product-info li div.product-img {width: 50%;text-align: left}
+    .product-img img {width: 70px;height: 70px;border: solid 1px #e2e7ef;}
+    .product-info li div {display: inline-block;width: 11%;text-align: center;color: #627386}
+    .record-time {color: #9aa5b5;font-size: 12px;padding-top: 5px}
+    .img-remark span {color: #627386;}
+    .img-remark ul {display: inline-block;}
+    .img-remark li {display: inline-block;width: 50px;height: 50px;margin-left: 10px;}
+    .img-remark{margin: 30px 0;}
+    .img-remark li img {width: 100%;height: 100%;}
+    .remark {color: #627386;}
+    .remark span {color: #22272e;}
+    .record-button {float: right;padding: 20px}
+    .record-button button {width: 90px;height: 36px;line-height: 36PX;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;text-align: center;color: #e15616;margin-left: 10px;cursor: pointer;}
+    .logis{background: #fff}
+    .delivery-logis-title{color: #22272e;font-size: 16px;padding: 15px 20px;}
+    .logistics-info{background: #fff;padding: 15px 20px;color: #627386;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .logistics-info div{margin-right: 65px;display: inline-block;line-height: 24px}
+    .logistics-record{display: inline-block;width: 100%;color: #333;font-size: 16px;margin: 10px 15px}
 }

+ 327 - 5
src/main/resources/static/css/supplier-center/order/logistics.css

@@ -3,11 +3,6 @@
         font-size: 16px;
         color: #22272e
     }
-
-    .right {
-        width: 968px;
-        float: right;
-    }
     .userinfo {
         padding: 5px 20px;
         background: #fff;
@@ -339,3 +334,330 @@
      }
 
 }
+
+/*移动*/
+@media screen and (max-width:768px) {
+.crumbs {
+        font-size:3.4vw;
+        color: #22272e
+    }
+    .userinfo {
+        padding: 1.3vw 5.3vw;
+        background: #fff;
+        box-shadow: 0 .8vw 1.6vw 0 rgba(0, 0, 0, 0.07);
+    }
+
+    .info {
+        height: 13vw;
+        line-height: 13vw;
+        font-size: 3.4vw;
+        color: #22272e;
+        overflow: hidden
+    }
+
+    .comback {
+        width: 22.4vw;
+    height: 7.2vw;
+    background-color: #ffe6dc;
+    border-radius: 4.8vw;
+    border: solid .27vw #e15616;
+    float: right;
+    line-height: 7.2vw;
+    margin-top: 2.7vw;
+    cursor: pointer;
+    color: #e15616;
+    }
+
+    .userinfo .user p {
+        display: inline-block;
+        color: #627386;
+        margin: 0 6.7vw 2.7vw 0;
+    }
+    .userinfo .user p:nth-child(1){width: 100%}
+    .userinfo .user p span {
+        color: #22272e;
+    }
+
+    .address {
+        margin-bottom: 4vw;
+        color: #627386;
+    }
+
+    .address span {
+        color: #22272e;
+    }
+    .product-info {
+        box-shadow: 0px .8vw 1.6vw 0px
+		rgba(0, 0, 0, 0.07);
+		    background: #fff;
+    margin-top: 2.7vw
+    }
+
+    .price {
+        overflow: hidden;
+    }
+
+    .protitle {
+        color: #22272e;
+        font-size: 3.4vw;
+        padding: 2.7vw 5.3vw;
+    }
+    .product {
+        background: #fff;
+        padding: 2.7vw 5.3vw;
+        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
+        height: 50vw
+    }
+
+    .product-title {
+           height: 5.3vw;
+        line-height: 5.3vw;
+        position: relative;
+        width: 100%
+    }
+
+    .product-title li {
+            display: inline-block;
+        list-style: none;
+        color: #627386;
+        position: relative;
+        top: 26vw;
+        width: 21vw
+
+    }
+
+    .product-title li:nth-child(1) {
+        width: 100%;
+        text-align: left;
+        top: 0;
+    }
+     .pro-information li {
+        list-style: none;
+    }
+
+    .pro-information li {
+        width: 100%;
+        padding: 10px 0;
+    }
+
+    .pro-information li div {
+           display: inline-block;
+        color: #627386;
+        top: 11.6vw;
+        width: 21vw;
+        position: relative
+    }
+
+    .pro-information li div.product-img {
+            width: 100%;
+            text-align: left;
+            top: 0
+    }
+
+    .product-img img {
+        width: 70px;
+        height: 70px;
+        border: solid 1px #e2e7ef;
+    }
+
+    .product-img h3 {
+        display: inline-block;
+            width: 40vw;
+        margin-left: 10px;
+        font-size: 3.4VW;
+        color: #22272e;
+        vertical-align: middle;
+        word-break: break-all;
+        overflow: hidden;
+        text-overflow: ellipsis;
+        display: -webkit-inline-box;
+        -webkit-line-clamp: 2;
+        -webkit-box-orient: vertical
+    }
+    .add-logistics{
+       height: auto;
+        background-color: #ffffff;
+        box-shadow: 0px 3px 6px 0px
+            rgba(0, 0, 0, 0.07);
+        margin-top: 2.7vw;
+        padding: 20px;
+        color: #627386;
+    }
+    .company-number{
+        width: 100%;
+    }
+    .logist-right>div{
+        margin-top: 5px;
+    }
+    .company-number>div{
+        margin: 4vw 0;
+    }
+    .logistics-order-number.company{width: 72vw}
+    .company{
+            width: 75vw;
+        height: 11.8vw;
+        background-color: #ffffff;
+        border-radius: .53vw;
+        border: solid 1px #b8bfca;
+        color: #9aa5b5;
+        padding-left: 2.7vw;
+        margin-top: 2.7vw
+    }
+    input::placeholder,textarea::placeholder {
+        color: #9aa5b5;
+        font-size: 12px;
+    }
+    textarea::placeholder {
+        color: #9aa5b5;
+    }
+    .red{
+        color: #f94b4b;
+    }
+    .companyBtn{
+            width: 11.8vw;
+        height: 11.8vw;
+        background-color: #ffffff;
+        border-radius: .53vw;
+        border: solid 1px #b8bfca;
+        margin-left: .53vw;
+        cursor: pointer;
+        font-size: 4.8vw;
+        color: #b8bfca;
+    }
+    .mIcon.add:before {
+             width: 8vw;
+    height: 8vw;
+    background-position: -9.2vw -61.3vw;
+    position: absolute;
+    top: 5.5vw;
+    right: 8vw
+    }
+    .add-text {
+           font-size: 3.6vw;
+        color: #333330;
+        opacity: 0.5;
+        position: absolute;
+        top: 60%;
+        right: 5.3vw
+    }
+    .upload-file{
+        position: relative;
+        float: left;
+        margin: 0 2.7vw 2.7vw 0px;
+        cursor: pointer;
+        width: 23vw;
+        height: 23vw;
+        border-radius: .53vw;
+        border: solid .27vw #b8bfca
+    }
+    .input-file{
+           width: 23vw;
+        height:23vw;
+        opacity: 0;
+        cursor: pointer;
+        position: absolute
+    }
+    #uploadGoodsImages{
+        overflow: hidden;
+        float: left;
+        width: 90%;
+       margin-top: 2.7vw
+    }
+    .release-from{
+        overflow: hidden;
+    }
+    .upload-file img{
+        width: 100%;
+        height: 100%;
+    }
+    .mIcon.del:before {
+           width: 5.3vw;
+        height: 5.3vw;
+        background-position: -90vw -7.5vw;
+        position: absolute;
+        top: -.8vw;
+        right: -.8vw
+    }
+    .form-upload-tips .icon-wen:before {
+        width: 20px;
+        height: 20px;
+        background-position: -84px -144px;
+        cursor: pointer;
+    }
+    .form-upload-tips .icon-wen:before {
+        width: 20px;
+        height: 20px;
+        background-position: -84px -144px;
+        cursor: pointer;
+    }
+    .wen-tips {
+        width: 300px;
+        height: 47px;
+        background-color: #1890f9;
+        box-shadow: 0px 3px 6px 0px rgba(24, 144, 249, 0.17);
+        color: #fff;
+        position: absolute;
+        left: inherit;
+        font-size: 12px;
+        text-align: center;
+        line-height: 47px;
+        top: 33px;
+        display: none;
+    }
+    .form-upload-tips{
+        float: left;
+        position: relative;
+    }
+    .form-upload-tips .wen-tips:before {
+        content: '';
+        width: 0px;
+        height: 0px;
+        border-width: 8px;
+        border-style: solid;
+        border-color: transparent transparent #1890f9 transparent;
+        position: absolute;
+        top: -15px;
+        left:5px;
+     }
+      .form-upload-tips:hover .wen-tips {
+         display: block;
+     }
+     .remarks textarea{
+        width: 83.4vw;
+        height: 42.4vw;
+        background-color: #ffffff;
+        border-radius: .53vw;
+        border: solid 1px #b8bfca;
+        resize: none;
+        padding: 2.7vw;
+        color: #9aa5b5;
+     }
+     .remarks{position: relative}
+     .remarks .rema{
+        line-height:10.7vw ;
+     }
+     .size-num {
+         position: absolute;
+        right: 2.7vw;
+        top: 52vw;
+        color: #9aa5b5
+     }
+     .defineBtn button{
+        width: 100%;
+        height: 11.2vw;
+        line-height: 11.2vw;
+        text-align: center;
+        color: #fff;
+        background-color: #e15616;
+        border-radius: .53vw;
+        border: solid .27vw #e15616;
+        cursor: pointer;
+        margin-bottom: 2.7vw
+     }
+     .defineBtn button:nth-child(2){background:#ffe6dc;color: #e15616 }
+     .defineBtn{
+        overflow: hidden;
+           margin-top: 4vw
+     }
+
+}

+ 45 - 266
src/main/resources/static/css/supplier-center/order/record.css

@@ -1,272 +1,51 @@
 
 @media screen and (min-width:768px) {
-    .crumbs {
-        font-size: 16px;
-        color: #22272e
-    }
-
-    .right {
-        width: 968px;
-        float: right;
-    }
-
-    .userinfo {
-        padding: 5px 20px;
-        background: #fff;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-    }
-
-    .info {
-        height: 56px;
-        line-height: 56px;
-        border-bottom: solid 1px #e2e7ef;
-        font-size: 16px;
-        color: #22272e;
-        overflow: hidden
-    }
-
-    .comback {
-        width: 90px;
-        height: 36px;
-        background-color: #ffe6dc;
-        border-radius: 2px;
-        border: solid 1px #e15616;
-        float: right;
-        line-height: 36px;
-        margin-top: 10px;
-        cursor: pointer;
-        color: #e15616;
-    }
-
-    .userinfo .user p {
-        display: inline-block;
-        color: #627386;
-        margin: 15px 45px 15px 0px;
-    }
-
-    .userinfo .user p span {
-        color: #22272e;
-    }
-
-    .address {
-        margin-bottom: 15px;
-        color: #627386;
-    }
-
-    .address span {
-        color: #22272e;
-    }
-
-    .record-product {
-        margin-top: 20px;
-    }
-
-    .protitle {
-        color: #22272e;
-        font-size: 16px;
-        padding: 15px 20px;
-    }
-
-    .product ul li {
-        list-style: none;
-        display: inline-block;
-    }
-
-    .product-title li {
-        width: 11%;
-        text-align: center;
-    }
-
-    .product-title li:nth-child(1) {
-        width: 50%;
-        text-align: left;
-    }
-
-    .product {
-        padding: 0 20px;
-        background: #fff;
-        overflow: hidden;
-        box-shadow: 0px 3px 6px 0px
-		rgba(0, 0, 0, 0.07);
-    }
-
-    .product-title {
-        height: 56px;
-        line-height: 56px;
-        color: #627386;
-        border-bottom: solid 1px #e2e7ef
-    }
-
-    .product-info li {
-        width: 100%;
-        padding: 15px 0
-    }
-
-    .product-img h3 {
-        display: inline-block;
-        width: 300px;
-        margin-left: 10px;
-        font-size: 16px;
-        vertical-align: middle;
-        word-break: break-all;
-        overflow: hidden;
-        text-overflow: ellipsis;
-        display: -webkit-inline-box;
-        -webkit-line-clamp: 2;
-        -webkit-box-orient: vertical
-    }
-
-    .product-info li div.product-img {
-        width: 50%;
-        text-align: left
-    }
-
-    .product-img img {
-        width: 70px;
-        height: 70px;
-        border: solid 1px #e2e7ef;
-    }
-
-    .product-info li div {
-        display: inline-block;
-        width: 11%;
-        text-align: center
-    }
-
-    .record-time {
-        color: #9aa5b5;
-        font-size: 12px;
-        padding-top: 5px;
-    }
-
-    .img-remark span {
-        color: #627386;
-    }
-
-    .img-remark ul {
-        display: inline-block;
-    }
-
-    .img-remark li {
-        display: inline-block;
-        width: 50px;
-        height: 50px;
-        margin-left: 10px;
-    }
-
-    .img-remark li img {
-        width: 100%;
-        height: 100%;
-    }
-    .img-remark{
-        margin: 20px 0;
-    }
-    .remark {
-        color: #627386;
-    }
-
-    .remark span {
-        color: #22272e;
-    }
-
-    .record-button {
-        float: right;
-        padding: 20px
-    }
-
-    .record-button button {
-        width: 90px;
-        height: 36px;
-        line-height: 36PX;
-        background-color: #ffe6dc;
-        border-radius: 2px;
-        border: solid 1px #e15616;
-        text-align: center;
-        color: #e15616;
-        margin-left: 10px;
-        cursor: pointer;
-    }
-
-    .no-delivery-record {
-        width: 968px;
-        height: 423px;
-        background-color: #ffffff;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-        position: relative;
-    }
-
-    .no-delivery-record img {
-        position: absolute;
-        top: 0;
-        left: 50%;
-        transform: translate(-50%,50%)
-    }
-    .no-delivery-record p{
-        position: absolute;
-        top: 62%;
-        left: 50%;
-        transform: translate(-50%,50%);
-        font-size: 16px;
-        color: #4a4f58
-    }
-    .no-delivery-record span{
-        color: #e15616;
-    }
+    .crumbs {font-size: 16px;color: #22272e }
+    .userinfo { padding: 5px 20px; background: #fff;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);}
+    .info {height: 56px;line-height: 56px; border-bottom: solid 1px #e2e7ef;font-size: 16px; color: #22272e; overflow: hidden }
+    .comback {width: 90px;height: 36px;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;float: right; line-height: 36px; margin-top: 10px;cursor: pointer;color: #e15616; }
+    .userinfo .user p {display: inline-block;color: #627386; margin: 15px 45px 15px 0px; }
+    .userinfo .user p span { color: #22272e; }
+    .address {margin-bottom: 15px; color: #627386;}
+    .address span {color: #22272e; }
+    .record-product { margin-top: 20px; }
+    .protitle {color: #22272e;font-size: 16px;padding: 15px 20px; }
+    .product ul li {list-style: none;display: inline-block; }
+    .product-title li {width: 11%;text-align: center;}
+    .product-title li:nth-child(1) {width: 50%;text-align: left; }
+    .product {padding: 0 20px;background: #fff;overflow: hidden;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07); }
+    .product-title {height: 56px;line-height: 56px;color: #627386;border-bottom: solid 1px #e2e7ef}
+    .product-info li {width: 100%;padding: 15px 0}
+    .product-img h3 {display: inline-block;width: 300px;margin-left: 10px;font-size: 16px;vertical-align: middle;word-break: break-all;overflow: hidden;text-overflow: ellipsis;display: -webkit-inline-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical}
+    .product-info li div.product-img {width: 50%;text-align: left}
+    .product-img img {width: 70px;height: 70px;border: solid 1px #e2e7ef;}
+    .product-info li div {display: inline-block;width: 11%;text-align: center}
+    .record-time {color: #9aa5b5;font-size: 12px;padding-top: 5px;}
+    .img-remark span {color: #627386;}
+    .img-remark ul {display: inline-block;}
+    .img-remark li {display: inline-block;width: 50px;height: 50px;margin-left: 10px;}
+    .img-remark li img {width: 100%;height: 100%;}
+    .img-remark{margin: 20px 0;}
+    .remark {color: #627386;}
+    .remark span {color: #22272e;}
+    .record-button {float: right;padding: 20px}
+    .record-button button {width: 90px;height: 36px;line-height: 36PX;background-color: #ffe6dc;border-radius: 2px;border: solid 1px #e15616;text-align: center;color: #e15616;margin-left: 10px;cursor: pointer;}
+    .no-delivery-record {width: 968px;height: 423px;background-color: #ffffff;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);position: relative;}
+    .no-delivery-record img {position: absolute;top: 0;left: 50%;transform: translate(-50%,50%)}
+    .no-delivery-record p{position: absolute;top: 62%;left: 50%;transform: translate(-50%,50%);font-size: 16px;color: #4a4f58}
+    .no-delivery-record span{color: #e15616;}
 }
 
 /*移动*/
 @media screen and (max-width:768px) {
-        .userinfo {
-        padding: 5px 20px;
-        background: #fff;
-        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
-    }
-
-    .info {
-        height: 56px;
-        line-height: 56px;
-        border-bottom: solid 1px #e2e7ef;
-        font-size: 16px;
-        color: #22272e;
-        overflow: hidden
-    }
-
-    .comback {
-        width: 90px;
-        height: 36px;
-        background-color: #ffe6dc;
-        border-radius: 2px;
-        border: solid 1px #e15616;
-        float: right;
-        line-height: 36px;
-        margin-top: 10px;
-        cursor: pointer;
-        color: #e15616;
-    }
-
-    .userinfo .user p {
-        display: inline-block;
-        color: #627386;
-        margin: 15px 45px 15px 0px;
-    }
-
-    .userinfo .user p span {
-        color: #22272e;
-    }
-
-    .address {
-        margin-bottom: 15px;
-        color: #627386;
-    }
-
-    .address span {
-        color: #22272e;
-    }
-
-    .record-product {
-        margin-top: 20px;
-    }
-
+    .userinfo { padding: 1.3vw 3.2vw; background: #fff;box-shadow: 0 .8vw 1.6vw 0 rgba(0, 0, 0, 0.07);}
+    .info { height: 13vw; line-height: 13vw;font-size: 3.4vw;color: #22272e;overflow: hidden}
+    .comback { width: 22.4vw; height: 7.2vw;background-color: #ffe6dc;border-radius: 4.8vw;border: solid 1px #e15616; float: right;line-height: 7.2vw; margin-top: 2.7vw;cursor: pointer;  color: #e15616}
+    .userinfo .user p:nth-child(1){ width: 100%; }
+    .userinfo .user p { display: inline-block;color: #627386; margin: 0 8vw 4vw 0; }
+    .userinfo .user p span { color: #22272e; }
+    .address {margin-bottom: 4vw;color: #627386; }
+    .address span { color: #22272e; }
     .protitle {
         color: #22272e;
         font-size: 16px;
@@ -277,16 +56,16 @@
         display: inline-block;
     }
     .product-title li {
-        width: 11%;
+        width: 19%;
         text-align: center;
     }
 
     .product-title li:nth-child(1) {
-        width: 50%;
+        /*width: 50%;*/
         text-align: left;
     }
     .product{
-        padding: 0 15px;
+        padding: 0 4vw;
         background: #fff;
         overflow: hidden;
     }

+ 54 - 106
src/main/resources/static/css/supplier-center/order/saleslist.css

@@ -1,107 +1,55 @@
-.sales-list{
-    width: 1056px;
-    margin: 0 auto;
-}
-#saleslist{
-    background: #fff;
-}
-.sales-list>.sales-list-title{
-    width: 100%;
-    height: 120px;
-    line-height: 120px;
-    text-align: center;
-    font-size: 32px;
-    color: #22272e;
-}
-.sales-list>.sales-list-cantent{
-    width: 96%;
-    background: #fff;
-    margin: 0 auto;
-    border-left: 1px solid #b8bfca;
-    border-top: 1px solid #b8bfca;
-    border-bottom: 1px solid #b8bfca;
-}
-.sales-list>.sales-list-cantent>.number-time,
-.sales-list>.sales-list-cantent>.buyer-supplier,
-.sales-list>.sales-list-cantent>.delivery-info{
-    width: 100%;
-    height: 48px;
-    display: flex;
-    flex: 4;
-}
-.sales-list>.sales-list-cantent>.number-time>div,
-.sales-list>.sales-list-cantent>.buyer-supplier>div,
-.sales-list>.sales-list-cantent>.delivery-info>div{
-    width: 10%;
-    height: 100%;
-    border-right: 1px solid #b8bfca;
-    border-bottom: 1px solid #b8bfca;
-    text-align: left;
-    text-indent: 10px;
-    line-height: 48px;
-}
-.sales-list>.sales-list-cantent>.number-time>div:nth-child(2),
-.sales-list>.sales-list-cantent>.number-time>div:nth-child(4),
-.sales-list>.sales-list-cantent>.buyer-supplier>div:nth-child(2),
-.sales-list>.sales-list-cantent>.buyer-supplier>div:nth-child(4){
-  width: 40%;
-}
-.sales-list>.sales-list-cantent>.delivery-info>div:nth-child(2){
-    width: 90%;
-}
-.sales-list>.sales-list-cantent>.goods-info{
-    width: 100%;
-    display: flex;
-    flex: 2;
-    line-height: 10px;
-}
-.sales-list>.sales-list-cantent>.goods-info>div{
-    width: 10%;
-    border-right: 1px solid #b8bfca;
-    border-bottom: 1px solid #b8bfca;
-    text-indent: 10px;
-    line-height: 35px;
-}
-.sales-list>.sales-list-cantent>.goods-info>.goods-info-conent{
-    width: 90%;
-}
-.sales-list>.sales-list-cantent>.total-amount{
-    width: 100%;
-    height: 40px;
-    border-right: 1px solid #b8bfca;
-    box-sizing: border-box;
-}
-.sales-list>.sales-list-cantent>.total-amount>.print-time-1{
-    float: left;
-    text-indent: 10px;
-}
-.sales-list>.sales-list-cantent>.total-amount>p{
-    float: right;
-    margin-top: 10px;
-    margin-right: 10px;
-}
-.print-time{
-    width: 100%;
-    height: 150px;
-    position: relative;
-}
-.print{
-    position: absolute;
-    top: 50%;
-    left: 50%;
-    transform: translate(-50%,-50%);
-    -moz-transform: translate(-50%,-50%);
-    outline: none;
-    cursor: pointer;
-    width: 232px;
-    height: 50px;
-    background-color: #e15616;
-    box-shadow: 0px 3px 6px 0px rgba(249, 75, 75, 0.17);
-    border-radius: 2px;
-    border: 0;
-    color: #fff;
-    font-size: 18px
-}
-.colour{
-    color: #627386;
+@media screen and (min-width:768px) {
+    .sales-list {width: 1056px;margin: 0 auto;}
+    #saleslist {background: #fff;}
+    .sales-list > .sales-list-title {width: 100%;height: 120px;line-height: 120px;text-align: center;font-size: 32px;color: #22272e;}
+    .sales-list > .sales-list-cantent {width: 96%;background: #fff;margin: 0 auto;border-left: 1px solid #b8bfca;border-top: 1px solid #b8bfca;border-bottom: 1px solid #b8bfca;}
+    .sales-list > .sales-list-cantent > .number-time,
+    .sales-list > .sales-list-cantent > .buyer-supplier,
+    .sales-list > .sales-list-cantent > .delivery-info {width: 100%;height: 48px;display: flex;flex: 4;}
+    .sales-list > .sales-list-cantent > .number-time > div,
+    .sales-list > .sales-list-cantent > .buyer-supplier > div,
+    .sales-list > .sales-list-cantent > .delivery-info > div {width: 10%;height: 100%;border-right: 1px solid #b8bfca;border-bottom: 1px solid #b8bfca;text-align: left;text-indent: 10px;line-height: 48px;}
+    .sales-list > .sales-list-cantent > .number-time > div:nth-child(2),
+    .sales-list > .sales-list-cantent > .number-time > div:nth-child(4),
+    .sales-list > .sales-list-cantent > .buyer-supplier > div:nth-child(2),
+    .sales-list > .sales-list-cantent > .buyer-supplier > div:nth-child(4) {width: 40%;}
+    .sales-list > .sales-list-cantent > .delivery-info > div:nth-child(2) {width: 90%;}
+    .sales-list > .sales-list-cantent > .goods-info {width: 100%;display: flex;flex: 2;line-height: 10px;}
+    .sales-list > .sales-list-cantent > .goods-info > div {width: 10%;border-right: 1px solid #b8bfca;border-bottom: 1px solid #b8bfca;text-indent: 10px;line-height: 35px;}
+    .sales-list > .sales-list-cantent > .goods-info > .goods-info-conent {width: 90%;}
+    .sales-list > .sales-list-cantent > .total-amount {width: 100%;height: 40px;border-right: 1px solid #b8bfca;box-sizing: border-box;}
+    .sales-list > .sales-list-cantent > .total-amount > .print-time-1 {float: left;text-indent: 10px;}
+    .sales-list > .sales-list-cantent > .total-amount > p {float: right;margin-top: 10px;margin-right: 10px;}
+    .print-time {width: 100%;height: 150px;position: relative;}
+    .print {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);-moz-transform: translate(-50%, -50%);outline: none;cursor: pointer;width: 232px;height: 50px;background-color: #e15616;box-shadow: 0px 3px 6px 0px rgba(249, 75, 75, 0.17);border-radius: 2px;border: 0;color: #fff;font-size: 18px}
+    .colour {color: #627386;}
+}
+
+
+/*移动*/
+@media screen and (max-width:768px) {
+     .sales-list {width: 100%;margin: 0 auto;}
+    #saleslist {background: #fff;}
+    .sales-list > .sales-list-title {width: 100%;height: 120px;line-height: 120px;text-align: center;font-size: 32px;color: #22272e;}
+    .sales-list > .sales-list-cantent {width: 96%;background: #fff;margin: 0 auto;border-left: 1px solid #b8bfca;border-top: 1px solid #b8bfca;border-bottom: 1px solid #b8bfca;}
+    .sales-list > .sales-list-cantent > .number-time,
+    .sales-list > .sales-list-cantent > .buyer-supplier,
+    .sales-list > .sales-list-cantent > .delivery-info {width: 100%;height: 48px;display: flex;flex: 4;}
+    .sales-list > .sales-list-cantent > .number-time > div,
+    .sales-list > .sales-list-cantent > .buyer-supplier > div,
+    .sales-list > .sales-list-cantent > .delivery-info > div {width: 10%;height: 100%;border-right: 1px solid #b8bfca;border-bottom: 1px solid #b8bfca;text-align: left;text-indent: 10px;line-height: 48px;}
+    .sales-list > .sales-list-cantent > .number-time > div:nth-child(2),
+    .sales-list > .sales-list-cantent > .number-time > div:nth-child(4),
+    .sales-list > .sales-list-cantent > .buyer-supplier > div:nth-child(2),
+    .sales-list > .sales-list-cantent > .buyer-supplier > div:nth-child(4) {width: 40%;}
+    .sales-list > .sales-list-cantent > .delivery-info > div:nth-child(2) {width: 90%;}
+    .sales-list > .sales-list-cantent > .goods-info {width: 100%;display: flex;flex: 2;line-height: 10px;}
+    .sales-list > .sales-list-cantent > .goods-info > div {width: 10%;border-right: 1px solid #b8bfca;border-bottom: 1px solid #b8bfca;text-indent: 10px;line-height: 35px;}
+    .sales-list > .sales-list-cantent > .goods-info > .goods-info-conent {width: 90%;}
+    .sales-list > .sales-list-cantent > .total-amount {width: 100%;height: 40px;border-right: 1px solid #b8bfca;box-sizing: border-box;}
+    .sales-list > .sales-list-cantent > .total-amount > .print-time-1 {float: left;text-indent: 10px;}
+    .sales-list > .sales-list-cantent > .total-amount > p {float: right;margin-top: 10px;margin-right: 10px;}
+    .print-time {width: 100%;height: 150px;position: relative;}
+    .print {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);-moz-transform: translate(-50%, -50%);outline: none;cursor: pointer;width: 232px;height: 50px;background-color: #e15616;box-shadow: 0px 3px 6px 0px rgba(249, 75, 75, 0.17);border-radius: 2px;border: 0;color: #fff;font-size: 18px}
+    .colour {color: #627386;}
 }

+ 124 - 0
src/main/resources/static/css/supplier-center/shop/goods.css

@@ -0,0 +1,124 @@
+li{list-style: none}
+ @media screen and (min-width:768px) {
+  .crumbs{color: #22272e;font-size: 16px;}
+  .head-top>form{overflow: hidden;background: #fff;padding:17px;box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07)}
+  form>div {float: left; height: 40px;font-size: 12px;color: #627386;line-height: 40px;margin-right: 10px;margin-bottom: 10px}
+  .Buyer {width: 210px; height: 34px;background-color: #ffffff;border-radius: 2px;border: solid 1px #b8bfca;padding-left: 10px;cursor: pointer;}
+  .state {width: 168px;height: 36px;background-color: #ffffff;border-radius: 2px;border: solid 1px #b8bfca;padding-left: 10px;
+  color: #627386;cursor: pointer; margin-right: 10px}
+  input::placeholder{color: #9aa5b5;font-size: 12px;}
+  textarea::placeholder{color: #9aa5b5;}
+  #newBtn div{height: 36px;border-radius: 2px;display: inline-block;text-align: center;cursor: pointer}
+  #newBtn{float: right;margin: 0}
+  .query-btn{background-color: #e15616;color: #fff;width: 88px;border: 1px solid #e15616}
+  .goods-main{width: 100%; height: auto; float: left; margin:10px 0;background: #fff;}
+  .goods-main-empty{width: 100%;height: 60px;line-height: 60px;text-align: center;float: left;margin-top: 20px;}
+  .goods-main-empty p{font-size: 14px;color: #333;}
+  .goods-main-empty p a{color: #e15616;text-decoration: underline;margin: 0 3px;}
+  .goods-title{ height: 56px;line-height: 56px;border-bottom: solid 1px #e2e7ef;padding: 0 20px}
+  .goods-main .goods-table ul li{float:left;width: 10%;text-align: center}
+  .goods-main .goods-table ul li:nth-child(2){ width: 25%;}
+  .goods-main .goods-table ul li:nth-child(3),.goods-main .goods-table ul li:nth-child(4){width: 16%}
+  .goods-main .goods-table ul li:last-child{width: 23%;position: relative}
+  .tbody ul li{height: 96px;font-size: 12px;}
+  .tbody ul{overflow: hidden;padding: 0 20px}
+  .tbodyle ul li:nth-child(2){width: 25%;}
+  .tbody ul li:nth-child(3),.goods-main .goods-table ul li:nth-child(3){ width: 16%}
+  .tbody ul li:last-child{width: 20%}
+  .goods-main .checkbox { height: 90px;overflow: hidden; cursor: pointer;line-height: 90px}
+  .tbody .checkbox .box{ display: inline-block; width: 20px;height: 90px;margin-top: 2px;float: left;}
+  .goods-main  .tbody .checkbox span{ display: inline-block;float: left;margin-left: 6px;}
+  .checkbox .icon-weigouxuan:before{ width: 16px;height: 16px; background-position: -332px -32px;}
+  .checkbox .icon-gouxuan:before{width: 16px; height: 16px;background-position: -210px 0px}
+  .goods-main  .tbody .good-info{display: inline-block}
+  .goods-main  .tbody .good-info img{
+    width: 80px;
+    height: 80px;
+    margin-top: 8px
+}
+.tbody ul li .good-classFly,.tbody ul li .good-price,.tbody ul li .status{
+    line-height: 90px ;
+}
+ .goods-main  .tbody .good-name{
+    margin-left: 8px;
+    vertical-align: middle;
+    word-break: break-all;
+    overflow: hidden;
+    text-overflow: ellipsis;
+    display: -webkit-inline-box;
+    -webkit-line-clamp: 2;
+    -webkit-box-orient: vertical;
+    width: 112px
+}
+ .goods-main  .tbody .good-handle{
+   padding: 0 7px;
+    line-height: 40px;
+    position: absolute;
+    width: 180px;
+    top: 0;
+    left: 0;
+    right: 0;
+    bottom: 0;
+    margin: auto;
+    height: fit-content
+}
+.goods-main  .tbody .btn{
+    width: 52px;
+    height: 24px;
+    background-color: #ffe6dc;
+    border-radius: 2px;
+    border: solid 1px #e15616;
+    display: inline-block;
+    line-height: 24px;
+    color: #e15616;
+}
+.goods-main .tbody .success,.goods-main .tbody .danger{width: 88px}
+.goods-main .tbody .primary{width: 62px}
+.goods-container .good-footer{
+    width: 100%;
+    height: 56px;
+    float: left;
+    padding: 10px 0;
+}
+.goods-container .good-footer .footer-left{
+    float: left;
+    margin-left: 20px
+}
+.goods-container .good-footer .checkbox {
+       line-height: 36px;
+}
+.goods-container .good-footer .checkbox .box{
+    line-height: 40px;
+    float: left;
+}
+.goods-container .good-footer .checkbox span{
+    display: inline-block;
+    float: left;
+    margin-left: 10px;
+}
+
+.goods-container .good-footer .footer-right{
+    float: right;
+}
+.goods-container .good-footer .footer-right .btn{
+    width: 90px;
+    height: 36px;
+    display: block;
+    line-height: 36px;
+    text-align: center;
+    font-size: 14px;
+    border-radius: 2px;
+    margin-right: 30px;
+    color: #FFF;
+
+}
+.goods-container .good-footer .footer-right .btn.icon-weigouxuan{
+    border: solid 1px #9aa5b5;
+    color: #22272e;
+    opacity: .5;
+}
+.goods-container .good-footer .footer-right .btn.icon-gouxuan{
+    background-color: #e15616;
+}
+.bg-gouxuan{background-color: #f0f3f7;}
+  }

BIN
src/main/resources/static/img/base/icon_m.png


+ 399 - 516
src/main/resources/static/js/shopping/confirm.js

@@ -4,438 +4,445 @@ var shoppingConfirm = new Vue({
         userId: 0,
         userIdentity: '',
         userToken: '',
-        optionData:'',
-        subType:'',//跳转类型
-        cartType:'',//提交订单类型
-        goodsList:[],//商品列表
-        isEmpty:false,//是否显示列表
-        allPrice:'',//订单总价格
-        allCount:'',//订单总数量
-        productKind:'',//商品种类
-        payAllPrice:'',//支付价格
-        surplusMoney:0.00,//显示勾选后的剩余抵扣
-        userMoney:0.00,	//显示可使用余额
-        deductMoney:0.00,//显示已使用的余额
-        productIds:'',//商品ID
-        productCount:'',//提交订单的商品数量
-        addressList:[],//收货地址
-        addressData:{},//初始化地址信息
-        hanldAddressData:{},//选择确定的地址信息
-        isAddType:'',
-        addAddressData:{
-            addressID:'',
-            allAddress:'所在地区',
-            userID: '',			//用户id ,只在新增收货地址时传
-            shouHuoRen: '',		//收货人
-            mobile:'',			//收货人手机
-            townID:'',			//区ID
-            address: '',	//地址
-            defaultFlag:0,		//是否默认收货地址(0 不是默认,1 默认)
-        },//初始化地址信息
-        addressID:'',//地址ID
-        townID:'',//区ID
-        freightText:'',
-        freightMoney:'',
-        selectedFreight:'',//默认邮费
-        hanldFreePostFlag:'',//
-        hanldFreight:'',//
-        isRequest:false,
-        isFiexdClass:'float',
-        isDefaultFlag:false,
-        isShowAddress:false,
-        isShowInvoice:false,
-        isShowBalance:false,
-        isShwoAddModel:false,
-        isShowCascader:false,
-        isConDisabled:false,
-        isSubDisabled:false,
-        isCheckedBalabce:false,
-        isDefaultChecked:false,
-        balanceDeductionFlag:2,
-        isAddressListLength:false,
-        invoiceType:'1',
-        invoiceTitle:0,
-        goodRemark:[],
-        optionList:['到付'],
-        ProvinceList:[],
-        cityArray:[],
-        townArray:[],
-        currentTab:0,
-        choseAddressText:'',//选取的地址信息
-        freightData:'',//运费信息
-        orderInfo:[],//提交的商品信息
-        payInfo:{},	//订单信息
-        addTabList:[
-            {name:'省'},
-            {name:'区'},
-            {name:'市'}
-        ],
-        addressFrom: {
-            name:'',
-            province: '',
+        type: '',
+        productIds: '',
+        listData: [],
+        kindCount: 0,
+        totalCount: 0,
+        totalPrice: 0,
+        address: {
+            id: '',
+            townId: '',
+            cityId: '',
+            provinceId: '',
+            name: '',
+            mobile: '',
+            desc: '',
+            town: '',
             city: '',
-            town: ''
-        },
-        invoiceData:{//初始化发票信息
-            id:'',
-            invoiceTitle:'',	 //单位名称
+            province: '',
+            default: '',
+            selectedId: ''
+        },
+        addressList: [],
+        isShowAddressList: false,
+        isShowAddressForm: false,
+        addressForm: {
+            id: '',
+            name: '',
+            mobile: '',
+            townId: '',
+            cityId: '',
+            provinceId: '',
+            desc: '',
+            default: ''
+        },
+        provinceOptions:[],
+        cityOptions:[],
+        townOptions:[],
+        saveLoading: false,
+        rule:{
+            name: '^[a-zA-Z\\u4e00-\\u9fa5]{2,}$',
+            mobile: '^\\d{6,12}$'
+        },
+        balance: {
+            flag: false,        //使用余额抵扣
+            originUserMoney: 0, //初始化后不能改变,用于还原余额抵扣
+            userMoney: 0,	    //显示可使用余额
+            deductMoney: 0,     //显示已使用的余额
+            surplusMoney: 0     //显示勾选后的剩余抵扣
+        },
+        payInfo: {
+            clauseId: 0,         //条款(暂时保留)
+            orderShouldPayFee: 0,//提交的总价
+            balancePayFlag: 0,   //余额抵扣的状态 0不使用,1使用
+            freight: 0,          //邮费
+            freePostFlag:-1      // 0包邮 -1到付 1 有运费
+        },
+        invoice: {
+            type: 0,
+            invoiceTitleType: 0, //发票抬头类型 1企业 0个人
+            invoiceTitle: '',    //单位名称
             corporationTaxNum:'',//纳税人识别号
             registeredAddress: '',//单位地址
             registeredPhone:'',	 //注册电话
             openBank:'',		//开户银行
-            bankAccountNo: ''  ,//银行账号
-            type:0
+            bankAccountNo: ''  //银行账号
         },
-        invoiceTypeList:[
-            {value:'1',name:'不开发票'},
-            {value:'2',name:'普通发票'},
-            {value:'3',name:'增值税发票'}
-        ],
-        invoiceTitleList:[
-            {value:'0',name:'个人'},
-            {value:'1',name:'公司'},
-        ],
-        peopleInvoiceData:{
-            invoiceTitle:'',   //单位名称
-            invoiceContent:'明细', //商品明细
-            corporationTaxNum:'',//纳税人识别号
-            invoiceTitleType:'0'//发票抬头类型 1企业 0个人
-        },
-        checkedAddressItemIndex:0,
-    },
-    filters: {
-        NumFormat:function(text) {
-            return Number(text).toFixed(2);
-        }
+        submitLoading: false
     },
     computed: {
 
+    },
+    filters: {
+        NumFormat:function(num) {
+          var temp = String(num).split('.');
+          if (temp.length === 1 || temp[1].length < 2) {
+            return Number(num).toFixed(2);
+          }else{
+            return Number(num);
+          }
+        }
     },
     methods: {
-        getAddressList:function(userId,pageSize){//获取收货地址
-            var _self = this;
-            OrderApi.GetAddressList({userID:userId,pageNum:1,pageSize:pageSize},function (response) {
-                if(response.code == 0){
-                    var data = response.data;
-                    if(data.results != ''){
-                        _self.addressList = [];
-                        _self.addressList = data.results;
-                        _self.addressData =  data.results[0];
-                        _self.addressID = data.results[0].addressID;
-                        _self.townID = data.results[0].townID;
-                        _self.getFreightData();
-                        _self.isAddressListLength = false;
-                    }else{
-                        _self.isAddressListLength = true;
-                        _self.addressData = _self.addressData;
-                        _self.GetProvinceFn()
-                    }
-                }else {
-                    CAIMEI.Alert(response.msg, '确定', false);
-                }
-            })
+        blurHandle: function(event) {
+            var el = event.currentTarget;
+            verifyHandle(el);
         },
-        getConfirmInfo: function (productIds, productCount) {//订单初始化
+        getConfirmList: function (productCount) {
             var _self = this;
-            if(_self.userId ===0){return;}
-            OrderApi.GetOrderConfirmInfo({userId: _self.userId,count: productCount,productIds: productIds},function(response){
-                if (response.code === 0 && response.data) {
-                    var data = response.data;
-                    _self.isRequest = true;
-                    _self.goodsList = data.list;
-                    _self.allPrice =  data.totalPrice;
-                    _self.allCount =  data.totalCount;
-                    _self.payAllPrice = data.totalPrice;
-                    _self.productKind = data.productKind;
-                    _self.userMoney = data.userMoney;
+            if(this.userId ===0){return;}
+            OrderApi.GetOrderConfirmInfo({
+                userId: _self.userId,
+                count: productCount,
+                productIds: this.productIds
+            },function(r){
+                if (r.code === 0 && r.data) {
+                    _self.listData = r.data.list;
+                    _self.totalPrice =  r.data.totalPrice;
+                    _self.totalCount =  r.data.totalCount;
+                    _self.kindCount = r.data.kindCount;
+                    _self.balance.userMoney = r.data.userMoney;
+                    _self.balance.originUserMoney = r.data.userMoney;
+                    _self.payInfo.orderShouldPayFee = r.data.totalPrice;
                     _self.getAddressList(_self.userId,20);
                 }else{
-                    CAIMEI.Alert(response.msg, '确定', false);
+                    CAIMEI.Alert(r.msg, '确定', false);
                 }
             });
         },
-        getFreightData :function(){//获取邮费信息
+        // 获取邮费
+        getFreight: function(townId){
             var _self = this;
-            var params ={userId:_self.userId,productIds:_self.productIds,totalPrice:_self.allPrice,townId:_self.addressData.townID};
-            OrderApi.GetOrderPostage(params,function (response) {
-                if(response.code == 0){
-                    _self.freightData = response.data;
-                    _self.hanldFreePostFlag = response.data.freePostFlag;
-                    _self.hanldFreight = response.data.freight;
-                    switch(_self.freightData.freePostFlag){
-                        case 0:
-                            _self.freightText = '包邮';
-                            _self.freightData.freight  = 0;
-                            break;
-                        case 1:
-                            _self.freightText = '';
-                            _self.freightMoney =  _self.freightData.freight;
-                            var key = '到付';
-                            _self.optionList = [key];
-                            _self.optionList.unshift(_self.orderPriceToFixed(_self.freightMoney));
-                            _self.selectedFreight = _self.optionList[0];
-                            break;
-                        case -1:
-                            _self.freightText = '到付';
-                            _self.freightData.freight  = 0;
-                            break;
-                    };
-                    if(_self.hanldFreePostFlag == 1){
-                        _self.payAllPrice = _self.allPrice + response.data.freight;
-                        _self.attributePallPrice();
-                    }else{
-                        _self.payAllPrice = _self.allPrice;
-                        _self.attributePallPrice();
-                    }
+            OrderApi.GetOrderPostage({
+                userId: this.userId,
+                productIds: this.productIds,
+                totalPrice: this.totalPrice,
+                townId: townId
+            },function (r) {
+                if(r.code === 0 && r.data){
+                    _self.payInfo.freePostFlag = r.data.freePostFlag;
+                    _self.payInfo.freight = (r.data.freePostFlag===1 ? r.data.freight : 0);
+                    _self.payInfo.orderShouldPayFee = _self.totalPrice + _self.payInfo.freight;
                 }else{
                     CAIMEI.Alert(response.msg, '确定', false);
                 }
             })
         },
-        toggleThisLadder: function(event){
-            var el = event.currentTarget;
-            if($(el).hasClass("on")){
-                $(el).removeClass("on").siblings('.mFixed').hide();
-                if(!isPC){looseBody();}
-            }else{
-                $(el).addClass("on").siblings('.mFixed').show();
-                if(!isPC){fixedBody();}
-            }
-        },
-        hideThisLadder: function(event){
-            var el = event.currentTarget;
-            $(el).parents('.priceTag').find('.tag').removeClass("on").siblings('.mFixed').hide();
-            if(!isPC){looseBody();}
-        },
-        submitOrder: function(){
-
+        // 获取收货地址
+        getAddressList: function(userId,pageSize){
+            var _self = this;
+            OrderApi.GetAddressList({
+                userID:userId,
+                pageNum:1,
+                pageSize:pageSize
+            },function (r) {
+                if(r.code === 0 && r.data){
+                    if(r.data.results){
+                        _self.addressList = r.data.results;
+                        _self.address.id = r.data.results[0].addressID;
+                        _self.address.townId = r.data.results[0].townID;
+                        _self.address.cityId = r.data.results[0].cityID;
+                        _self.address.provinceId = r.data.results[0].provinceID;
+                        _self.address.name = r.data.results[0].shouHuoRen;
+                        _self.address.mobile = r.data.results[0].mobile;
+                        _self.address.desc = r.data.results[0].address;
+                        _self.address.town = r.data.results[0].town;
+                        _self.address.city = r.data.results[0].city;
+                        _self.address.province = r.data.results[0].province;
+                        _self.address.default = true;
+                        _self.address.selectedId = r.data.results[0].addressID;
+                        _self.getFreight(_self.address.townId);
+                    }else{
+                        _self.createAddress();
+                    }
+                    _self.getProvinceOptions();
+                }else {
+                    CAIMEI.Alert(r.msg, '确定', false);
+                    _self.createAddress();
+                }
+            })
         },
-        GetProvinceFn: function(){//获取全部省份
+        // 获取全部省份
+        getProvinceOptions: function(){
             var _self = this;
-            PublicApi.GetProvince({},function(response){
-                if(response.code == 0){
-                    _self.ProvinceList =response.data;
+            PublicApi.GetProvince({},function(r){
+                if(r.code === 0 && r.data){
+                    _self.provinceOptions =r.data;
                 }else{
-                    CAIMEI.Alert(response.msg,'确定',false);
+                    CAIMEI.Alert(r.msg,'确定',false);
                 }
-            })
+            });
         },
-        ChangeProvince:function () {//选择省份
+        getCityOptions: function(provinceId,callback){
             var _self = this;
-            _self.addressFrom.province = event.target.value;
-            if(_self.addressFrom.province==''){//省为请选择时市区初始化
-                _self.cityArray=[];
-                _self.townArray=[];
-                _self.addAddressData.townID=''
-            }else {
-                _self.ChangeGetcity();
+            if(provinceId && provinceId>0){
+                _self.cityOptions = [];
+                _self.townOptions = [];
+                _self.addressForm.cityId = '';
+                _self.addressForm.townId = '';
+                PublicApi.GetCity({ provinceId: provinceId },function(r){
+                    if(r.code === 0 && r.data){
+                        _self.cityOptions = r.data;
+                        if(callback){callback();}
+                    }else{
+                        CAIMEI.Alert(r.msg,'确定',false);
+                    }
+                });
             }
         },
-        ChangeGetcity:function(event){//加载市
+        getTownOptions: function(cityId, callback){
             var _self = this;
-            PublicApi.GetCity({ provinceId: _self.addressFrom.province },function(response){
-                if(response.code == 0 ){
-                    _self.cityArray = response.data;
-                    _self.addressFrom.city = event.target.value;
-                    if(_self.addressFrom.city==''){
-                        _self.townArray=[];
-                    }else {
-                        _self.ChangeGetcTown();
+            if(cityId && cityId>0){
+                _self.townOptions = [];
+                _self.addressForm.townId = '';
+                PublicApi.GetTown({cityId: cityId},function(r){
+                    if(r.code === 0 && r.data){
+                        _self.townOptions = r.data;
+                        if(callback){callback();}
+                    }else{
+                        CAIMEI.Alert(r.msg,'确定',false);
                     }
-                }else{
-                    CAIMEI.Alert(response.msg,'确定',false);
-                }
-            })
+                })
+            }
         },
-        ChangeGetcTown:function(event){//选择地区
-            var _self = this;
-            PublicApi.GetTown({ cityId: _self.addressFrom.city },function(response){
-                if(response.code == 0 ){
-                    _self.townArray = response.data;
-                    _self.addAddressData.townID = event.target.value;
-                    console.log(_self.addAddressData.townID)
-                }else{
-                    CAIMEI.Alert(response.msg,'确定',false);
-                }
-            })
+        showAddressBox: function(){
+            this.isShowAddressList = true;
+            if(!isPC){fixedBody();}
+        },
+        closeAddressBox: function(){
+            this.isShowAddressList = false;
+            if(!isPC){looseBody();}
+        },
+        hideAddressForm: function(){
+            this.isShowAddressForm = false;
+            if(!isPC){looseBody();}
         },
-        settingDefaultFlag :function(){//添加&&编辑 保存 设置默认地址按钮
+        createAddress: function(){
+            this.isShowAddressForm = true;
+            if(!isPC){fixedBody();}
+        },
+        updateAddress: function(){
+            this.isShowAddressForm = true;
+            this.addressForm.id = this.address.id;
+            this.addressForm.name = this.address.name;
+            this.addressForm.mobile = this.address.mobile;
+            this.addressForm.default = this.address.default;
+            this.addressForm.desc = this.address.desc;
+            this.addressForm.provinceId = this.address.provinceId;
             var _self = this;
-            _self.isDefaultFlag=! _self.isDefaultFlag;
-            if(_self.isDefaultFlag){
-                _self.addAddressData.defaultFlag = '1';
-            }else{
-                _self.addAddressData.defaultFlag = '0';
-            }
+            this.getCityOptions(this.address.provinceId, function(){
+                _self.addressForm.cityId = _self.address.cityId;
+                _self.getTownOptions(_self.address.cityId,function(){
+                    _self.addressForm.townId = _self.address.townId;
+                });
+            });
+            if(!isPC){fixedBody();}
         },
-        addAddressFn :function(){//添加新的地址
+        saveAddressForm: function(){
             var _self = this;
-            _self.addAddressData={
-                addressID:'',
-                allAddress:'',
-                userID: '',		//用户id ,只在新增收货地址时传
-                shouHuoRen: '',	//收货人
-                mobile:'',		//收货人手机
-                townID:'',		//区ID
-                address: '',	//地址
-                defaultFlag:0,	//是否默认收货地址(0 不是默认,1 默认)
-            };
-            _self.isAddType = 'add';
-            _self.isShwoAddModel = true;
+            var pass = verifyForm();
+            if (_self.saveLoading) { return false; }
+            this.$nextTick(function() {
+                if (!pass) {return false;}
+                if(!_self.addressForm.townId){
+                    CAIMEI.dialog('请选择所在地区');
+                    return false;
+                };
+                _self.saveLoading = true;
+                var params = {
+                    userID:_self.userId, //用户id ,只在新增收货地址时传
+                    shouHuoRen:_self.addressForm.name, //收货人
+                    mobile:_self.addressForm.mobile,   //手机
+                    townID:_self.addressForm.townId,   //区ID
+                    address:_self.addressForm.desc, //地址
+                    defaultFlag:_self.addressForm.default?1:0 //是否默认收货地址(0 不是默认,1 默认)
+                };
+                if(_self.addressForm.id){
+                    // 编辑
+                    params.addressID = _self.addressForm.id;//编辑保存地址ID
+                }
+                _self.saveAddress(params);
+            });
         },
-        editAddress :function(item){//编辑地址
+        saveAddress: function(params){
             var _self = this;
-            if(_self.defaultFlag =='1'){
-                _self.isDefaultChecked = true;
-            }else{
-                _self.isDefaultChecked = false;
-            }
-            _self.isAddType = 'edit';
-            _self.isShwoAddModel = true;
-            _self.addAddressData = item;
-            _self.addAddressData.allAddress=item.province+''+item.city+''+item.town;
+            OrderApi.AddSaveAddress(params,function(r){
+                if(r.code === 0){
+                    CAIMEI.dialog('保存成功');
+                    _self.saveLoading = false;
+                    this.isShowAddressForm = false;
+                    // 重新获取地址列表
+                    _self.getAddressList(_self.userId,20);
+                }else{
+                    CAIMEI.Alert(r.msg,'确定',false);
+                }
+            });
         },
-        defaultAddressFn :function(addressID){//列表直接设为默认地址
+        // 列表直接设为默认地址
+        setDefaultAddress: function(addressId){
             var _self = this;
-            OrderApi.DefaultAddress({addressId:addressID,userId:_self.userId},function (response) {
-                if(response.code == 0 ){ //成功
-                    _self.addressList = [];
+            OrderApi.DefaultAddress({addressId:addressId,userId:_self.userId},function (r) {
+                if(r.code === 0 ){
+                    // 重新获取地址列表
                     _self.getAddressList(_self.userId,20);
                 }else{
-                    CAIMEI.Alert(response.msg,'确定',false);
+                    CAIMEI.Alert(r.msg,'确定',false);
                 }
             });
         },
-        deleteAddress :function(addressID){//列表删除单个地址
+        // 列表删除单个地址
+        deleteAddress: function(addressId){
             var _self = this;
             CAIMEI.Modal('确定要删除该地址?','取消','确定',function () {
-                OrderApi.DeleteAddress({addressID:addressID,userID:_self.userId},function (response) {
-                    if(response.code == 0 ){ //删除成功
+                OrderApi.DeleteAddress({addressID:addressId,userID:_self.userId},function (r) {
+                    if(r.code === 0 ){
                         CAIMEI.dialog('删除成功');
-                        _self.addressList = [];
+                        // 重新获取地址列表
                         _self.getAddressList(_self.userId,20);
                     }else{
-                        CAIMEI.Alert(response.msg,'确定',false);
+                        CAIMEI.Alert(r.msg,'确定',false);
                     }
                 })
             });
         },
-        changeHandle :function(index) {//商品备注的值被改变后
-            this.goodsList[index].note = this.goodRemark[index];
-            // console.log(this.goodsList)
+        chooseAddress: function(selectedId){
+            this.address.selectedId = selectedId;
         },
-        ConfirmAddressFn :function(){//保存地址
+        confirmAddress: function(){
             var _self = this;
-            if(_self.addAddressData.townID == ""){
-                CAIMEI.dialog('请选择所在地区');
-                return;
-            };
-            if(_self.addAddressData.address == ""){
-                CAIMEI.dialog('请填写详细地址');
-                return;
-            };
-            if(_self.addAddressData.shouHuoRen == ""){
-                CAIMEI.dialog('请输入收货人姓名');
-                return;
-            };
-            if(_self.addAddressData.mobile == ""){
-                CAIMEI.dialog('请输入收货人手机号');
-                return;
-            };
-            if( _self.isAddType == 'add'){
-                var params = {
-                        userID:_self.userId  ,		//用户id ,只在新增收货地址时传
-                        shouHuoRen:_self.addAddressData.shouHuoRen ,//收货人
-                        townID:_self.addAddressData.townID,			//区ID
-                        address:_self.addAddressData.address,//地址
-                        mobile:_self.addAddressData.mobile,			//手机
-                        defaultFlag:_self.addAddressData.defaultFlag//是否默认收货地址(0 不是默认,1 默认)
-                };
-            }else{
-                var params = {
-                        addressID:_self.addAddressData.addressID,//编辑保存地址ID
-                        userID:_self.userId  ,		//用户id ,只在新增收货地址时传
-                        shouHuoRen:_self.addAddressData.shouHuoRen ,//收货人
-                        townID:_self.addAddressData.townID,			//区ID
-                        address:_self.addAddressData.address,//地址
-                        mobile:_self.addAddressData.mobile,			//手机
-                        defaultFlag:_self.addAddressData.defaultFlag//是否默认收货地址(0 不是默认,1 默认)
-                };
-            }
-            _self.isConDisabled = true;
-            OrderApi.AddSaveAddress(params,function(response){
-                if(response.code == 0){
-                    CAIMEI.dialog('保存成功');
-                    _self.getAddressList(_self.userId,20);
-                    _self.isShwoAddModel = false;
-                    _self.isConDisabled = false;
-                }else{
-                    CAIMEI.Alert(response.msg,'确定',false);
+            this.addressList.forEach(function(item){
+                if (_self.address.selectedId==item.addressID){
+                    _self.address.id = item.addressID;
+                    _self.address.townId = item.townID;
+                    _self.address.cityId = item.cityID;
+                    _self.address.provinceId = item.provinceID;
+                    _self.address.name = item.shouHuoRen;
+                    _self.address.mobile = item.mobile;
+                    _self.address.desc = item.address;
+                    _self.address.town = item.town;
+                    _self.address.city = item.city;
+                    _self.address.province = item.province;
+                    _self.address.default = (item.defaultFlag > 0);
+                    _self.getFreight(_self.address.townId);
                 }
             });
+            this.closeAddressBox();
+        },
+        toggleThisLadder: function(event){
+            var el = event.currentTarget;
+            if($(el).hasClass("on")){
+                $(el).removeClass("on").siblings('.mFixed').hide();
+                if(!isPC){looseBody();}
+            }else{
+                $(el).addClass("on").siblings('.mFixed').show();
+                if(!isPC){fixedBody();}
+            }
         },
-        ConfirmOrderFn :function(){//提交订单
+        hideThisLadder: function(event){
+            var el = event.currentTarget;
+            $(el).parents('.priceTag').find('.tag').removeClass("on").siblings('.mFixed').hide();
+            if(!isPC){looseBody();}
+        },
+        useUserMoney: function(){
+            var _self = this;
+            if(this.balance.userMoney>0){
+                this.$nextTick(function() {
+                    var total = _self.totalPrice + _self.payInfo.freight;
+                    if(_self.balance.flag){
+                        _self.payInfo.balancePayFlag = 1;
+                        if(_self.balance.userMoney>=total){
+                            // 全部抵扣
+                            _self.payInfo.orderShouldPayFee = 0;
+                            _self.balance.deductMoney = total;
+                            _self.balance.surplusMoney = _self.balance.userMoney-total;
+                        }else{
+                            // 部分抵扣
+                            _self.payInfo.orderShouldPayFee = total - _self.balance.userMoney;
+                            _self.balance.deductMoney = _self.balance.userMoney;
+                            _self.balance.surplusMoney = 0;
+                        }
+                    }else{
+                        // 取消抵扣
+                        _self.payInfo.balancePayFlag = 0;
+                        _self.payInfo.orderShouldPayFee = total;
+                        _self.balance.userMoney = _self.balance.originUserMoney;
+                        _self.balance.deductMoney = 0;
+                        _self.balance.surplusMoney = _self.balance.originUserMoney;
+                    }
+                });
+            }
+        },
+        submitOrder: function(){
             var _self = this;
-            if (_self.isSubDisabled) { return false; }
-            if(_self.addressID == ''){
+            if(this.submitLoading){return false;}
+            if(!this.address.id){
                 CAIMEI.dialog('请先添加收货地址~');
-                return;
+                return false;
             }
-            //选择开发票处理
-            if(_self.invoiceType == '1'){
-                CAIMEI.returnedTarget();
-                _self.invoiceData = Object.assign(_self.invoiceData,'',{type:0});
-            }else if(_self.invoiceType == '2'){
-                switch(_self.peopleInvoiceData.invoiceTitleType){
-                    case '0':
-                        if(_self.peopleInvoiceData.invoiceTitle == ""){
-                            CAIMEI.dialog('请输入个人抬头');
-                            return;
-                        }
-                        break;
-                    case '1':
-                        if(_self.peopleInvoiceData.invoiceTitle == ""){
-                            CAIMEI.dialog('请输入公司抬头');
-                            return
-                        }
-                        if(_self.peopleInvoiceData.corporationTaxNum == ""){
-                            CAIMEI.dialog('请输入纳税人识别号');
-                            return
-                        }
-                        break;
+            if(this.invoice.type === 1){
+                // 普通发票
+                if(!this.invoice.invoiceTitle){
+                    CAIMEI.dialog('请输入个人抬头');return false;
+                }
+                if(this.invoice.invoiceTitleType===1 && !this.invoice.corporationTaxNum){
+                    CAIMEI.dialog('请输入纳税人识别号');return false;
+                }
+            }else if(this.invoice.type === 2){
+                // 增值税发票
+                if(!this.invoice.invoiceTitle){
+                    CAIMEI.dialog('请输入个人抬头');return false;
                 }
-            }else if(_self.invoiceType == '3'){
-                if(_self.invoiceData.invoiceTitle == ""){
-                    CAIMEI.dialog('请输入单位名称');
-                    return;
+                if(!this.invoice.corporationTaxNum){
+                    CAIMEI.dialog('请输入纳税人识别号');return false;
                 }
-                if(_self.invoiceData.corporationTaxNum == ""){
-                    CAIMEI.dialog('请输入纳税人识别号');
-                    return;
+                if(!this.invoice.registeredAddress){
+                    CAIMEI.dialog('请输入单位地址');return false;
                 }
-                if(_self.invoiceData.registeredAddress == ""){
-                    CAIMEI.dialog('请输入单位地址');
-                    return;
+                if(!this.invoice.registeredPhone){
+                    CAIMEI.dialog('请输入注册电话');return false;
                 }
-                if(_self.invoiceData.registeredPhone == ""){
-                    CAIMEI.dialog('请输入注册电话');
-                    return;
+                if(!this.invoice.openBank){
+                    CAIMEI.dialog('请输入开户银行');return false;
                 }
-                if(_self.invoiceData.openBank == ""){
-                    CAIMEI.dialog('请输入开户银行');
-                    return;
+                if(!this.invoice.bankAccountNo){
+                    CAIMEI.dialog('请输入银行账号');return false;
                 }
-                if(_self.invoiceData.bankAccountNo == ""){
-                    CAIMEI.dialog('请输入银行账号');
-                    return;
+            }
+            var params = {
+                cartType: this.type,
+                orderSource: 1,            // 购买类型:(1购物车提交[对应表cm_cart],2直接购买提交, 3协销下单)
+                serviceProviderId: '',     // 协销ID(小程序忽略)
+                clubUserId: this.userId,   // 机构用户ID
+                addressId: this.address.id,// 地址ID
+                orderInfo: [],             // 商品信息
+                payInfo: this.payInfo,     // 订单信息
+                orderInvoice: {type: 0}    // 默认不开发票
+            };
+            // 发票信息
+            if(this.invoice.type === 1){
+                params.orderInvoice = {
+                   type: 1,  // 普通发票
+                   invoiceContent: '商品明细',
+                   invoiceTitleType: this.invoice.invoiceTitleType, //发票抬头类型 1企业 0个人
+                   invoiceTitle: this.invoice.invoiceTitle,         //发票抬头
+                   corporationTaxNum: this.invoice.corporationTaxNum//纳税人识别号
+                }
+            }else if(this.invoice.type === 2){
+                params.orderInvoice = {
+                   type: 2,  // 增值税发票
+                   invoiceTitle: this.invoice.invoiceTitle,          //单位名称
+                   corporationTaxNum: this.invoice.corporationTaxNum,//纳税人识别号
+                   registeredAddress: this.invoice.registeredAddress,//单位地址
+                   registeredPhone: this.invoice.registeredPhone,    //注册电话
+                   openBank: this.invoice.openBank,                  //开户银行
+                   bankAccountNo: this.invoice.bankAccountNo         //银行账号
                 }
-                CAIMEI.returnedTarget();
-                _self.invoiceData = Object.assign(_self.invoiceData,'',{type:2});
             }
             //商品信息
-            _self.orderInfo = _self.goodsList.map(function(el){
+            params.orderInfo = this.listData.map(function(supplier){
                 var productInfo = [];
-                el.cartList.forEach(function(item){
+                supplier.cartList.forEach(function(item){
                     productInfo.push({
                         productId:item.productId,
                         productNum:item.number,
@@ -443,182 +450,58 @@ var shoppingConfirm = new Vue({
                         productType:item.productType
                     })
                 });
-                return {shopId:el.id,note:el.note?el.note:'',productInfo:productInfo}
+                return {
+                    shopId: supplier.id,
+                    note: supplier.note ? supplier.note : '',
+                    productInfo: productInfo
+                }
             });
-            //订单信息
-            _self.payInfo = {
-                clauseId:0,//条款(暂时保留)
-                orderShouldPayFee:_self.payAllPrice.toFixed(2),//提交的总价
-                balancePayFlag:_self.balanceDeductionFlag,//余额抵扣的状态
-                freight:parseInt(_self.hanldFreight).toFixed(2),//邮费
-                freePostFlag:parseInt(_self.hanldFreePostFlag)//运费形式
-            };
-            var  params = {
-                    orderSource:1,
-                    clubUserId:_self.userId,
-                    cartType:_self.cartType,
-                    addressId:_self.addressID,
-                    orderInfo:_self.orderInfo,
-                    payInfo:_self.payInfo,	//订单信息
-                    orderInvoice:_self.invoiceData
-            };
-            // console.log('最后参数',params);
-            //提交
-            _self.isSubDisabled = true;
-            OrderApi.ConfirmOrder({'params':JSON.stringify(params)},function (response) {
-                // console.log(response);
-                if(response.code === 1){
+            params.payInfo.freight = toFloat(this.payInfo.freight);
+            params.payInfo.orderShouldPayFee = toFloat(this.payInfo.orderShouldPayFee);
+            console.log(params);
+            this.submitLoading = true;
+            OrderApi.ConfirmOrder({'params':JSON.stringify(params)},function (r) {
+                if(r.code === 1){
                     var data = { payableAmount: _self.deductMoney };
                     CAIMEI.Storage.removeItem('confirmOrderInfo');
                     CAIMEI.Storage.setItem('confirmOrderInfo',JSON.stringify({data:data}));
                     window.location.href = '/pay/success.html';
-                }else if(response.code === 2){
+                }else if(r.code === 2){
                     var data = {
-                        orderID:response.data.orderID,
-                        orderNo:response.data.orderNo,
-                        orderMark:response.data.orderMark,
-                        payableAmount:response.data.payableAmount
+                        orderID:r.data.orderID,
+                        orderNo:r.data.orderNo,
+                        orderMark:r.data.orderMark,
+                        payableAmount:r.data.payableAmount
                     };
                     CAIMEI.Storage.removeItem('confirmOrderInfo');
                     CAIMEI.Storage.setItem('confirmOrderInfo',JSON.stringify({data:data}));
-                    window.location.href = '/pay/caimei-paycash.html?type=confirm&orderID='+response.data.orderID;
-                }else{
-                    CAIMEI.Alert(response.msg,'确定',false);
-                    _self.isSubDisabled = false;
-                }
-            })
-        },
-        checkedAddressItemFn:function(index,item){//选择地址处理
-            var _self = this;
-            _self.checkedAddressItemIndex = index;
-            _self.hanldAddressData = item;
-        },
-        ConfirmCheckedAddressFn:function(){//确定使用选择的地址
-            var _self = this;
-            _self.addressData =  _self.hanldAddressData;
-            _self.isShowAddress = false;
-        },
-        HideCheckedAddressFn :function(){//隐藏选择地址列表
-            var _self = this;
-            _self.isShowAddress = false;
-        },
-        CancelAddressFn:function(){
-            var _self = this;
-            _self.isShwoAddModel = false;
-        },
-        ShowCheckedAddressFn :function(){//显示地址列表选择地址
-            var _self = this;
-            _self.isShowAddress = true;
-        },
-        ShowAddAddressFn :function(){//显示新增地址
-            var _self = this;
-            _self.isAddType = 'add';
-            _self.isShwoAddModel = true;
-            _self.addressData = this.addressData;
-            _self.GetProvinceFn();
-        },
-        radioChange :function(value){//发票信息选择
-            var _self=this;
-            _self.invoiceType = event.target.value;
-            for (var i = 0; i < _self.invoiceTypeList.length; i++) {
-                if (_self.invoiceTypeList[i].value === _self.invoiceType) {
-                    _self.current = i;
-                    break;
-                }
-            }
-            switch(_self.invoiceType){
-                case '1':
-                    CAIMEI.returnedTarget();
-                    _self.invoiceData = Object.assign(_self.invoiceData,'',{type:0});
-                    break;
-                case '2':
-                    _self.invoiceTitle = "0";
-                    _self.peopleInvoiceData.invoiceTitleType = "0";
-                    CAIMEI.returnedTarget();
-                    _self.invoiceData = Object.assign(_self.peopleInvoiceData,'',{type:1});
-                    break;
-                case '3':
-                    _self.getUseFindInvoice();
-                    break;
-            }
-        },
-        radioChangeTitle :function(event) {//发票抬头选择
-            this.peopleInvoiceData.invoiceTitleType = event.target.value;
-            for (var i = 0; i < this.invoiceTitleList.length; i++) {
-                if (this.invoiceTitleList[i].value === this.peopleInvoiceData.invoiceTitleType) {
-                    break;
-                }
-            }
-            switch(this.peopleInvoiceData.invoiceTitleType){
-                case '1':
-                    this.peopleInvoiceData.invoiceTitle = "";
-                    this.peopleInvoiceData.invoiceContent = "明细";
-                    break;
-            }
-        },
-        getUseFindInvoice :function(){//获取发票信息
-            var _self = this;
-            OrderApi.GetFindInvoice({userId:_self.userId},function(response){
-                if(response.code == 0){
-                    if(response.data == null){
-                        CAIMEI.returnedTarget();
-                        _self.invoiceData = Object.assign(_self.invoiceData,'',{type:0,userId:_self.userId})
-                    }else{
-                        _self.invoiceData = response.data
-                    }
+                    window.location.href = '/pay/caimei-paycash.html?type=confirm&orderID='+r.data.orderID;
                 }else{
-                    CAIMEI.Alert(response.msg,'确定',false);
+                    CAIMEI.Alert(r.msg,'确定',false);
                 }
-            })
-        },
-        checkedBalabce :function(){//勾选使用余额
-            if(this.userMoney > 0){
-                this.isCheckedBalabce = !this.isCheckedBalabce;
-                if(this.isCheckedBalabce){
-                    this.balanceDeductionFlag =1;
-                    this.attributePallPrice()
-                }else{
-                    if(this.hanldFreePostFlag == 1 || this.hanldFreePostFlag == '1'){
-                        this.payAllPrice = this.allPrice+ parseInt(this.freightData.freight);
-                    }else{
-                        this.payAllPrice = this.allPrice;
-                    }
-                    this.deductMoney = 0.00;
-                    this.balanceDeductionFlag = 2;
-                }
-            }else{
-                return
-            }
-        },
-        gernerateId :function(index){
-            return "male_" +index
-        },
-        gernerateTitleId :function(index){
-            return "title_" +index
-        },
+                _self.submitLoading = false;
+            });
+        }
     },
     created: function () {
-        var _self = this;
-        _self.subType = getUrlParam("type") ? getUrlParam("type")*1 : "";
+        this.type = getUrlParam("type") ? getUrlParam("type")*1 : "";
         if(globalUserData){
-            _self.userId = globalUserData.userId;
-            _self.userIdentity = globalUserData.identity;
-            _self.userToken = globalUserData.token;
-            // subType:(1购物车提交[对应表cm_cart],2直接购买提交)
-            if(_self.subType === 1) {
-                _self.cartType= 1;
-                _self.productIds = window.localStorage.getItem("shoppingProductIds");
+            this.userId = globalUserData.userId;
+            this.userIdentity = globalUserData.identity;
+            this.userToken = globalUserData.token;
+            // type:(1购物车提交[对应表cm_cart],2直接购买提交, 3协销下单)
+            if(this.type === 1) {
+                this.productIds = window.localStorage.getItem("shoppingProductIds");
                 // 获取列表数据
-                _self.getConfirmInfo( _self.productIds, null);
-            }else if(_self.subType === 2){
-                _self.cartType= 2;
-                _self.productIds = getUrlParam("id");
-                _self.productKind = getUrlParam("count");
-                if(_self.productIds && _self.productKind) {
+                this.getConfirmList(null);
+            }else if(this.type === 2){
+                this.productId = getUrlParam("id");
+                var count = getUrlParam("count");
+                if(this.productId && count) {
                     // 获取列表数据
-                    _self.getConfirmInfo(_self.productIds,_self.productKind);
+                    this.getConfirmList(count);
                 }else{
-                    CAIMEI.Alert('参数错误,请重新提交订单!', '确定', false);
+                    alertInfo("参数错误,请重新提交订单!");
                 }
             }
         }

+ 0 - 5
src/main/resources/static/js/supplier-center/order/detail.js

@@ -3,7 +3,6 @@ jqMultipleShow("click", ".navList", ".tab", ".con");
 var seeDetail = new Vue({
     el:'#seeDetail',
     data:{
-        open:false,
         shopID:'',
         userInfo:{},
         order:{},
@@ -28,10 +27,6 @@ var seeDetail = new Vue({
             }
          })
         },
-       opentittle:function(){
-       var _this = this
-           _this.open = !_this.open;
-    },
     },
     mounted:function () {
        var _self = this;

+ 0 - 4
src/main/resources/static/js/supplier-center/order/logistics.js

@@ -3,7 +3,6 @@ jqMultipleShow("click", ".navList", ".tab", ".con");
 var logistics = new Vue({
     el:'#logistics',
     data:{
-         open:false,
          userInfo:{},
          orderList:[],
          GoodsImagesList:[],
@@ -144,9 +143,6 @@ var logistics = new Vue({
               console.log(_self.kdlist.length);
              }
           });
-      if(isPC){
-            _self.open=true;
-        }
         _self.userInfo =JSON.parse(CAIMEI.Storage.getItem('userInfo'));
         _self.orderList = JSON.parse(CAIMEI.Storage.getItem('orderList'));
 

+ 0 - 4
src/main/resources/static/js/supplier-center/order/orderlist.js

@@ -27,7 +27,6 @@ var orderList = new Vue({
          pageInput: '1',
          listRecord: 0,
          isRequset:false,
-         open:false,
          requestFlag: true,
          noMore: false,
          results:[],
@@ -82,9 +81,6 @@ var orderList = new Vue({
             }
         })
     },
-    opentittle:function(){
-       this.open = !this.open;
-    },
     getpayStatus:function () { //结算状态
         var _this = this;
         if(event.target.value==0){

+ 0 - 7
src/main/resources/static/js/supplier-center/order/record.js

@@ -6,7 +6,6 @@ var deliveryRecode = new Vue({
     userInfo:{},
     results:[],
     isShow:false,
-    open:false,
      pageInput: '1',
      listRecord: 0,
      params:{
@@ -91,12 +90,6 @@ var deliveryRecode = new Vue({
         var _self = this;
          _self.params.shopOrderId=CAIMEI.getUrlParam('shopOrderID');
          _self.shipmentsRecord();
-          if(isPC){
-            _self.open=true;
-        }
-              if(isPC){
-            _self.open=true;
-        }
          if(!isPC){
             //移动端上垃加载更多
             $(window).on('scroll', function(){

+ 2 - 3
src/main/resources/static/js/supplier-center/shop/brand.js

@@ -62,12 +62,11 @@ var Brandgoods =new Vue({
        var _this = this;
         SupplierApi.brandList(_this.params,function (res) {
             if(res.code==0){
-                 if(res.data.results && res.data.results.length>0){
+                 if(res.data.results.length>0){
                      _this.brandlist=res.data.results;
-                     console.log(_this.brandlist)
                      _this.listRecord = res.data.totalRecord;
                  }else{
-                     _this.results = res.data.results;
+                     _this.brandlist = [];
                      _this.listRecord = res.data.totalRecord;
                  }
             }

+ 345 - 129
src/main/resources/static/js/supplier-center/shop/goods.js

@@ -1,38 +1,45 @@
 jqMultipleShow("click", ".navList", ".tab", ".con");
-var Brandgoods =new Vue({
-    el:'#Brandgoods',
-    data:{
-      params:{
-             userID: '',
-             pageNum :1,
-             pageSize:10,
-             name:'',
-             status:''
-        },
-        brandobj:{
-            userID:'',
-            name:'',
-            logo:'',
-            description:''
-        },
-        title:'',
-        formData:new FormData(),
-        brandlist:[],
-        pageInput: '1',
+var myGoods = new Vue({
+    el:"#myGoods",
+    data: {
+        userId:0,
+        shopId:'',
+        userIdentity:'',
+        isSelectActive:0,
+        isRequest:false,
         listRecord: 0,
-        bgflag:false,
-        logoShow:false,
-        iconflag:true
+        pageInput: '',
+        tabIndex:1,
+        featuredNum:'',//主图商品标志
+        listQuery:{
+            shopID:'',
+            pageNum:1,
+            pageSize:10,
+            productCode:'',//货号
+            name:'',//商品名称
+            validFlag:'',//状态
+            featuredFlag:'',//是否主推
+            bigTypeID:0,//一级
+            smallTypeID:0,//二级
+            tinyTypeID:0//三级
+        },
+        classFlyInfoArr:[{name:'全部',value:''}],
+        classificationFirstList:[],
+        classificationTwoList:[],
+        classificationThreeList:[],
+        productsList:[],
+        checkList:[],
+        isCheckedAll:false
     },
-     computed: {
+    computed: {
         pageTotal: function () {
-            var total = Math.ceil(this.listRecord / this.params.pageSize);
+            var total = Math.ceil(this.listRecord / this.listQuery.pageSize);
             return total > 0 ? total : 1;
         },
         showPageBtn: function () {
-            var total = Math.ceil(this.listRecord / this.params.pageSize);
+            var total = Math.ceil(this.listRecord / this.listQuery.pageSize);
             total = total > 0 ? total : 1;
-            var index = this.params.pageNum, arr = [];
+            var index = this.listQuery.pageNum, arr = [];
             if (total <= 6) {
                 for (var i = 1; i <= total; i++) {
                     arr.push(i);
@@ -44,118 +51,327 @@ var Brandgoods =new Vue({
             return [1, 0, index - 2, index - 1, index, index + 1, index + 2, 0, total];
         }
     },
-    methods:{
-        toPagination: function (pageNum) {
+    methods: {
+        GetMyproductDataInfo: function(){//我的商品数据初始化
+            var _this = this;
+            // _this.returnedTarget();
+            console.log(_this.listQuery)
+            SupplierApi.GetMyProductList(_this.listQuery,function(response){
+                if(response.code == 0){
+                    _this.isRequest = true;
+                    _this.featuredNum = response.data.featuredNum;
+                    var data = response.data.productPage;
+                    if(data.results && data.results.length>0){
+                        _this.productsList = data.results;
+                        _this.listRecord = data.totalRecord;
+                        var NewProduct = [],isAddFeatured=false;
+                        _this.productsList.map(function(el){
+                            if(_this.featuredNum<4){
+                                if(el.validFlag == 2 && el.featuredFlag ==0 ){
+                                    isAddFeatured = true;
+                                }else{
+                                    isAddFeatured = false;
+                                }
+                            }
+                            if(el.validFlag == 2 && el.featuredFlag == 1 ){
+                                isDelFeatured = true;
+                            }else{
+                                isDelFeatured = false;
+                            }
+                            _this.returnedTarget();
+                            NewProduct.push(Object.assign({},el,{isAddFeatured:isAddFeatured,isDelFeatured:isDelFeatured}))
+                        });
+                        _this.productsList = NewProduct;
+                    }else{
+                        _this.productsList = data.results;
+                    }
+                }else{
+                    CAIMEI.Alert(response.msg, '确定');
+                }
+            })
+        },
+        touchmoveFn: function(){
+            this.isSelectActive=0;
+        },
+        SelectChangeStateFn: function(){//选择状态
+            var _this = this;
+            _this.listQuery.validFlag =event.target.value;
+        },
+        SelectChangeInsideFn: function(){//选择主推
+            var _this = this;
+            _this.listQuery.featuredFlag =event.target.value;
+        },
+        GetFistClassFn: function(){//获取一级分类菜单
+            var _this = this;
+            PublicApi.GetFirstClassFication({},function (response) {
+            console.log(response)
+                if(response.data.length>0){
+                     _this.classificationFirstList = response.data;
+                }else {
+                      _this.classificationFirstList = [];
+                }
+            })
+        },
+        GetTwoClassFn: function(value){//获取二级分类菜单
+            var _this = this;
+            PublicApi.GetTwoClassFication({bigTypeId:value},function (response) {
+                if(response.code==0){
+                    if(response.data.length>0){
+                        _this.classificationTwoList = response.data;
+                     }else {
+                         _this.classificationTwoList = [];
+                     }
+                }
+            })
+        },
+        GetThreeClassFn: function(value){//获取三级分类菜单
+            var _this = this;
+            PublicApi.GetThreeClassFication({smallTypeId:value},function (response) {
+            console.log(response,'三级分类')
+                if(response.code==0){
+                  if(response.data.length>0){
+                        _this.classificationThreeList = response.data;
+                  }else {
+                     _this.classificationThreeList = [];
+                  }
+                }
+            })
+        },
+        ChangeClassificationFirst: function(){//选择一级分类
+            var _this = this;
+            _this.listQuery.bigTypeID = event.target.value;
+            if(_this.listQuery.bigTypeID == ''){
+                _this.listQuery.bigTypeID = '';
+            }else{
+                _this.GetTwoClassFn(_this.listQuery.bigTypeID);
+            }
+        },
+        ChangeClassificationTwo: function(){//选择二级分类
+            var _this = this;
+             _this.listQuery.smallTypeID = event.target.value;
+                console.log(event.target.value)
+            if(_this.listQuery.smallTypeID == ''){
+                _this.listQuery.smallTypeID = '';
+
+            }else{
+                _this.GetThreeClassFn(_this.listQuery.smallTypeID);
+                 console.log(2222)
+            }
+        },
+        ChangeClassificationThree: function(){//选择三级分类
+            var _this = this;
+             _this.listQuery.tinyTypeID = event.target.value;
+            if(_this.listQuery.tinyTypeID == ''){
+                _this.listQuery.tinyTypeID = '';
+            }else{
+            }
+        },
+        SearchQueryListFn: function(){//搜索
+            var _this = this;
+            _this.GetMyproductDataInfo();
+        },
+        checkNum : function() {
+            var _this = this;
+            if (_this.pageInput > _this.pageTotal) {
+                _this.pageInput = _this.pageTotal;
+            } else if (_this.pageInput < 1) {
+                _this.pageInput = 1;
+            }
+        },
+        toPagination : function(pageNum) {
+            var _this = this;
+            _this.productsList = [];
             if (pageNum <= this.pageTotal) {
-                this.params.pageNum = pageNum;
-                this.BrandList(this.params);
+                _this.listQuery.pageNum = pageNum;
+                _this.GetMyproductDataInfo()
             }
         },
-     checkNum: function () {
-        if (this.pageInput > this.pageTotal) {
-            this.pageInput = this.pageTotal;
-        } else if (this.pageInput < 1) {
-            this.pageInput = 1;
-        }
-    },
-      BrandList:function () {
-       var _this = this;
-        SupplierApi.brandList(_this.params,function (res) {
-            if(res.code==0){
-                 if(res.data.results && res.data.results.length>0){
-                     _this.brandlist=res.data.results;
-                     console.log(_this.brandlist)
-                     _this.listRecord = res.data.totalRecord;
-                 }else{
-                     _this.results = res.data.results;
-                     _this.listRecord = res.data.totalRecord;
-                 }
+        ItemDownshelfAll: function(){//批量下架
+            var _this = this;
+            var isValidFlag = false;
+            if(_this.isCheckedAll){
+                _this.productsList.map(function(el){
+                    if(el.validFlag != 2){ isValidFlag = true; }
+                });
+                if(isValidFlag){
+                    CAIMEI.Alert('部分选中的商品暂未上架,不能进行下架操作','确定');
+                    return;
+                }else{
+                    CAIMEI.Modal('确定下架选中的商品吗?','取消','确定',function () {
+                          var shelProductsList='';
+                        _this.productsList.map(function(el){
+                            if(el.validFlag == 2){
+                                shelProductsList += el.productID+','
+                            }
+                        });
+                        SupplierApi.SupplierSoldOut({productIds:shelProductsList,},function (response) {
+                            if (response.code == 0){
+                                CAIMEI.dialog('下架成功!');
+                                _this.productsList = [];
+                                _this.GetMyproductDataInfo();
+                            }else{
+                                 CAIMEI.Alert(response.msg,'确定');
+                            }
+                        })
+                    })
+                }
             }
-        })
-      },
-      getstatus:function () { //状态
-        var _this = this;
-         _this.params.status=event.target.value;
-    },
-      queryBrand:function () { //查询
-        var _this = this;
-        _this.BrandList()
-      },
-    newBrand:function(){
-        var _this = this;
-        _this.bgflag = true;
-        _this.title = '添加新品牌'
-        },
-     submit:function(){ //确认提交新品牌
-          var _this = this;
-          console.log(_this.brandobj)
-          if(_this.brandobj.name ==''){
-            CAIMEI.dialog('请输入品牌名称')
-         }else {
-             SupplierApi.addBrand(_this.brandobj,function (res) {
-                 if (res.code==0){
-                  CAIMEI.Alert('提交成功,我们将会在1-2个工作日内审核','确定',true,function () {
-                      location.reload()
-                  });
-                   _this.closebg();
-                 } else if(res.code == -1){
-                     var errmsg = res.msg;
-                    if(errmsg.indexOf('请先登录') > -1) {
-                        CAIMEI.dialog('请先登录');
-                    } else if (errmsg.indexOf('已存在') > -1) {
-                        CAIMEI.dialog('有相同品牌存在,无需重复提交,详情请致电0755-22907771');
-                    } else {
-                        CAIMEI.dialog('网络错误,请稍后再试');
+        },
+        ItemDownshelf: function(pros){//下架商品
+            var _this = this;
+            CAIMEI.Modal('确定下架该商品吗?','取消','确定',function () {
+                 SupplierApi.SupplierSoldOut({productIds:pros.productID,},function (response) {
+                    if (response.code == 0){
+                        CAIMEI.dialog('下架成功~');
+                        _this.productsList = [];
+                        _this.GetMyproductDataInfo();
+                    }else{
+                        CAIMEI.Alert(response.msg,'确定');
                     }
-                 }
-               })
-             }
-        },
-    editBrand:function(item){
-         var _this = this;
-         _this.bgflag = true;
-          _this.title = '编辑新品牌';
-         _this.brandobj.name = item.name;
-         _this.brandobj.description=item.description;
-         if(item.logo !=''&& item.logo!=null){
-            _this.brandobj.logo=item.logo;
-            _this.logoShow = true;
-            _this.iconflag = false;
-         }else {
-            _this.logoShow = false;
-            _this.iconflag = true;
-         }
-          _this.brandobj.id=item.id;
-        },
-    closebg:function () {
-         var _this = this;
-            _this.bgflag = false;
-            _this.brandobj.name='';
-            _this.brandobj.description='';
-            _this.brandobj.logo='';
-            _this.logoShow = false;
-            _this.iconflag = true;
+                })
+            })
+        },
+        AddPushHotFn: function(pros){//添加主页推荐
+            var _this = this;
+            var num = 4-this.featuredNum;
+            CAIMEI.Modal('总共能添加4个主推商品,您还能添加'+num+'个确定将该商品添加为主推商品吗?','取消','确定',function () {
+                 SupplierApi.SwitchFeatured({productId:pros.productID,featuredFlag:1},function (response) {
+                    if (response.code == 0){
+                        CAIMEI.dialog('添加成功~');
+                        _this.productsList = [];
+                        _this.GetMyproductDataInfo();
+                    }else{
+                         CAIMEI.Alert(response.msg,'确定');
+                    }
+                })
+            })
+        },
+        DeletePushHotFn: function(pros){//删除主页推荐
+            var _this = this;
+             CAIMEI.Modal('是否把该商品从主推商品中删除?','取消','确定',function () {
+                  SupplierApi.SwitchFeatured({productId:pros.productID,featuredFlag:0},function (response) {
+                    if (response.code == 0){
+                        CAIMEI.dialog('删除成功~');
+                        _this.productsList = [];
+                        _this.GetMyproductDataInfo();
+                    }else{
+                         CAIMEI.Alert(response.msg,'确定');
+                    }
+                })
+             })
+        },
+        pageLinkDetils: function(pros){//预览商品
+            window.open('/product-'+pros.productID+'.html');
+        },
+        editGoodFn: function(pros){//编辑商品
+            location.href ='/supplier/release.html?productID='+pros.productID+'&type=edit';
+        },
+        ischeck: function(pros){//为未选中的时候改变为true,反之为true
+            pros.productsChecked = !pros.productsChecked;
+            this.updateCheckAllBtn();
+        },
+        updateCheckAllBtn: function() {// 全选勾选判断
+            var _this = this;
+            var goodsCheckedLength = 0,
+                productsList = _this.productsList;
+            productsList.forEach(function(el){
+                if(el.productsChecked) { goodsCheckedLength++; }
+            });
+            _this.isCheckedAll = goodsCheckedLength === productsList.length;
+        },
+        updateBothCheckBtn: function() {
+            var _this = this;
+            _this.productsList.forEach(function(el){
+                el.productsChecked = _this.isCheckedAll ;
+            })
 
         },
-    uploadlogo:function () { //上传品牌图片
+        checkedAll: function() {
             var _this = this;
-            var inputDOM = _this.$refs.goodslogo;
-            var file = inputDOM.files;
-            _this.formData.append('file', file[0]);
-            SupplierApi.uploadimg(_this.formData,function(response){
-               _this.brandobj.logo = response.data;
-               _this.logoShow = true;
-               _this.iconflag = false;
-                event.target.value = '';
+            _this.isCheckedAll = !_this.isCheckedAll;
+            _this.updateBothCheckBtn();
+        },
+        toFixedFn: function(text){
+            return Number(text).toFixed(2);
+        },
+        StatusColorFn: function(state){
+            var stateColor = '',
+                stateColorObject={
+                    '2':'#1890f9',
+                    '1':'#f9a94b',
+                    '0':'#FFB12A',
+                    '3':'#627386',
+                    '8':'#FF2A2A',
+                    '9':'#f94b4b'
+                };
+            Object.keys(stateColorObject).forEach(function(key){
+                if(key == state){
+                    stateColor = stateColorObject[key]
+                }
+            });
+            return stateColor;
+        },
+        StatusTextFn: function(state){
+            var stateText = '',
+                stateTextObject={
+                    '2':'已上架',
+                    '3':'已下架',
+                    '1':'待审核',
+                    '8':'审核未通过',
+                    '9':'已冻结',
+                    '0':'已删除'
+                };
+            Object.keys(stateTextObject).forEach(function(key) {
+                if(key == state){
+                    stateText = stateTextObject[key]
+                }
             });
+            return stateText;
+        },
+        StatusButtonFn: function(state){
+            var _this = this;
+            var btnState = false;
+            _this.mapStateArr.forEach(function(el){
+                el.val.forEach(function(value){
+                    if(state === value){
+                        btnState = el.status;
+                    }
+                })
+            });
+            return btnState
+        },
+        returnedTarget:function(){//对象合并 IE 兼容方法
+            if (typeof Object.assign != 'function') {
+                Object.assign = function(target) {
+                    'use strict';
+                    if (target == null) {
+                        throw new TypeError('Cannot convert undefined or null to object');
+                    }
+                    target = Object(target);
+                    for (var index = 1; index < arguments.length; index++) {
+                        var source = arguments[index];
+                        if (source != null) {
+                            for (var key in source) {
+                                if (Object.prototype.hasOwnProperty.call(source, key)) {
+                                    target[key] = source[key];
+                                }
+                            }
+                        }
+                    }
+                    return target;
+                };
+            }
         }
     },
-    mounted:function () {
-        var _self = this;
+    mounted: function () {
+        var _this = this;
         if(globalUserData){
-              _self.params.userID = globalUserData.userId;
-              _self.brandobj.userID = globalUserData.userId;
-            }
-        _self.BrandList()
+            _this.userId = globalUserData.userId;
+            _this.listQuery.shopID = globalUserData.shopId;
+            _this.shopId =globalUserData.shopId;
+        }
+        _this.GetMyproductDataInfo();
+        _this.GetFistClassFn();
     }
-})
+});
+

+ 1 - 1
src/main/resources/templates/components/head-link.html

@@ -1,5 +1,5 @@
 <meta charset="UTF-8">
-    <meta name="viewport" content="width=device-width, account-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
+    <meta name="viewport" content="width=device-width,account-scalable=no,initial-scale=1.0,maximum-scale=1.0,minimum-scale=1.0">
     <meta name="apple-mobile-web-app-capable" content="yes">
     <meta name="apple-mobile-web-app-status-bar-style" content="black">
     <meta http-equiv="X-UA-Compatible" content="ie=edge">

+ 2 - 2
src/main/resources/templates/product/detail.html

@@ -106,7 +106,7 @@
                                                 </span>
                                             </p>
                                         </template>
-                                        <p class="r"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
+                                        <p class="c"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
                                     </div>
                                 </div>
                             </div>
@@ -120,7 +120,7 @@
                                     <div>
                                         <p v-if="priceObj.ladderPriceFlag==1"><em @click="toLogin">登录</em>,享受阶梯价格优惠</p>
                                         <p v-if="priceObj.actStatus==1"><em @click="toLogin">登录</em>,参与促销活动</p>
-                                        <p class="r"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
+                                        <p class="c"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
                                     </div>
                                 </div>
                             </div>

+ 7 - 8
src/main/resources/templates/shopping/cart.html

@@ -4,7 +4,7 @@
 <head>
     <title>采美365网-我的购物车</title>
     <template th:replace="components/head-link"></template>
-    <link th:href="@{/css/shopping/cart.css(v=${version})}" rel="stylesheet" type="text/css">
+    <link th:href="@{/css/shopping/shopping.css(v=${version})}" rel="stylesheet" type="text/css">
 </head>
 <body>
 <!-- 引用头部 -->
@@ -28,9 +28,7 @@
         <div class="pageTitle">
             <div class="step">
                 <span class="on">我的购物车</span>
-                 <label class="line"></label>
                 <span>核对订单信息</span>
-                 <label class="line"></label>
                 <span>成功提交订单</span>
             </div>
             <h1>我的购物车</h1>
@@ -75,7 +73,7 @@
                                             </span>
                                         </p>
                                     </template>
-                                    <p class="r"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
+                                    <p class="c"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
                                 </div>
                             </div>
                         </div>
@@ -124,7 +122,7 @@
                                                 </span>
                                             </p>
                                         </template>
-                                        <p class="r"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
+                                        <p class="c"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
                                     </div>
                                 </div>
                             </div>
@@ -150,10 +148,11 @@
                             <input type="number" :value="cart.number" v-model="cart.number" @change="cartNumberChange(cart)">
                             <em class="add" @click="cartNumberAdd(cart)">+</em>
                         </span>
-                        <input type="hidden" :value="cart.step"></div>
-                        <div v-if="isPC" class="c6"><span v-text="'¥'+toFloat(cart.price*cart.number)"></span></div>
-                        <div v-if="isPC" class="c7"><span class="del" @click="deleteCart(cart.productId)">×<em class="tips">删除</em></span></div>
+                        <input type="hidden" :value="cart.step">
                     </div>
+                    <div v-if="isPC" class="c6"><span v-text="'¥'+toFloat(cart.price*cart.number)"></span></div>
+                    <div v-if="isPC" class="c7"><span class="del" @click="deleteCart(cart.productId)">×<em class="tips">删除</em></span></div>
+                </div>
                 <div class="supplierBtn">
                     <span>合计:<em v-text="'¥'+toFloat(supplier.totalPrice)"></em></span>
                 </div>

+ 259 - 207
src/main/resources/templates/shopping/confirm.html

@@ -4,275 +4,326 @@
 <head>
     <title>采美365网-核对订单信息</title>
     <template th:replace="components/head-link"></template>
-    <link th:href="@{/css/shopping/confirm.css(v=${version})}" rel="stylesheet" type="text/css">
+    <link th:href="@{/css/base/form.css(v=${version})}" rel="stylesheet" type="text/css">
+    <link th:href="@{/css/shopping/shopping.css(v=${version})}" rel="stylesheet" type="text/css">
 </head>
 <body>
 <!-- 引用头部 -->
 <template th:replace="components/header"></template>
 
-<!-- 确认订单 -->
-<div id="shoppingConfirm">
+<!-- 核对订单 -->
+<div id="shoppingConfirm" v-cloak>
     <!--列表-->
     <div class="wrap">
         <div class="pageTitle">
             <div class="step">
-                <span class="on">我的购物车</span>
-                <label class="line on"></label>
+                <span class="prev">我的购物车</span>
                 <span class="on">核对订单信息</span>
-                <label class="line"></label>
                 <span>成功提交订单</span>
             </div>
             <h1>确认订单<span>(填写并核对订单信息)</span></h1>
         </div>
-    </div>
-    <div class="container clear" :class="isRequest ? 'active' : ''" v-show="isRequest">
-        <div class="content" :style="{height:isShwoAddModel ? '318px' : 'auto'}">
-            <div class="title">收货人信息</div>
-            <div class="section address"  v-if="addressList.length == 0">
-                <div class="address-info">
-                    <p class="info-p">暂无收货地址信息,请新建地址</p>
-                </div>
-                <div class="address-sub add">
-                    <a class="btn btn-confirm"  href="javascript:void(0)" @click="ShowAddAddressFn">新建地址</a>
-                </div>
-            </div>
-            <div class="section address" v-else>
-                <div class="address-info">
-                    <div class="info-left">
-                        <p><span class="label">收货人:</span>{{addressData.shouHuoRen}}</p>
-                        <p><span class="label">联系方式:</span>{{addressData.mobile}}</p>
-                        <p><span class="label">收货地址:</span>{{addressData.province}}{{addressData.city}}{{addressData.town}}{{addressData.address}}</p>
-                    </div>
-                    <div class="info-right">
-                        <div class="info-top">
-                            <div class="defau" v-if="addressData.defaultFlag == 1">
-                                <i class="icon mIcon"></i>
-                                <span class="span-s">默认地址</span>
-                            </div>
-                            <a href="javascript:void(0)" @click="editAddress">修改</a>
+        <h2 v-if="isPC" class="title">收货人信息</h2>
+        <div class="addressWrap clear">
+            <div v-show="!isShowAddressForm">
+                <div class="info">
+                    <p><span class="label">收货人:</span>{{address.name}}</p>
+                    <p><span class="label">联系方式:</span>{{address.mobile}}</p>
+                    <p><span class="label">收货地址:</span>{{address.province}}{{address.city}}{{address.town}}{{address.desc}}</p>
+                    <div class="btnBox mfbt">
+                        <span class="default"><i class="icon mIcon" v-if="address.default"></i><span v-if="address.default">默认地址</span><a href="javascript:void(0)" @click="updateAddress()">修改</a></span>
+                        <div class="group">
+                            <a class="btn"  href="javascript:void(0)" @click="showAddressBox()">选择地址</a>
+                            <a class="btn con"  href="javascript:void(0)" @click="createAddress()">新建地址</a>
                         </div>
                     </div>
                 </div>
-                <div class="address-sub">
-                    <a class="btn btn-none"  href="javascript:void(0)" @click="ShowCheckedAddressFn">选择地址</a>
-                    <a class="btn btn-confirm"  href="javascript:void(0)" @click="ShowAddAddressFn">新建地址</a>
-                </div>
+                <div v-if="!isPC" class="gradient mf"><i class="mfi" v-for="i in 12"></i></div>
             </div>
-            <div class="section address-none" v-if="isShwoAddModel">
-                <div class="address-main clear">
+            <div class="formWrap" v-show="isShowAddressForm">
+                <div class="form">
                     <div class="formLine">
-                        <div class="label"><p><em>*</em>联系地址:</p></div>
-                        <div class="form-input">
-                            <select name="provinceID" id="cProvince" @change="ChangeProvince">
-                                <option value="" >请选择</option>
-                                <option v-for="(item ,index) in ProvinceList" :key="index" :value='item.provinceID' >{{item.name}}</option>
-                            </select>
-                            <select name="cityID" id="cCity" @change="ChangeGetcity($event)" >
-                                <option value="" >请选择</option>
-                                <option v-for="(item ,index) in cityArray" :key="index" :value="item.cityID" >{{item.name}}</option>
-                            </select>
-                            <select name="townID" id="cTown" @change="ChangeGetcTown($event)">
-                                <option value="" >请选择</option>
-                                <option v-for="(item ,index) in townArray" :key="index" :value="item.townID"  >{{item.name}}</option>
-                            </select>
-                        </div>
+                        <p class="label"><em>*</em>收货人:</p>
+                        <input type="text" v-model.trim="addressForm.name" placeholder="请输入收货人姓名" :rule="rule.name" maxlength="10" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入正确的联系人姓名"></span>
                     </div>
                     <div class="formLine">
-                        <div class="label tex"></div>
-                        <div class="form-input">
-                            <textarea placeholder="建议您如实填写详细地址,例如:街道名称,门牌号码,楼层和房间号等信息"  v-model="addAddressData.address"></textarea>
-                        </div>
+                        <p class="label"><em>*</em>联系方式:</p>
+                        <input type="text" v-model.trim="addressForm.mobile" placeholder="请输入您的常用手机号" :rule="rule.mobile" maxlength="11" @blur="blurHandle($event)" needverify>
+                        <i class="checked icon mIcon"></i>
+                        <span class="errTips icon mIcon" tips="请输入有效电话号码"></span>
                     </div>
                     <div class="formLine">
-                        <div class="label"><p><em>*</em>收货人:</p></div>
-                        <div class="form-input">
-                            <input type="text" v-model.trim="addAddressData.shouHuoRen" placeholder="请输入收货人姓名" maxlength="10" >
-                        </div>
+                        <p class="label"><em>*</em>联系地址:</p>
+                        <select name="province" v-model="addressForm.provinceId" @change="getCityOptions(addressForm.provinceId)">
+                            <option value="" >请选择</option>
+                            <option v-for="(item ,index) in provinceOptions" :key="index" :value='item.provinceID'>{{item.name}}</option>
+                        </select>
+                        <select name="city" v-model="addressForm.cityId" @change="getTownOptions(addressForm.cityId)">
+                            <option value="" >请选择</option>
+                            <option v-for="(item ,index) in cityOptions" :key="index" :value="item.cityID">{{item.name}}</option>
+                        </select>
+                        <select name="town" v-model="addressForm.townId">
+                            <option value="" >请选择</option>
+                            <option v-for="(item ,index) in townOptions" :key="index" :value="item.townID">{{item.name}}</option>
+                        </select>
+                        <textarea v-model.trim="addressForm.desc" placeholder="建议您如实填写详细地址,例如:街道名称,门牌号码,楼层和房间号等信息"  @blur="blurHandle($event)" needverify></textarea>
+                        <span class="errTips icon mIcon" tips="请输入正确的联系地址"></span>
                     </div>
-                    <div class="formLine">
-                        <div class="label"><p><em>*</em>联系方式:</p></div>
-                        <div class="form-input">
-                            <input type="text" v-model.trim="addAddressData.mobile" placeholder="请输入联系方式" maxlength="11" >
+                    <div class="btnBox">
+                        <div class="group">
+                            <p>
+                                <label class="check"><input v-model="addressForm.default" name="default" type="checkbox">设为默认地址</label>
+                            </p>
+                            <p>
+                                <a class="btn save"  href="javascript:void(0)" @click="saveAddressForm()">保存并使用</a>
+                                <a class="btn con"  href="javascript:void(0)" @click="hideAddressForm()">取消</a>
+                            </p>
                         </div>
                     </div>
                 </div>
-                <div class="address-sub">
-                    <div class="checked" @click="settingDefaultFlag">
-                        <i class="icon mIcon" :class="isDefaultFlag?'icon-gouxuan':'icon-weigouxuan'"></i>
-                        <span>设为默认地址</span>
-                    </div>
-                    <div class="button">
-                        <a href="javascript:void(0);" class="btn btn-confirm" @click="ConfirmAddressFn">保存并使用</a>
-                        <a href="javascript:void(0);" class="btn btn-cancel" @click="CancelAddressFn">取消</a>
-                    </div>
-                </div>
             </div>
         </div>
-        <div class="content">
-            <div class="title">进货清单</div>
-            <div class="section product">
-                <div class="title">
-                    <div class="tr tr-info">商品</div>
-                    <div class="tr tr-amount">数量</div>
-                    <div class="tr tr-price">单价(元)</div>
-                    <div class="tr tr-sum">小计(元)</div>
-                </div>
-                <div class="good_content">
-                    <div class="good_main clearfix" v-for="(item, index) in goodsList" :key="index">
-                        <div class="main_title">{{item.name}}</div>
-                        <div class="main_content ">
-                            <div class="main_content_ul" v-for="(pros, prosIndex) in item.cartList" :key="prosIndex">
-                                <div class="th th-info">
-                                    <div class="th-inner">
-                                        <div class="th-image"><img :src="pros.image" alt=""></div>
-                                        <div class="th-name">{{pros.name}}</div>
-                                    </div>
+
+        <h2 class="title">进货清单</h2>
+        <div class="listWrap">
+            <div v-if="isPC" class="cartTit clear">
+                <div class="c1">&nbsp;</div>
+                <div class="c2">商品信息</div>
+                <div class="c4">单价(元)</div>
+                <div class="c5">数量</div>
+                <div class="c6">小计(元)</div>
+            </div>
+            <div class="supplierItem" v-for="supplier,index in listData">
+                <div class="supplierTit">
+                    <a href="javascript:void(0);">
+                        <img class="img" :src="supplier.logo">
+                        <span class="name" v-text="supplier.name"></span>
+                    </a>
+                    <!--店铺促销-->
+                    <div class="price">
+                        <div v-if="supplier.promotions" class="priceTag">
+                            <i @click="toggleThisLadder($event)" class="tag icon mIcon" v-text="supplier.promotions.name"></i>
+                            <div class="promotion mFixed">
+                                <div>
+                                    <p class="t">
+                                        <em v-if="supplier.promotions.mode==2">{{supplier.promotions.name+',满 ¥'+toFloat(supplier.promotions.touchPrice)+' 减 ¥'+toFloat(supplier.promotions.reducedPrice)}}</em>
+                                        <em v-if="supplier.promotions.mode==3">{{supplier.promotions.name+',满 ¥'+toFloat(supplier.promotions.touchPrice)+' 赠送商品'}}</em>
+                                    </p>
+                                    <p>促销时间:<em v-if="supplier.promotions.status==1">不限时</em><em v-else>{{supplier.promotions.beginTime.substr(0,10)+' ~ '+supplier.promotions.endTime.substr(0,10)}}</em></p>
+                                    <template v-if="supplier.promotions.mode==3">
+                                        <p>赠品:</p>
+                                        <p>
+                                            <span v-for="g in supplier.promotions.giftList" class="p">
+                                                <img :src="g.image">
+                                                <span v-text="g.name"></span>
+                                                <span v-text="'× '+g.number"></span>
+                                            </span>
+                                        </p>
+                                    </template>
+                                    <p class="c"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
                                 </div>
-                                <div class="th th-amount"><div class="th-inner"><p>{{pros.number}}</p></div></div>
-                                <div class="th th-price"><div class="th-inner"><p>¥{{pros.price | NumFormat}}</p></div></div>
-                                <div class="th th-sum"><div class="th-inner"><p>¥{{(pros.price*pros.number) | NumFormat}}</p></div></div>
                             </div>
-                            <div class="main_content_bt">合计: <span>¥{{item.totalPrice | NumFormat}}</span></div>
-                        </div>
-                        <div class="main_footer">
-                            <span>留言:</span>
-                            <input type="text" class="main_input" placeholder="告诉卖家您的特殊要求" v-model="goodRemark[index]" @change="changeHandle(index)">
                         </div>
                     </div>
                 </div>
-            </div>
-        </div>
-        <div class="content">
-            <div class="title">发票信息</div>
-            <div class="section invoice">
-                <div class="invoice-tabs">
-                    <span>发票类型:</span>
-                    <div class="tab-radio">
-                        <label class="diyBox" v-for="(item, index) in invoiceTypeList" :key="index" @click="radioChange">
-                            <input type="radio" name="invoiceType" v-model="invoiceType" :value="item.value" checked><i class="icon mIcon">{{item.name}}</i>
-                        </label>
-                    </div>
-                </div>
-                <div class="invoice-content clearfix" v-if="invoiceType == '2'">
-                    <div class="main_content">
-                        <span>发票内容:</span>
-                        <div class="main_item">商品明细</div>
-                    </div>
-                    <div class="main_content">
-                        <span>发票类型:</span>
-                        <div class="tab-radio">
-                            <label class="diyBox" v-for="(item, index) in invoiceTitleList" :key="index" @click="radioChangeTitle">
-                                <input type="radio" name="invoiceTitle" v-model="invoiceTitle" :value="item.value" checked><i class="icon mIcon">{{item.name}}</i>
-                            </label>
-                        </div>
+                <div class="cartItem clear"  v-for="cart in supplier.cartList" >
+                    <div class="c1"><a :href="'/product-'+cart.productId+'.html'" target="_blank">
+                        <img class="image" :src="cart.image">
+                    </a></div>
+                    <div class="c2">
+                        <a class="name" :href="'/product-'+cart.productId+'.html'" target="_blank">
+                            <span v-text="cart.name"></span>
+                        </a>
                     </div>
-                    <div class="main_content">
-                        <div class="main_item_conten">
-                            <div class="group-from" v-if="peopleInvoiceData.invoiceTitleType == '0'">
-                                <input class="label-input" type="text" v-model="peopleInvoiceData.invoiceTitle"   placeholder="请填写个人抬头" maxlength="20">
-                            </div>
-                            <div class="group-from" v-if="peopleInvoiceData.invoiceTitleType == '1'">
-                                <input class="label-input" type="text" v-model="peopleInvoiceData.invoiceTitle"   placeholder="请填写公司抬头" maxlength="20">
+                    <div class="c4">
+                        <div class="price">
+                            <template v-if="cart.actStatus==1 && cart.promotions && cart.promotions.type==1 && cart.promotions.mode==1">
+                                <del v-text="'¥'+toFloat(cart.originalPrice)"></del>
+                            </template>
+                            <template v-else>
+                                <em v-text="'¥'+toFloat(cart.price)"></em>
+                            </template>
+                            <!-- 促销活动 -->
+                            <div v-if="cart.actStatus==1 && cart.promotions" class="priceTag">
+                                <i v-if="cart.promotions.type==1 && cart.promotions.mode==1" @click="toggleThisLadder($event)" class="tag icon mIcon" v-text="cart.promotions.name+':¥'+toFloat(cart.promotions.touchPrice)"></i>
+                                <i v-else class="tag icon mIcon" @click="toggleThisLadder($event)" v-text="cart.promotions?cart.promotions.name:''"></i>
+                                <div class="promotion mFixed">
+                                    <div>
+                                        <p class="t">
+                                            <em v-if="cart.promotions.type==1 && cart.promotions.mode==1">{{cart.promotions.name+':¥'+toFloat(cart.promotions.touchPrice)}}</em>
+                                            <em v-if="cart.promotions.mode==2">{{cart.promotions.name+',满 ¥'+toFloat(cart.promotions.touchPrice)+' 减 ¥'+toFloat(cart.promotions.reducedPrice)}}</em>
+                                            <em v-if="cart.promotions.mode==3">{{cart.promotions.name+',满 ¥'+toFloat(cart.promotions.touchPrice)+' 赠送商品'}}</em>
+                                        </p>
+                                        <p>促销时间:<em v-if="cart.promotions.status==1">不限时</em><em v-else>{{cart.promotions.beginTime.substr(0,10)+' ~ '+cart.promotions.endTime.substr(0,10)}}</em></p>
+                                        <p v-if="cart.promotions.type==2" class="r"><a class="more" :href="'/product/promotions.html?id='+cart.promotions.id">更多凑单商品>>></a></p>
+                                        <template v-if="cart.promotions.mode==3">
+                                            <p>赠品:</p>
+                                            <p>
+                                                <span v-for="g in cart.promotions.giftList" class="p">
+                                                    <img :src="g.image">
+                                                    <span v-text="g.name"></span>
+                                                    <span v-text="'× '+g.number"></span>
+                                                </span>
+                                            </p>
+                                        </template>
+                                        <p class="c"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
+                                    </div>
+                                </div>
                             </div>
-                            <div class="group-from" v-if="peopleInvoiceData.invoiceTitleType == '1'">
-                                <input class="label-input" type="text" v-model="peopleInvoiceData.corporationTaxNum"   placeholder="请填写纳税人识别号" maxlength="20">
+                            <!-- 阶梯价 -->
+                            <div v-else-if="cart.ladderFlag" class="priceTag">
+                                <i class="tag icon mIcon" @click="toggleThisLadder($event)">阶梯价格</i>
+                                <div class="ladder mFixed">
+                                    <span>
+                                        <em class="t"><i>价格</i><i>起订量</i></em>
+                                        <em v-for="l in cart.ladderPrices">
+                                            <i class="p">¥{{toFloat(l.buyPrice)}}</i>
+                                            <i>{{l.numRange}}</i>
+                                        </em>
+                                        <em @click="hideThisLadder($event)" class="close">了解</em>
+                                    </span>
+                                </div>
                             </div>
                         </div>
                     </div>
+                    <div class="c5">{{cart.number}}</div>
+                    <div v-if="isPC" class="c6"><span v-text="'¥'+toFloat(cart.price*cart.number)"></span></div>
                 </div>
-                <div class="invoice-main clearfix" v-if="invoiceType == '3'">
-                    <div class="invoice-from">
-                        <span class="label">单位名称:</span>
-                        <input class="label-input" type="text" v-model="invoiceData.invoiceTitle" placeholder="请填写单位信息(必填)" maxlength="20">
-                    </div>
-                    <div class="invoice-from">
-                        <span class="label">纳税人识别号:</span>
-                        <input class="label-input" type="text" v-model="invoiceData.corporationTaxNum" placeholder="请填写纳税人识别号(必填)" maxlength="20">
-                    </div>
-                    <div class="invoice-from">
-                        <span class="label">注册地址:</span>
-                        <input class="label-input" type="text" v-model="invoiceData.registeredAddress" placeholder="请填写单位注册地址(必填)" maxlength="40">
-                    </div>
-                    <div class="invoice-from">
-                        <span class="label">注册电话:</span>
-                        <input class="label-input" type="text" v-model="invoiceData.registeredPhone" placeholder="请填写注册电话(必填)" maxlength="15">
-                    </div>
-                    <div class="invoice-from">
-                        <span class="label">开户银行:</span>
-                        <input class="label-input" type="text" v-model="invoiceData.openBank"   placeholder="请填写开户银行(必填)" maxlength="10">
-                    </div>
-                    <div class="invoice-from">
-                        <span class="label">银行账号:</span>
-                        <input class="label-input" type="text" v-model="invoiceData.bankAccountNo" placeholder="请填写银行账号(必填)" maxlength="19">
-                    </div>
+                <div class="supplierBtn">
+                    <span>合计:<em v-text="'¥'+toFloat(supplier.totalPrice)"></em></span>
+                    <div class="note">留言:<input type="text" v-model="supplier.note" placeholder="告诉卖家您的特殊要求"></div>
                 </div>
             </div>
         </div>
-        <div class="content">
-            <div class="title">使用余额</div>
-            <div class="section userMoney">
-                <i class="icon mIcon" @click="checkedBalabce" :class="isCheckedBalabce ? 'icon-gouxuan' : 'icon-weigouxuan'" v-if="userMoney > 0"></i>
-                <span class="text">当前余额:<span class="red">¥{{userMoney | NumFormat}}</span></span>
-                <span class="text">已使用:<span class="red">¥{{deductMoney | NumFormat}}</span></span>
-                <span class="text">剩余:<span class="red">¥{{surplusMoney | NumFormat}}</span></span>
+
+        <h2 class="title">发票信息</h2>
+        <div class="invoiceWrap">
+            <div class="formLine">
+                <label class="diyBox"><input type="radio" name="invoice" v-model="invoice.type" value="0" checked><i class="icon mIcon">不开发票</i></label>
+                <label class="diyBox"><input type="radio" name="invoice" v-model="invoice.type" value="1"><i class="icon mIcon">普通发票</i></label>
+                <label class="diyBox"><input type="radio" name="invoice" v-model="invoice.type" value="2"><i class="icon mIcon">增值税发票</i></label>
             </div>
-        </div>
-        <!-- 结算信息 -->
-        <div class="content">
-            <div class="section footer">
-                <div class="footer_content">
-                    <div class="footer_left fl">
-                        <p>商品种类:</p>
-                        <p>数量总计:</p>
-                        <p v-show="addressList.length>0">运费<span v-if="freightData.freePostFlag == 1">(运费可选择到付哟~)</span>:</p>
-                        <p>抵扣账户余额:</p>
-                        <p>总价:</p>
-                    </div>
-                    <div class="footer_right fr">
-                        <p>{{productKind}}种</p>
-                        <p>{{allCount}}件</p>
-                        <div v-show="addressList.length>0">
-                            <div class="select" v-if="freightData.freePostFlag == 1 ">
-                                <select v-model="selectedFreight"  @change='getValueFreight'>
-                                            <option v-for="x in optionList" :value="x">{{x}}</option>
-                                        </select>
-                            </div>
-                            <p v-else><span>{{freightText}}</span></p>
-                        </div>
-                        <p class="red">¥{{deductMoney | NumFormat}}</p>
-                        <p class="red">¥{{payAllPrice | NumFormat}}</p>
-                    </div>
+            <div class="invoiceForm" v-show="invoice.type==1"><!--普通发票-->
+                <div class="formLine">
+                    <p class="label"><em>*</em>发票内容:</p>
+                    <input type="text" disabled value="商品明细">
+                    <span class="errTips icon mIcon"></span>
+                </div>
+                <div class="formLine">
+                    <p class="label"><em>*</em>发票类型:</p>
+                    <label class="diyBox"><input type="radio" name="invoiceTit" v-model="invoice.invoiceTitleType" value="0"><i class="icon mIcon">个人</i></label>
+                    <label class="diyBox"><input type="radio" name="invoiceTit" v-model="invoice.invoiceTitleType" value="1"><i class="icon mIcon">公司</i></label>
+                    <span class="errTips icon mIcon"></span>
+                </div>
+                <div class="formLine">
+                    <p class="label"><em>*</em>发票抬头:</p>
+                    <input type="text" v-model.trim="invoice.invoiceTitle" :placeholder="'请输入'+(invoice.invoiceTitleType==1?'公司':'个人')+'抬头'" maxlength="20" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的发票抬头"></span>
+                </div>
+                <div class="formLine" v-show="invoice.invoiceTitleType==1">
+                    <p class="label"><em>*</em>纳税人识别号:</p>
+                    <input type="text" v-model.trim="invoice.corporationTaxNum" placeholder="请输入纳税人识别号" maxlength="20" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的纳税人识别号"></span>
+                </div>
+            </div>
+            <div class="invoiceForm" v-show="invoice.type==2"><!--增值税发票-->
+                <div class="formLine">
+                    <p class="label"><em>*</em>单位名称:</p>
+                    <input type="text" v-model.trim="invoice.invoiceTitle" placeholder="请输入单位名称" maxlength="20" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的单位名称"></span>
+                </div>
+                <div class="formLine">
+                    <p class="label"><em>*</em>纳税人识别号:</p>
+                    <input type="text" v-model.trim="invoice.corporationTaxNum" placeholder="请输入纳税人识别号" maxlength="20" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的纳税人识别号"></span>
+                </div>
+                <div class="formLine">
+                    <p class="label"><em>*</em>注册地址:</p>
+                    <input type="text" v-model.trim="invoice.registeredAddress" placeholder="请输入注册地址" maxlength="40" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的注册地址"></span>
+                </div>
+                <div class="formLine">
+                    <p class="label"><em>*</em>注册电话:</p>
+                    <input type="text" v-model.trim="invoice.registeredPhone" placeholder="请输入注册电话" maxlength="15" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的注册电话"></span>
+                </div>
+                <div class="formLine">
+                    <p class="label"><em>*</em>开户银行:</p>
+                    <input type="text" v-model.trim="invoice.openBank" placeholder="请输入开户银行" maxlength="10" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的开户银行"></span>
+                </div>
+                <div class="formLine">
+                    <p class="label"><em>*</em>银行账号:</p>
+                    <input type="text" v-model.trim="invoice.bankAccountNo" placeholder="请输入银行账号" maxlength="19" @blur="blurHandle($event)" needverify>
+                    <i class="checked icon mIcon"></i>
+                    <span class="errTips icon mIcon" tips="请输入正确的银行账号"></span>
                 </div>
             </div>
         </div>
-        <div class="footer_button" :class="isFiexdClass">
-            <div class="footer_inner">
-                <div class="button_back fl"><a href="/cart.html" class="back"><i class="icon mIcon"></i>返回购物车</a></div>
-                <div class="button_confim fr">
-                    <P>总价:<span>¥{{payAllPrice | NumFormat}}</span></P>
-                    <a href="javascript:void(0);" class="confimBtn"  @click="ConfirmOrderFn" :class="isSubDisabled ?'active':''">提交订单</a>
+        <h2 class="title">使用余额</h2>
+        <div class="balanceWrap">
+            <label class="check">
+                <input v-if="balance.userMoney>0" v-model="balance.flag" name="useBalance" type="checkbox" @change="useUserMoney()">
+                <input v-else v-model="balance.flag" name="useBalance" type="checkbox" disabled>
+                <span class="text">当前余额:<span class="red">¥{{balance.userMoney | NumFormat}}</span></span>
+                <span class="text">已使用:<span class="red">¥{{balance.deductMoney | NumFormat}}</span></span>
+                <span class="text">剩余:<span class="red">¥{{balance.surplusMoney | NumFormat}}</span></span>
+            </label>
+        </div>
+        <div class="totalPriceWrap">
+            <p>商品种类: <span>{{kindCount}}种</span></p>
+            <p>数量总计: <span>{{totalCount}}件</span></p>
+            <p>运费:
+                <span v-if="payInfo.freePostFlag==-1">到付</span>
+                <span v-if="payInfo.freePostFlag==0">包邮</span>
+                <span v-if="payInfo.freePostFlag==1"><em>¥{{payInfo.freight | NumFormat}}</em></span>
+            </p>
+            <p v-if="balance.deductMoney>0">抵扣账户余额: <span><em>¥{{balance.deductMoney | NumFormat}}</em></span></p>
+            <p>总价: <span><em>¥{{totalPrice | NumFormat}}</em></span></p>
+        </div>
+    </div>
+
+    <div class="summaryWrap">
+        <div class="summary">
+            <div v-if="isPC" class="left">
+                <div class="item">
+                    <a href="/shopping/cart.html" class="back"><i class="icon mIcon"></i>返回购物车</a>
                 </div>
             </div>
+            <div class="right mfbt">
+                <div class="item">总价:<em v-text="'¥'+toFloat(totalPrice)"></em></div>
+                <a class="submit" href="javascript:void(0);" @click="submitOrder()">提交订单</a>
+            </div>
         </div>
     </div>
+
     <!--选择地址弹窗-->
-    <div class="model-address-content" v-if="isShowAddress" v-cloak>
+    <div class="model-address-content" v-show="isShowAddressList">
         <div class="model-content">
-            <div class="title"><p>选择地址</p><i class="icon mIcon" @click="HideCheckedAddressFn"></i></div>
+            <div v-if="isPC" class="title"><p>选择地址</p><i class="icon mIcon" @click="closeAddressBox()"></i></div>
             <div class="content">
-                <div class="list" v-for="(item, index) in addressList" :class="checkedAddressItemIndex == index ? 'checked' : ''" @click.stop="checkedAddressItemFn(index,item)">
+                <div class="list" v-for="(item, index) in addressList" @click="chooseAddress(item.addressID)" :class="address.selectedId==item.addressID ? 'checked' : ''">
                     <div class="list-left">
                         <p><span class="label">收货人:</span>{{item.shouHuoRen}}</p>
                         <p><span class="label">联系方式:</span>{{item.mobile}}</p>
                         <p><span class="label">收货地址:</span>{{item.province}}{{item.city}}{{item.town}}{{item.address}}</p>
                     </div>
-                    <div class="list-right">
+                    <div class="list-right mfbt">
                         <div class="list-defalut" v-if="item.defaultFlag == 1">
                             <i class="icon mIcon"></i>
                             <span class="span-s">默认地址</span>
                         </div>
                         <div class="list-defalut" v-else>
-                            <span class="span-s" @click.stop="defaultAddressFn(item.addressID)">设为默认地址</span>
+                            <a href="javascript:void(0)" @click.stop="setDefaultAddress(item.addressID)">设为默认地址</a>
                         </div>
                         <a class="list-btn" href="javascript:void(0)" @click.stop="deleteAddress(item.addressID)">删除</a>
                     </div>
@@ -280,11 +331,12 @@
                 </div>
             </div>
             <div class="button">
-                <a class="btn btn-confirm" href="javascript:void(0)"@click="ConfirmCheckedAddressFn">确定</a>
-                <a class="btn btn-cancel" href="javascript:void(0)" @click="HideCheckedAddressFn">取消</a>
+                <a class="btn btn-confirm" href="javascript:void(0)"@click="confirmAddress()">确定</a>
+                <a class="btn btn-cancel" href="javascript:void(0)" @click="closeAddressBox()">取消</a>
             </div>
         </div>
     </div>
+
 </div>
 <!-- 引入底部 -->
 <template th:replace="components/footer"></template>

+ 1 - 1
src/main/resources/templates/supplier-center/dashboard.html

@@ -52,7 +52,7 @@
                                                     </span>
                                                 </p>
                                             </template>
-                                            <p class="r"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
+                                            <p class="c"><a class="close" @click="hideThisLadder($event)" href="JavaScript:void(0);">了解</a></p>
                                         </div>
                                     </div>
                               </span>

+ 4 - 6
src/main/resources/templates/supplier-center/order/delivery-record.html

@@ -13,7 +13,7 @@
 
 <!-- 我的采美 -->
 <div id="deliveryRecode">
-    <div class="navLayout">
+    <div class="navLayout" v-cloak="">
         <div class="crumbs" v-if="isPC">
             <span>我的交易</span>
             <span>&gt;</span>
@@ -21,14 +21,12 @@
             <span>&gt;</span>
             <span>发货记录</span>
         </div>
-        <div v-else class="wrap_tittle mIcon" @click="opentittle">
-            <i class="mIcon open"></i><span style="margin-left: 25px;">发货</span>
-        </div>
+<!--        <div v-else class="wrap_tittle mIcon" @click="opentittle">-->
+<!--            <i class="mIcon open"></i><span style="margin-left: 25px;">发货</span>-->
+<!--        </div>-->
         <div class="wrap clear">
             <!--左侧面包屑-->
-            <!--            <div v-show="open">-->
             <template th:replace="supplier-center/components/tableft"></template>
-            <!--            </div>-->
             <div class="right">
                 <div class="userinfo">
                     <p class="info">

+ 1 - 1
src/main/resources/templates/supplier-center/order/delivery.html

@@ -13,7 +13,7 @@
 
 <!-- 我的采美 -->
 <div id="delivergoods">
-    <div class="navLayout">
+    <div class="navLayout" v-cloak="">
         <div class="crumbs" v-if="isPC">
             <span>我的交易</span>
             <span>&gt;</span>

+ 7 - 11
src/main/resources/templates/supplier-center/order/detail.html

@@ -13,22 +13,20 @@
 
 <!-- 我的采美 -->
 <div id="seeDetail">
-    <div class="navLayout">
+    <div class="navLayout" v-cloak="">
             <div class="crumbs" v-if="isPC">
                 <span>我的交易</span>
                 <span>&gt;</span>
                 <span>我的订单</span>
                 <span>&gt;</span>
-                <span>发货记录</span>
+                <span>订单详情</span>
              </div>
-        <div v-else class="wrap_tittle mIcon" @click="opentittle">
-            <i class="mIcon open"></i><span style="margin-left: 25px;">我的订单</span>
-        </div>
+<!--        <div v-else class="wrap_tittle mIcon" @click="opentittle">-->
+<!--            <i class="mIcon open"></i><span style="margin-left: 25px;">我的订单</span>-->
+<!--        </div>-->
         <div class="wrap clear">
             <!--左侧面包屑-->
-            <div v-show="open">
                 <template th:replace="supplier-center/components/tableft"></template>
-            </div>
             <div class="right">
                 <div class="userinfo">
                     <p class="info">
@@ -101,12 +99,10 @@
                     <div class="sett-re">
                         <div>结算记录</div>
                          <div v-if="payflag" v-for="pay in payShopRecord">
-                             <p>{{pay.status}}.结算时间{{pay.payTime}}</p>
-                             <p>结算金额{{pay.payAmount}}</p>
+                             <p>{{pay.status}}.结算时间{{pay.payTime}}</p>
+                             <p>结算金额:¥{{pay.payAmount}}</p>
                          </div>
                     </div>
-
-
                 </div>
             </div>
         </div>

+ 3 - 3
src/main/resources/templates/supplier-center/order/logistics-detail.html

@@ -21,9 +21,9 @@
             <span>&gt;</span>
             <span>查看物流</span>
         </div>
-        <div v-else class="wrap_tittle mIcon" @click="opentittle">
-            <i class="mIcon open"></i><span style="margin-left: 25px;">发货</span>
-        </div>
+<!--        <div v-else class="wrap_tittle mIcon" @click="opentittle">-->
+<!--            <i class="mIcon open"></i><span style="margin-left: 25px;">发货</span>-->
+<!--        </div>-->
         <div class="wrap clear">
             <!--左侧面包屑-->
 <!--            <div v-show="open">-->

+ 0 - 2
src/main/resources/templates/supplier-center/order/logistics.html

@@ -23,9 +23,7 @@
         </div>
         <div class="wrap clear">
             <!--左侧面包屑-->
-            <div v-show="open">
                 <template th:replace="supplier-center/components/tableft"></template>
-            </div>
             <div class="right">
                 <div class="userinfo">
                     <p class="info">

+ 139 - 93
src/main/resources/templates/supplier-center/shop/goods.html

@@ -10,14 +10,14 @@
 <body>
 <!-- 引用头部 -->
 <template th:replace="components/header"></template>
-    <h1></h1>
+<h1></h1>
 <!-- 我的采美 -->
-<div id="Brandgoods">
-    <div class="navLayout" >
+<div id="myGoods">
+    <div class="navLayout goods-container" v-show="isRequest" :class="isRequest ? 'active' : ''">
         <div class="crumbs">
             <span>我的店铺</span>
             <span>&gt;</span>
-            <span>品牌管理</span>
+            <span>我的商品</span>
         </div>
         <div class="wrap clear">
             <!--左侧面包屑-->
@@ -25,112 +25,158 @@
             <div class="right">
                 <div class="head-top">
                     <form action="">
-                        <div class='order-border'><span>品牌名称:</span><input type="text" id="name-buyer" v-model="params.name" class="Buyer" placeholder="请输入买家名称"> </div>
-                        <div>
+                        <div class='form-row'>
+                            <span>商品货号:</span>
+                            <input type="text" id="name-buyer" v-model="listQuery.productCode" class="Buyer"
+                                   placeholder="请输入商品货号" maxlength="20">
+                        </div>
+                        <div class="form-row">
+                            <span>商品名称:</span>
+                            <input class="Buyer" v-model="listQuery.name" type="text" maxlength="25"
+                                   placeholder="请输入商品名称">
+                        </div>
+                        <div class="form-row">
                             状态:
-                            <select name="" id="settlement-status" class="state" @change="getstatus($event)">
+                            <select name="" id="settlement-status" class="state" @change="SelectChangeStateFn($event)">
                                 <option value="">全部</option>
-                                <option value="0">待审核</option>
-                                <option value="1">审核通过</option>
-                                <option value="2">审核未通过</option>
+                                <option value="1">待审核</option>
+                                <option value="8">审核未通过</option>
+                                <option value="2">已上架</option>
+                                <option value="3">已下架</option>
+                                <option value="9">已冻结</option>
+                                <option value="0">已删除</option>
                             </select>
-                            </div>
-                            <div id="newBtn">
-                                <div class="query-btn" @click="queryBrand">搜索</div>
-                                <div class="addBrand" @click="newBrand">提交新品牌</div>
-                            </div>
+                        </div>
+                        <div class="form-row">
+                            主推商品:
+                            <select name="" class="state" @change="SelectChangeInsideFn($event)">
+                                <option value="">请选择</option>
+                                <option value="1">是</option>
+                                <option value="0">否</option>
+                            </select>
+                        </div>
+                        <div class="form-row">
+                            分类:
+                            <select name="" class="state" @change="ChangeClassificationFirst($event)">
+                                <option value="">全部</option>
+                                <option v-for="x in classificationFirstList" :value="x.bigTypeID">{{x.name}}</option>
+                            </select>
+                            <select name="" class="state" @change="ChangeClassificationTwo($event)">
+                                <option value="">请选择二级分类</option>
+                                <option v-for="x in classificationTwoList" :value="x.smallTypeID">{{x.name}}</option>
+                            </select>
+                            <select name="" class="state" @change="ChangeClassificationThree($event)">
+                                <option value="">请选择三级分类</option>
+                                <option v-for="x in classificationThreeList" :value="x.tinyTypeID">{{x.name}}</option>
+                            </select>
+                        </div>
+                        <div id="newBtn">
+                            <div class="query-btn" @click="SearchQueryListFn">搜索</div>
+                        </div>
                     </form>
                 </div>
-                <div class="brand-list">
-                    <ul class="brand-title">
-                        <li>品牌名称</li>
-                        <li>品牌logo</li>
-                        <li>状态</li>
-                        <li>品牌描述</li>
-                        <li>提交时间</li>
-                        <li>操作</li>
-                    </ul>
-                    <div class="tbody">
-                        <ul v-for="item in brandlist">
-                            <li class="brand-name"><h3>{{item.name}}</h3></li>
-                            <li class="brand-logo">
-                                <img :src="item.logo" v-if="item.logo!=''&&item.logo!=null">
-                                <span v-else>暂无</span>
-                            </li>
-                            <li class="brand-status">
-                                <span class="font-red"  v-if="item.status ==0">待审核</span>
-                                <span class="font-blue" v-if="item.status ==1">审核通过</span>
-                                <span class="font-red" v-if="item.status ==2">审核未通过 <br>原因:{{item.auditNote}}</span>
-                            </li>
-                            <li class="brand-description">
-                                <span v-if="item.description ==''|| item.description==null">暂无</span>
-                                <span v-else>{{item.description}}</span>
-
-                            </li>
-                            <li class="brand-time">{{item.createDate}}</li>
-                            <li class="brand-edit" >
-                                <span v-if="item.status != 1" @click="editBrand(item)">编辑</span>
-                                <span v-else>无</span>
-                            </li>
+                <div class="goods-main" v-if="productsList.length>0">
+                    <div class="goods-table" width="100%">
+                        <ul class="goods-title">
+                            <li>编号</li>
+                            <li>商品主图</li>
+                            <li>分类</li>
+                            <li>市场价/售价</li>
+                            <li>状态</li>
+                            <li>操作</li>
                         </ul>
+                        <div class="tbody">
+                            <ul v-for="(product, index) in productsList" :key="index"
+                                :class="[product.productsChecked ?'bg-gouxuan':'']">
+                                <li>
+                                    <div class="checkbox" @click='ischeck(product)'>
+                                        <div class="box icon"
+                                             :class="[product.productsChecked ?'icon-gouxuan':'icon-weigouxuan']"></div>
+                                        <span> {{product.productID}}</span>
+                                    </div>
+                                </li>
+                                <li>
+                                    <div class="good-info">
+                                        <img :src="product.mainImage" :alt="product.name">
+                                        <p class="good-name">{{product.name}}</p>
+                                    </div>
+                                </li>
+                                <li>
+                                    <div class="good-classFly">
+                                        <p>{{product.typeName}}</p>
+                                    </div>
+                                </li>
+                                <li>
+                                    <div class="good-price">
+                                        <p>¥{{toFixedFn(product.normalPrice)}}</p>
+                                        <p>/</p>
+                                        <p>¥{{toFixedFn(product.price1)}}</p>
+                                    </div>
+                                </li>
+                                <li>
+                                    <p class="status" :style="{color: StatusColorFn(product.validFlag)}">
+                                        {{StatusTextFn(product.validFlag)}}</p>
+                                </li>
+                                <li>
+                                    <div class="good-handle">
+                                        <a class="btn " href="javascript: void(0);"
+                                           v-if="['0','1','2','3','8','9'].indexOf(product.validFlag)!=-1"
+                                           @click="editGoodFn(product)">编辑</a>
+                                        <a class="btn " href="javascript: void(0);"
+                                           v-if="['2'].indexOf(product.validFlag)!=-1" @click="ItemDownshelf(product)">下架</a>
+                                        <a class="btn success" href="javascript: void(0);" v-if="product.isAddFeatured"
+                                           @click="AddPushHotFn(product)">添加主页推荐</a>
+                                        <a class="btn danger" href="javascript: void(0);" v-if="product.isDelFeatured"
+                                           @click="DeletePushHotFn(product)">删除主页推荐</a>
+                                        <a class="btn primary" href="javascript: void(0);"
+                                           v-if="['1','2'].indexOf(product.validFlag)!=-1"
+                                           @click="pageLinkDetils(product)">预览商品</a>
+                                    </div>
+                                </li>
+                            </ul>
+                        </div>
                     </div>
-                </div>
-                     <div v-if="(!isPC) && noMore" class="noMore">---- 没有更多了 ----</div>
-                     <div class="pageWrap clear" v-if="isPC && pageTotal>1">
-                            <a v-if="params.pageNum>1" class="prev" @click="toPagination(params.pageNum*1-1)" href="javascript:void(0);"></a>
-                            <template v-for="n in showPageBtn">
-                                <a v-if="n" :class="{'on':(n==params.pageNum)}" @click="toPagination(n)" href="javascript:void(0);" v-text="n"></a>
-                                <span v-else>···</span>
-                            </template>
-                            <a v-if="params.pageNum<pageTotal" class="next" @click="toPagination(params.pageNum*1+1)" href="javascript:void(0);"></a>
-                            <span>共<b v-text="pageTotal>1?pageTotal:1"></b>页</span>
-                            <span>跳至</span>
-                            <input v-model="pageInput" @blur="checkNum()"/>
-                            <span>页</span>&nbsp;
-                            <a class="btn" href="javascript:void(0);" @click="toPagination(pageInput)">点击跳转</a>
-                     </div>
-            </div>
-        </div>
-         <div class="bg-brand" v-show="bgflag">
-             <div class="add-brand-box">
-                    <div class="modal-header">
-                        <span class="shou-address">{{title}}</span>
-                        <span class="close-modalForm" @click="closebg">x</span>
-                    </div>
-                    <div class="brand-content">
-                        <div class="brand-name">
-                            <span class="label"><em class="required">*</em> 品牌名称:</span>
-                            <input type="text" v-model="brandobj.name" placeholder="请输入品牌名称"/>
+                    <div class="good-footer">
+                        <div class="footer-left">
+                            <div class="checkbox" @click='checkedAll'>
+                                <div class="box icon"
+                                     :class="[isCheckedAll ? 'icon-gouxuan' : 'icon-weigouxuan']"></div>
+                                <span>全选</span>
+                            </div>
                         </div>
-                        <div class="brand-img">
-                            <span class="label">品牌logo:</span>
-                            <div class="img-box upimg">
-                                <img class="center" :src="brandobj.logo" v-if="logoShow">
-                                <i class="icon mIcon add" v-if="iconflag"></i>
-                                <input type="file" ref="goodslogo" class="add-pic"  id="uploadfile" accept="image/*" @change="uploadlogo"/>
-                              </div>
-                            <p class="tishiyu">请上传<span class="font-color">jpg/png</span>格式的图片,大小不超过<span>5M</span> </p>
-                         </div>
-                        <div class="brand-description">
-                            <span class="label">品牌描述:</span>
-                             <textarea rows="" cols="" class="miaoshu" v-model="brandobj.description" placeholder="请描述品牌信息,不超过200字" maxlength="200" ></textarea>
+                        <div class="footer-right">
+                            <a href="javascript:void(0);" class="btn batch"
+                               :class="[isCheckedAll ? 'icon-gouxuan' : 'icon-weigouxuan']" @click="ItemDownshelfAll">批量下架</a>
                         </div>
                     </div>
-                     <div class="box-btn">
-                         <div class="btn-submit" @click="submit">提交</div>
-                          <div class="btn-cancel" @click="closebg">取消</div>
-                     </div>
                 </div>
-             </div>
-         </div>
-
+                <div v-else class="goods-main-empty">
+                    <p>您还未发布任何商品,快去 <a href="/supplier/product/toRelease.html">发布</a>吧</p>
+                </div>
+                <div v-if="(!isPC) && noMore" class="noMore">---- 没有更多了 ----</div>
+                 <div class="pageWrap clear" v-if="isPC && pageTotal>1">
+                        <a v-if="listQuery.pageNum>1" class="prev" @click="toPagination(listQuery.pageNum*1-1)" href="javascript:void(0);"></a>
+                        <template v-for="n in showPageBtn">
+                            <a v-if="n" :class="{'on':(n==listQuery.pageNum)}" @click="toPagination(n)" href="javascript:void(0);" v-text="n"></a>
+                            <span v-else>···</span>
+                        </template>
+                        <a v-if="listQuery.pageNum<pageTotal" class="next" @click="toPagination(listQuery.pageNum*1+1)" href="javascript:void(0);"></a>
+                        <span>共<b v-text="pageTotal>1?pageTotal:1"></b>页</span>
+                        <span>跳至</span>
+                        <input v-model="pageInput" @blur="checkNum()"/>
+                        <span>页</span>&nbsp;
+                        <a class="btn" href="javascript:void(0);" @click="toPagination(pageInput)">点击跳转</a>
+                   </div>
+            </div>
+        </div>
     </div>
 </div>
 
 <!-- 引入底部 -->
 <template th:replace="components/footer"></template>
 <template th:replace="components/foot-link"></template>
-<script charset="utf-8" type="text/javascript" th:src="@{/js/common/serviceapi/supplier.service.js(v=${version})}"></script>
+<script charset="utf-8" type="text/javascript"
+        th:src="@{/js/common/serviceapi/supplier.service.js(v=${version})}"></script>
 <script charset="utf-8" type="text/javascript" th:src="@{/js/supplier-center/shop/goods.js(v=${version})}"></script>
 </body>
 </html>