فهرست منبع

样品单和采购合同

panxingxin 5 سال پیش
والد
کامیت
622b3a69b5

+ 7 - 5
app.json

@@ -2,20 +2,22 @@
   "pages": [
     "pages/login/login",
     "pages/index/index",
-    "pages/bind/bind",
-    "pages/sample/sample",
+    "pages/sample/index",
     "pages/sample/list",
-    "pages/sample/detail"
+    "pages/sample/detail",
+    "pages/contract/index",
+    "pages/contract/list",
+    "pages/contract/detail"
   ],
   "tabBar": {
     "list": [
       {
-        "pagePath": "pages/sample/sample",
+        "pagePath": "pages/sample/index",
         "iconPath": "./resources/sample.png",
         "selectedIconPath": "./resources/sample_selected.png",
         "text": "样品单"
       },{
-        "pagePath": "pages/index/index",
+        "pagePath": "pages/contract/index",
         "iconPath": "./resources/contract.png",
         "selectedIconPath": "./resources/contract_selected.png",
         "text": "采购合同"

+ 1 - 1
app.wxss

@@ -17,7 +17,7 @@
 .btnView button {
   width: 90%!important;
 }
-.loginLab {
+.inputLabel {
   margin: 1rem;
   color: #545454;
 }

+ 49 - 0
models/dataModel.js

@@ -105,4 +105,53 @@ export function delSamplePic(sdpId, url) {
     url: `/inventory/sample/qalog/upload/picture?sdpId=${sdpId}&url=${url}`,
     method: 'delete'
   })
+}
+
+// 获取采购合同列表
+export function getContractList(form) {
+  return fly.request({
+    url: '/inventory/supplier/contract/page',
+    method: 'get',
+    params: form
+  })
+}
+
+// 获取采购合同详情
+export function getContractDetail(sscId,pId) {
+  return fly.request({
+    url: `/inventory/supplier/contract/${sscId}/${pId}`,
+    method: 'get'
+  })
+}
+
+// 获取采购合同qa日志
+export function getContractQaLog(sscId, pId) {
+  return fly.request({
+    url: `/inventory/supplier/contract/qalog/upload/${sscId}/${pId}`,
+    method: 'get'
+  })
+}
+
+// 修改采购合同qa日志
+export function changeContractQaLog(sscId, pId, mark) {
+  return fly.request({
+    url: `/inventory/supplier/contract/qalog/upload/picture?sscId=${sscId}&pId=${pId}&mark=${mark}`,
+    method: 'put'
+  })
+}
+
+// 添加采购合同qa日志
+export function addContractQaLog(sscId,pId,mark) {
+  return fly.request({
+    url: `/inventory/supplier/contract/qalog/upload/log?sscId=${sscId}&pId=${pId}&mark=${mark}`,
+    method: 'post'
+  })
+}
+
+// 删除qa图片
+export function delContractPic(sscId, pId, url) {
+  return fly.request({
+    url: `/inventory/supplier/contract/qalog/upload/picture?sscId=${sscId}&pId=${pId}&url=${url}`,
+    method: 'delete'
+  })
 }

+ 0 - 59
pages/bind/bind.js

@@ -1,59 +0,0 @@
-//logs.js
-const util = require('../../utils/util.js')
-
-Page({
-  data: {
-    mobile:'',
-    code:''
-  },
-  getMobileInput:function(e){
-     this.setData({
-      mobile:e.detail.value
-     })
-  },
-  getCodeInput:function(e){
-    this.setData({
-      code:e.detail.value
-    })
- },
- getSmsCode:function(){
-  wx.request({
-    url: 'http://192.168.20.53:9999/admin/mobile/' + this.data.mobile,
-    method: 'get',
-    header: {
-      'Authorization': 'Basic dGVzdDp0ZXN0'
-    },
-    success(res) {
-      //测试环境报文直接返回了短信验证码,生产环境服务端要接短信通道下发
-      console.log(res)
-    }
-  })
-},
-bind:function(e){
-  wx.request({
-    url: 'http://192.168.20.53:9999/auth/mobile/token/sms?mobile=SMS@'+this.data.mobile+'&code='+this.data.code+'&grant_type=mobile',
-    method: 'post',
-    header: {
-      'Authorization': 'Basic dGVzdDp0ZXN0'
-    },
-    success(res) {
-      var token = res.data.access_token
-      wx.login({
-        success(res){
-          wx.request({
-            url: 'http://192.168.20.53:9999/admin/social/bind?state=MINI&code=' + res.code,
-            method: 'post',
-            header: {
-              'Authorization': 'Bearer '+token
-            },
-            success(r) {
-              console.log(r)
-            }
-          })
-        }
-      })
-    }
-  })
-},
-
-})

+ 0 - 4
pages/bind/bind.json

@@ -1,4 +0,0 @@
-{
-  "navigationBarTitleText": "用户绑定",
-  "usingComponents": {}
-}

+ 0 - 17
pages/bind/bind.wxml

@@ -1,17 +0,0 @@
-<!--logs.wxml-->
-<view class="container log-list">
-<view class="cell">
-    手机号:<input bindinput="getMobileInput"></input>
-</view>
-<view class="cell">
-
-</view>
-<view class="cell">
-   <button bindtap="getSmsCode">获取验证码</button>
-   <input bindinput="getCodeInput"></input>
-
-</view>
-<view class="cell">
-   <button bindtap="bind">绑定</button>
-</view>
-</view>

+ 0 - 8
pages/bind/bind.wxss

@@ -1,8 +0,0 @@
-.log-list {
-  display: flex;
-  flex-direction: column;
-  padding: 40rpx;
-}
-.log-item {
-  margin: 10rpx;
-}

+ 154 - 0
pages/contract/detail.js

@@ -0,0 +1,154 @@
+import * as requestAPI from '../../models/dataModel'
+Page({
+  data: {
+    contractDetail: {},
+    mark: '',
+    tempMark: '',
+    sscId: '',
+    pId: '',
+    imageList: [],
+    showAllPic: false,
+    allImgList: []
+  },
+
+  onLoad: function (options) {
+    this.setData({
+      sscId: options.sscId,
+      pId: options.pId
+    })
+    this.getDetail(options.sscId, options.pId)
+    this.getQaLog(options.sscId, options.pId)
+  },
+
+  // 获取采购合同详情
+  getDetail(sscId, pId) {
+    requestAPI.getContractDetail(sscId, pId).then(res => {
+      this.setData({
+        contractDetail: res.data.data
+      })
+    })
+  },
+
+  // 获取qa日志
+  getQaLog(sscId, pId) {
+    requestAPI.getContractQaLog(sscId, pId).then(res => {
+      let allImgList = [] // 全部图片
+      let lessImgList = [] // 部分图片
+      if (res.data.data.length !== 0) {
+        this.setData({
+          mark: res.data.data[0].mark
+        })
+        if(res.data.data[0].picture) {
+          allImgList = res.data.data[0].picture.split(',')
+          for(let i = 0;i<res.data.data[0].picture.split(',').length&&i<2;i++) {
+            lessImgList.push(res.data.data[0].picture.split(',')[i])
+          }
+          this.setData({
+            allImgList: allImgList
+          })
+          this.setData({
+            imageList: this.data.showAllPic?allImgList:lessImgList
+          })
+        }
+      }
+    })
+  },
+
+  getAllImg() {
+    this.setData({
+      showAllPic: true
+    })
+    this.getQaLog(this.data.sscId, this.data.pId)
+  },
+
+  getTempMark(e) {
+    this.setData({
+      tempMark: e.detail.value
+    })
+  },
+
+  // 保存或添加qa日志
+  saveQaLog(e) {
+    this.setData({
+      mark: e.detail.value
+    })
+    if (this.data.mark !== this.data.tempMark) {
+      if (this.data.tempMark) {
+        requestAPI.changeContractQaLog(this.data.sscId, this.data.pId, this.data.mark).then(res => {
+          if (res.data.code === 0) {
+            wx.showToast({
+              title: '保存成功',
+              icon: 'success',
+              duration: 3000
+            })
+            setTimeout(() => {
+              this.getQaLog(this.data.sscId, this.data.pId)
+            }, 500)
+          }
+        })
+      } else {
+        requestAPI.addContractQaLog(this.data.sscId, this.data.pId, this.data.mark).then(res => {
+          if (res.data.code === 0) {
+            wx.showToast({
+              title: '保存成功',
+              icon: 'success',
+              duration: 3000
+            })
+            setTimeout(() => {
+              this.getQaLog(this.data.sscId, this.data.pId)
+            }, 500)
+          }
+        })
+      }
+    }
+  },
+
+  // 拍照
+  takePhoto() {
+    this.getPhotos(1, 'camera')
+  },
+  choosePhoto() {
+    this.getPhotos(9, 'albumn')
+  },
+  getPhotos(count, type) {
+    let _this = this
+    wx.chooseImage({
+      count: count,
+      sizeType: ['original', 'compressed'],
+      sourceType: [type],
+      success(res) {
+        for (let i of res.tempFilePaths) {
+          wx.uploadFile({
+            url: `http://192.168.20.52:9999/inventory/supplier/contract/qalog/upload/picture?sscId=${_this.data.sscId}&pId=${_this.data.pId}`, //此处换上你的接口地址 
+            filePath: i,
+            name: 'file',
+            header: {
+              "Content-Type": "multipart/form-data",
+              'Authorization': `Bearer ${wx.getStorageSync('token')}`,
+            },
+            success: function (res) {
+              wx.showToast({
+                title: '上传成功',
+                icon: 'success',
+                duration: 2000
+                })
+              _this.getQaLog(_this.data.sscId, _this.data.pId)
+            }
+          })
+        }
+      }
+    })
+  },
+  // 删除qa图片
+  delImg: function (event) {
+    requestAPI.delContractPic(this.data.sscId, this.data.pId, event.currentTarget.dataset.url).then(res=>{
+      this.getQaLog(this.data.sscId, this.data.pId)
+    })
+  },
+  openPreview: function (event) {
+    wx.previewImage({
+      urls: this.data.imageList,
+      current: event.currentTarget.dataset.current
+    })
+  }
+})

+ 6 - 0
pages/contract/detail.json

@@ -0,0 +1,6 @@
+{
+  "usingComponents": {
+    "mp-icon": "../../components/icon/icon"
+  },
+  "navigationBarTitleText": "采购合同详情"
+}

+ 34 - 0
pages/contract/detail.wxml

@@ -0,0 +1,34 @@
+<view class="detail">
+	<view class="detail-item">
+		<label>我司货号:</label>
+		<input value="{{contractDetail.pcode}}" disabled/>
+	</view>
+	<view class="detail-item">
+		<label>客户货号:</label>
+		<input value="{{contractDetail.sdpCustomercode}}" disabled/>
+	</view>
+	<view class="detail-item">
+		<label>中文品名:</label>
+		<input value="{{contractDetail.scpCnname}}" disabled/>
+	</view>
+	<view class="detail-item">
+		<label>Qa日志:</label>
+		<textarea value="{{mark}}" auto-height bindfocus="getTempMark" bindblur="saveQaLog" />
+		</view>
+	<view class="detail-item">
+		<label>图片:</label>
+		<view class="imageList">
+			<view class="image-item" wx:for="{{imageList}}" wx:key="index">
+				<icon type="cancel" size="10" bindtap="delImg" data-index="{{index}}" data-url="{{item}}"/>
+				<image src="{{item}}" mode="scaleToFill" bindtap="openPreview" data-current="{{item}}"></image>
+			</view>
+			<label bindtap="getAllImg" hidden="{{showAllPic||allImgList.length<=2}}">查看更多</label>
+		</view>
+	</view>
+	<view class="detail-btns">
+		<view>
+			<mp-icon icon="camera" color="black" size="{{25}}" bindtap="takePhoto"></mp-icon>
+			<mp-icon icon="album" color="black" size="{{25}}" bindtap="choosePhoto"></mp-icon>
+		</view>
+	</view>
+</view>

+ 46 - 0
pages/contract/detail.wxss

@@ -0,0 +1,46 @@
+page{
+  background-color: #ebebeb;
+}
+.detail {
+  border-radius: 0.5rem;
+  background-color: #fff;
+  margin: 0.2rem;
+}
+.detail-item {
+  display: flex;
+  padding: 0.4rem 1rem;
+}
+.detail-item label {
+  width: 5rem;
+  margin-right: 2rem;
+}
+.detail-item .imageList{
+  display: flex;
+  width: 100%;
+  flex-wrap: wrap;
+  align-items: center;
+}
+.detail-item .imageList .image-item{
+  display: flex;
+  flex-direction: column;
+}
+.detail-item .imageList image {
+  height: 4rem;
+  width: 4rem;
+}
+.detail-item .imageList label {
+  font-size: 14px;
+  text-decoration: underline;
+  color: green;
+  margin-left: 1rem;
+}
+.detail-btns {
+  display: flex;
+  justify-content: center;
+  padding: 0.5rem;
+}
+.detail-btns view{
+  display: flex;
+  width: 8rem;
+  justify-content: space-between;
+}

+ 25 - 0
pages/contract/index.js

@@ -0,0 +1,25 @@
+Page({
+  data: {
+    sscCode: '',
+    pCode: ''
+  },
+  onLoad() {},
+
+  bindSScCodeInput: function (e) {
+    this.setData({
+      sscCode: e.detail.value
+    })
+  },
+
+  bindpCodeInput: function (e) {
+    this.setData({
+      pCode: e.detail.value
+    })
+  },
+
+  search() {
+    wx.navigateTo({
+      url: `/pages/contract/list?sscCode=${this.data.sscCode}&pCode=${this.data.pCode}`,
+    })
+  }
+})

+ 4 - 0
pages/contract/index.json

@@ -0,0 +1,4 @@
+{
+  "usingComponents": {},
+  "navigationBarTitleText": "采购合同"
+}

+ 14 - 0
pages/contract/index.wxml

@@ -0,0 +1,14 @@
+<view class="sample-search">
+	<view class="inputView">
+		<label class="inputLabel">采购合同号:</label>
+		<input class="inputText" focus placeholder="请输入采购合同号" bindinput="bindSScCodeInput"/>
+	</view>
+
+	<view class="inputView">
+		<label class="inputLabel">我司货号:</label>
+		<input class="inputText" placeholder="请输入我司货号" bindinput="bindpCodeInput" />
+	</view>
+	<view class="btnView">
+		<button type="primary" bindtap="search">搜索</button>
+	</view>
+</view>

+ 1 - 0
pages/contract/index.wxss

@@ -0,0 +1 @@
+/* pages/contract/contract.wxss */

+ 72 - 0
pages/contract/list.js

@@ -0,0 +1,72 @@
+import * as requestAPI from '../../models/dataModel'
+Page({
+  data: {
+    contractList: [],
+    sscCode: '',
+    pCode: '',
+    current: 1,
+    size: 5,
+    total: 0
+  },
+  onLoad: function (options) {
+    this.setData({
+      pCode: options?options.pCode:this.data.pCode,
+      sscCode: options?options.sscCode:this.data.sscCode
+    })
+    this.getContractList()
+  },
+  // 获取样品单列表
+  getContractList() {
+    wx.showLoading({title: '加载中', icon: 'loading'});
+    let form = {
+      current: this.data.current,
+      size: this.data.size,
+      sscCode: this.data.sscCode,
+      pCode: this.data.pCode
+    }
+    requestAPI.getContractList(form).then(res => {
+      for (let i of res.data.data.records) {
+        i.productImgUrl = i.pictures[0].bigPicture
+      }
+      this.setData({
+        contractList: res.data.data.records,
+        total: res.data.data.total
+      })
+    })
+  },
+
+  // 获取样品单详情
+  getDetail: function (event) {
+    wx.navigateTo({
+      url: `/pages/contract/detail?sscId=${event.currentTarget.dataset.sscid}&pId=${event.currentTarget.dataset.pid}`,
+    })
+  },
+
+  // 下拉刷新
+  onPullDownRefresh: function () {
+    wx.showNavigationBarLoading(); //在当前页面显示导航条加载动画
+    this.onLoad(); //刷新页面
+    setTimeout(function () {
+      wx.hideNavigationBarLoading(); //在当前页面隐藏导航条加载动画
+      wx.stopPullDownRefresh(); //停止下拉动作
+    }, 2000)
+  },
+
+  // 下拉加载
+  onReachBottom: function () {
+    if (this.data.size > this.data.total) {
+      return;
+    } else {
+      this.getContractList();
+      this.setData({
+        size: this.data.size+10
+      })
+    }
+  },
+
+  openPreview: function (event) {
+    wx.previewImage({
+      urls: new Array(event.currentTarget.dataset.url),
+    })
+  }
+})

+ 6 - 0
pages/contract/list.json

@@ -0,0 +1,6 @@
+{
+  "usingComponents": {},
+  "enablePullDownRefresh": true,
+  "onReachBottom": true,
+  "navigationBarTitleText": "采购合同列表"
+}

+ 14 - 0
pages/contract/list.wxml

@@ -0,0 +1,14 @@
+<view class="list" hidden="{{showResult}}" wx:for="{{contractList}}" wx:key="index" data-sscid="{{item.sscId}}" data-pid="{{item.pid}}" bindtap="getDetail">
+	<view class="list-item">
+		<label>货号:</label>
+		<input value="{{item.pcode}}" disabled/>
+	</view>
+	<view class="list-item">
+		<label>采购合同号:</label>
+		<input value="{{item.sscCode}}" disabled/>
+	</view>
+	<view class="list-item">
+		<label>图片:</label>
+		<image src="{{item.productImgUrl}}" mode="widthFix" catchtap="openPreview" data-url="{{item.productImgUrl}}"></image>
+	</view>
+</view>

+ 19 - 0
pages/contract/list.wxss

@@ -0,0 +1,19 @@
+page{
+  background-color: #ebebeb;
+}
+.list {
+  border-radius: 0.5rem;
+  background-color: #fff;
+  margin: 0.2rem;
+}
+.list-item {
+  display: flex;
+  padding: 0.4rem 1rem;
+}
+.list-item label {
+  width: 6rem;
+  margin-right: 2rem;
+}
+.list-item image {
+  width: 6rem;
+}

+ 13 - 13
pages/index/index.js

@@ -16,18 +16,18 @@ Page({
     })
   },
   //事件处理函数
-  getmenu: function () {
+  // getmenu: function () {
 
-    wx.request({
-      url: 'http://192.168.20.53:9999/admin/menu/tree',
-      method: 'get',
-      header: {
-        'Authorization': 'Bearer ' + wx.getStorageSync('token')
-      },
-      success(r) {
-        console.log(r)
-        console.log(r)
-      }
-    })
-  }
+  //   wx.request({
+  //     url: 'http://192.168.20.53:9999/admin/menu/tree',
+  //     method: 'get',
+  //     header: {
+  //       'Authorization': 'Bearer ' + wx.getStorageSync('token')
+  //     },
+  //     success(r) {
+  //       console.log(r)
+  //       console.log(r)
+  //     }
+  //   })
+  // }
 })

+ 2 - 5
pages/login/login.js

@@ -15,7 +15,7 @@ Page({
     if(wx.getStorageSync('token')) {
       this.getIfExpired()
       wx.switchTab({
-        url: '/pages/sample/sample',
+        url: '/pages/sample/index',
       })
     }
   },
@@ -38,9 +38,7 @@ Page({
     var self = this
     wx.login({
       success(wxres) {
-        console.log(wxres)
         requestAPI.userLogin(wxres.code).then(res => {
-          console.log(res)
           if (res.statusCode === 401) {
             self.setData({
               ifUser: false
@@ -49,7 +47,7 @@ Page({
             if (res.data.access_token) {
               wx.setStorageSync('token', res.data.access_token);
               wx.switchTab({
-                url: '/pages/sample/sample',
+                url: '/pages/sample/index',
               })
             }
           }
@@ -88,7 +86,6 @@ Page({
             wx.setStorageSync('token', res.data.access_token)
             wx.login({
               success(wxres) {
-                console.log(wxres)
                 requestAPI.bindOpenId(wxres.code).then(res => {
                   if (res.data.data === true) {
                     self.setData({

+ 2 - 2
pages/login/login.wxml

@@ -8,13 +8,13 @@
 		<!--账号-->
 		<view hidden="{{ifUser}}">
 			<view class="inputView">
-				<label class="loginLab">手机号:</label>
+				<label class="inputLabel">手机号:</label>
 				<input class="inputText" focus placeholder="请输入手机号" bindinput="phoneInput" />
 			</view>
 
 			<!--账号-->
 			<view class="inputView">
-				<label class="loginLab">验证码:</label>
+				<label class="inputLabel">验证码:</label>
 				<input class="inputText" value="{{code}}" focus placeholder="请输入验证码" bindinput="codeInput" />
 			</view>
 		</view>

+ 1 - 1
pages/login/login.wxss

@@ -46,7 +46,7 @@ page {
   height: 14px
 }
 
-/* .loginLab {
+/* .inputLabel {
   margin: 15px 15px 15px 10px;
   color: #545454;
   font-size: 14px

+ 32 - 21
pages/sample/detail.js

@@ -5,7 +5,9 @@ Page({
     mark: '',
     tempMark: '',
     sdpId: '',
-    imageList: []
+    imageList: [],
+    showAllPic: false,
+    allImgList: []
   },
 
   onLoad: function (options) {
@@ -28,14 +30,33 @@ Page({
   // 获取qa日志
   getQaLog(sdpId) {
     requestAPI.getSampleQaLog(sdpId).then(res => {
+      let allImgList = [] // 全部图片
+      let lessImgList = [] // 部分图片
       if (res.data.data.length !== 0) {
         this.setData({
           mark: res.data.data[0].mark
         })
+        allImgList = res.data.data[0].picture.split(',')
+        for(let i = 0;i<res.data.data[0].picture.split(',').length&&i<2;i++) {
+          lessImgList.push(res.data.data[0].picture.split(',')[i])
+        }
+        this.setData({
+          allImgList: allImgList
+        })
+        this.setData({
+          imageList: this.data.showAllPic?allImgList:lessImgList
+        })
       }
     })
   },
 
+  getAllImg() {
+    this.setData({
+      showAllPic: true
+    })
+    this.getQaLog(this.data.sdpId)
+  },
+
   getTempMark(e) {
     this.setData({
       tempMark: e.detail.value
@@ -86,7 +107,6 @@ Page({
     this.getPhotos(9, 'albumn')
   },
   getPhotos(count, type) {
-    let tempList = this.data.imageList
     let _this = this
     wx.chooseImage({
       count: count,
@@ -94,9 +114,8 @@ Page({
       sourceType: [type],
       success(res) {
         for (let i of res.tempFilePaths) {
-          console.log(i)
           wx.uploadFile({
-            url: `http://192.168.20.111:9999/inventory/sample/qalog/upload/picture?sdpId=${_this.data.sdpId}`, //此处换上你的接口地址 
+            url: `http://192.168.20.52:9999/inventory/sample/qalog/upload/picture?sdpId=${_this.data.sdpId}`, //此处换上你的接口地址 
             filePath: i,
             name: 'file',
             header: {
@@ -104,30 +123,22 @@ Page({
               'Authorization': `Bearer ${wx.getStorageSync('token')}`,
             },
             success: function (res) {
-              console.log(res);
-              // let data = JSON.parse(res.data); // 这个很关键
-              // tempList.push(data.data.url);
-              // _this.setData({
-              //   imageList: tempList
-              // })
+              wx.showToast({
+                title: '上传成功',
+                icon: 'success',
+                duration: 2000
+                })
+              _this.getQaLog(_this.data.sdpId)
             }
           })
         }
-        // for(let i of res.tempFilePaths) {
-        //   tempList.push(i)
-        // }
-        // _this.setData({
-        //   imageList: tempList
-        // })
       }
     })
   },
+  // 删除qa图片
   delImg: function (event) {
-    console.log('s')
-    let tempList = this.data.imageList
-    tempList.splice(event.currentTarget.dataset.index, 1)
-    this.setData({
-      imageList: tempList
+    requestAPI.delSamplePic(this.data.sdpId,event.currentTarget.dataset.url).then(res=>{
+      this.getQaLog(this.data.sdpId)
     })
   },
   openPreview: function (event) {

+ 6 - 5
pages/sample/detail.wxml

@@ -1,15 +1,15 @@
 <view class="detail">
 	<view class="detail-item">
 		<label>我司货号:</label>
-		<input value="{{sampleDetail.sdpCode}}" />
+		<input value="{{sampleDetail.sdpCode}}" disabled/>
 	</view>
 	<view class="detail-item">
 		<label>客户货号:</label>
-		<input value="{{sampleDetail.sdpCustomercode}}" />
+		<input value="{{sampleDetail.sdpCustomercode}}" disabled/>
 	</view>
 	<view class="detail-item">
 		<label>中文品名:</label>
-		<input value="{{sampleDetail.sdpCname}}" />
+		<input value="{{sampleDetail.sdpCname}}" disabled/>
 	</view>
 	<view class="detail-item">
 		<label>Qa日志:</label>
@@ -19,9 +19,10 @@
 		<label>图片:</label>
 		<view class="imageList">
 			<view class="image-item" wx:for="{{imageList}}" wx:key="index">
-				<icon type="cancel" size="10" bindtap="delImg" data-index="{{index}}"/>
-				<image src="{{item}}" mode="heightFix" bindtap="openPreview" data-current="{{item}}"></image>
+				<icon type="cancel" size="10" bindtap="delImg" data-index="{{index}}" data-url="{{item}}"/>
+				<image src="{{item}}" mode="scaleToFill" bindtap="openPreview" data-current="{{item}}"></image>
 			</view>
+			<label bindtap="getAllImg" hidden="{{showAllPic||allImgList.length<=2}}">查看更多</label>
 		</view>
 	</view>
 	<view class="detail-btns">

+ 11 - 2
pages/sample/detail.wxss

@@ -8,22 +8,31 @@ page{
 }
 .detail-item {
   display: flex;
-  padding: 0.4rem;
+  padding: 0.4rem 1rem;
 }
 .detail-item label {
   width: 5rem;
+  margin-right: 2rem;
 }
 .detail-item .imageList{
   display: flex;
   width: 100%;
   flex-wrap: wrap;
+  align-items: center;
 }
 .detail-item .imageList .image-item{
   display: flex;
   flex-direction: column;
 }
-.detail-item image {
+.detail-item .imageList image {
   height: 4rem;
+  width: 4rem;
+}
+.detail-item .imageList label {
+  font-size: 14px;
+  text-decoration: underline;
+  color: green;
+  margin-left: 1rem;
 }
 .detail-btns {
   display: flex;

pages/sample/sample.js → pages/sample/index.js


pages/sample/sample.json → pages/sample/index.json


+ 2 - 2
pages/sample/sample.wxml

@@ -1,11 +1,11 @@
 <view class="sample-search">
 	<view class="inputView">
-		<label class="loginLab">样品单号:</label>
+		<label class="inputLabel">样品单号:</label>
 		<input class="inputText" focus placeholder="请输入样品单号" bindinput="bindDocumentInput"/>
 	</view>
 
 	<view class="inputView">
-		<label class="loginLab">我司货号:</label>
+		<label class="inputLabel">我司货号:</label>
 		<input class="inputText" placeholder="请输入我司货号" bindinput="bindpCodeInput" />
 	</view>
 	<view class="btnView">

+ 1 - 0
pages/sample/index.wxss

@@ -0,0 +1 @@
+/* pages/sample/index.wxss */

+ 8 - 2
pages/sample/list.js

@@ -5,7 +5,7 @@ Page({
     sdDocument: '',
     pCode: '',
     current: 1,
-    size: 10,
+    size: 5,
     total: 0
   },
   onLoad: function (options) {
@@ -26,7 +26,7 @@ Page({
     }
     requestAPI.getSampleList(form).then(res => {
       for (let i of res.data.data.records) {
-        i.pictureNum = i.pictures.length
+        i.productImgUrl = i.pictures[0].bigPicture
       }
       this.setData({
         sampleList: res.data.data.records,
@@ -62,5 +62,11 @@ Page({
         size: this.data.size+10
       })
     }
+  },
+
+  openPreview: function (event) {
+    wx.previewImage({
+      urls: new Array(event.currentTarget.dataset.url),
+    })
   }
 })

+ 1 - 1
pages/sample/list.wxml

@@ -9,6 +9,6 @@
 	</view>
 	<view class="list-item">
 		<label>图片:</label>
-		<input value="{{item.pictureNum}}张" disabled/>
+		<image src="{{item.productImgUrl}}" mode="widthFix" catchtap="openPreview" data-url="{{item.productImgUrl}}"></image>
 	</view>
 </view>

+ 5 - 1
pages/sample/list.wxss

@@ -8,8 +8,12 @@ page{
 }
 .list-item {
   display: flex;
-  padding: 0.4rem;
+  padding: 0.4rem 1rem;
 }
 .list-item label {
   width: 5rem;
+  margin-right: 2rem;
+}
+.list-item image {
+  width: 6rem;
 }