quality_testing.vue 21 KB

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