quality_testing.vue 22 KB

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