Compare commits

..

No commits in common. 'ba6162c17dccc65d8471725c9fb02b06eb013908' and 'bae87b8238233b4531e51a8eba2618be2df047b6' have entirely different histories.

  1. 0
      .eslintrc.js
  2. 0
      app.js
  3. 0
      app.json
  4. 0
      components/echarts/ec-canvas.js
  5. 0
      components/echarts/ec-canvas.json
  6. 0
      components/echarts/ec-canvas.wxml
  7. 0
      components/echarts/ec-canvas.wxss
  8. 0
      components/echarts/echarts.js
  9. 0
      components/echarts/wx-canvas.js
  10. 0
      images/addPoto.png
  11. 0
      images/banner.png
  12. 0
      images/binding_wx.png
  13. 0
      images/bush.png
  14. 0
      images/home_not.png
  15. 0
      images/home_sel.png
  16. 0
      images/my_not.png
  17. 0
      images/my_sel.png
  18. 0
      images/saoma.png
  19. 0
      images/意见反馈.png
  20. 0
      images/样本交接.png
  21. 0
      images/物流码.png
  22. 0
      images/第三方物流.png
  23. 0
      images/第三方物流_查询.png
  24. 0
      images/统计.png
  25. 0
      images/自建物流.png
  26. 0
      images/自建物流_查询.png
  27. 0
      images/货运物流.png
  28. 0
      images/货运物流_查询.png
  29. 0
      package-lock.json
  30. 0
      package.json
  31. 5
      pages/about/about.js
  32. 0
      pages/about/about.json
  33. 0
      pages/about/about.wxml
  34. 9
      pages/about/about.wxss
  35. 6
      pages/details/details.js
  36. 0
      pages/details/details.json
  37. 53
      pages/details/details.wxml
  38. 18
      pages/details/details.wxss
  39. 0
      pages/feedback/feedback.js
  40. 0
      pages/feedback/feedback.json
  41. 0
      pages/feedback/feedback.wxml
  42. 0
      pages/feedback/feedback.wxss
  43. 1
      pages/freiLogistics/freiLogistics.js
  44. 105
      pages/freiLogistics/freiLogistics.wxml
  45. 79
      pages/freiLogistics/freiLogistics.wxss
  46. 94
      pages/handover/handover.js
  47. 0
      pages/handover/handover.json
  48. 63
      pages/handover/handover.wxml
  49. 143
      pages/handover/handover.wxss
  50. 0
      pages/index/index.js
  51. 0
      pages/index/index.json
  52. 2
      pages/index/index.wxml
  53. 5
      pages/index/index.wxss
  54. 98
      pages/login/login.js
  55. 4
      pages/login/login.json
  56. 13
      pages/login/login.wxml
  57. 62
      pages/login/login.wxss
  58. 0
      pages/meLogistics/meLogistics.js
  59. 2
      pages/meLogistics/meLogistics.wxml
  60. 15
      pages/meLogistics/meLogistics.wxss
  61. 0
      pages/otherLogistics/otherLogistics.js
  62. 0
      pages/otherLogistics/otherLogistics.json
  63. 0
      pages/otherLogistics/otherLogistics.wxml
  64. 0
      pages/otherLogistics/otherLogistics.wxss
  65. 77
      pages/queryfrei/queryfrei.js
  66. 0
      pages/queryfrei/queryfrei.json
  67. 74
      pages/queryfrei/queryfrei.wxml
  68. 79
      pages/queryfrei/queryfrei.wxss
  69. 76
      pages/queryme/queryme.js
  70. 0
      pages/queryme/queryme.json
  71. 72
      pages/queryme/queryme.wxml
  72. 85
      pages/queryme/queryme.wxss
  73. 77
      pages/querythree/querythree.js
  74. 0
      pages/querythree/querythree.json
  75. 63
      pages/querythree/querythree.wxml
  76. 79
      pages/querythree/querythree.wxss
  77. 9
      pages/threeLogistics/threeLogistics.js
  78. 111
      pages/threeLogistics/threeLogistics.wxml
  79. 84
      pages/threeLogistics/threeLogistics.wxss
  80. 3
      project.config.json
  81. 0
      project.private.config.json
  82. 0
      sitemap.json
  83. 0
      utils/dateSetting.js
  84. 0
      utils/dateUtils.js
  85. 0
      utils/http.js
  86. 0
      utils/login.js
  87. 0
      utils/weapp-qrcode.js
  88. 0
      utils/weapp.qrcode.esm.js
  89. 17
      yyt-mall-wl/app.wxss
  90. BIN
      yyt-mall-wl/images/code.png
  91. BIN
      yyt-mall-wl/images/shaixuan.png
  92. 58
      yyt-mall-wl/pages/details/details.wxml
  93. 47
      yyt-mall-wl/pages/details/details.wxss
  94. 4
      yyt-mall-wl/pages/freiLogistics/freiLogistics.json
  95. 112
      yyt-mall-wl/pages/freiLogistics/freiLogistics.wxml
  96. 115
      yyt-mall-wl/pages/handover/handover.wxml
  97. 295
      yyt-mall-wl/pages/handover/handover.wxss
  98. 144
      yyt-mall-wl/pages/login/login.js
  99. 4
      yyt-mall-wl/pages/login/login.json
  100. 124
      yyt-mall-wl/pages/login/login.wxss
  101. Some files were not shown because too many files have changed in this diff Show More

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Before

Width:  |  Height:  |  Size: 90 KiB

After

Width:  |  Height:  |  Size: 90 KiB

Before

Width:  |  Height:  |  Size: 4.0 KiB

After

Width:  |  Height:  |  Size: 4.0 KiB

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Before

Width:  |  Height:  |  Size: 2.0 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 39 KiB

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Before

Width:  |  Height:  |  Size: 1.2 KiB

After

Width:  |  Height:  |  Size: 1.2 KiB

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.3 KiB

@ -79,14 +79,11 @@ Page({
//登录
goLogin() {
if(app.globalData.token == ''){
wx.navigateTo({
url: '../login/login'
url: '../login/login',
})
}
},
//退出登录
outLogin() {
wx.showModal({

@ -55,11 +55,8 @@
color: #fff;
font-size: 30rpx;
width: 100%;
height: 80rpx;
font-weight: 700;
letter-spacing: 5rpx;
background-color: #4eb8b9;
height: 100rpx;
background-color: #ff8c8c;
margin-top: 350rpx;
border-radius: 50rpx;
border: 1rpx #ddd solid;
border-radius: 5rpx;
}

@ -19,12 +19,6 @@ Page({
notes:'',//备注
},
goIndex(){
wx.switchTab({
url: '../index/index',
})
},
/**
* 生命周期函数--监听页面加载
*/

@ -0,0 +1,53 @@
<!--pages/details/details.wxml-->
<view class="box">
<view class="back">
<view class="cen">
<label>样本条码:</label>
<view>{{barCode}}</view>
</view>
<view class="cen">
<label>接收时间:</label>
<view>{{receiveTime}}</view>
</view>
<view class="cen">
<label>样本状态:</label>
<view>已接收</view>
</view>
<view class="cen">
<label>物流单号:</label>
<view>{{logisticsNo}}</view>
</view>
<view class="cen">
<label>物流单位:</label>
<view>{{unitType}}</view>
</view>
<view class="cen">
<label>日 期:</label>
<view>{{entryDate}}</view>
</view>
<view class="cen">
<label>物流费用:</label>
<view>{{cost}}</view>
</view>
<view class="cen">
<label>到达日期:</label>
<view>{{expectedEndTime}}</view>
</view>
<view class="cen">
<label>转运箱号:</label>
<view>{{boxNum}}</view>
</view>
<view class="cen">
<label>物流车号:</label>
<view>{{numberplate}}</view>
</view>
<view class="cen">
<label>物流员:</label>
<view>{{logisticsMen}}</view>
</view>
<view class="cen">
<label>备 注:</label>
<view>{{notes}}</view>
</view>
</view>
</view>

@ -0,0 +1,18 @@
/* pages/details/details.wxss */
.cen{
/* border-bottom: 1rpx #ececec solid; */
padding: 10rpx 20rpx;
display: flex;
}
.cen label{
width: 150rpx;
text-align: right;
margin-right: 20rpx;
}
.cen view{
background-color: #eee;
padding: 10rpx 30rpx;
width: 300rpx;
flex: 1;
border-radius: 15rpx;
}

@ -201,7 +201,6 @@ Page({
if (e.target.dataset.id == 'box_1') potoIdx = 2
if (e.target.dataset.id == 'box_2') potoIdx = 3
//回显所拍摄照片
var _this = this;
wx.chooseMedia({

@ -0,0 +1,105 @@
<view class="box">
<view class="back">
<view class="top">
<input type="number" value="{{pipenum}}" />
<view style="background-color: #eee;" bindtap="scacode">扫 码</view>
<!-- <view style="background-color: #23c559; color: #fff;" bindtap="phot">拍 照</view> -->
</view>
<view class="form">
<view class="from-con">
<label>物流单号:</label>
<input type="text" placeholder="物流单号" disabled="false" placeholder-class="place" value="{{selfOrderCode}}" />
</view>
<picker class="from-con" bindchange="bindPickerChange" value="{{index}}" range="{{ins}}">
<label>转运方式:</label>
<input type="text" disabled="true" placeholder="请选择转运方式" placeholder-class="place" value="{{ins[index]}}" />
</picker>
<view class="from-con">
<label>转运箱号</label>
<input type="text" placeholder="转运箱号" placeholder-class="place" value="" />
</view>
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChange" class="from-con">
<label>日 期:</label>
<input type="text" disabled="true" placeholder="请选择日期" placeholder-class="place" value="{{date}}" />
</picker>
<view class="from-con">
<label>物流电话:</label>
<input type="text" placeholder="物流电话" placeholder-class="place" bindinput="inputTextInfo" data-id="phone" value="{{phone}}"/>
</view>
<view class="from-con">
<label>物流费用:</label>
<input type="number" placeholder="物流费用" placeholder-class="place" bindinput="inputTextInfo" data-id="cost" value="{{cost}}" />
</view>
<picker class="from-con" mode="multiSelector" bindchange="bindMultiPickerChange" bindcolumnchange="bindMultiPickerColumnChange" value="{{multiIndex}}" range="{{multiArray}}">
<label>到达时间:</label>
<input value='{{time}}' placeholder='请选择到达时间' placeholder-class="place" disabled="true" />
</picker>
<view class="from-con">
<label>车牌号:</label>
<input type="text" placeholder="车牌号" placeholder-class="place" bindinput="inputTextInfo" data-id="numberplate" value="{{numberplate}}" />
</view>
<view class="from-con">
<label>物流员:</label>
<input type="text" bindinput="inputTextInfo" data-id="logisticsMen" placeholder="物流员" placeholder-class="place" value="{{logistician}}" />
</view>
<view class="from-con">
<label>备 注:</label>
<input type="text" bindinput="inputTextInfo" data-id="notes" placeholder="备注" placeholder-class="place" value="{{notes}}" />
</view>
</view>
</view>
<view class="back">
<view class="bush">
<view style="flex: 1;">物流车拍照</view>
<button bindtap="bushPhot" hidden="true">拍 照</button>
</view>
<view class="bush-img">
<image bindtap="photograph" src="{{poto[0]}}" data-id="car_1"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
</view>
</view>
<view class="back">
<view class="bush">
<view style="flex: 1;">转运箱拍照</view>
<button bindtap="boxPhot" hidden="true">拍 照</button>
</view>
<view class="bush-img">
<image bindtap="photograph" src="{{poto[2]}}" data-id="box_1"></image>
<image bindtap="photograph" src="{{poto[3]}}" data-id="box_2"></image>
</view>
</view>
<view class="back">
<view class="con">
<view style="flex: 1;">总计:{{sampleCount}}/管数</view>
<button style="background-color: #ddd;" hidden="true">修 改</button>
<button style="color: #fff;" bindtap="saveInfo">保 存</button>
</view>
<scroll-view scroll-x class="tabel">
<view class="tr tab-top">
<view class="td1">序号</view>
<view class="td">样本条码号</view>
<view class="td">接收时间</view>
<view class="td">样本状态</view>
<view class="td">物流员</view>
<view class="td">物流单号</view>
</view>
<view class="tr" wx:for="{{sampleList}}" wx:key="index" bindtap="goDetail">
<view class="td1">{{item.id}}</view>
<view class="td">{{item.number}}</view>
<view class="td">{{item.time}}</view>
<view class="td">{{item.status}}</view>
<view class="td">{{item.name}}</view>
<view class="td">{{item.num}}</view>
</view>
</scroll-view>
</view>
</view>

@ -5,20 +5,17 @@
justify-content: left;
font-size: 28rpx;
}
.top input{
background-color: #fff;
border-radius: 40rpx !important;
border: 1rpx #333 solid;
height: 60rpx;
width: 700rpx;
border-radius: 5rpx;
padding: 3rpx 30rpx;
font-size: 24rpx;
padding: 5rpx 10rpx;
}
.top view{
width: 120rpx;
width: 305rpx;
margin-left: 20rpx;
background-color: #eee;
display: flex;
justify-content: center;
align-items: center;
@ -30,9 +27,8 @@
.form{
background-color: #fff;
border-radius: 15rpx;
padding: 10rpx 35rpx;
padding: 0rpx 30rpx;
margin-bottom: 15rpx;
margin-top: 15rpx;
}
.form .from-con{
font-size: 28rpx;
@ -45,14 +41,11 @@
top: 5rpx;
font-weight: 900;
font-size: 28rpx;
color: #555;
color: #333;
}
.from-con input{
text-align: right;
padding: 10rpx;
position: relative;
left: 28%;
width: 70%;
}
.place{
color:#c4bfbf;
@ -62,7 +55,6 @@
display: flex;
justify-content:space-between;
align-items: center;
padding-left: 30rpx;
}
.bush button{
width: 200rpx !important;
@ -74,49 +66,42 @@
color:#fff;
height: 55rpx;
}
.bush-img{
display: flex;
flex-wrap: wrap;
justify-content:space-around;
padding:10rpx;
width: 100%;
padding: 20rpx 10rpx;
}
.bush-img image{
width: 120rpx;
height: 120rpx;
margin-top: 5rpx;
/* border: 10rpx solid #eee;
background-color: #eee; */
border: 1rpx solid rgb(189, 188, 188,0.6);
/* background-color: #ddd; */
border-radius: 10rpx;
}
.back{
width: 270rpx;
height: 230rpx;
margin-top: 10rpx;
border: 1rpx solid #999;
border-radius: 15rpx;
}
.back_img_box {
.back{
margin-top: 15rpx;
padding: 30rpx 0;
background-color: rgb(255, 255, 255,0.8);
/* background-color: #fff; */
border-radius: 15rpx;
}
.con{
display: flex;
align-items: center;
padding: 0 20rpx;
font-size: 26rpx;
}
.con button{
width: 170rpx !important;
display: flex;
justify-content: center;
align-items: center;
font-size: 28rpx;
background-color: rgb(245, 90, 90);
height: 55rpx;
margin-left: 10rpx !important;
}
.tabel{
margin-top: 20rpx;
width: 100%;
/* border: 1rpx #ddd solid; */
height: 400rpx;
position: relative;
border: 1rpx #ddd solid;
}
.tabel .tr{
@ -140,7 +125,7 @@
background-color: #51bdbe;
color:#fff;
font-weight: 700;
font-size: 26rpx !important;
font-size: 28rpx;
}
.td1{
border-right:#ddd solid 1rpx ;
@ -154,19 +139,3 @@
white-space: nowrap;
min-width: 100rpx;
}
.bottomButton {
width: 100% !important;
height: 90rpx;
margin-top: 50rpx;
margin-bottom: 80rpx;
padding: 0rpx 10rpx;
display: block;
display: inline-flex;
align-items: center;
justify-content: center;
text-align: center;
background-color:#4eb8b9;
color: #fff;
border-radius: 50rpx;
}

@ -8,33 +8,7 @@ Page({
* 页面的初始数据
*/
data: {
screenisshow:false,
dateList:[
{
id:1,
name:'近1个月',
isShow:false,
},
{
id:2,
name:'近3个月',
isShow:false,
},
{
id:3,
name:'近6个月',
isShow:false,
},
{
id:4,
name:'今年',
isShow:false,
},
],
date: '', //开始时间
endDate: '',
// date: '',
date: '',
start: '',
end: '',
logisticsCodeList: [], //物流单列表
@ -43,76 +17,16 @@ Page({
logisticsNo:'', //记录当前物流单号
},
//筛选--------------------------
screenisshow(){
this.setData({
screenisshow:true
})
},
selectDate(e){
console.log(e.currentTarget.dataset.id);
var id=e.currentTarget.dataset.id
var dateList=this.data.dateList
for(var i in dateList){
if(dateList[i].id==id){
dateList[i].isShow=true
}else{
dateList[i].isShow=false
}
}
this.setData({
dateList:dateList
})
},
//筛选确定
okDate(){
this.setData({
screenisshow:false
})
},
//筛选重置
resDate(){
var dateList=this.data.dateList
for(var i in dateList){
dateList[i].isShow=false
}
this.setData({
dateList:dateList,
date: '',
endDate: '',
})
},
//-------------------------------
//退出
out(){
wx.switchTab({
url: '../index/index',
})
},
//刷新按钮
refresh() {
this.selTranLogistics()
},
//开始时间
bindDateChange(e) {
// console.log(e.detail.value)
this.setData({
date: e.detail.value
})
},
//结束时间
bindDateChangeend(e) {
// console.log(e.detail.value)
this.setData({
endDate: e.detail.value
})
},
//查询物流单列表
selTranLogistics() {
@ -231,9 +145,9 @@ Page({
end: tempDate
}) //当前的时间
// this.setData({
// date: tempDate
// })
this.setData({
date: tempDate
})
this.selTranLogistics()
},

@ -0,0 +1,63 @@
<!--pages/handover/handover.wxml-->
<view class="box">
<view class="top">物流单号M2023020200012已签收。签收时间:2023年6月14日 14:36</view>
<view class="back">
<view style="display: flex;" class="from-con">
<text>日 期:</text>
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChange" class="from-con">
<input type="text" disabled="true" placeholder="请选择日期" placeholder-class="place" value="{{date}}" />
</picker>
<button class="f5" bindtap="refresh">查 询</button>
</view>
<view style="margin-top: 10rpx;">物流单号</view>
<scroll-view scroll-y class="allordernum">
<!--物流单列表-->
<view wx:for="{{logisticsCodeList}}" wx:key="idx">
<view wx:if="{{item.status == 1}}" style="background-color: #ffe4c4;" bindtap="selSampleList" data-id="{{item.logisticsNo}}">{{item.logisticsNo}} - [未核收]</view>
<view wx:else style="background-color: #a0f88a;" bindtap="selSampleList" data-id="{{item.logisticsNo}}">{{item.logisticsNo}} - [已核收]</view>
</view>
</scroll-view>
</view>
<view class="back">
<scroll-view scroll-x style="width: 100%; border: 1rpx #ddd solid;">
<view class="tr top1">
<view class="td td1">序号</view>
<view class="td">样本号</view>
<view class="td">送检机构</view>
<view class="td td2">日期</view>
<view class="td">转运箱号</view>
<view class="td">交接人</view>
<view class="td">状态</view>
</view>
<block wx:for="{{sampleList}}" wx:key="index">
<view class="tr">
<view class="td td1">{{index+1}}</view>
<view class="td">{{item.barCode}}</view>
<view class="td">{{item.institutionName}}</view>
<view class="td td2">{{item.entryDate}}</view>
<view class="td">{{item.boxNum}}</view>
<view class="td">{{item.logisticsMen}}</view>
<view class="td" wx:if="{{item.status == 0}}" class="td">未采样</view>
<view class="td" wx:elif="{{item.status == 1}}" class="td">已采样</view>
<view class="td" wx:elif="{{item.status == 2}}" class="td">已发货</view>
<view class="td" wx:elif="{{item.status == 3}}" class="td">已接收</view>
<view class="td" wx:elif="{{item.status == 4}}" class="td">重新采样</view>
<view class="td" wx:else class="td">其它</view>
</view>
</block>
</scroll-view>
</view>
<view class="zan-dialog {{ showDialog ? 'zan-dialog--show' : 'pop_hidden' }}">
<view class="zan-dialog__mask" bindtap="toggleDialog" />
<view class="zan-dialog__container">
<view style='padding:40rpx;'>
<canvas type="2d" class="canvas" id="myQrcode" bindtap="collectionSam"></canvas>
</view>
</view>
</view>
</view>

@ -0,0 +1,143 @@
/* pages/handover/handover.wxss */
.back {
margin-top: 15rpx;
}
.top {
background-color: #fff;
padding: 10rpx 10rpx;
font-size: 22rpx;
border-radius: 5rpx;
}
.from-con {
display: flex;
align-items: center;
position: relative;
}
.from-con input {
width: 250rpx;
border-radius: 5rpx;
border: 1rpx #666 solid;
padding: 3rpx 10rpx;
text-align: center;
}
.canvas {
width: 100px;
height: 100px;
background-color: #6bc9ca;
}
.place {
color: #c4bfbf;
}
.f5 {
width: 200rpx !important;
font-size: 28rpx;
background-color: #eee;
border: 1rpx #ddd solid;
height: 60rpx;
display: flex;
align-items: center;
justify-content: center;
position: relative;
left: 40rpx;
}
.allordernum {
margin-top: 20rpx;
/* border: 1rpx #999 solid; */
background-color: #f1f1f1;
border: 1rpx #eee solid;
border-radius: 5rpx;
width: 100%;
height: 350rpx;
padding: 20rpx 0;
}
.allordernum view view {
padding: 20rpx;
background-color: #eee;
width: 88%;
margin: 0 auto;
margin-bottom: 15rpx;
border-radius: 5rpx;
}
.tr {
display: flex;
width: 100%;
}
.tr .td {
/* border-right:#ddd solid 1rpx ;
border-top: #ddd solid 1rpx; */
border: 1rpx #ddd solid;
padding: 10rpx 0;
font-size: 22rpx;
display: flex;
justify-content: center;
align-items: center;
flex-wrap: nowrap;
white-space: nowrap;
min-width: 200rpx;
}
.top1 view {
background-color: #6bc9ca;
color: #fff;
}
.td1 {
min-width: 100rpx !important;
}
.zan-dialog__mask {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 10;
background: rgba(0, 0, 0, 0.05);
/* 设置阴影半透明背景如: background: rgba(0, 0, 0, 0.4); */
display: none;
}
.zan-dialog__container {
position: fixed;
bottom: 200rpx;
width: 280rpx;
/* 弹窗布局宽 */
height: 280rpx;
/* 弹窗布局高,与下面弹出距离transform有关 */
margin-left: 220rpx;
background: #f8f8f8;
transform: translateY(300%);
/* 弹框弹出距离,与弹框布局高度有关,如300%表示弹起距离为3倍弹窗高度 */
transition: all 0.4s ease;
z-index: 12;
border-radius: 10rpx;
box-shadow: 0px 3px 3px 2px gainsboro;
/* 弹框的悬浮阴影效果,如不需要可注释该行 */
}
.zan-dialog--show .zan-dialog__container {
transform: translateY(0);
}
.zan-dialog--show .zan-dialog__mask {
display: block;
}
/*隐藏*/
.pop_hidden {
display: none;
}

@ -51,6 +51,6 @@
<button class="btn" bindtap="goLogisticsType" data-id="goHandover">物流交接</button>
<image src="https://api.wx.bjyytsoft.com/mallStatic/wx/images/time.png" style="width: 100%;height: 250rpx;margin-top: 90rpx;"></image>
<image src="https://api.wx.bjyytsoft.com/mallStatic/wx/images/time.png" style="width: 100%;height: 200rpx;margin-top: 90rpx;"></image>
</view>

@ -14,9 +14,10 @@ page {
.msg{
border-radius: 2px;
margin: 10rpx 10rpx 0rpx;
height: 40rpx;
background-color: #fff;
font-size: 24rpx;
padding: 15rpx;
font-size: 26rpx;
padding: 10rpx;
text-align: center;
}

@ -0,0 +1,98 @@
// pages/login/login.js
const request = require('../../utils/http')
var app = getApp();
Page({
/**
* 页面的初始数据
*/
data: {
username: "yuexiangqian", //账号
userpwd: "123456", //密码
},
getUsername(e) {
this.setData({
username: e.detail.value
})
},
getUserpwd(e) {
this.setData({
userpwd: e.detail.value
})
},
//登录请求
login() {
request.post(`/sso/login?username=${this.data.username}&password=${this.data.userpwd}`).then(res => {
console.log(res);
if (res.data.code == 200) {
app.globalData.token = res.data.data.tokenHead + res.data.data.token;
request.get('/sso/info').then(res2 => {
app.globalData.userInfo = res2.data.data
wx.showToast({
title: '登陆成功'
})
wx.reLaunch({
url: '../about/about'
});
})
}
})
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

@ -0,0 +1,4 @@
{
"usingComponents": {},
"navigationBarTitleText": "登录"
}

@ -1,6 +1,5 @@
<!--pages/login/login.wxml-->
<view class="title">欢迎登录</view>
<view style="background-color: #fff; width: 650rpx; border-radius: 10rpx; margin: 0 auto; padding: 30rpx 0;">
@ -15,18 +14,6 @@
<input type="password" placeholder="请输入密码" value="{{userpwd}}" bindinput="getUserpwd" data-value="userpwd" />
</view>
<view class="code">
<input type="text" value="{{inputCode}}" bindblur="getinputCode" placeholder="请输入验证码" placeholder-class="place"/>
<view style="width: 40%;">
<view class="codenum">
<view>{{code}}</view>
<image src="../../images/code.png"></image>
</view>
<view class="huan" bindtap="getCode"> 看不清?换一张</view>
</view>
</view>
<button class="btn" bindtap="login">登 录</button>
</view>

@ -0,0 +1,62 @@
/* pages/login/login.wxss */
/* pages/login/login.wxss */
page {
background: -webkit-linear-gradient(top, #27adb0, #b6f0f0, #f8f8f8);
padding-top: 250rpx;
}
.title {
padding: 40rpx 50rpx;
font-size: 55rpx;
color: #fff;
font-weight: 600;
font-family: 'Courier New', Courier, monospace;
}
.box {
background-color: #fff;
width: 650rpx;
border-radius: 10rpx;
margin: 0 auto;
padding: 30rpx 0;
}
.text {
display: flex;
/* background-color: #f1f1f1; */
border-radius: 20rpx;
width: 600rpx;
margin: 0 auto;
padding: 20rpx;
align-items: center;
}
.text label {
font-weight: 900;
font-size: 30rpx;
color: #333;
}
.text input {
font-size: 28rpx;
background-color: #f5f5f5;
width: 70%;
height: 60rpx;
padding: 0 20rpx;
border-radius: 10rpx;
}
.btn {
border-radius: 10rpx;
height: 80rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 30rpx;
font-weight: 500;
background-color: #259c9e;
color: #fff;
margin-top: 50rpx;
width: 300rpx !important;
}

@ -15,7 +15,7 @@
</view>
<scroll-view scroll-x scroll-y class="tabel" style="height: 400rpx;">
<view class="tr tab-top">
<view class="td1">序号</view>
<view class="td1"></view>
<view class="td">样本条码号</view>
<view class="td">接收时间</view>
<view class="td">样本状态</view>

@ -57,7 +57,7 @@
top: 5rpx;
font-weight: 900;
font-size: 28rpx;
color: #555;
color: #333;
}
.from-con input {
@ -105,10 +105,7 @@
margin-top: 5rpx;
/* border: 10rpx solid #eee;
background-color: #eee; */
border: 1rpx solid rgb(189, 188, 188,0.6);
border: 1rpx solid #ddd;
/* background-color: #ddd; */
border-radius: 10rpx;
}
@ -119,9 +116,9 @@
.back_img_box {
margin-top: 15rpx;
padding: 30rpx 0;
/* background-color: #f6f6f6; */
background-color: rgb(255, 255, 255,0.8);
padding-top: 10rpx;
background-color: #f6f6f6;
/* background-color: #fff; */
border-radius: 15rpx;
}
@ -203,5 +200,5 @@
flex-wrap: nowrap;
white-space: nowrap;
padding: 0rpx 2rpx;
min-width: 100rpx;
min-width: 30rpx;
}

@ -6,30 +6,6 @@ Page({
* 页面的初始数据
*/
data: {
screenisshow:false,
dateList:[
{
id:1,
name:'近1个月',
isShow:false,
},
{
id:2,
name:'近3个月',
isShow:false,
},
{
id:3,
name:'近6个月',
isShow:false,
},
{
id:4,
name:'今年',
isShow:false,
},
],
date: '', //开始时间
endDate: '',
start: '2023-01-01',
@ -44,57 +20,6 @@ Page({
sampleCount: '', //查询记录总数
},
//筛选--------------------------
screenisshow(){
this.setData({
screenisshow:true
})
},
selectDate(e){
console.log(e.currentTarget.dataset.id);
var id=e.currentTarget.dataset.id
var dateList=this.data.dateList
for(var i in dateList){
if(dateList[i].id==id){
dateList[i].isShow=true
}else{
dateList[i].isShow=false
}
}
this.setData({
dateList:dateList
})
},
//筛选确定
okDate(){
this.setData({
screenisshow:false
})
},
//筛选重置
resDate(){
var dateList=this.data.dateList
for(var i in dateList){
dateList[i].isShow=false
}
this.setData({
dateList:dateList,
date: '',
endDate: '',
})
},
//-------------------------------
//退出
out(){
wx.switchTab({
url: '../index/index',
})
},
//开始时间
bindDateChange(e) {
// console.log(e.detail.value)
@ -191,7 +116,7 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad(options) {
// this.currentTime()
this.currentTime()
//获取送检机构列表

@ -0,0 +1,74 @@
<view style="background: -webkit-linear-gradient(top,#27adb0,#ebf7f7,#f1f1f1);min-height: 1300rpx;padding: 20rpx;">
<view class="form">
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChange" class="from-con">
<label>选择日期:</label>
<input type="text" disabled="true" placeholder="请选择开始日期" placeholder-class="place" value="{{date}}" />
</picker>
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChangeend" class="from-con">
<label> </label>
<input type="text" disabled="true" placeholder="请选择结束日期" placeholder-class="place" value="{{endDate}}" />
</picker>
<view class="from-con">
<label>物流单号:</label>
<input type="text" placeholder="物流单号" placeholder-class="place" bindinput="getLogisticsNo" value="{{logisticsNo}}"/>
</view>
<picker class="from-con" bindchange="bindPickerChange" value="{{insName}}" range="{{ins}}">
<label>送检机构:</label>
<input type="text" disabled="true" placeholder="请选择送检机构" placeholder-class="place" value="{{insName}}" />
</picker>
<view class="from-con">
<label>物流员:</label>
<input type="text" placeholder="物流员" placeholder-class="place" bindinput="bindLogisticsMen" value="{{logisticsMen}}" />
</view>
<view class="from-con">
<label>转运箱号:</label>
<input type="text" placeholder="转运箱号" placeholder-class="place" bindinput="bindBoxNum" value="{{boxNum}}" />
</view>
<view class="from-button">
<button style="background-color: #ddd;" bindtap="resetting">重 置</button>
<button style="background-color: #54b4b6; color: #fff;" bindtap="selSampleList">查 询</button>
</view>
</view>
<view style="background-color: #fff;border-radius: 15rpx;margin-top: 15rpx; padding: 30rpx 10rpx 50rpx 10rpx;">
<scroll-view scroll-x style="width: 100%;">
<view class="tr top">
<view class="td td1">序号</view>
<view class="td">物流单号</view>
<view class="td">送检机构</view>
<view class="td td_date">日期</view>
<view class="td">样本管数</view>
<view class="td">转运方式</view>
<view class="td">转运箱号</view>
<view class="td td_time">出发时间</view>
<view class="td td_time">到达时间</view>
<view class="td">车牌号</view>
<view class="td">备注</view>
</view>
<block wx:for="{{sampleList}}" wx:key="index">
<view class="tr">
<view class="td td1">{{index + 1}}</view>
<view class="td">{{item.logisticsNo}}</view>
<view class="td">{{item.institutionName}}</view>
<view class="td td_date">{{item.entryDate}}</view>
<view class="td">{{item.number}}</view>
<block>
<view class="td" wx:if="{{item.tranType == 1}}">私家车</view>
<view class="td" wx:else>其他</view>
</block>
<view class="td">{{item.boxNum}}</view>
<view class="td td_time">{{item.startTime}}</view>
<view class="td td_time">{{item.endTime}}</view>
<view class="td">{{itme.numberplate}}</view>
<view class="td">{{itme.notes}}</view>
</view>
</block>
</scroll-view>
<!-- <view style="text-align: right; font-size: 26rpx;margin-top: 30rpx;padding: 0 20rpx;">共 2 条</view> -->
</view>
</view>

@ -0,0 +1,79 @@
page{
background: -webkit-linear-gradient(top,#27adb0,#ebf7f7,#f1f1f1)
}
.form{
background-color: #fff;
border-radius: 15rpx;
padding: 20rpx 50rpx;
margin-bottom: 15rpx;
}
.form .from-con{
font-size: 28rpx;
border-bottom: 2rpx #eee solid;
position: relative;
margin-top: 25rpx;
}
.from-con label{
position: absolute;
top: 5rpx;
font-weight: 900;
font-size: 28rpx;
color: #333;
}
.from-con input{
text-align: right;
padding: 10rpx;
}
.place{
color:#c4bfbf;
}
.from-button{
display: flex;
margin-top: 20rpx;
}
.from-button button{
display: flex;
align-items: center;
justify-content: center;
width: 250rpx !important;
font-size: 28rpx;
}
.tr{
display: flex;
width: 100%;
}
.tr .td{
/* border-right:#ddd solid 1rpx ;
border-top: #ddd solid 1rpx;
border-bottom: #ddd solid 1rpx; */
border: 1rpx #ddd solid;
padding: 15rpx 0;
font-size: 22rpx;
display: flex;
justify-content: center;
align-items: center;
flex-wrap: nowrap;
white-space: nowrap;
min-width: 150rpx;
}
.top view{
background-color: #6bc9ca;
color: #fff;
}
.td1{
min-width: 100rpx !important;
}
.td_date{
min-width: 200rpx !important;
}
.td_time{
min-width: 300rpx !important;
}

@ -6,29 +6,6 @@ Page({
* 页面的初始数据
*/
data: {
screenisshow:false,
dateList:[
{
id:1,
name:'近1个月',
isShow:false,
},
{
id:2,
name:'近3个月',
isShow:false,
},
{
id:3,
name:'近6个月',
isShow:false,
},
{
id:4,
name:'今年',
isShow:false,
},
],
date: '', //开始时间
endDate: '',
start: '2023-01-01',
@ -43,57 +20,6 @@ Page({
sampleCount: '', //查询记录总数
},
//筛选--------------------------
screenisshow(){
this.setData({
screenisshow:true
})
},
selectDate(e){
console.log(e.currentTarget.dataset.id);
var id=e.currentTarget.dataset.id
var dateList=this.data.dateList
for(var i in dateList){
if(dateList[i].id==id){
dateList[i].isShow=true
}else{
dateList[i].isShow=false
}
}
this.setData({
dateList:dateList
})
},
//筛选确定
okDate(){
this.setData({
screenisshow:false
})
},
//筛选重置
resDate(){
var dateList=this.data.dateList
for(var i in dateList){
dateList[i].isShow=false
}
this.setData({
dateList:dateList,
date: '',
endDate: '',
})
},
//-------------------------------
//退出
out(){
wx.switchTab({
url: '../index/index',
})
},
//开始时间
bindDateChange(e) {
// console.log(e.detail.value)
@ -190,7 +116,7 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad(options) {
// this.currentTime()
this.currentTime()
//获取送检机构列表

@ -0,0 +1,72 @@
<view style="background: -webkit-linear-gradient(top,#27adb0,#ebf7f7,#f1f1f1);min-height: 1300rpx;padding: 20rpx;">
<view class="form">
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChange" class="from-con">
<label>选择日期:</label>
<input type="text" disabled="true" placeholder="请选择开始日期" placeholder-class="place" value="{{date}}" />
</picker>
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChangeend" class="from-con">
<label> </label>
<input type="text" disabled="true" placeholder="请选择结束日期" placeholder-class="place" value="{{endDate}}" />
</picker>
<view class="from-con">
<label>物流单号:</label>
<input type="text" placeholder="物流单号" placeholder-class="place" bindinput="getLogisticsNo" value="{{logisticsNo}}" />
</view>
<picker class="from-con" bindchange="bindPickerChange" value="{{insName}}" range="{{ins}}">
<label>送检机构:</label>
<input type="text" disabled="true" placeholder="请选择送检机构" placeholder-class="place" value="{{insName}}" />
</picker>
<view class="from-con">
<label>物流员:</label>
<input type="text" placeholder="物流员" placeholder-class="place" bindinput="bindLogisticsMen" value="{{logisticsMen}}" />
</view>
<view class="from-con">
<label>转运箱号:</label>
<input type="text" placeholder="转运箱号" placeholder-class="place" bindinput="bindBoxNum" value="{{boxNum}}" />
</view>
<view class="from-button">
<button style="background-color: #ddd;" bindtap="resetting">重 置</button>
<button style="background-color: #54b4b6; color: #fff;" bindtap="selSampleList">查 询</button>
</view>
</view>
<view style="background-color: #fff;border-radius: 15rpx;margin-top: 15rpx; padding: 30rpx 10rpx 50rpx 10rpx;">
<scroll-view scroll-x style="width: 100%;">
<view class="tr top">
<view class="td td1"></view>
<view class="td">物流单号</view>
<view class="td">送检机构</view>
<view class="td td_date">创建日期</view>
<view class="td td2">样本管数</view>
<view class="td">转运方式</view>
<view class="td">转运箱号</view>
<view class="td td_time">预计出发时间</view>
<view class="td td_time">到达时间</view>
<view class="td">车牌号</view>
<view class="td">备注</view>
</view>
<block wx:for="{{sampleList}}" wx:key="index">
<view class="tr">
<view class="td td1">{{index + 1}}</view>
<view class="td">{{item.logisticsNo}}</view>
<view class="td">{{item.institutionName}}</view>
<view class="td td_date">{{item.createTime}}</view>
<view class="td td2">{{item.number}}</view>
<block>
<view class="td" wx:if="{{item.tranType == 1}}">自建物流</view>
<view class="td" wx:else>其他</view>
</block>
<view class="td">{{item.boxNum}}</view>
<view class="td td_time">{{item.startTime}}</view>
<view class="td td_time">{{item.collTime == '' ? '未核收':item.collTime}}</view>
<view class="td">{{itme.numberplate}}</view>
<view class="td">{{itme.notes}}</view>
</view>
</block>
</scroll-view>
<view style="text-align: right; font-size: 26rpx;margin-top: 30rpx;padding: 0 20rpx;">共 {{sampleList.length}} 条</view>
</view>
</view>

@ -0,0 +1,85 @@
page{
background: -webkit-linear-gradient(top,#27adb0,#ebf7f7,#f1f1f1)
}
.form{
background-color: #fff;
border-radius: 15rpx;
padding: 20rpx 50rpx;
margin-bottom: 15rpx;
}
.form .from-con{
font-size: 28rpx;
border-bottom: 2rpx #eee solid;
position: relative;
margin-top: 25rpx;
}
.from-con label{
position: absolute;
top: 5rpx;
font-weight: 900;
font-size: 28rpx;
color: #333;
}
.from-con input{
text-align: right;
padding: 10rpx;
}
.place{
color:#c4bfbf;
}
.from-button{
display: flex;
margin-top: 20rpx;
}
.from-button button{
display: flex;
align-items: center;
justify-content: center;
width: 250rpx !important;
font-size: 28rpx;
}
.tr{
display: flex;
width: 100%;
}
.tr .td{
/* border-right:#ddd solid 1rpx ;
border-top: #ddd solid 1rpx;
border-bottom: #ddd solid 1rpx; */
border: 1rpx #ddd solid;
padding: 15rpx 0;
font-size: 22rpx;
display: flex;
justify-content: center;
align-items: center;
flex-wrap: nowrap;
white-space: nowrap;
min-width: 200rpx;
}
.top view{
background-color: #6bc9ca;
color: #fff;
}
.td1{
min-width: 50rpx !important;
}
.td2{
min-width: 100rpx !important;
}
.td_date{
min-width: 250rpx !important;
}
.td_time{
min-width: 300rpx !important;
}

@ -6,30 +6,6 @@ Page({
* 页面的初始数据
*/
data: {
screenisshow:false,
dateList:[
{
id:1,
name:'近1个月',
isShow:false,
},
{
id:2,
name:'近3个月',
isShow:false,
},
{
id:3,
name:'近6个月',
isShow:false,
},
{
id:4,
name:'今年',
isShow:false,
},
],
date: '', //开始时间
endDate: '',
start: '2023-01-01',
@ -44,57 +20,6 @@ Page({
sampleCount: '', //查询记录总数
},
//筛选--------------------------
screenisshow(){
this.setData({
screenisshow:true
})
},
selectDate(e){
console.log(e.currentTarget.dataset.id);
var id=e.currentTarget.dataset.id
var dateList=this.data.dateList
for(var i in dateList){
if(dateList[i].id==id){
dateList[i].isShow=true
}else{
dateList[i].isShow=false
}
}
this.setData({
dateList:dateList
})
},
//筛选确定
okDate(){
this.setData({
screenisshow:false
})
},
//筛选重置
resDate(){
var dateList=this.data.dateList
for(var i in dateList){
dateList[i].isShow=false
}
this.setData({
dateList:dateList,
date: '',
endDate: '',
})
},
//-------------------------------
//退出
out(){
wx.switchTab({
url: '../index/index',
})
},
//开始时间
bindDateChange(e) {
// console.log(e.detail.value)
@ -191,7 +116,7 @@ Page({
* 生命周期函数--监听页面加载
*/
onLoad(options) {
// this.currentTime()
this.currentTime()
//获取送检机构列表

@ -0,0 +1,63 @@
<!--pages/querythree/querythree.wxml-->
<view style="background: -webkit-linear-gradient(top,#27adb0,#ebf7f7,#f1f1f1);min-height: 1300rpx;padding: 20rpx;">
<view class="form">
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChange" class="from-con">
<label>选择日期:</label>
<input type="text" disabled="true" placeholder="请选择开始日期" placeholder-class="place" value="{{date}}" />
</picker>
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChangeend" class="from-con">
<label> </label>
<input type="text" disabled="true" placeholder="请选择结束日期" placeholder-class="place" value="{{endDate}}" />
</picker>
<view class="from-con">
<label>物流单号:</label>
<input type="text" placeholder="物流单号" placeholder-class="place" bindinput="getLogisticsNo" />
</view>
<picker class="from-con" bindchange="bindPickerChange" value="{{insName}}" range="{{ins}}">
<label>送检机构:</label>
<input type="text" disabled="true" placeholder="请选择送检机构" placeholder-class="place" value="{{insName}}" />
</picker>
<view class="from-con">
<label>物流员:</label>
<input type="text" placeholder="物流员" placeholder-class="place" bindinput="bindLogisticsMen" value="{{logisticsMen}}" />
</view>
<view class="from-con">
<label>转运箱号:</label>
<input type="text" placeholder="转运箱号" placeholder-class="place" bindinput="bindBoxNum" value="{{boxNum}}" />
</view>
<view class="from-button">
<button style="background-color: #ddd;" bindtap="resetting">重 置</button>
<button style="background-color: #54b4b6; color: #fff;" bindtap="selSampleList">查 询</button>
</view>
</view>
<view style="background-color: #fff;border-radius: 5rpx;margin-top: 5rpx; padding: 15rpx 10rpx 30rpx 10rpx;">
<scroll-view scroll-x style="width: 100%; ">
<view class="tr top">
<view class="td td1">序号</view>
<view class="td">物流单号</view>
<view class="td">送检机构</view>
<view class="td td_date">日期</view>
<view class="td">物流费用</view>
<view class="td">转运方式</view>
</view>
<block wx:for="{{sampleList}}" wx:key="index">
<view class="tr">
<view class="td td1">{{index + 1}}</view>
<view class="td">{{item.logisticsNo}}</view>
<view class="td">{{item.institutionName}}</view>
<view class="td td_date">{{item.entryDate}}</view>
<view class="td">{{item.cost}}</view>
<block>
<view class="td" wx:if="{{item.tranType == 1}}">私家车</view>
<view class="td" wx:else>其他</view>
</block>
</view>
</block>
</scroll-view>
<!-- <view style="text-align: right; font-size: 26rpx;margin-top: 30rpx;padding: 0 20rpx;">共 2 条</view> -->
</view>
</view>

@ -0,0 +1,79 @@
page{
background: -webkit-linear-gradient(top,#27adb0,#ebf7f7,#f1f1f1)
}
.form{
background-color: #fff;
border-radius: 5rpx;
padding: 20rpx 50rpx;
margin-bottom: 15rpx;
}
.form .from-con{
font-size: 28rpx;
border-bottom: 2rpx #eee solid;
position: relative;
margin-top: 25rpx;
}
.from-con label{
position: absolute;
top: 5rpx;
font-weight: 900;
font-size: 28rpx;
color: #333;
}
.from-con input{
text-align: right;
padding: 10rpx;
}
.place{
color:#c4bfbf;
}
.from-button{
display: flex;
margin-top: 20rpx;
}
.from-button button{
display: flex;
align-items: center;
justify-content: center;
width: 250rpx !important;
font-size: 28rpx;
}
.tr{
display: flex;
width: 100%;
}
.tr .td{
/* border-right:#ddd solid 1rpx ;
border-top: #ddd solid 1rpx;
border-bottom: #ddd solid 1rpx; */
border: 1rpx #ddd solid;
padding: 15rpx 0;
font-size: 22rpx;
display: flex;
justify-content: center;
align-items: center;
flex-wrap: nowrap;
white-space: nowrap;
min-width: 150rpx;
}
.top view{
background-color: #6bc9ca;
color: #fff;
}
.td1{
min-width: 50rpx !important;
}
.td_date{
min-width: 200rpx !important;
}
.td_time{
min-width: 300rpx !important;
}

@ -36,7 +36,14 @@ Page({
sampleCount: '0', //样本数量
//样本列表
sampleList: [],
sampleList: [{
'id': 1,
'number': '2023050002',
'time': '2023-5-12 11:32',
'status': '已签收',
'name': '张三',
'num': 'M2023055568'
}],
},
//物流车、转运箱拍照

@ -0,0 +1,111 @@
<view class="box">
<view class="back">
<view class="top">
<input type="text" value="{{pipenum}}" />
<view style="background-color: #eee;" bindtap="scacode">扫 码</view>
</view>
<view class="back" style="padding: 0rpx;">
<view class="con">
<view style="flex: 1;">总计:{{sampleCount}}/管数</view>
<button style="background-color: #ddd;" hidden="true">修 改</button>
<button style="color: #fff;" bindtap="saveInfo">保 存</button>
</view>
<!-- 样本列表 -->
<scroll-view scroll-x scroll-y class="tabel" style="height: 400rpx;">
<view class="tr tab-top">
<view class="td1">序号</view>
<view class="td">样本条码号</view>
<view class="td">接收时间</view>
<view class="td">样本状态</view>
<view class="td">物流员</view>
<view class="td">物流单号</view>
</view>
<view class="tr" wx:for="{{sampleList}}" wx:key="index" bindtap="goDetail">
<view class="td1" bindtap="goDetail">{{item.id}}</view>
<view class="td">{{item.number}}</view>
<view class="td">{{item.time}}</view>
<view class="td">{{item.status}}</view>
<view class="td">{{item.name}}</view>
<view class="td">{{item.num}}</view>
</view>
</scroll-view>
</view>
<!--拍照-->
<view class="back">
<view class="bush">
<view style="flex: 1;">物流车拍照</view>
<!-- <button bindtap="bushPhot">拍 照</button> -->
</view>
<view class="bush-img">
<image bindtap="photograph" src="{{poto[0]}}" data-id="car_1"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
</view>
</view>
<view class="back">
<view class="bush">
<view style="flex: 1;">转运箱拍照</view>
<!-- <button bindtap="boxPhot">拍 照</button> -->
</view>
<view class="bush-img">
<image bindtap="photograph" src="{{poto[1]}}" data-id="box_1"></image>
<image bindtap="photograph" src="{{poto[3]}}" data-id="box_2"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
</view>
</view>
<view class="form">
<view class="from-con">
<label>物流单号:</label>
<input type="text" placeholder="物流单号" disabled="false" placeholder-class="place" value="{{selfOrderCode}}" />
</view>
<picker class="from-con" bindchange="bindPickerChange" value="{{index}}" range="{{ins}}">
<label>物流单位:</label>
<input type="text" disabled="true" placeholder="请选择物流单位" placeholder-class="place" value="{{ins[index]}}" />
</picker>
<!-- <picker mode="date" value="date" start="{{start}}" end="{{end}}" bindchange="bindDateChange" class="from-con">
<label>日期:</label>
<input type="text" disabled="true" placeholder="请选择日期" placeholder-class="place" value="{{date}}" />
</picker> -->
<view class="from-con">
<label>物流电话:</label>
<input type="text" placeholder="物流电话" placeholder-class="place" bindinput="inputTextInfo" data-id="phone" value="{{phone}}" />
</view>
<view class="from-con">
<label>物流费用:</label>
<input type="text" placeholder="物流费用" placeholder-class="place" bindinput="inputTextInfo" data-id="cost" value="{{cost}}" />
</view>
<view class="from-con">
<label>转运箱号:</label>
<input type="text" placeholder="转运箱号" placeholder-class="place" bindinput="inputTextInfo" data-id="boxNum" value="{{boxNum}}" />
</view>
<picker class="from-con" mode="multiSelector" bindchange="bindMultiPickerChange" bindcolumnchange="bindMultiPickerColumnChange" value="{{multiIndex}}" range="{{multiArray}}">
<label>预计到达时间:</label>
<input value='{{expectedEndTime}}' placeholder='请选择到达时间' placeholder-class="place" disabled="true" />
</picker>
<view class="from-con">
<label>物流员:</label>
<input type="text" bindinput="inputTextInfo" data-id="logisticsMen" placeholder="物流员" placeholder-class="place" value="{{logisticsMen}}" />
</view>
<view class="from-con">
<label>备注:</label>
<input type="text" placeholder="备注" placeholder-class="place" bindinput="inputTextInfo" data-id="notes" value="{{notes}}" />
</view>
</view>
</view>
</view>

@ -2,23 +2,20 @@
.top{
display: flex;
justify-content: left;
justify-content: center;
font-size: 28rpx;
}
.top input{
background-color: #fff;
border-radius: 40rpx !important;
border: 1rpx #333 solid;
height: 60rpx;
width: 700rpx;
border-radius: 5rpx;
padding: 3rpx 30rpx;
font-size: 24rpx;
padding: 5rpx 10rpx;
}
.top view{
width: 120rpx;
width: 305rpx;
margin-left: 20rpx;
background-color: #eee;
display: flex;
justify-content: center;
align-items: center;
@ -30,10 +27,8 @@
.form{
background-color: #fff;
border-radius: 15rpx;
padding:10rpx 40rpx;
padding: 0rpx 30rpx;
margin-bottom: 15rpx;
margin-top: 15rpx;
box-shadow: 0 0 10px #ddd;
}
.form .from-con{
font-size: 28rpx;
@ -46,14 +41,11 @@
top: 5rpx;
font-weight: 900;
font-size: 28rpx;
color: #555;
color: #333;
}
.from-con input{
text-align: right;
padding: 10rpx;
position: relative;
left: 28%;
width: 70%;
}
.place{
color:#c4bfbf;
@ -63,7 +55,6 @@
display: flex;
justify-content:space-between;
align-items: center;
padding-left: 30rpx;
}
.bush button{
width: 200rpx !important;
@ -79,47 +70,38 @@
display: flex;
flex-wrap: wrap;
justify-content:space-around;
padding:10rpx;
width: 100%;
padding: 20rpx 10rpx;
}
.bush-img image{
width: 120rpx;
height: 120rpx;
width: 100rpx;
height: 100rpx;
margin-top: 5rpx;
/* border: 10rpx solid #eee;
background-color: #eee; */
border: 1rpx solid rgb(189, 188, 188,0.6);
/* background-color: #ddd; */
border-radius: 10rpx;
}
.box{
padding: 10rpx 20rpx;
border: 1rpx solid #999;
border-radius: 5rpx;
}
.back{
margin-top: 10rpx;
}
.back_img_box {
margin-top: 20rpx;
padding: 30rpx 0;
background-color: rgb(221, 221, 221,0.2);
/* background-color: #fff; */
border-radius: 15rpx;
box-shadow: 0 0 10px #ddd;
margin-top: 15rpx;
}
.con{
display: flex;
align-items: center;
padding: 0 20rpx;
font-size: 26rpx;
}
.con button{
width: 170rpx !important;
display: flex;
justify-content: center;
align-items: center;
font-size: 28rpx;
background-color: rgb(245, 90, 90);
height: 55rpx;
margin-left: 10rpx !important;
}
.tabel{
margin-top: 20rpx;
width: 100%;
/* border: 1rpx #ddd solid; */
height: 400rpx;
position: relative;
border: 1rpx #ddd solid;
}
.tabel .tr{
@ -143,7 +125,7 @@
background-color: #51bdbe;
color:#fff;
font-weight: 700;
font-size: 26rpx !important;
font-size: 28rpx;
}
.td1{
border-right:#ddd solid 1rpx ;
@ -157,19 +139,3 @@
white-space: nowrap;
min-width: 100rpx;
}
.bottomButton {
width: 100% !important;
height: 90rpx;
margin-top: 50rpx;
margin-bottom: 80rpx;
padding: 0rpx 10rpx;
display: block;
display: inline-flex;
align-items: center;
justify-content: center;
text-align: center;
background-color:#4eb8b9;
color: #fff;
border-radius: 50rpx;
}

@ -52,6 +52,5 @@
"include": []
},
"appid": "wxcf3a0f4fb0f7656e",
"testRoot": "minitest/",
"projectname": "yyt_logistics"
"testRoot": "minitest/"
}

@ -1,17 +0,0 @@
/**app.wxss**/
page{
background: -webkit-linear-gradient(top,#27adb0,#ebf7f7,#f4f4f4)
}
.box{
background: -webkit-linear-gradient(top,#27adb0,#ebf7f7,#f4f4f4);
min-height: 1400rpx;
padding: 5rpx 15rpx;
font-size: 28rpx;
}
.back{
padding: 10rpx;
border-radius: 15rpx;
background-color: #fff;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

@ -1,58 +0,0 @@
<!--pages/details/details.wxml-->
<view class="box">
<view class="back">
<view class="cen">
<label>样本条码:</label>
<input type="text" value="{{barCode}}"/>
</view>
<view class="cen">
<label>接收时间:</label>
<input type="text" value="{{receiveTime}}"/>
</view>
<view class="cen">
<label>样本状态:</label>
<input type="text" value="已签收" disabled="true"/>
</view>
<view class="cen">
<label>物流单号:</label>
<input type="text" value="{{logisticsNo}}"/>
</view>
<view class="cen">
<label>物流单位:</label>
<input type="text" value="{{unitType}}"/>
</view>
<view class="cen">
<label style="letter-spacing: 13rpx;">日 期:</label>
<input type="text" value="{{entryDate}}"/>
</view>
<view class="cen">
<label>物流费用:</label>
<input type="text" value="{{cost}}"/>
</view>
<view class="cen">
<label>到达日期:</label>
<input type="text" value="{{expectedEndTime}}"/>
</view>
<view class="cen">
<label>转运箱号:</label>
<input type="text" value="{{boxNum}}"/>
</view>
<view class="cen">
<label>物流车号:</label>
<input type="text" value="{{numberplate}}"/>
</view>
<view class="cen">
<label style="letter-spacing: 6rpx;">物流员:</label>
<input type="text" value="{{logisticsMen}}"/>
</view>
<view class="cen">
<label style="letter-spacing: 12rpx;">备 注:</label>
<input type="text" value="{{notes}}"/>
</view>
</view>
<view class="bottom">
<button class="btn1">删 除</button>
<button class="btn2" bindtap="goIndex">保 存</button>
</view>
</view>

@ -1,47 +0,0 @@
/* pages/details/details.wxss */
.cen{
display: flex;
margin-top: 5rpx;
padding: 0 30rpx;
align-items: center;
}
.cen label{
width: 150rpx;
text-align: right;
padding: 20rpx 20rpx;
font-size: 30rpx;
font-weight: 700;
color: #444;
/* background-color: blue; */
}
.cen input{
background-color: #f1f1f1;
padding: 8rpx 30rpx;
/* width: 250rpx; */
flex: 1;
border-radius: 60rpx;
font-size: 26rpx;
letter-spacing: 2rpx;
}
.bottom{
display: flex;
margin-top: 100rpx;
justify-content: space-around;
width: 100%;
}
.bottom button{
border-radius: 60rpx;
width: 45% !important;
font-size: 30rpx;
}
.btn1{
background-color: #ddd;
}
.btn2{
background-color: #ddd;
color: #fff;
background-color: #27adb0;
}

@ -1,4 +0,0 @@
{
"usingComponents": {},
"navigationBarTitleText": "三力货运物流"
}

@ -1,112 +0,0 @@
<view class="box">
<view class="top">
<input type="text" value="{{pipenum}}" />
<view bindtap="scacode">
<image src="../../images/saoma.png" style="width: 70rpx; height: 70rpx;"></image>
</view>
</view>
<!-- <view class="back"> -->
<!-- <view class="back">
<view class="con">
<view style="flex: 1;">总计:{{sampleCount}}/管数</view>
<button style="background-color: #ddd;" hidden="true">修 改</button>
</view>
<scroll-view scroll-x scroll-y class="tabel">
<view class="tr tab-top">
<view class="td1">序号</view>
<view class="td">样本条码号</view>
<view class="td">接收时间</view>
<view class="td">样本状态</view>
<view class="td">物流员</view>
<view class="td">物流单号</view>
</view>
<view class="tr" wx:for="{{sampleList}}" wx:key="index" bindtap="goDetail">
<view class="td1">{{item.id}}</view>
<view class="td">{{item.number}}</view>
<view class="td">{{item.time}}</view>
<view class="td">{{item.status}}</view>
<view class="td">{{item.name}}</view>
<view class="td">{{item.num}}</view>
</view>
</scroll-view>
</view> -->
<view class="form">
<!-- <view class="from-con">
<label>物流单号:</label>
<input type="text" placeholder="物流单号" disabled="false" placeholder-class="place" value="{{selfOrderCode}}" />
</view> -->
<picker class="from-con" bindchange="bindPickerChange" value="{{index}}" range="{{ins}}">
<label>转运方式:</label>
<input type="text" disabled="true" placeholder="请选择转运方式" placeholder-class="place" value="{{ins[index]}}" />
</picker>
<view class="from-con">
<label>转运箱号:</label>
<input type="text" placeholder="转运箱号" placeholder-class="place" value="" />
</view>
<view class="from-con">
<label>数量:</label>
<input type="text" placeholder="数量" placeholder-class="place"/>
</view>
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChange" class="from-con">
<label style="letter-spacing: 14rpx;">日 期:</label>
<input type="text" disabled="true" placeholder="请选择日期" placeholder-class="place" value="{{date}}" />
</picker>
<view class="from-con">
<label>物流电话:</label>
<input type="text" placeholder="物流电话" placeholder-class="place" bindinput="inputTextInfo" data-id="phone" value="{{phone}}" />
</view>
<view class="from-con">
<label>物流费用:</label>
<input type="number" placeholder="物流费用" placeholder-class="place" bindinput="inputTextInfo" data-id="cost" value="{{cost}}" />
</view>
<picker class="from-con" mode="multiSelector" bindchange="bindMultiPickerChange" bindcolumnchange="bindMultiPickerColumnChange" value="{{multiIndex}}" range="{{multiArray}}">
<label>到达时间:</label>
<input value='{{time}}' placeholder='请选择到达时间' placeholder-class="place" disabled="true" />
</picker>
<view class="from-con">
<label style="letter-spacing: 8rpx;">车牌号:</label>
<input type="text" placeholder="车牌号" placeholder-class="place" bindinput="inputTextInfo" data-id="numberplate" value="{{numberplate}}" />
</view>
<view class="from-con">
<label style="letter-spacing: 8rpx;">物流员:</label>
<input type="text" bindinput="inputTextInfo" data-id="logisticsMen" placeholder="物流员" placeholder-class="place" value="{{logistician}}" />
</view>
<view class="from-con" style="border-bottom: none;">
<label style="letter-spacing: 14rpx;">备 注:</label>
<input type="text" bindinput="inputTextInfo" data-id="notes" placeholder="备注" placeholder-class="place" value="{{notes}}" />
</view>
</view>
<!-- 拍照 -->
<view class="back_img_box">
<view class="bush">
<view style="flex: 1;">物流车拍照</view>
<!-- <button bindtap="bushPhot" hidden="true">拍 照</button> -->
</view>
<view class="bush-img">
<image bindtap="photograph" src="{{poto[0]}}" data-id="car_1"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="car_2"></image>
</view>
<view class="bush">
<view style="flex: 1;">转运箱拍照</view>
<button bindtap="boxPhot" hidden="true">拍 照</button>
</view>
<view class="bush-img">
<image bindtap="photograph" src="{{poto[1]}}" data-id="box_1"></image>
<image bindtap="photograph" src="{{poto[3]}}" data-id="box_2"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="box_2"></image>
<image bindtap="photograph" src="{{poto[1]}}" data-id="box_2"></image>
</view>
</view>
<button class="bottomButton" bindtap="saveInfo">保 存</button>
</view>

@ -1,115 +0,0 @@
<!--pages/handover/handover.wxml-->
<view class="zhezhaoceng {{screenisshow?'screenAlertActive':''}}">
<view class="screenAlert">
<view style="font-weight: 700;">按时间查询</view>
<view class="dateList">
<view wx:for="{{dateList}}" wx:key="index" data-id="{{item.id}}" bindtap="selectDate" class="date1 {{item.isShow?'dataActive':''}}">{{item.name}}</view>
<view class="selectdate">
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChange">
<input type="text" disabled="true" placeholder="起始时间" placeholder-class="place" value="{{date}}" />
</picker>
<text style="color:#ddd">—</text>
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChangeend">
<input type="text" disabled="true" placeholder="终止时间" placeholder-class="place" value="{{endDate}}" />
</picker>
</view>
</view>
<view style="display: flex; margin-top: 50rpx; padding: 20rpx 0;">
<button class="chongzhi" bindtap="resDate">重 置</button>
<button class="queren" bindtap="okDate">确 认</button>
</view>
</view>
</view>
<view class="top">物流单号M2023020200012已签收。签收时间:2023年6月14日 14:36</view>
<view class="box">
<view class="screen">
<input type="text" placeholder="请输入物流单号" placeholder-class="place" bindinput="getLogisticsNo" value="{{logisticsNo}}" />
<view style="display: flex; align-items: center;" bindtap="screenisshow">
<image src="../../images/shaixuan.png"></image>
<view class="wz">筛选</view>
</view>
</view>
<!-- <view class="dateQuery">
<picker mode="date" value="date" start="start" end="end" bindchange="bindDateChange" class="datesel">
<input type="text" disabled="true" placeholder="请选择日期" value="{{date}}" />
</picker>
<button class="f5" bindtap="refresh">查 询</button>
</view> -->
<view class="form">
<view class="from-con">
<label>送检机构:</label>
<input type="text" placeholder="送检机构" placeholder-class="place"/>
</view>
<view class="from-con">
<label style="letter-spacing: 8rpx;">物流员:</label>
<input type="text" placeholder="物流员" placeholder-class="place" />
</view>
<view class="from-con">
<label style="letter-spacing: 14rpx;">状 态:</label>
<input type="text" placeholder="状态" placeholder-class="place" />
</view>
<view class="from-button" style="margin-top: 50rpx;">
<button style="height: 65rpx;background-color: #eeeaea; border: 1rpx #f0eeee solid; border-radius: 50rpx;" bindtap="resetting">重 置</button>
<button style="height: 65rpx;background-color: #63bec0; color: #fff; border-radius: 50rpx; border: 1rpx #f0eeee solid;" bindtap="refresh">查 询</button>
</view>
</view>
<view class="back" style="padding: 20rpx;box-shadow: 0 0 10px #ddd;">
<view>物流单号</view>
<scroll-view scroll-y class="allordernum" style="box-shadow: 0 0 15px rgb(211, 210, 210);">
<!--物流单列表-->
<view wx:for="{{logisticsCodeList}}" wx:key="idx">
<view wx:if="{{item.status == 1}}" style="background-color:#b9e3e5; border-radius: 50rpx; font-size: 24rpx; color: #555; font-weight: 700; letter-spacing: 2rpx;" bindtap="selSampleList" data-id="{{item.logisticsNo}}">{{item.logisticsNo}} - [未核收]</view>
<view wx:else style="background-color:#bee9c0; font-size: 24rpx; color: #555; font-weight: 700; letter-spacing: 2rpx;border-radius: 50rpx;" bindtap="selSampleList" data-id="{{item.logisticsNo}}">{{item.logisticsNo}} - [已核收]</view>
</view>
</scroll-view>
<view style="margin-top: 40rpx;text-align: right;">总管数:20管</view>
</view>
<view class="back" style="padding: 20rpx;box-shadow: 0 0 10px #ddd;">
<scroll-view scroll-x style="width: 100%; height: 400rpx;">
<view class="tr top1">
<view class="td td1">序号</view>
<view class="td">样本号</view>
<view class="td">送检机构</view>
<view class="td td2">日期</view>
<view class="td">转运箱号</view>
<view class="td">交接人</view>
<view class="td">状态</view>
</view>
<block wx:for="{{sampleList}}" wx:key="index">
<view class="tr">
<view class="td td1">{{index+1}}</view>
<view class="td">{{item.barCode}}</view>
<view class="td">{{item.institutionName}}</view>
<view class="td td2">{{item.entryDate}}</view>
<view class="td">{{item.boxNum}}</view>
<view class="td">{{item.logisticsMen}}</view>
<view class="td" wx:if="{{item.status == 0}}" class="td">未采样</view>
<view class="td" wx:elif="{{item.status == 1}}" class="td">已采样</view>
<view class="td" wx:elif="{{item.status == 2}}" class="td">已发货</view>
<view class="td" wx:elif="{{item.status == 3}}" class="td">已接收</view>
<view class="td" wx:elif="{{item.status == 4}}" class="td">重新采样</view>
<view class="td" wx:else class="td">其它</view>
</view>
</block>
</scroll-view>
</view>
<view class="zan-dialog {{ showDialog ? 'zan-dialog--show' : 'pop_hidden' }}">
<view class="zan-dialog__mask" bindtap="toggleDialog" />
<view class="zan-dialog__container">
<view style='padding:40rpx;'>
<canvas type="2d" class="canvas" id="myQrcode" bindtap="collectionSam"></canvas>
</view>
</view>
</view>
<button class="out" bindtap="out">退 出</button>
</view>

@ -1,295 +0,0 @@
/* pages/handover/handover.wxss */
.back {
margin-top: 15rpx;
}
.top {
background-color: rgb(255, 255, 255,0.8);
padding: 10rpx 10rpx;
font-size: 22rpx;
border-radius: 5rpx;
}
.form{
background-color: #fff;
border-radius: 15rpx;
padding: 20rpx 50rpx;
margin-bottom: 15rpx;
margin-top: 15rpx;
/* border: 1rpx #ebeaea solid; */
box-shadow: 0 0 10px #ddd;
}
.form .from-con{
font-size: 28rpx;
border-bottom: 2rpx #eee solid;
position: relative;
margin-top: 25rpx;
}
.from-con label{
position: absolute;
top: 5rpx;
font-weight: 900;
font-size: 28rpx;
color: #333;
}
.from-con input{
text-align: right;
padding: 10rpx;
width: 60%;
position: relative;
left: 230rpx;
}
.place{
color:#c4bfbf;
}
.from-button{
display: flex;
margin-top: 20rpx;
}
.from-button button{
display: flex;
align-items: center;
justify-content: center;
width: 250rpx !important;
font-size: 28rpx;
}
.canvas {
width: 100px;
height: 100px;
background-color: #6bc9ca;
}
.allordernum {
margin-top: 20rpx;
/* border: 1rpx #999 solid; */
background-color: #f1f1f1;
border: 1rpx #eee solid;
border-radius: 15rpx;
width: 100%;
height: 350rpx;
padding: 20rpx 0;
}
.allordernum view view {
padding: 20rpx;
background-color: #eee;
width: 88%;
margin: 0 auto;
margin-bottom: 15rpx;
border-radius: 5rpx;
}
.tr {
display: flex;
width: 100%;
}
.tr .td {
/* border-right:#ddd solid 1rpx ;
border-top: #ddd solid 1rpx; */
border-right: 1rpx #ddd solid;
padding: 10rpx 0;
font-size: 22rpx;
display: flex;
justify-content: center;
align-items: center;
flex-wrap: nowrap;
white-space: nowrap;
min-width: 200rpx;
}
.top1 view {
background-color: #6bc9ca;
color: #fff;
}
.td1 {
min-width: 100rpx !important;
}
.zan-dialog__mask {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 10;
background: rgba(0, 0, 0, 0.05);
/* 设置阴影半透明背景如: background: rgba(0, 0, 0, 0.4); */
display: none;
}
.zan-dialog__container {
position: fixed;
bottom: 200rpx;
width: 280rpx;
/* 弹窗布局宽 */
height: 280rpx;
/* 弹窗布局高,与下面弹出距离transform有关 */
margin-left: 220rpx;
background: #f8f8f8;
transform: translateY(300%);
/* 弹框弹出距离,与弹框布局高度有关,如300%表示弹起距离为3倍弹窗高度 */
transition: all 0.4s ease;
z-index: 12;
border-radius: 10rpx;
box-shadow: 0px 3px 3px 2px gainsboro;
/* 弹框的悬浮阴影效果,如不需要可注释该行 */
}
.zan-dialog--show .zan-dialog__container {
transform: translateY(0);
}
.zan-dialog--show .zan-dialog__mask {
display: block;
}
/*隐藏*/
.pop_hidden {
display: none;
}
.dateQuery{
margin-top: 15rpx;
display: flex;
justify-content:center;
}
.dateQuery .datesel{
background-color: #fff;
display: flex;
align-items: center;
padding: 0 30rpx;
width: 60%;
border-radius: 40rpx;
}
.f5 {
width: 28% !important;
font-size: 28rpx;
background-color: #c6eaeb;
color: #666;
height: 60rpx;
display: flex;
align-items: center;
justify-content: center;
margin-left: 20rpx;
}
.out{
border-radius: 50rpx;
background-color: #38bec0;
width: 70% !important;
color: #fff;
margin-top: 60rpx;
margin-bottom: 60rpx;
}
.screen{
display: flex;
align-items: center;
margin-bottom: 5rpx;
font-size: 26rpx;
letter-spacing: 1rpx;
margin-top: 10rpx;
}
.screen input{
background-color: rgb(255, 255, 255);
flex: 1;
padding: 10rpx 35rpx;
border-radius: 50rpx;
box-shadow: 0 0 5rpx #ddd;
}
.screen image{
width: 50rpx;
height:50rpx;
margin-left: 15rpx;
}
.screen .wz{
margin-right: 10rpx;
font-size: 30rpx;
font-weight: 500;
color: #fff;
}
.zhezhaoceng{
position: fixed;
background-color: rgb(0, 0, 0,0.4);
width: 100%;
height: 100vh;
z-index: 1000;
transition: all 0.4s;
transform: translateY(-100vh);
}
.screenAlertActive{
transform: translateY(0);
}
.screenAlert{
z-index: 2000;
background:#f4f4f4;
border-radius: 0 0 20rpx 20rpx;
max-height: 500rpx;
padding: 20rpx;
font-size: 30rpx;
}
.dateList{
display: flex;
flex-wrap: wrap;
justify-content:space-around;
}
.dateList .date1{
background-color: #fff;
margin-left: 20rpx;
text-align: center;
width: 200rpx;
padding: 15rpx 0;
margin-top: 20rpx;
border-radius: 50rpx;
font-size: 26rpx;
}
.dataActive{
border: 1rpx #38bec0 solid;
background-color: #deeff0 !important;
}
.selectdate{
margin-top: 20rpx;
display: flex;
justify-content: space-between;
align-items: center;
width: 62%;
}
.selectdate input{
background-color: #fff;
border-radius: 30rpx;
font-size: 26rpx;
padding: 12rpx 0;
text-align: center;
}
.chongzhi{
background-color: #eee;
border-radius: 52rpx;
border: 1rpx #ddd solid;
width: 45% !important;
height: 70rpx;
font-size: 30rpx;
}
.queren{
background-color: #38bec0;
color: #fff;
border-radius: 52rpx;
width: 45% !important;
height: 70rpx;
font-size: 30rpx;
}

@ -1,144 +0,0 @@
// pages/login/login.js
const request = require('../../utils/http')
var app = getApp();
Page({
/**
* 页面的初始数据
*/
data: {
username: "yuexiangqian", //账号
userpwd: "123456", //密码
code:'',
inputCode:'',
},
getUsername(e) {
this.setData({
username: e.detail.value
})
},
getUserpwd(e) {
this.setData({
userpwd: e.detail.value
})
},
getinputCode(e){
this.setData({
inputCode:e.detail.value
})
},
//登录请求
login() {
if(this.data.inputCode == ''){
wx.showToast({
title: '请输入验证码',
icon:'error'
})
}else if(this.data.inputCode.toLowerCase()!==this.data.code.toLowerCase()){
this.createCode()
this.setData({
inputCode:''
})
wx.showToast({
title: '验证码错误',
icon:'error'
})
}else{
request.post(`/sso/login?username=${this.data.username}&password=${this.data.userpwd}`).then(res => {
console.log(res);
if (res.data.code == 200) {
app.globalData.token = res.data.data.tokenHead + res.data.data.token;
request.get('/sso/info').then(res2 => {
app.globalData.userInfo = res2.data.data
wx.showToast({
title: '登陆成功'
})
wx.reLaunch({
url: '../about/about'
});
})
}
})
}
},
getCode() {
//点击调用创建验证码方法
this.createCode()
},
//创建随机验证码方法
createCode() {
let code = '';
let codeLength = 4; //验证码长度
let txt = new Array(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 'a', 'b', 'C', 'd', 'E', 'f', 'g', 'H', 'i', 'J', 'k', 'L', 'm', 'N', 'O', 'p', 'Q', 'r', 'S', 'T', 'u', 'V', 'w', 'X', 'Y', 'z');
for(let i = 0; i < codeLength; i++) {
//随机数范围
let index = Math.floor(Math.random() * 36);
code += txt[index];
}
this.setData({
code
})
console.log(this.data.code);
},
/**
* 生命周期函数--监听页面加载
*/
onLoad(options) {
this.createCode()
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady() {
},
/**
* 生命周期函数--监听页面显示
*/
onShow() {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide() {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload() {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh() {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom() {
},
/**
* 用户点击右上角分享
*/
onShareAppMessage() {
}
})

@ -1,4 +0,0 @@
{
"usingComponents": {},
"navigationBarTitleText": "三力物流管理系统"
}

@ -1,124 +0,0 @@
/* pages/login/login.wxss */
/* pages/login/login.wxss */
page {
background: -webkit-linear-gradient(top, #27adb0, #b6f0f0, #f8f8f8);
padding-top: 250rpx;
}
.title {
padding: 40rpx 50rpx;
font-size: 55rpx;
color: #fff;
font-weight: 600;
font-family: 'Courier New', Courier, monospace;
}
.box {
background-color: #fff;
width: 650rpx;
border-radius: 10rpx;
margin: 0 auto;
padding: 30rpx 0;
}
.text {
display: flex;
justify-content: center;
/* background-color: #f1f1f1; */
border-radius: 20rpx;
width: 600rpx;
margin: 0 auto;
padding: 20rpx;
align-items: center;
}
.text label {
font-weight: 900;
font-size: 30rpx;
color: #333;
}
.text input {
font-size: 28rpx;
background-color: #f1f1f1;
/* background-color: #f1f1f1;
border: 1rpx #ddd solid; */
width: 55%;
height: 60rpx;
padding: 0 20rpx;
border-radius: 40rpx;
}
.btn {
border-radius: 80rpx;
height: 70rpx;
display: flex;
align-items: center;
justify-content: center;
font-size: 30rpx;
font-weight: 900;
background-color: #63b8b9;
color: #fff;
margin-top: 80rpx;
width: 400rpx !important;
}
.code{
display: flex;
padding: 20rpx;
justify-content:center;
margin-left: 30rpx;
}
.code input{
font-size: 28rpx;
background-color: #f1f1f1;
width: 40%;
height: 60rpx;
padding: 0 20rpx;
border-radius: 30rpx;
color: #000;
font-size: 28rpx;
}
.place{
color: #cccccc;
font-size: 22rpx;
}
.codenum{
width: 65%;
height: 70%;
padding: 10rpx;
text-align: center;
font-weight: 900;
letter-spacing: 10rpx;
font-style: oblique;
font-size: 40rpx;
position: relative;
overflow: hidden;
margin-left: 20rpx;
}
.codenum view{
position: absolute;
color:#000;
z-index: 200;
text-align: center;
}
.codenum image{
width: 400rpx;
height: 200rpx;
position: absolute;
top: 0;
left: 0;
}
.huan{
margin-left:25rpx;
font-size: 26rpx;
margin-top: 10rpx;
color: #555;
font-weight: 500;
letter-spacing: 2rpx;
text-decoration: underline;
font-style: oblique;
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save