customer.vue 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859
  1. <template>
  2. <view>
  3. <view class="header">
  4. <view style='background:#fff;display:flex;' class="cu-bar search">
  5. <view style='flex:6;' class="search-form round Medium">
  6. <text style='color: #ccc;text-indent:6px;' class="cuIcon-search"></text>
  7. <input @input='searchinput' type="text" maxlength="20" :focus="true" v-model="searchKeyWord" @confirm="doSearch()"
  8. placeholder="输入客户姓名或手机号" confirm-type="search"></input>
  9. </view>
  10. <view @click='doSearch()' class="Regular" style="width:4%;flex:1;">搜索</view>
  11. <u-icon @click='emptysearch' class="cuIcon" v-if='searchKeyWord.length>0' size="34" name="close-circle-fill" color="#D6D9E0"></u-icon>
  12. <!-- <text @click='emptysearch' v-if='searchKeyWord.length>0' class='tip_text cuIcon-roundclosefill'></text> -->
  13. </view>
  14. </view>
  15. <view class="content">
  16. <view style='padding-left:20px;color:#AFB3BF;font-size:14px;' v-if='show==false'>近期客户</view>
  17. <view v-if='searchKeyWord.length>0&&show==true' class='searchwrap' v-for='item in gridList' @click='checkcustomer(item)'>
  18. {{item.customerName}}({{item.customerPhone}})
  19. </view>
  20. <view @click='recentcustomer(item)' class='wrap' v-else>{{item.searchContent}}</view>
  21. </view>
  22. <view v-show="isContent">
  23. <uni-load-more :status="loadStatus"></uni-load-more>
  24. </view>
  25. </view>
  26. </template>
  27. <script>
  28. import dragButton from "@/components/drag-button/drag-button.vue";
  29. import {
  30. mapState
  31. } from 'vuex';
  32. let startY = 0,
  33. moveY = 0,
  34. pageAtTop = true;
  35. export default {
  36. components: {
  37. dragButton
  38. },
  39. data() {
  40. return {
  41. inputShow: false,
  42. modalName: '',
  43. mycarStyle: '',
  44. feild: undefined,
  45. params:{},
  46. selector:[],
  47. isContent:false,
  48. loadStatus:'noMore',
  49. inputContent: '',
  50. coverTransform: 'translateY(0px)',
  51. coverTransition: '0s',
  52. moving: false,
  53. footprintList: [],
  54. searchKeyWord:'',
  55. isVip: false,
  56. userInfoTmp: [],
  57. inputStatus: 'none',
  58. carInfo: [],
  59. gridCol: 4,
  60. show:false,
  61. pageSize:10,
  62. currentPage:1,
  63. gridBorder: false,
  64. headUrl:"../../static/img/myimg/YongHu@3x.png",
  65. userphone:"",
  66. username:"请更改昵称",
  67. gridList: [],
  68. managementType:'',
  69. warehouseName: '',
  70. showTran: true,
  71. companyId: 1,
  72. current: 4,
  73. customerList:[],
  74. purchasePriceList:[],
  75. warehouseCount:'',
  76. commonWarehouseNo:'',
  77. cangid:''
  78. }
  79. },
  80. onLoad() {
  81. },
  82. // #ifndef MP
  83. onNavigationBarButtonTap(e) {
  84. const index = e.index;
  85. if (index === 0) {
  86. this.navTo('/pages/set/set');
  87. } else if (index === 1) {
  88. // #ifdef APP-PLUS
  89. const pages = getCurrentPages();
  90. const page = pages[pages.length - 1];
  91. const currentWebview = page.$getAppWebview();
  92. currentWebview.hideTitleNViewButtonRedDot({
  93. index
  94. });
  95. // #endif
  96. uni.navigateTo({
  97. url: '/pages/notice/notice'
  98. })
  99. }
  100. },
  101. // #endif
  102. computed: {
  103. ...mapState(['hasLogin', 'userInfo']),
  104. // 手机号中间4位加*
  105. starUserphone(){
  106. let reg = /^(\d{3})\d{4}(\d{4})$/;
  107. if(this.userphone){
  108. return this.userphone.replace(reg, "$1****$2");
  109. }
  110. }
  111. },
  112. onLoad(options){
  113. this.purchasePriceList=uni.getStorageSync('purchasePriceList')
  114. },
  115. onShow() {
  116. this.gridList=[]
  117. this.$api.doRequest('get', '/searchRecordsInfo/selectSearchRecordsInfo',{
  118. pageSize:this.pageSize,
  119. currentPage:this.currentPage,
  120. functionType:"3",
  121. commonId:this.userInfo.id
  122. }).then(res => {
  123. if(res.data.data){
  124. this.gridList=res.data.data.records
  125. }
  126. })
  127. this.$api.doRequest('get', '/identityAuthenticationInfo/identityAuthenticationInfoCustomer',{
  128. compId:'',
  129. authenticationStatusKey:7,
  130. }).then(res => {
  131. if(res.data.data){
  132. this.customerList=res.data.data
  133. }
  134. })
  135. },
  136. methods: {
  137. searchinput(e){
  138. if(this.searchKeyWord.length==0){
  139. this.show=false
  140. this.getList()
  141. }
  142. },
  143. checkcustomer(item){
  144. var that = this
  145. var count=''
  146. uni.showLoading({title: '加载中',mask:true})
  147. if(item.authenticationStatus=='已认证'){
  148. this.$api.doRequest('get', '/qualityInspectionManagement/api/settledCount',{
  149. compId:'',
  150. customerName: item.customerName,
  151. goodsName: uni.getStorageSync('goodsName'),
  152. }).then(res => {
  153. if(res.data.code==200){
  154. count=res.data.data
  155. }
  156. })
  157. that.$api.doRequest('get', '/paymentManagement/cumulant',{
  158. compId:'',
  159. customerName: item.customerName,
  160. goodsName: uni.getStorageSync('goodsName'),
  161. }).then(res => {
  162. for (let i = 0; i < this.purchasePriceList.length; i++) {
  163. if(this.purchasePriceList[i].goodsName== uni.getStorageSync('goodsName')){
  164. if(this.purchasePriceList[i].saleLimit - res.data.data < 50 || count > 0){
  165. this.$api.msg(`当前客户已累计销售我司${uni.getStorageSync('goodsName')}${res.data.data}吨,最高可售${this.purchasePriceList[i].saleLimit}吨。`)
  166. }else{
  167. that.$api.doRequest('post', '/searchRecordsInfo/api/addInfo',{
  168. commonId:that.userInfo.id,
  169. searchContent:item.customerName+'('+item.customerPhone+')',
  170. functionType:3
  171. }).then(res => {
  172. uni.hideLoading()
  173. uni.setStorageSync('checkcustomer',item)
  174. uni.navigateBack()
  175. })
  176. }
  177. }
  178. }
  179. })
  180. }else{
  181. this.$api.msg('客户身份不可用')
  182. }
  183. },
  184. recentcustomer(item){
  185. var count=''
  186. var that = this
  187. var name=item.searchContent.split('(')[0]
  188. for(var i=0;i<this.customerList.length;i++){
  189. // console.log(name,this.customerList[i].customerName,name==this.customerList[i].customerName)
  190. if(this.customerList[i].customerName==name){
  191. uni.showLoading({title: '加载中',mask:true})
  192. this.$api.doRequest('get', '/qualityInspectionManagement/api/settledCount',{
  193. compId:'',
  194. customerName: this.customerList[i].customerName,
  195. goodsName: uni.getStorageSync('goodsName'),
  196. }).then(res => {
  197. if(res.data.code==200){
  198. count=res.data.data
  199. }
  200. })
  201. that.$api.doRequest('get', '/paymentManagement/cumulant',{
  202. compId:'',
  203. customerName: this.customerList[i].customerName,
  204. goodsName: uni.getStorageSync('goodsName'),
  205. }).then(res => {
  206. for (let i = 0; i < this.purchasePriceList.length; i++) {
  207. if(this.purchasePriceList[i].goodsName== uni.getStorageSync('goodsName')){
  208. if(this.purchasePriceList[i].saleLimit - res.data.data < 50 || count > 0){
  209. this.$api.msg(`当前客户已累计销售我司${uni.getStorageSync('goodsName')}${res.data.data}吨,最高可售${this.purchasePriceList[i].saleLimit}吨。`)
  210. }else{
  211. that.$api.doRequest('post', '/searchRecordsInfo/api/addInfo',{
  212. commonId:that.userInfo.id,
  213. searchContent:this.customerList[i].customerName+'('+this.customerList[i].customerPhone+')',
  214. functionType:3
  215. }).then(res => {
  216. uni.hideLoading()
  217. uni.setStorageSync('checkcustomer',this.customerList[i])
  218. uni.navigateBack()
  219. })
  220. }
  221. }
  222. }
  223. })
  224. }
  225. }
  226. },
  227. emptysearch(){
  228. this.show=false
  229. this.searchKeyWord=''
  230. this.gridList=[]
  231. this.currentPage=1
  232. this.getList()
  233. },
  234. doSearch(){
  235. this.show=true
  236. this.gridList=[]
  237. this.currentPage=1
  238. this.getList()
  239. },
  240. getList(){
  241. var that = this
  242. var url=''
  243. var data={}
  244. if(this.searchKeyWord.length>0){
  245. url='/identityAuthenticationInfo/identityAuthenticationInfoCustomer'
  246. data={
  247. compId:'',
  248. authenticationStatusKey:7,
  249. searchKeyWord:this.searchKeyWord
  250. }
  251. }else{
  252. url='/searchRecordsInfo/selectSearchRecordsInfo'
  253. data={
  254. pageSize:this.pageSize,
  255. currentPage:this.currentPage,
  256. functionType:"3",
  257. commonId:this.userInfo.id
  258. }
  259. }
  260. this.$api.doRequest('get', url,data).then(res => {
  261. if(res.data.data){
  262. let data = res.data.data.records?res.data.data.records:res.data.data
  263. //采购信息
  264. if (data.length > 0) {
  265. that.gridList = data
  266. }else{
  267. if(this.currentPage==1){
  268. that.gridList=[]
  269. }
  270. this.isContent=true
  271. }
  272. }
  273. })
  274. },
  275. edit(item){
  276. uni.navigateTo({
  277. url:'/pages/erpbusiness/edit_quality_testing?id='+item.id+'&managementType='+this.managementType+'&cangid='+this.cangid
  278. })
  279. },
  280. add(){
  281. uni.navigateTo({
  282. url:'/pages/erpbusiness/add_quality_testing?managementType='+this.managementType+'&cangid='+this.cangid+'&warehouseCount='+this.warehouseCount+'&commonWarehouseNo='+this.commonWarehouseNo+'&warehouseName='+this.warehouseName
  283. })
  284. },
  285. del(item){
  286. this.$api.doRequest('post', '/qualityInspectionManagement/api/deleteQualityInspection',{
  287. id:item.id
  288. }).then(res => {
  289. if(res.data.code==200){
  290. this.$api.msg('删除成功')
  291. this.gridList=[]
  292. this.getList()
  293. }else{
  294. this.$api.msg('系统异常,请联系管理员')
  295. }
  296. })
  297. },
  298. fankui(){
  299. uni.navigateTo({
  300. url: `/pages/user/fankui`
  301. })
  302. },
  303. zhibo() {
  304. uni.navigateTo({
  305. url: `/pageB/video/broadcast`
  306. })
  307. },
  308. look() {
  309. uni.navigateTo({
  310. url: `/pageB/video/look`
  311. })
  312. },
  313. contactUs() {
  314. const that = this
  315. uni.makePhoneCall({
  316. // 手机号
  317. phoneNumber: '18241771147',
  318. // 成功回调
  319. success: (res) => {},
  320. // 失败回调
  321. fail: (res) => {}
  322. });
  323. },
  324. loadData() {
  325. // const that = this
  326. // if(uni.getStorageSync("PageCur")){
  327. // that.PageCur = uni.getStorageSync("PageCur");
  328. // }
  329. // that.userInfoTmp = uni.getStorageSync("userInfo")
  330. // uni.showLoading({
  331. // title: '正在加载',
  332. // mask:true
  333. // })
  334. // that.$api.request('integral', 'getIndexData', failres => {
  335. // that.$api.msg(failres.errmsg)
  336. // uni.hideLoading()
  337. // }).then(res => {
  338. // let data = res.data
  339. // uni.setStorageSync("message", data.message);
  340. // uni.setStorageSync("task", data.task);
  341. // uni.setStorageSync("contract", data.contract);
  342. // uni.setStorageSync('showTran', data.showTran);
  343. // that.showTran = data.showTran
  344. // that.gridList[4].tips = data.task
  345. // that.gridList[2].tips = data.contract
  346. // that.companyId = data.companyId
  347. // uni.hideLoading()
  348. // })
  349. },
  350. confirm() {
  351. const that = this
  352. if (!that.inputContent) {
  353. that.$api.msg('输入不能为空')
  354. return
  355. }
  356. let obj = {}
  357. obj[that.feild] = that.inputContent
  358. that.$api.request('user', 'syncUserInfo', obj).then(res => {
  359. that.userInfo.nickname = that.inputContent
  360. that.inputContent = ''
  361. that.$store.commit('login', that.userInfo)
  362. })
  363. },
  364. cancel() {
  365. this.inputShow = false
  366. this.inputStatus = 'none'
  367. this.genderShow = false
  368. },
  369. myAccount() {
  370. uni.navigateTo({
  371. url: `/pageA/pages/contract`
  372. })
  373. },
  374. /**
  375. * 统一跳转接口,拦截未登录路由
  376. * navigator标签现在默认没有转场动画,所以用view
  377. */
  378. navTo(url) {
  379. if (!this.hasLogin) {
  380. url = '/pages/public/login';
  381. }
  382. uni.navigateTo({
  383. url
  384. })
  385. },
  386. mycarClick(carNo) {
  387. this.modalName = null
  388. uni.navigateTo({
  389. url: `/pageB/car/mycar_detail?carNo=${carNo}`
  390. })
  391. },
  392. scanCode() {
  393. uni.scanCode({
  394. success: function(res) {
  395. uni.navigateTo({
  396. url: res.result
  397. })
  398. }
  399. })
  400. },
  401. hideModal(e) {
  402. this.modalName = null
  403. },
  404. }
  405. }
  406. </script>
  407. <style lang='scss' scoped>
  408. page{
  409. background:#F5F6FA;
  410. }
  411. .container {
  412. padding-top: 85px;
  413. padding-top: 35px;
  414. background-color: #F5F6FA;
  415. position: relative;
  416. width: 100vw;
  417. height: 100vh;
  418. overflow: hidden;
  419. background: url('~@/static/img/login/bg_slices/bg@3x.png');
  420. background-size: 100% 100%;
  421. margin: 0 auto;
  422. }
  423. .cu-tag.badge {
  424. right: 26rpx;
  425. }
  426. .path {
  427. color: #007aff;
  428. display: inline-block;
  429. text-align: center;
  430. }
  431. .icon {
  432. margin-right: 10rpx;
  433. }
  434. .portrait-box {
  435. margin-top: 20rpx;
  436. }
  437. .qr-wrap {
  438. margin-top: 20upx;
  439. color: #fff;
  440. font-size: 32rpx;
  441. }
  442. @keyframes move_wave {
  443. 0% {
  444. transform: translateX(0) translateZ(0) scaleY(1)
  445. }
  446. 50% {
  447. transform: translateX(-25%) translateZ(0) scaleY(0.55)
  448. }
  449. 100% {
  450. transform: translateX(-50%) translateZ(0) scaleY(1)
  451. }
  452. }
  453. .bg {
  454. position: relative;
  455. height: 300rpx;
  456. /* background: linear-gradient(to bottom, #56ccf2, #2f80ed); */
  457. /*background: linear-gradient(to bottom, #0be9fe, #4bb0fe); */
  458. background: linear-gradient(to bottom, #d5f8ff, #56ccf2);
  459. }
  460. .bg_ware {
  461. position: absolute;
  462. left: 0;
  463. bottom: -2rpx;
  464. width: 100%;
  465. mix-blend-mode: screen;
  466. height: 224rpx;
  467. }
  468. %flex-center {
  469. display: flex;
  470. flex-direction: column;
  471. justify-content: center;
  472. align-items: center;
  473. }
  474. %section {
  475. display: flex;
  476. justify-content: space-around;
  477. align-content: center;
  478. background: #fff;
  479. border-radius: 10upx;
  480. }
  481. .cuIcon {
  482. position: absolute;
  483. right: 80px;
  484. }
  485. .grid-item-box {
  486. flex: 1;
  487. /* position: relative;
  488. */
  489. /* #ifndef APP-NVUE */
  490. display: flex;
  491. /* #endif */
  492. flex-direction: column;
  493. align-items: center;
  494. justify-content: center;
  495. padding: 15px 0;
  496. }
  497. .image {
  498. width: 80rpx;
  499. height: 80rpx;
  500. }
  501. .text {
  502. font-size: 26rpx;
  503. margin-top: 10rpx;
  504. }
  505. .user-section {
  506. height: 520upx;
  507. padding: 100upx 30upx 0;
  508. position: relative;
  509. .bg {
  510. position: absolute;
  511. left: 0;
  512. top: 0;
  513. width: 100%;
  514. height: 100%;
  515. filter: blur(1px);
  516. box-shadow: 0px 1px 8px #ccc;
  517. /* background:linear-gradient(#0eb0c9,#126bae); */
  518. /* opacity: .7; */
  519. }
  520. }
  521. .cover-container {
  522. padding: 1px 10px ;
  523. padding-bottom: 200upx;
  524. /* background-color: #F5F6FA; */
  525. /* border-radius: 20px; */
  526. margin-top: 60upx;
  527. .arc {
  528. position: absolute;
  529. left: 0;
  530. top: -34upx;
  531. width: 100%;
  532. height: 36upx;
  533. }
  534. }
  535. .tj-sction {
  536. @extend %section;
  537. .tj-item {
  538. @extend %flex-center;
  539. flex-direction: column;
  540. height: 140upx;
  541. font-size: $font-sm;
  542. color: #75787d;
  543. }
  544. .num {
  545. font-size: $font-lg;
  546. color: $font-color-dark;
  547. margin-bottom: 8upx;
  548. }
  549. }
  550. .order-section {
  551. @extend %section;
  552. padding: 28upx 0;
  553. margin-top: 20upx;
  554. .order-item {
  555. @extend %flex-center;
  556. width: 120upx;
  557. height: 120upx;
  558. border-radius: 10upx;
  559. font-size: $font-sm;
  560. color: $font-color-dark;
  561. }
  562. .yticon {
  563. font-size: 48upx;
  564. margin-bottom: 18upx;
  565. color: #fa436a;
  566. }
  567. .icon-shouhoutuikuan {
  568. font-size: 44upx;
  569. }
  570. }
  571. .history-section {
  572. padding: 30upx 0 0;
  573. margin-top: 20upx;
  574. background: #fff;
  575. border-radius: 10upx;
  576. .sec-header {
  577. display: flex;
  578. align-items: center;
  579. font-size: $font-base;
  580. color: $font-color-dark;
  581. line-height: 40upx;
  582. margin-left: 30upx;
  583. .yticon {
  584. font-size: 44upx;
  585. color: #5eba8f;
  586. margin-right: 16upx;
  587. line-height: 40upx;
  588. }
  589. }
  590. .h-list {
  591. white-space: nowrap;
  592. padding: 30upx 30upx 0;
  593. image {
  594. display: inline-block;
  595. width: 160upx;
  596. height: 160upx;
  597. margin-right: 20upx;
  598. border-radius: 10upx;
  599. }
  600. }
  601. }
  602. .search-form {
  603. background: #F5F6F9;
  604. }
  605. .search-box {
  606. width: 100%;
  607. background-color: rgb(242, 242, 242);
  608. padding: 15upx 2.5%;
  609. display: flex;
  610. justify-content: space-between;
  611. }
  612. .search-box .mSearch-input-box {
  613. width: 100%;
  614. }
  615. .search-box .input-box {
  616. width: 85%;
  617. flex-shrink: 1;
  618. display: flex;
  619. justify-content: center;
  620. align-items: center;
  621. }
  622. .search-box .search-btn {
  623. width: 15%;
  624. margin: 0 0 0 2%;
  625. display: flex;
  626. justify-content: center;
  627. align-items: center;
  628. flex-shrink: 0;
  629. font-size: 28upx;
  630. color: #fff;
  631. background: linear-gradient(to right, #ff9801, #ff570a);
  632. border-radius: 60upx;
  633. }
  634. .search-box .input-box>input {
  635. width: 100%;
  636. height: 60upx;
  637. font-size: 32upx;
  638. border: 0;
  639. border-radius: 60upx;
  640. -webkit-appearance: none;
  641. -moz-appearance: none;
  642. appearance: none;
  643. padding: 0 3%;
  644. margin: 0;
  645. background-color: #ffffff;
  646. }
  647. .placeholder-class {
  648. color: #9e9e9e;
  649. }
  650. .search-keyword {
  651. width: 100%;
  652. background-color: rgb(242, 242, 242);
  653. }
  654. .grid {
  655. display: flex;
  656. align-items: center;
  657. flex-wrap: wrap;
  658. /* border-top: 2upx solid rgba(172,172,172,.2); */
  659. .grid-item-3 {
  660. box-sizing: border-box;
  661. width: calc(100% / 3);
  662. border-bottom: 2upx solid rgba(172, 172, 172, .2);
  663. border-right: 2upx solid rgba(172, 172, 172, .2);
  664. text-align: center;
  665. padding: 40upx 0;
  666. position: relative;
  667. /* view{
  668. font-size: $font-sm;
  669. margin-top: 16upx;
  670. color: $font-color-dark;
  671. } */
  672. .grid_icon {
  673. font-size: 48upx;
  674. margin-bottom: 18upx;
  675. color: #fa436a;
  676. }
  677. .tip_text {
  678. display: block;
  679. padding: 4upx 8upx;
  680. text-align: center;
  681. border-radius: 36upx;
  682. font-size: 24upx;
  683. background-color: #fa436a;
  684. color: rgba(255, 255, 255, 1);
  685. position: absolute;
  686. right: 6upx;
  687. top: 6upx;
  688. }
  689. }
  690. .grid-item-3:nth-child(3n + 3),
  691. .grid-item-4:nth-child(4n + 4) {
  692. border-right: none;
  693. }
  694. }
  695. .headPortrait {
  696. width: 75px;
  697. height: 75px;
  698. border-radius: 40px;
  699. border: 2px solid #ffffff;
  700. }
  701. .information {
  702. font-size: 15px;
  703. font-weight: 600;
  704. height: 36px;
  705. }
  706. .cu-list>.cu-item:after{
  707. border:none;
  708. }
  709. .sign{
  710. width: 40px;
  711. height: 40px;
  712. top: 4px;
  713. margin-right: 6px;
  714. }
  715. .indexUp{
  716. padding:0 20px;
  717. align-items: center;
  718. }
  719. .wrap{
  720. background: #F5F6F9;
  721. margin: 5px 10px;
  722. border-radius: 20px;
  723. width: 42%;
  724. display: inline-block;
  725. padding: 10px;
  726. }
  727. .searchwrap{
  728. border-top:1px solid #eee;padding:10px 20px;
  729. }
  730. .searchwrap:last-child{
  731. border-bottom:1px solid #eee;
  732. }
  733. .qualityNo{
  734. font-size:16px;
  735. }
  736. .type{
  737. font-size:12px;
  738. color:#fff;
  739. padding:3px 5px;
  740. border-radius:50%;
  741. line-height:16px;
  742. }
  743. .type-zhi{
  744. background:#22C572;
  745. }
  746. .type-mao{
  747. background:#3296FA;
  748. }
  749. .type-pi{
  750. background:#FD714F;
  751. }
  752. .time{
  753. font-size:12px;
  754. color:#878C9C;
  755. }
  756. .qualityInspector{
  757. font-size:14px;
  758. }
  759. .customerinformation{
  760. background:#F9F9FA;
  761. padding:7px;
  762. margin:20px 0;
  763. border-radius:10px;
  764. color:#9698A2;
  765. }
  766. .buttons{
  767. flex-direction:row-reverse;
  768. }
  769. .button{
  770. padding:13rpx 30rpx;
  771. border:1px solid #CDCDCD;
  772. border-radius:15px;
  773. margin:0 10px;
  774. }
  775. .changewarehouse{
  776. padding:10px 20px;
  777. }
  778. .header{
  779. background:#fff;
  780. border-radius:0px 0px 16px 16px;
  781. }
  782. .content{
  783. background:#fff;
  784. height:85.5vh;
  785. }
  786. .footer{
  787. background:#fff;
  788. position:fixed;
  789. bottom:0;
  790. width:100%;
  791. padding:20px 10px;
  792. z-index:10;
  793. .button{
  794. background:#22C572;
  795. width:90%;
  796. margin:0 auto;
  797. padding:10px;
  798. color:#fff;
  799. text-align:center;
  800. border-radius: 30px;
  801. }
  802. }
  803. </style>