zhengkaixin преди 1 година
родител
ревизия
e2514386de
променени са 29 файла, в които са добавени 1496 реда и са изтрити 922 реда
  1. 1 1
      App.vue
  2. 13 1
      apis/pagejs/projectDepartment.js
  3. 61 8
      components/ApproveList.vue
  4. 1 1
      config/.env.dev.js
  5. 1 1
      config/.env.prod.js
  6. 1 1
      config/.env.test.js
  7. 68 52
      main.js
  8. 1 1
      pages.json
  9. 1 1
      pages/index/index.vue
  10. 7 7
      pages/otherFunctions/equipmentRetrieval/equipmentDetail.vue
  11. 9 9
      pages/otherFunctions/equipmentRetrieval/equipmentInfo.vue
  12. 8 7
      pages/otherFunctions/homePage.vue
  13. 1 1
      pages/otherFunctions/messageCenter/messageCenter.vue
  14. 7 7
      pages/otherFunctions/messageCenter/messageList.vue
  15. 2 2
      pages/projectDepartment/exportApplication/deliveriedList.vue
  16. 156 6
      pages/projectDepartment/exportApplication/deliveryDetails.vue
  17. 97 6
      pages/projectDepartment/exportApplication/deliveryFrom.vue
  18. 1 6
      pages/projectDepartment/exportApplication/exportApplication.vue
  19. 23 22
      pages/projectDepartment/exportProcess/deliveryDetails.vue
  20. 1 1
      pages/projectDepartment/exportProcess/deliveryInfo.vue
  21. 207 41
      pages/projectDepartment/exportProcess/exportProcess.vue
  22. 55 6
      pages/projectDepartment/exportReturn/deliveryFrom.vue
  23. 6 5
      pages/storeManagement/equipmentDelivery/deliveriedList.vue
  24. 5 1
      pages/storeManagement/equipmentDelivery/deliveryDetails.vue
  25. 7 0
      pages/storeManagement/equipmentDelivery/equipmentDelivery.vue
  26. 35 8
      pages/storeManagement/equipmentEnter/deliveryDetails.vue
  27. 235 235
      pages/storeManagement/equipmentInspection/equipmentInspection.vue
  28. 3 3
      pages/storeManagement/equipmentInspection/inspectionRecord.vue
  29. 483 482
      pages/storeManagement/equipmentInspection/planDetail.vue

+ 1 - 1
App.vue

@@ -41,7 +41,7 @@
 		 			display: flex;
 		 			justify-content: space-between;
 		 			align-items: center;
-		 			margin-bottom: 24rpx;
+		 			margin-bottom: 14rpx;
 		 
 		 			.name {
 		 				color: rgba(51, 51, 51, 1);

+ 13 - 1
apis/pagejs/projectDepartment.js

@@ -65,7 +65,19 @@ export function createOutRecord(data) {
 		data: data,
 		url: url
 	})
-}
+}
+
+
+export function saveRecordConfirm(data) {
+	var url = '/mobile/out/saveRecordConfirm';
+	return request({
+		method: 'post',
+		data: data,
+		url: url
+	})
+}
+
+
 export function outRecordDetail(data) {
 	var url = '/mobile/out/outRecordDetail';
 	return request({

+ 61 - 8
components/ApproveList.vue

@@ -1,7 +1,7 @@
 <template>
 	<view>
 		<!-- 流程 -->
-		<view class="process">
+		<view class="process" v-if="outRecordDetailObj">
 			<view class="title">
 				流程
 			</view>
@@ -73,10 +73,11 @@
 									仓库管理
 								</view>
 								<view class="state"
-									v-if="outRecordDetailObj&&outRecordDetailObj.outRecord&&outRecordDetailObj.outRecord.status==1">
+									v-if="outRecordDetailObj&&outRecordDetailObj.outRecord&&outRecordDetailObj.outRecord.status!=0">
 
-									<view v-if="operator.status==0">等待出库</view>
-									<view v-if="operator.status==1">出库成功</view>
+									<view v-if="operator.status==1"  style="color: #4CAF50" >出库成功</view>
+									
+									<view v-else>等待出库</view>
 								</view>
 							</view>
 
@@ -97,8 +98,9 @@
 
 								<view class="name"
 									v-if="outRecordDetailObj&&outRecordDetailObj.outRecord&&outRecordDetailObj.outRecord.status!=0">
-									<view v-if="operator.status==0">等待出库</view>
-									<view v-if="operator.status==1">出库成功</view>
+									<view v-if="operator.status==1" >出库成功</view>
+									
+									<view v-else>等待出库</view>
 
 								</view>
 								<view class="name" v-else>
@@ -109,6 +111,53 @@
 							</view>
 						</view>
 					</template>
+				</u-time-line-item>
+				
+				<u-time-line-item v-if="outRecordDetailObj&&outRecordDetailObj.outUser">
+				
+					<template v-slot:content>
+						<view class="u-order">
+							<view class="u-order-desc">
+								<view class="level">
+									{{outRecordDetailObj.outUser.name}}
+								</view>
+								<view class="state"
+									v-if="outRecordDetailObj&&outRecordDetailObj.outRecord&&(outRecordDetailObj.outRecord.status==8||outRecordDetailObj.outRecord.status==3)">
+				
+									<view v-if="outRecordDetailObj.outRecord.status==8">等待签收</view>
+									<view v-else  style="color: #4CAF50" >确认签收</view>
+								</view>
+							</view>
+				
+							<view class="u-order-time">
+								<view class="photo">
+									<u-avatar size="56" class="img" :src="outRecordDetailObj.outUser.headImg"></u-avatar>
+								</view>
+								<view class="confirm">
+				
+									
+				
+									<u-icon v-if="outRecordDetailObj&&outRecordDetailObj.outRecord&&outRecordDetailObj.outRecord.status==3" name="checkmark-circle-fill"
+										:color="recordStatusColor(1)"></u-icon>
+									<u-icon v-else name="more-circle-fill"
+										:color="recordStatusColor(0)"></u-icon>
+				
+								</view>
+				
+								<view class="name"
+									v-if="outRecordDetailObj&&outRecordDetailObj.outRecord&&outRecordDetailObj.outRecord.status==3">
+									
+									<view >签收成功</view>
+				
+								</view>
+								<view class="name" v-else>
+									<view>等待签收</view>
+				
+								</view>
+				
+							</view>
+						</view>
+					</template>
 				</u-time-line-item>
 			</u-time-line>
 		</view>
@@ -127,7 +176,11 @@
 			approveList: {
 				default: []
 			},
-			outRecordDetailObj: {}
+			outRecordDetailObj: {
+				approveList:[],
+				outRecord:{},
+				outUser:{},
+			}
 		},
 		data() {
 			return {
@@ -143,7 +196,7 @@
 				}
 				var outRecordDetailObj = this.outRecordDetailObj;
 				if (outRecordDetailObj && outRecordDetailObj.outRecord && outRecordDetailObj.outRecord.status != 0) {
-					if (outRecordDetailObj.outRecord.status == 3) {
+					if (outRecordDetailObj.outRecord.status == 3||outRecordDetailObj.outRecord.status == 8) {
 						obj.status = 1;
 					}
 				}

+ 1 - 1
config/.env.dev.js

@@ -1,5 +1,5 @@
 const UNI_APP = {  
-	ProjectName :"设备管理",
+	ProjectName :"设备工器具管理系统",
 	//BASE_URL: 'http://192.168.77.162:8086/equipment-manage-server/',
 	BASE_URL:"https://equipment.xiaoxinda.com/equipment-manage-server/",
 	//IMG_URL:"http://www.jsrailway.com.cn/",

+ 1 - 1
config/.env.prod.js

@@ -1,5 +1,5 @@
 const UNI_APP = {  	
-	ProjectName :"设备管理",
+	ProjectName :"设备工器具管理系统",
 	PREFIX : "jp-Equipment-Jingli",
 	
 //	BASE_URL:"http://47.98.231.198:8081/equipment-manage-server/",

+ 1 - 1
config/.env.test.js

@@ -1,6 +1,6 @@
 const UNI_APP = {  
 	PREFIX : "jp-Equipment-Jingli",
-	ProjectName :"设备管理",
+	ProjectName :"设备工器具管理系统",
 	
 	//BASE_URL:"http://47.98.231.198:8081/equipment-manage-server/",
     //BASE_URL: 'https://charging.xiaoxinda.com/charging-station-server/',

+ 68 - 52
main.js

@@ -1,49 +1,49 @@
-import App from './App'
-import Vue from 'vue'
-import getOpenId from './apis/utils/init.js'
-//import getALIOpenId from './apis/utils/initALI.js'
-//import './assets/font/font.css'
-// var IS_WEIXIN = /MicroMessenger/.test(window.navigator.userAgent)
-// var IS_ALI = /AlipayClient/.test(window.navigator.userAgent)
-
-// if (IS_ALI) {
-
-// 	getALIOpenId.init()
-// } else {
-	
+import App from './App'
+import Vue from 'vue'
+import getOpenId from './apis/utils/init.js'
+//import getALIOpenId from './apis/utils/initALI.js'
+//import './assets/font/font.css'
+// var IS_WEIXIN = /MicroMessenger/.test(window.navigator.userAgent)
+// var IS_ALI = /AlipayClient/.test(window.navigator.userAgent)
+
+// if (IS_ALI) {
+
+// 	getALIOpenId.init()
+// } else {
+	
 // }
 
 
-getOpenId.init()
-
+getOpenId.init()
+
 import mixin from './apis/utils/mixin.js'
 
 Vue.prototype.carhelp = mixin
-
-//import Vconsole from 'vconsole'
+
+//import Vconsole from 'vconsole'
 //import uView from "uview-ui";
 import uView from '@/uni_modules/uview-ui'
-
-Vue.use(uView);
+
+Vue.use(uView);
 
 import {
 		afterTimeStamp,parseUnixTime,newDate,daysDistance
-} from '@/apis/utils'
-
-Vue.mixin({
-	updated: function() {
-		
-	},
-	onReady() {
-
-
-	},
-	onLoad(option) {
-		if (option.test == 'test') {
-			//let vConsole = new Vconsole()
-		}
-
-	},
+} from '@/apis/utils'
+
+Vue.mixin({
+	updated: function() {
+		
+	},
+	onReady() {
+
+
+	},
+	onLoad(option) {
+		if (option.test == 'test') {
+			//let vConsole = new Vconsole()
+		}
+
+	},
 	methods: {
 		gotoInfo(id){
 				if(id){
@@ -54,6 +54,7 @@ Vue.mixin({
 		},
 		descriptionKey(info,bl){
 			var key=''
+			
 			if(info.experimentPeriod&&info.experimentLastTime){
 				var time=parseUnixTime(afterTimeStamp(info.experimentPeriod,newDate(info.experimentLastTime)),'{y}-{m}-{d}');
 				var saytime=daysDistance(new Date(),time);
@@ -63,7 +64,11 @@ Vue.mixin({
 				}else if(saytime>10){
 					color="#ff9800";
 				}
-				key=`下次巡检${time},距离下次还剩`;
+				
+				if(!bl){
+					key+=`<p>上次检验${info.experimentLastTime},检验周期${info.experimentPeriod?info.experimentPeriod+'天':'不定期'}</p><p>`;
+				}
+				key+=`下次检验${time},距离下次还剩`;
 				if(!bl){
 					key+=`<span style="color:${color}">`
 				}
@@ -73,9 +78,20 @@ Vue.mixin({
 					key+=`</span>`
 				}
 				key+=`天`
+				if(!bl){
+					key+='</p>'
+				}
+			}else if(info.experimentLastTime&&!info.experimentPeriod){
+				if(!bl){
+					key+=`<p>上次检验${info.experimentLastTime},检验周期${info.experimentPeriod?info.experimentPeriod+'天':'不定期'}</p>`;
+				}
+			}else if(!info.experimentLastTime&&!info.experimentPeriod){
+				if(!bl){
+					key+=`<p>上次检验<span style='color:red'>未录入</span>,检验周期<span style='color:red'>未录入</span></p>`;
+				}
 			}
 			return key
-		},
+		},
 		takeCodeJp(val){
 			if(val&&val.indexOf("jp=")==0){
 				val=val.split("jp=")[1]
@@ -90,19 +106,19 @@ Vue.mixin({
 			}else{
 				return '0'
 			}
-		},
-		gotoUrl(url) {
-			uni.navigateTo({
-				url: "/" + url
-			})
-		}
-	}
-})
-
-
-Vue.config.productionTip = false
-App.mpType = 'app'
-const app = new Vue({
-	...App
-})
+		},
+		gotoUrl(url) {
+			uni.navigateTo({
+				url: "/" + url
+			})
+		}
+	}
+})
+
+
+Vue.config.productionTip = false
+App.mpType = 'app'
+const app = new Vue({
+	...App
+})
 app.$mount()

+ 1 - 1
pages.json

@@ -225,7 +225,7 @@
 
 	"globalStyle": {
 		"navigationStyle": "custom", // 隐藏系统导航栏
-		"navigationBarTitleText": "设备管理",
+		"navigationBarTitleText": "设备工器具管理系统",
 		"enablePullDownRefresh": false
 	},
 	"uniIdRouter": {}

+ 1 - 1
pages/index/index.vue

@@ -11,7 +11,7 @@
 			<img src="../../assets/img/loginLogo@1x.png" alt="">
 		</view>
 		<view class="title">
-			设备管理系统
+			设备工器具管理系统
 		</view>
 		
 

+ 7 - 7
pages/otherFunctions/equipmentRetrieval/equipmentDetail.vue

@@ -82,7 +82,7 @@
 						</view>
 						<view class="item" style="width: 100%;" v-if="false"  >
 							<view class="item-title">
-								检时间
+								检时间
 							</view>
 							<view class="item-value">
 								{{info.experimentLastTime}}
@@ -120,13 +120,13 @@
 					
 				</view>
 			</view>
-			<!-- 检记录 -->
+			<!-- 检记录 -->
 			<view class="content"  v-if="false">
 				<view class="infos">
 					<view class="name">
 					<view class="icon"><img src="@/assets/img/riLine-device-recover-line@1x.png" alt=""></view>
 					<view class="text">
-						检记录
+						检记录
 					</view>
 					
 					<view class="all">
@@ -141,7 +141,7 @@
 					<view class="inspection-contents">
 						<view class="inspection-title">
 							<view class="text">
-								检内容名称
+								检内容名称
 							</view>
 							<view class="state">
 								合格
@@ -150,7 +150,7 @@
 						<view class="inspection-infos">
 							<view class="inspection-personnel">
 								<view class="inspection-name">
-									检人:
+									检人:
 								</view>
 								<view class="value">
 									孙斌
@@ -270,14 +270,14 @@
 				name:"",
 				count:"",
 				info:{},
-				description: '下次检时间:2023/03/30',
+				description: '下次检时间:2023/03/30',
 				list: [{
 					name: '设备信息'
 				}, {
 					name: '设备位置'
 				}
 				// , {
-				// 	name: '检记录',
+				// 	name: '检记录',
 				// },{
 				// 	name:'出入库记录'
 				// },

+ 9 - 9
pages/otherFunctions/equipmentRetrieval/equipmentInfo.vue

@@ -83,7 +83,7 @@
 						
 						<view class="item"  style="width: 100%;" >
 							<view class="item-title">
-								上次
+								上次检
 							</view>
 							<view class="item-value">
 								{{info.experimentLastTime}}
@@ -92,7 +92,7 @@
 						
 						<view class="item" >
 							<view class="item-title">
-								检周期
+								检周期
 							</view>
 							<view class="item-value">
 								{{info.experimentPeriod?info.experimentPeriod+'天':''}}
@@ -128,13 +128,13 @@
 					
 				</view>
 			</view>
-			<!-- 检记录 -->
+			<!-- 检记录 -->
 			<view class="content">
 				<view class="infos">
 					<view class="name">
 					<view class="icon"><img src="@/assets/img/riLine-device-recover-line@1x.png" alt=""></view>
 					<view class="text">
-						检记录
+						检记录
 					</view>
 					
 					<view class="all" v-if="inspectionRecordDeviceList.length>3" 
@@ -155,7 +155,7 @@
 					 :key="index" >
 						<view class="inspection-title">
 							<!-- <view class="text">
-								检内容名称
+								检内容名称
 							</view> -->
 							<view v-if="item.status=='1'" class="state">
 								合格
@@ -167,7 +167,7 @@
 						<view class="inspection-infos">
 							<view class="inspection-personnel">
 								<view class="inspection-name">
-									检人:
+									检人:
 								</view>
 								<view class="value">
 									{{item.inspectionUserName}}
@@ -266,14 +266,14 @@
 				inspectionRecordDeviceList:[],
 				outRecordListShow:false,
 				outRecordList:[],
-				//description: '下次检时间:2023/03/30',
+				//description: '下次检时间:2023/03/30',
 				list: [{
 					name: '设备信息'
 				}, {
 					name: '设备位置'
 				}
 				// , {
-				// 	name: '检记录',
+				// 	name: '检记录',
 				// },{
 				// 	name:'出入库记录'
 				// },
@@ -290,7 +290,7 @@
 				if(this.info.experimentPeriod&&this.info.experimentLastTime){
 					
 					key='1'
-					//'下次检时间'+	parseUnixTime(afterTimeStamp(this.info.experimentPeriod,newDate(this.info.experimentLastTime)),'{y}-{m}-{d}')
+					//'下次检时间'+	parseUnixTime(afterTimeStamp(this.info.experimentPeriod,newDate(this.info.experimentLastTime)),'{y}-{m}-{d}')
 				}
 				return key
 			}

+ 8 - 7
pages/otherFunctions/homePage.vue

@@ -46,10 +46,11 @@
 		 				
 		 					<view class="name">
 		 						编号:{{nowscan.code}}
+								<span class="name"  v-show="nowscan&&nowscan.id" style="color:blue;">
+									点击查看
+								</span>
 		 					</view>
-							<view class="name" :style="nowscan.id?'color:blue;':'color:#fff;'">
-								点击查看
-							</view>
+							
 		 				</view>
 		 				<view class="scan-infos-head " style="margin-bottom: 12rpx;">
 		 					<view class="name" v-html="descriptionKey(nowscan)">
@@ -59,7 +60,7 @@
 		 				</view>
 		 				<view class="scan-infos">
 		 					
-		 					<view class="infos-2">
+		 					<!-- <view class="infos-2">
 		 						<view class="infos-item">
 		 							<view class="item-name">
 		 								规格:
@@ -76,7 +77,7 @@
 		 								{{nowscan.model}}
 		 							</view>
 		 						</view>
-		 					</view>
+		 					</view> -->
 		 				
 		 				</view>
 		 				</view>
@@ -195,7 +196,7 @@
 		</view>
 		<view class="item"   @click="gotoUrl('pages/storeManagement/equipmentInspection/equipmentInspection')" >
 			<view class="title">
-				设备
+				设备检
 				<u-badge type="error" :absolute="false" style="    position: unset;    padding: 2px 3px;" :fontSize="36"
 				
 				:isCenter="true" :count="badgeGet.deviceList"></u-badge>
@@ -231,7 +232,7 @@
 		  	  <view class="function-gird">
 		  	  	<view class="item">
 		  	  		<img src="@/assets/img/riLine-file-add-line@1x.png" alt="">
-		  	  	   <text>新增检</text>
+		  	  	   <text>新增检</text>
 				</view>
 				<view class="item">
 					<img src="@/assets/img/riLine-printer-line@1x.png" alt="">

+ 1 - 1
pages/otherFunctions/messageCenter/messageCenter.vue

@@ -40,7 +40,7 @@
 				<view class="infos">
 					<view class="head">
 						<view class="title">
-							检消息
+							检消息
 						</view>
 						<view class="time">
 							10:00

+ 7 - 7
pages/otherFunctions/messageCenter/messageList.vue

@@ -1,7 +1,7 @@
 
 <template>
 	<view>
-		<u-navbar title="检消息" ></u-navbar>
+		<u-navbar title="检消息" ></u-navbar>
 		
 		<view class="main">
 			<view class="item" v-for="item in 2" :key="item" >
@@ -10,20 +10,20 @@
 				</view>
 				<view class="message-infos">
 					<view class="title">
-						待检提醒
+						待检提醒
 					</view>
 					<view class="infos">
 						<view class="info-name">
-							检类型:
+							检类型:
 						</view>
 						<view class="info-content">
-							设备
+							设备检
 							
 						</view>
 					</view>
 					<view class="infos">
 						<view class="info-name">
-							检设备:
+							检设备:
 						</view>
 						<view class="info-content">
 							线缆检测设备
@@ -32,7 +32,7 @@
 					</view>
 					<view class="infos">
 						<view class="info-name">
-							检人:
+							检人:
 						</view>
 						<view class="info-content ">
 							孙斌
@@ -41,7 +41,7 @@
 					</view>
 					<view class="infos">
 						<view class="info-name">
-							检日期:
+							检日期:
 						</view>
 						<view class="info-content">
                   2023/03/15-2023/03/20

+ 2 - 2
pages/projectDepartment/exportApplication/deliveriedList.vue

@@ -64,11 +64,11 @@
 				</view>
 			
 				<!-- 备注 -->
-				<view class="remark" v-if="item.remark"  >
+				<view class="remark" v-if="item.remark" >
 					<view class="name">
 						备注:
 					</view>
-					<view class="value">
+					<view class="value"  style="color:red" >
 						{{item.remark}}
 					</view>
 				</view>

+ 156 - 6
pages/projectDepartment/exportApplication/deliveryDetails.vue

@@ -136,16 +136,49 @@
 		:outRecordDetailObj="outRecordDetailObj"
 		 :approveList="approveList"></approveList>
     </view>
+	 <u-popup  v-model="showpopup"  mode="bottom"
+	border-radius="14"
+	:closeable="true"  >
+		<p  style=" margin-top: 30px;">请在下方空白区域使用正楷字体进行电子签名</p>
+			
+		<view class="signature">
+			<l-signature 
+			 width="100%"
+			 disableScroll ref="signatureRef" :penColor="penColor" :penSize="penSize"
+				:openSmooth="openSmooth"></l-signature>
+		</view>
+		<view class="clean-save">
+			<view class="clean" @click="onClick('clear')">
+				
+				<view class="">
+					清除
+				</view>
+			</view>
+			<view class="save" @click="onClick('save')">
+				
+				<view class="">
+					保存并提交
+				</view>
+			</view>
+			
+		</view>
+		
+	</u-popup> 
 	<!-- 确认出库 -->
-	<view class="bottom" >
-		<!-- <button>确认出库</button> -->
-		<u-button  v-if="info.status==0" type="revoke" @click="revokeBtn" >撤销</u-button>
-		<u-button   v-if="info.status==1&&false" type="primary" >签字验收</u-button>
-	</view>
+		<view class="bottom"  v-if="info.status!=3&&info.status!=9">
+			<!-- <button>确认出库</button> -->
+			<u-button  v-if="info.status==0" type="revoke" @click="revokeBtn" >撤销</u-button>
+			<u-button   v-else-if="info.status==8" type="primary"  @click="saveRecordConfirm" >签字验收</u-button>
+			<u-button   v-else type="primary" @click="getInfo" >刷新</u-button>
+			
+		</view>
 	</view>
 </template>
 
 <script>
+	
+	 import LSignature from '@/pages/projectDepartment/components/l-signature/l-signature.vue'
+	
 	import * as API from '@/apis/pagejs/projectDepartment.js'
 	import {
 		recordStatus,recordStatusColor
@@ -154,7 +187,7 @@
 	
 	export default {
 		components: {
-			approveList
+			approveList,LSignature
 		},
 		data() {
 			return {
@@ -173,6 +206,11 @@
 				outRecordDeviceList:[],
 				approveList:[],
 				recordsTotal:0,
+				signUrl:"",
+				showpopup:false,
+				penColor: '',
+				penSize: 5,
+				openSmooth: true,
 			}
 		},
 		onLoad(op){
@@ -182,6 +220,54 @@
 		methods: {
 			recordStatusColor,
 			recordStatus,
+			onClick(type) {
+				this.url =""
+				 if(type == 'openSmooth') {
+					 this.openSmooth = !this.openSmooth
+					 return
+				 }
+				if (type == 'save') {
+					this.$refs.signatureRef.canvasToTempFilePath({
+						success: (res) => {
+							// 是否为空画板 无签名
+							if(res.isEmpty){
+								this.signUrl ="";
+							}else{
+								
+						
+								
+								// #ifdef MP-WEIXIN
+								
+									var _this=this;
+									wx.getFileSystemManager()
+									  .readFile({ //读取本地文件内容
+									    filePath: res.tempFilePath, // 文件路径
+									    encoding: 'base64', // 返回格式
+									    success: ({data}) => {
+										
+									      _this.signUrl='data:image/png;base64,' + data;
+										  _this.saveRecordConfirmMethod("1");
+									    },
+									    fail(res) {
+									      console.log('fail', res)
+									    }
+									  });
+									  
+								// #endif
+								// #ifdef H5
+									this.signUrl=res.tempFilePath
+									this.saveRecordConfirmMethod("1");
+								// #endif
+								
+								
+							}
+						}
+					})
+					return
+				}
+				if (this.$refs.signatureRef)
+					this.$refs.signatureRef[type]()
+			},
 			getList(){
 				
 				API.outRecordDeviceById({
@@ -233,6 +319,45 @@
 					}
 				})
 			},
+			saveRecordConfirm(){
+				this.showpopup=true;
+				return
+				var _this=this
+				uni.showModal({
+					content:"确认签收无误?",
+					title:"提示",
+					success(res) {
+					
+						if(res.confirm){
+							//_this.saveRecordConfirmMethod()
+							_this.showpopup=true;
+						}else{
+							
+						}
+					}
+				})
+			},
+			saveRecordConfirmMethod(){
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API.saveRecordConfirm({
+					recordId:this.id,
+					status:1,
+					signUrl:this.signUrl
+				}).then((res) => {
+					uni.hideLoading();
+					this.showpopup=false;
+					this.getInfo(true)
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+			
 			getInfo(bl){
 				uni.showLoading({
 					title: "加载中",
@@ -265,7 +390,32 @@
 </script>
 
 <style scoped lang="scss">
+	.signature{
+		background-color: #fff;
+		margin-top: 8px;
+		height: 160px;
+		border: #c2c2c2  1px solid;
+	}
+	.clean-save{
+		background-color: #fff;
+		display: flex;
+		.clean,.save{
+			width: 50%;
+			text-align: center;
+			color: #252525;
+			line-height: 40px;
+		}
+		.clean,.save{
+			border:#c2c2c2  1px solid;
+			display: flex;
+			justify-content: center;
+			img{
+				margin-right: 4px;
+			}
+		}
+	}
 	page {
+		
 		padding-bottom: 200rpx;
 	}
 

+ 97 - 6
pages/projectDepartment/exportApplication/deliveryFrom.vue

@@ -6,7 +6,11 @@
 	
 		<!-- 出库单详情 -->
 		<view class="details">
-			<p  class="itemp">项目信息</p>
+			<p  class="itemp">项目信息
+			 
+			 <span  @click="show4=true" v-if="approveList.length"
+			  style="float: right; color: #45BA45; font-size: 12px;font-weight: normal;">
+				<u-icon name="file-text"></u-icon>引用历史项目</span></p>
 			
 			<view class="item">
 				<view class="name">
@@ -180,6 +184,9 @@
 	 <ujp-calendar v-model="show" mode="date"  max-date="2099-01-01"  @change="change"></ujp-calendar>
 	 
 	 <u-select v-model="show3" :list="projectList"   @confirm="confirm" ></u-select>
+	 <u-select v-model="show4"  label-name="projectName" value-name="id"
+	  
+	  :list="approveList"   @confirm="confirm4" ></u-select>
 	 
 	 <u-select v-model="show2" :list="list2"   @confirm="confirm2" ></u-select>
 	 <!-- -sync -sync -->
@@ -251,13 +258,13 @@
 				list:[],
 				show2:false,//审批人 步骤1
 				show3:false,//审批人 步骤1
+				show4:false,//审批人 步骤1
+				
 				//list2:[],
-				approveList1:[
-					
-				],
-				approveList2:[
+				approveList:[
 					
 				],
+				
 				approveProcessList:[],
 				projectList:[
 					
@@ -286,6 +293,37 @@
 			this.createOutRecord();
 		},
 		methods:{
+			getApproveList(){
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API.outApplyList({
+					pageIndex: 1,
+					pageSize: 20,
+					recordsTotal: 1,
+					status: "1",
+				}).then((res) => {
+				
+					var data = res.data.data;
+					var sz=[];
+					this.approveList=[]
+					data.forEach(item=>{
+						if(sz.indexOf(item.projectName)==-1){
+							sz.push(item.projectName)
+							this.approveList.push(item)
+						}
+					})
+					//this.approveList = res.data.data;
+					//console.log(this.approveList)
+					uni.hideLoading();
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
 			createOutRecord(){
 				uni.showLoading({
 					title: "加载中",
@@ -320,7 +358,7 @@
 							}
 							
 						}
-						
+						this.getApproveList()
 					}else{
 						uni.showToast({
 							title: "审批流未配置,请联系管理员",
@@ -354,6 +392,59 @@
 				
 				}
 			},
+			getInfo(id){
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API.outRecordDetail({
+					id:id,
+				}).then((res) => {
+					//this.outRecordDetailObj=res.data;
+					var info=res.data.outRecord;
+					var approveList=res.data.approveList;
+					//this.outUser=res.data.outUser;
+					uni.hideLoading();
+					
+					this.form.projectName=info.projectName
+					this.projectList.forEach(item=>{
+						if(item.value==info.departmentId){
+							this.form.xmbId=item.value;
+							this.xmbId=item.label
+						}
+					})
+					if(approveList.length==this.approveProcessList.length){
+						for(var i in approveList){
+							var obj1=approveList[i].approveUserList[0]
+							var obj2=this.approveProcessList[i].approveUserList
+							
+							
+							for(var j in obj2){
+								
+								if(obj2[j].id==obj1.id){
+									
+									this.approveProcessList[i].approveId=obj1.id
+									this.approveProcessList[i].approveName=obj1.name
+								}
+							}
+							
+							
+						}
+					}
+					
+					
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+			confirm4(e) {
+				//obj.approveId=e[0].value;
+				//obj.approveName=e[0].label;
+				this.getInfo(e[0].value)
+			},
 			showpopupBtn(){
 				
 				

+ 1 - 6
pages/projectDepartment/exportApplication/exportApplication.vue

@@ -19,7 +19,7 @@
 			<view class="list1">
 				<view class="item" v-for="(item,i) in list[current].list" @click="ckInfo(item.id)" :key="i">
 					<view class="title">
-						<span v-if="current==1"
+						<span v-if="item.status!=0"
 							style="margin-right: 6px;"
 							:style="{color:recordStatusColor(item.status)}">[{{item.statusN}}]</span>
 						{{item.projectName}}
@@ -48,11 +48,6 @@
 			</view>
 		
 			
-		
-
-
-
-
 		<view class="bottom">
 			<u-button type="primary"  @click="addInfo">填写出库申请</u-button>
 		</view>

+ 23 - 22
pages/projectDepartment/exportProcess/deliveryDetails.vue

@@ -133,7 +133,7 @@
 		:outRecordDetailObj="outRecordDetailObj"
 		 :approveList="approveList"></approveList>
     </view>
-	<u-popup  v-model="showpopup"  mode="bottom"
+	<!-- <u-popup  v-model="showpopup"  mode="bottom"
 	border-radius="14"
 	:closeable="true"  >
 		<p  style=" margin-top: 30px;">请在下方空白区域使用正楷字体进行电子签名</p>
@@ -160,7 +160,7 @@
 			
 		</view>
 		
-	</u-popup>
+	</u-popup> -->
 	<!-- 确认出库 -->
 	<view class="bottom" v-if="isSpPerson" >
 		<!-- <button>确认出库</button> -->
@@ -171,13 +171,13 @@
 		  size="medium" type="revoke" >拒绝</u-button>
 		<u-button  
 		@click="submit(1)"
-		style="width: 49%;" size="medium"  type="primary" >签字同意</u-button>
+		style="width: 49%;" size="medium"  type="primary" >同意</u-button>
 	</view>
 	</view>
 </template>
 
 <script>
-	import LSignature from '@/pages/projectDepartment/components/l-signature/l-signature.vue'
+	// import LSignature from '@/pages/projectDepartment/components/l-signature/l-signature.vue'
 	
 	import * as API from '@/apis/pagejs/approve.js'
 	import {
@@ -190,8 +190,9 @@
 	
 	export default {
 		components: {
-			approveList,LSignature
+			approveList
 		},
+		//,LSignature
 		data() {
 			return {
 				isSpPerson:false,
@@ -358,9 +359,9 @@
 					mask: true,
 				})
 				API.saveRecordApprove({
-					recordId:this.id,
+					recordIds:this.id,
 					status:status,
-					signUrl:this.signUrl
+					//signUrl:this.signUrl
 				}).then((res) => {
 					this.showpopup=false;
 					const eventChannel = this.getOpenerEventChannel();
@@ -397,28 +398,28 @@
 			},
 			submit(status){
 				var message=""
+				var _this=this;
 				if(status==2){
 					message="拒绝"
-					this.signUrl=""
-					var _this=this;
 					
-					uni.showModal({
-						title:"提示",
-						content:"是否"+message+"出库审批",
-						success(res) {
-							
-							if(res.confirm){
-								_this.saveRecordApprove(status);
-							}else{
-								
-							}
-						}
-					})
 				}else{
 					message="同意"
-					this.showpopup=true;
+					//this.showpopup=true;
 				}
 				
+				uni.showModal({
+					title:"提示",
+					content:"是否"+message+"出库审批",
+					success(res) {
+						
+						if(res.confirm){
+							_this.saveRecordApprove(status);
+						}else{
+							
+						}
+					}
+				})
+				
 			}
 		}
 	}

+ 1 - 1
pages/projectDepartment/exportProcess/deliveryInfo.vue

@@ -16,7 +16,7 @@
 				提交了<text>出库申请</text>
 			</view>
 			<view class="state">
-				{{recordStatus(info.status)}}
+				{{info.statusN}}
 			</view>
 		</view>
 		<!-- 出库单详情 -->

+ 207 - 41
pages/projectDepartment/exportProcess/exportProcess.vue

@@ -16,38 +16,117 @@
 		</u-navbar>
 		
 		
-			<view class="list1">
-			<view class="item"  v-for="(item,i) in list[current].list" @click="ckInfo(item.id,current)" :key="i">
-				<view class="title">
-					<span v-if="current==1"
-						style="margin-right: 6px;"
-						:style="{color:recordStatusColor(item.status)}">[{{recordStatus(item.status)}}]</span>
-					{{item.projectName}}
-				</view>
-				<view class="group">
-					<view class="name">
-						申请人:
-					</view>
-					<view class="value">
-						{{item.createByName}}
-					</view>
-				</view>
-				<view class="group">
-					<view class="name">
-						申请时间:
-					</view>
-					<view class="value">
-					{{item.createTime}}
+			<view class="listProcess">
+				<view  style="display: flex;" v-show="current==0"
+				v-for="(item, index) in list[0].list" :key="index" >
+				
+							<u-checkbox 
+								
+								v-model="item.checked" 
+								:name="item.id"
+								
+							>
+							
+							</u-checkbox>
+							<view class="item"  @click="ckInfo(item.id,current)" >
+								<view class="title">
+									{{item.projectName}}
+								</view>
+								<view class="group">
+									<view class="name">
+										所属项目部:
+									</view>
+									<view class="value">
+										{{item.departmentName}}
+									</view>
+								</view>
+								<view class="group">
+									<view class="name">
+										申请人:
+									</view>
+									<view class="value">
+										{{item.createByName}}
+									</view>
+									
+								
+									
+								</view>
+								<view class="group">
+									<view class="name">
+										申请时间:
+									</view>
+									
+									<view class="value" >
+									{{item.createTime}}
+									</view>
+								</view>
+							</view>
+						
+					</view>	
+						
+				
+				
+				
+				<view  v-show="current==1" v-for="(item,i) in list[1].list" @click="ckInfo(item.id,current)" :key="i">
+						
+					
+					<view class="item" >
+						<view class="title">
+							<span v-if="current==1"
+								style="margin-right: 6px;"
+								:style="{color:recordStatusColor(item.status)}">[{{item.statusN}}]</span>
+							{{item.projectName}}
+						</view>
+						<view class="group">
+							<view class="name">
+								所属项目部:
+							</view>
+							<view class="value">
+								{{item.departmentName}}
+							</view>
+						</view>
+						<view class="group">
+							<view class="name">
+								申请人:
+							</view>
+							<view class="value">
+								{{item.createByName}}
+							</view>
+							
+						
+						</view>
+						<view class="group">
+							<view class="name">
+								申请时间:
+							</view>
+							
+							<view class="value" >
+							{{item.createTime}}
+							</view>
+						</view>
+						
 					</view>
 				</view>
-				
-			</view>
 			<u-divider  v-if="list[current].recordsTotal==list[current].list.length"
 			 :isnone="list[current].recordsTotal==0" nonetext="没有找到相关内容" 
 			border-color="#CFD2D5">已经到底了</u-divider>
 		</view>
 	
-	
+		<view class="bottom"  v-show="current==0">
+			
+			<u-checkbox v-model="checked" @change="checkedAll" >
+			全选
+			</u-checkbox>
+			<span style="float: right;">
+				<u-button   size="medium" @click="submit(2)"
+				
+				type="revoke" style="border-radius:10px 0 0 10px"  >拒绝</u-button>
+					<u-button  @click="submit(1)"
+					
+					size="medium" type="primary"  style="border-radius:0 10px  10px 0" >同意</u-button>
+				
+			</span>
+		</view>
 	
 	</view>
 </template>
@@ -65,7 +144,7 @@
 				list: [{
 					name: '审批中',
 					pageIndex: 1,
-					pageSize: 20,
+					pageSize: 50,
 					recordsTotal: 1,
 					status:"0",
 					list:[]
@@ -78,7 +157,8 @@
 					list:[]
 				}],
 				current: 0,
-				show:false
+				show:false,
+				checked:false,
 			}
 		},
 		
@@ -95,6 +175,12 @@
 		methods: {
 			recordStatus,
 			recordStatusColor,
+			checkedAll(e) {
+				
+						this.list[0].list.map(val => {
+							val.checked = e.value;
+						})
+			},
 			getList(val){
 							
 							 uni.showLoading({
@@ -143,6 +229,8 @@
 				this.current=0
 				this.list[0].pageIndex=1
 				this.list[1].pageIndex=1
+				this.list[0].list=[]
+				this.list[1].list=[]
 				this.getList('init')
 			},
 			ckInfo(id,status){
@@ -169,6 +257,91 @@
 				 }
 				
 			},
+			submit(status){
+				var list=this.list[0].list.filter(val => {
+					return val.checked
+				}).map(var2=>{
+					return var2.id
+				})
+				
+				if(list.length){
+					
+				} else{
+					uni.showToast({
+						title:"请勾选记录"
+					})
+					return;
+				}
+				var ids=list.join()
+				
+				var message=""
+				var _this=this;
+				if(status==2){
+					message="拒绝"
+					
+				}else{
+					message="同意"
+					//this.showpopup=true;
+				}
+				
+				uni.showModal({
+					title:"提示",
+					content:"是否"+message+"出库审批",
+					success(res) {
+						
+						if(res.confirm){
+							_this.saveRecordApprove(status,ids);
+						}else{
+							
+						}
+					}
+				})
+				
+			},saveRecordApprove(status,ids){
+				
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API.saveRecordApprove({
+					recordIds:ids,
+					status:status,
+					//signUrl:this.signUrl
+				}).then((res) => {
+					//this.showpopup=false;
+				
+					// uni.showToast({
+					// 	title:"操作成功"
+					// })
+					
+					uni.showModal({
+						title:"提示",
+						content:"操作成功",
+						showCancel:false,
+						success(resc) {
+							
+							if(resc.confirm){
+								
+							}else{
+								
+							}
+						}
+					})
+					
+					
+					this.current=0
+					this.list[0].pageIndex=1
+					this.list[1].pageIndex=1
+					this.list[0].list=[]
+					this.list[1].list=[]
+					this.getList()
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
 			 
 		}
 	}
@@ -233,25 +406,26 @@
 	}
 
 
- .list1,.list2{
+ .listProcess{
 	 padding: 0 32rpx;
 		margin-top: 60px;
 		margin-bottom: 10px;
 	 .item{
+		 width: 640rpx;
 		 border-radius: 8px;
 		 background-color: rgba(255, 255, 255, 1);
-		 padding: 32rpx;
+		 padding: 18rpx 32rpx ;
 		 margin-bottom: 24rpx;
 		 .title{
 			 color: rgba(51, 51, 51, 1);
 			 font-size: 36rpx;
-			 margin-bottom: 16rpx;
+			 margin-bottom: 8rpx;
 		 }
 		 .group{
 			 display: flex;
 			 color: rgba(119, 119, 119, 1);
-			 margin-top: 16rpx;
-			 font-weight: bold;
+			font-size: 24rpx;
+			// font-weight: bold;
 		 }
 	 }
 	 
@@ -264,14 +438,6 @@
 	right: 0;
 	background-color: #fff;
 	padding: 16rpx 32rpx;
-	uni-button{
-		height: 88rpx;
-		line-height: 88rpx;
-		border-radius: 8px;
-		background: linear-gradient(180deg, rgba(22,119,255,1) 0%,rgba(16,98,213,1) 100%);
-		color: rgba(255, 255, 255, 1);
-		font-size: 32rpx;
-		font-family: Microsoft Yahei;
-	}
+	
 }
 </style>

+ 55 - 6
pages/projectDepartment/exportReturn/deliveryFrom.vue

@@ -15,10 +15,17 @@
 						<view class="title">
 							所属项目<span style="color: red;">*</span>
 						</view>
+						<view class="amount" v-if="approveList.length" >
+							<span  @click="show4=true" 
+							 style="float: right; color: #45BA45; font-size: 12px;font-weight: normal;">
+											<u-icon name="file-text"></u-icon>引用</span>
+						</view>
 						<view class="amount" >
 							<u-input style="border-bottom: 1px solid;"
 							 v-model="form.projectName" placeholder="请输入所属项目" type="text" />
+							 
 						</view>
+						
 					</view>
 					
 				</view>
@@ -44,10 +51,11 @@
 						
 							<view class="name">
 								编号:{{nowscan.code}}
+										<span class="name"  v-show="nowscan&&nowscan.id" style="color:blue;">
+											点击查看
+										</span>
 							</view>
-									<view class="name" :style="nowscan.id?'color:blue;':'color:#fff;'">
-										点击查看
-									</view>
+									
 						</view>
 						<view class="scan-infos-head " style="margin-bottom: 12rpx;">
 							<view class="name" v-html="descriptionKey(nowscan)">
@@ -57,7 +65,7 @@
 						</view>
 						<view class="scan-infos">
 							
-							<view class="infos-2">
+							<!-- <view class="infos-2">
 								<view class="infos-item">
 									<view class="item-name">
 										规格:
@@ -74,7 +82,7 @@
 										{{nowscan.model}}
 									</view>
 								</view>
-							</view>
+							</view> -->
 						
 						</view>
 						</view>
@@ -151,7 +159,9 @@
 		
 		nonetext="点击'扫码'进行归还"  nonetop="110" border-color="#CFD2D5">已经到底了</u-divider>
 				
-		
+		<u-select v-model="show4"  label-name="projectName" value-name="id"
+		:list="approveList"   @confirm="confirm4" ></u-select>
+			 
 		<!-- 确认出库 -->
 		<view class="bottom"  >
 			
@@ -189,6 +199,8 @@
 					deviceIds:"",
 				},
 				scanList:[],
+				approveList:[],
+				show4:false,
 				radiolist: [{
 						name: '正常',
 						value: "0",
@@ -203,7 +215,44 @@
 				],
 			}
 		},
+		onReady(){
+			this.getApproveList();
+		},
 		methods: {
+			confirm4(e) {
+				this.form.projectName=e[0].label;
+			},
+			getApproveList(){
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API.outApplyList({
+					pageIndex: 1,
+					pageSize: 20,
+					recordsTotal: 1,
+					status: "1",
+				}).then((res) => {
+				
+					var data = res.data.data;
+					var sz=[];
+					this.approveList=[]
+					data.forEach(item=>{
+						if(sz.indexOf(item.projectName)==-1){
+							sz.push(item.projectName)
+							this.approveList.push(item)
+						}
+					})
+					//this.approveList = res.data.data;
+					//console.log(this.approveList)
+					uni.hideLoading();
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
 			delOutListMethod(c) {
 			
 				if (c > -1) {

+ 6 - 5
pages/storeManagement/equipmentDelivery/deliveriedList.vue

@@ -32,10 +32,11 @@
 						
 							<view class="name">
 								编号:{{nowscan.code}}
+										<span class="name"  v-show="nowscan&&nowscan.id" style="color:blue;">
+											点击查看
+										</span>
 							</view>
-									<view class="name" :style="nowscan.id?'color:blue;':'color:#fff;'">
-										点击查看
-									</view>
+									
 						</view>
 						<view class="scan-infos-head " style="margin-bottom: 12rpx;">
 							<view class="name" v-html="descriptionKey(nowscan)">
@@ -45,7 +46,7 @@
 						</view>
 						<view class="scan-infos">
 							
-							<view class="infos-2">
+							<!-- <view class="infos-2">
 								<view class="infos-item">
 									<view class="item-name">
 										规格:
@@ -62,7 +63,7 @@
 										{{nowscan.model}}
 									</view>
 								</view>
-							</view>
+							</view> -->
 						
 						</view>
 						</view>

+ 5 - 1
pages/storeManagement/equipmentDelivery/deliveryDetails.vue

@@ -14,7 +14,7 @@
 				提交了<text>出库申请</text>
 			</view>
 			<view class="state">
-				{{recordStatus(info.status)}}
+				{{info.statusN}}
 			</view>
 		</view>
 		<!-- 出库单详情 -->
@@ -142,6 +142,10 @@
 			<u-button  type="primary"  @click="gotoOut()" >前往出库</u-button>
 			
 		</view>
+		<view class="bottom" v-if="info.status=='8'" >
+			<u-button  type="primary"  @click="getInfo()" >刷新</u-button>
+			
+		</view>
 	</view>
 </template>
 

+ 7 - 0
pages/storeManagement/equipmentDelivery/equipmentDelivery.vue

@@ -13,6 +13,9 @@
 		<view class="list1" >
 			<view class="item" v-for="(item,i) in list[current].list" @click="ckInfo(item.id)" :key="i" >
 				<view class="title">
+					<span v-if="item.status==8"
+						style="margin-right: 6px;"
+						:style="{color:recordStatusColor(item.status)}">[{{item.statusN}}]</span>
 					{{item.projectName}}
 				</view>
 				
@@ -55,7 +58,10 @@
 
 <script>
 	import * as API from '@/apis/pagejs/storeManagement.js'
+	import {
 	
+		recordStatusColor
+	} from '@/apis/status.js'
 	export default {
 		data() {
 			return {
@@ -88,6 +94,7 @@
 			this.getList()
 		},
 		methods: {
+			recordStatusColor,
 			getList(){
 							
 							 uni.showLoading({

+ 35 - 8
pages/storeManagement/equipmentEnter/deliveryDetails.vue

@@ -1,7 +1,7 @@
 <template>
 	<view >
 		<u-navbar title="归还单详情">
-			<view class="details" slot="bottom">
+			<view class="details" slot="bottom" v-if="info.status==0" >
 				<view class="list">
 					<view class="list-head">
 						<view class="title">
@@ -28,10 +28,11 @@
 						
 							<view class="name">
 								编号:{{nowscan.code}}
+										<span class="name"  v-show="nowscan&&nowscan.id" style="color:blue;">
+											点击查看
+										</span>
 							</view>
-									<view class="name" :style="nowscan.id?'color:blue;':'color:#fff;'">
-										点击查看
-									</view>
+									
 						</view>
 						<view class="scan-infos-head " style="margin-bottom: 12rpx;">
 							<view class="name" v-html="descriptionKey(nowscan)">
@@ -41,7 +42,7 @@
 						</view>
 						<view class="scan-infos">
 							
-							<view class="infos-2">
+							<!-- <view class="infos-2">
 								<view class="infos-item">
 									<view class="item-name">
 										规格:
@@ -58,7 +59,7 @@
 										{{nowscan.model}}
 									</view>
 								</view>
-							</view>
+							</view> -->
 						
 						</view>
 						</view>
@@ -71,7 +72,7 @@
 					<!--  #endif -->
 				</u-popup>
 		<!-- 出库单状态 -->
-		<view class="container" style="margin-top: 60px;">
+		<view class="container"   :style="info.status==0?'margin-top: 60px;':''">
 		<view class="head">
 			<view class="photo">
 				<u-avatar size="84" :src="outUser.userImg"></u-avatar>
@@ -109,6 +110,17 @@
 					{{info.createTime}}
 				</view>
 			</view>
+			
+			<view class="item">
+				<view class="name">
+					统计
+				</view>
+				<view class="value">
+					<span style="margin-left: 3px;">总数:{{deviceInfoList.length}}</span>
+					<span style="margin-left: 3px;">收到数:{{receiveNum}}</span>
+					<span style="margin-left: 3px;">待维修:{{lossNum}}</span>
+				</view>
+			</view>
 
 		</view>
 		
@@ -172,7 +184,7 @@
 							是否维修
 						</view>
 						<view class="receive-radio">
-							<u-radio-group v-model="deviceReList[index].deviceStatus">
+							<u-radio-group v-model="item.deviceStatus">
 								<u-radio  v-for="(radio, index2) in radiolist2" :key="index2"
 									:name="radio.value"  >
 									<span >
@@ -324,6 +336,21 @@
 				'Authorization':token
 			}
 		},
+		computed:{
+			receiveNum(){
+				var list=this.deviceReList.filter(item=>{
+					return item.status==1
+				})
+				return list.length
+			},
+			lossNum(){
+				var list=this.deviceInfoList.filter(item=>{
+					return item.deviceStatus==1
+				})
+				return list.length
+			},
+			
+		},
 		methods:{
 			recordStatus,recordStatusColor,
 			ckInfo(item) {

+ 235 - 235
pages/storeManagement/equipmentInspection/equipmentInspection.vue

@@ -1,32 +1,32 @@
-<template>
-	<view>
-
-		<u-navbar title="设备检" class="head">
-
-			<view class="tabs" slot="bottom">
-				<u-tabs bar-width="80" inactive-color="#777777" active-color="#101010" :list="list" :is-scroll="false"
-					:current="current" @change="change"></u-tabs>
-				<!-- <view class="screen" @click="changeShow()">
-					筛选<u-icon size="24" name="arrow-down" color="#777777"></u-icon>
-				</view>
-				<view class="options" v-if="this.show==true" @click="changeShow()">
-					选项3
-				</view> -->
-			</view>
-		</u-navbar>
+<template>
+	<view>
+
+		<u-navbar title="设备检" class="head">
+
+			<view class="tabs" slot="bottom">
+				<u-tabs bar-width="80" inactive-color="#777777" active-color="#101010" :list="list" :is-scroll="false"
+					:current="current" @change="change"></u-tabs>
+				<!-- <view class="screen" @click="changeShow()">
+					筛选<u-icon size="24" name="arrow-down" color="#777777"></u-icon>
+				</view>
+				<view class="options" v-if="this.show==true" @click="changeShow()">
+					选项3
+				</view> -->
+			</view>
+		</u-navbar>
 		<view class="listHead">
 			
-	
-		<scroll-view scroll-y="true" @scrolltolower="onReachBottom()">
-
-			<view class="list1">
+	
+		<scroll-view scroll-y="true" @scrolltolower="onReachBottom()">
+
+			<view class="list1">
 				<view class="item" v-for="(item,i) in list[current].list" @click="ckInfo(item)" :key="i">
 					<template v-if="list[current].isold">
 						
 										
 						<view class="group">
 							<view class="name">
-								检日期:
+								检日期:
 							</view>
 							<view class="value">
 								{{item.createTime}}
@@ -34,7 +34,7 @@
 						</view>
 						<view class="group">
 							<view class="name">
-								检人:
+								检人:
 							</view>
 							<view class="value">
 								{{item.createByName}}
@@ -49,7 +49,7 @@
 										
 						<view class="group">
 							<view class="name">
-								上次检日期:
+								上次检日期:
 							</view>
 							<view class="value">
 								{{item.experimentLastTime}}
@@ -57,93 +57,93 @@
 						</view>
 						<view class="group">
 							<view class="name">
-								检周期:
+								检周期:
 							</view>
 							<view class="value">
 								{{item.experimentPeriod?item.experimentPeriod+'天':''}}
 							</view>
 						</view>
-					</template>
-					
-
+					</template>
+					
+
 				</view>
-				
-				<u-divider v-if="list[current].recordsTotal==list[current].list.length"
-					:isnone="list[current].recordsTotal==0" nonetext="没有找到相关内容" border-color="#CFD2D5">已经到底了</u-divider>
-
-			</view>
-
-
+				
+				<u-divider v-if="list[current].recordsTotal==list[current].list.length"
+					:isnone="list[current].recordsTotal==0" nonetext="没有找到相关内容" border-color="#CFD2D5">已经到底了</u-divider>
+
+			</view>
+
+
 		</scroll-view>
 			</view>
 		<view class="bottom">
-			<u-button type="primary"  @click="addInfo">仓储检</u-button>
-		</view>
-	</view>
-</template>
-
-<script>
-	import * as API from '@/apis/pagejs/storeManagement.js'
-
-	export default {
-		data() {
-			return {
-				list: [{
-						name: '待检',
-						pageIndex: 1,
-						pageSize: 20,
-						recordsTotal: 1,
+			<u-button type="primary"  @click="addInfo">仓储检</u-button>
+		</view>
+	</view>
+</template>
+
+<script>
+	import * as API from '@/apis/pagejs/storeManagement.js'
+
+	export default {
+		data() {
+			return {
+				list: [{
+						name: '待检',
+						pageIndex: 1,
+						pageSize: 20,
+						recordsTotal: 1,
 						healthStatus: "5",
 						iscount:true,
-						count:0,
-						list: []
-					}, {
-						name: '超期未完成',
-						pageIndex: 1,
-						pageSize: 20,
-						recordsTotal: 1,
+						count:0,
+						list: []
+					}, {
+						name: '超期未完成',
+						pageIndex: 1,
+						pageSize: 20,
+						recordsTotal: 1,
 						healthStatus: "6",
 						iscount:true,
-						count:0,
-						list: []
-					}, {
-						name: '检历史',
-						pageIndex: 1,
-						pageSize: 20,
-						recordsTotal: 1,
+						count:0,
+						list: []
+					}, {
+						name: '检历史',
+						pageIndex: 1,
+						pageSize: 20,
+						recordsTotal: 1,
 						healthStatus: "0",
 						iscount:false,
 						isold:true,
-						count:0,
-						list: []
-					},
+						count:0,
+						list: []
+					},
 					{
-						iscount:false,
-						name: '不合格设备',
-						pageIndex: 1,
+						iscount:false,
+						name: '不合格设备',
+						pageIndex: 1,
 						pageSize: 20,
-						count:0,
-						recordsTotal: 1,
-						healthStatus: "2",
-						list: []
-					}
-
-				],
-				current: 0,
-				show: false
-			}
-		},
-		onReachBottom() {
-
-			var obj = this.list[this.current]
-			if (obj.list.length < obj.recordsTotal) {
-				this.myLoadmore();
-			}
-		},
-		onReady() {
+						count:0,
+						recordsTotal: 1,
+						healthStatus: "2",
+						list: []
+					}
+
+				],
+				current: 0,
+				show: false
+			}
+		},
+		onReachBottom() {
+
+			var obj = this.list[this.current]
+			if (obj.list.length < obj.recordsTotal) {
+				this.myLoadmore();
+			}
+		},
+		onReady() {
 			this.getList()
-			this.getNum()
-		},
+			this.getNum()
+		},
 		methods: {
 			addInfo(){
 				var url = "./planDetail";
@@ -175,20 +175,20 @@
 						icon: "none"
 					})
 				})
-			},
-			getList() {
-
-				uni.showLoading({
-					title: "加载中",
-					mask: true,
+			},
+			getList() {
+
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
 				})
-				var isold= this.list[this.current].isold
-
-				var list = this.list[this.current].list
-				var obj = this.list[this.current]
-				var listForm = {
-					...obj
-				}
+				var isold= this.list[this.current].isold
+
+				var list = this.list[this.current].list
+				var obj = this.list[this.current]
+				var listForm = {
+					...obj
+				}
 				delete listForm.list
 				if(isold){
 					this.inspectionList(listForm)
@@ -219,9 +219,9 @@
 							icon: "none"
 						})
 					})
-				}
-				
-
+				}
+				
+
 			},
 			inspectionList(listForm){
 				var list = this.list[this.current].list
@@ -248,149 +248,149 @@
 							icon: "none"
 						})
 					})
-			},
-			myLoadmore() {
-				this.list[this.current].pageIndex += 1;
-				this.getList();
-			},
-			init() {
+			},
+			myLoadmore() {
+				this.list[this.current].pageIndex += 1;
+				this.getList();
+			},
+			init() {
 				this.current = 0
 				for(var i in this.list){
 					this.list[i].pageIndex = 1
 					this.list[i].list=[]
 				}
-				this.getNum()
-				this.getList()
-			},
+				this.getNum()
+				this.getList()
+			},
 			ckInfo(item) {
-				
+				
 				var url = "/pages/otherFunctions/equipmentRetrieval/equipmentInfo?id=" + item.id;
 				if(this.list[this.current].isold){
 					url="./inspectionRecord?id=" + item.id;
-				}
-				uni.navigateTo({
-					url: url,
-					// events: {
-					// 	refreshData: () => {
-					// 		this.init()
-					// 	}
-					// }
-				})
-			},
-			change(index) {
-				this.current = index;
-				var list = this.list[this.current].list
-				if (list.length == 0) {
-					this.getList();
-				}
-			},
-			changeShow() {
-				this.show = !this.show
-			}
-		}
-	}
-</script>
-
-<style lang="scss" scoped>
-	page {
-		padding-bottom: 100rpx;
-
-	}
+				}
+				uni.navigateTo({
+					url: url,
+					// events: {
+					// 	refreshData: () => {
+					// 		this.init()
+					// 	}
+					// }
+				})
+			},
+			change(index) {
+				this.current = index;
+				var list = this.list[this.current].list
+				if (list.length == 0) {
+					this.getList();
+				}
+			},
+			changeShow() {
+				this.show = !this.show
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	page {
+		padding-bottom: 100rpx;
+
+	}
 	.listHead{
 		padding-bottom:60px;
 		
-	}
-	.head {
-		background: linear-gradient(180deg, rgba(190, 211, 240, 1) 0%, rgba(244, 244, 246, 1) 100%) !important;
-
-		/deep/.u-navbar {
-			//background: 0!important;
-			background: linear-gradient(180deg, rgba(190, 211, 240, 1) 0%, rgba(244, 244, 246, 1) 100%) !important;
-			height: 210rpx;
-			//padding: 0 32rpx;
-		}
-
-		/deep/.u-border-bottom:after {
-			height: 0;
-		}
-
-		.tabs {
-			padding: 0 32rpx
-		}
-	}
-
-	.tabs {
-		//display: flex;
-		justify-content: space-between;
-		align-items: center;
-
-		/deep/.u-tabs {
-			background: 0 !important;
-			//width: 480rpx;
-		}
-
-		/deep/.u-tab-bar {
-			background-color: #2A8EFB !important;
-		}
-
-		.screen {
-			color: #415058;
-			position: relative;
-			font-family: Microsoft Yahei;
-
-			/deep/.uicon-arrow-down {
-				margin-left: 4rpx;
-			}
-		}
-
-		.options {
-			width: 120rpx;
-			height: 60rpx;
-			line-height: 60rpx;
-			text-align: center;
-			background-color: #fff;
-			color: rgba(65, 80, 88, 1);
-			font-family: Microsoft Yahei;
-			position: absolute;
-			top: 160rpx;
-			right: 24rpx;
-			box-shadow: 5px 5px 10px gray;
-		}
-
-	}
-
-
-	.list1,
-	.list2,
-	.list3 {
-		padding: 0 32rpx;
-		margin-top: 60px;
-		margin-bottom: 10px;
-
-		.item {
-			border-radius: 8px;
-			background-color: rgba(255, 255, 255, 1);
-			padding: 32rpx;
-			margin-bottom: 24rpx;
-
-			.title {
-				color: rgba(51, 51, 51, 1);
-				font-size: 36rpx;
+	}
+	.head {
+		background: linear-gradient(180deg, rgba(190, 211, 240, 1) 0%, rgba(244, 244, 246, 1) 100%) !important;
+
+		/deep/.u-navbar {
+			//background: 0!important;
+			background: linear-gradient(180deg, rgba(190, 211, 240, 1) 0%, rgba(244, 244, 246, 1) 100%) !important;
+			height: 210rpx;
+			//padding: 0 32rpx;
+		}
+
+		/deep/.u-border-bottom:after {
+			height: 0;
+		}
+
+		.tabs {
+			padding: 0 32rpx
+		}
+	}
+
+	.tabs {
+		//display: flex;
+		justify-content: space-between;
+		align-items: center;
+
+		/deep/.u-tabs {
+			background: 0 !important;
+			//width: 480rpx;
+		}
+
+		/deep/.u-tab-bar {
+			background-color: #2A8EFB !important;
+		}
+
+		.screen {
+			color: #415058;
+			position: relative;
+			font-family: Microsoft Yahei;
+
+			/deep/.uicon-arrow-down {
+				margin-left: 4rpx;
+			}
+		}
+
+		.options {
+			width: 120rpx;
+			height: 60rpx;
+			line-height: 60rpx;
+			text-align: center;
+			background-color: #fff;
+			color: rgba(65, 80, 88, 1);
+			font-family: Microsoft Yahei;
+			position: absolute;
+			top: 160rpx;
+			right: 24rpx;
+			box-shadow: 5px 5px 10px gray;
+		}
+
+	}
+
+
+	.list1,
+	.list2,
+	.list3 {
+		padding: 0 32rpx;
+		margin-top: 60px;
+		margin-bottom: 10px;
+
+		.item {
+			border-radius: 8px;
+			background-color: rgba(255, 255, 255, 1);
+			padding: 32rpx;
+			margin-bottom: 24rpx;
+
+			.title {
+				color: rgba(51, 51, 51, 1);
+				font-size: 36rpx;
 				margin-bottom: 16rpx;
 				.titlespan{
 					font-size: 36rpx;
 					float: right;
-				}
-			}
-
-			.group {
-				display: flex;
-				color: rgba(119, 119, 119, 1);
-				margin-top: 16rpx;
-				font-weight: bold;
-			}
-		}
-
+				}
+			}
+
+			.group {
+				display: flex;
+				color: rgba(119, 119, 119, 1);
+				margin-top: 16rpx;
+				font-weight: bold;
+			}
+		}
+
 	}
 	.bottom {
 		position: fixed;
@@ -409,5 +409,5 @@
 			font-size: 32rpx;
 			font-family: Microsoft Yahei;
 		}
-	}
+	}
 </style>

+ 3 - 3
pages/storeManagement/equipmentInspection/inspectionRecord.vue

@@ -1,6 +1,6 @@
 <template>
 	<view>
-		<u-navbar title="检记录"></u-navbar>
+		<u-navbar title="检记录"></u-navbar>
 		
 		<view class="container">
 			<view class="main">
@@ -44,10 +44,10 @@
 						</view>
 
 					</view>
-                <!-- 检结果 -->
+                <!-- 检结果 -->
 					<view class="result">
 						<view class="title">
-							检结果
+							检结果
 						</view>
 						<view :class="item.status==1?'value':'value2'">
 							{{item.status==1?'合格':'不合格'}}

+ 483 - 482
pages/storeManagement/equipmentInspection/planDetail.vue

@@ -1,21 +1,21 @@
-<template>
-	<view>
-		<u-navbar title="计划详情">
+<template>
+	<view>
+		<u-navbar title="计划详情">
 			<view class="details" slot="bottom">
 				<view class="list">
 					<view class="list-head">
 						<view class="title">
-							检时间{{queryDate}}
+							检时间{{queryDate}}
 						</view>
 						<view class="amount"  @click="gotoscan('')">
 							<u-icon name="scan" color="#0051ff" ></u-icon>扫码识别
 						</view>
 					</view>
 				</view>
-			</view>
+			</view>
 		</u-navbar>
 		
-		
+		
 		<u-popup  v-model="showpopup" class="scanpopo"  mode="bottom"
 		border-radius="14"
 		:closeable="true" >
@@ -29,10 +29,11 @@
 						
 							<view class="name">
 								编号:{{nowscan.code}}
+										<span class="name"  v-show="nowscan&&nowscan.id" style="color:blue;">
+											点击查看
+										</span>
 							</view>
-									<view class="name" :style="nowscan.id?'color:blue;':'color:#fff;'">
-										点击查看
-									</view>
+									
 						</view>
 						<view class="scan-infos-head " style="margin-bottom: 12rpx;">
 							<view class="name" v-html="descriptionKey(nowscan)">
@@ -42,7 +43,7 @@
 						</view>
 						<view class="scan-infos">
 							
-							<view class="infos-2">
+							<!-- <view class="infos-2">
 								<view class="infos-item">
 									<view class="item-name">
 										规格:
@@ -59,7 +60,7 @@
 										{{nowscan.model}}
 									</view>
 								</view>
-							</view>
+							</view> -->
 						
 						</view>
 						</view>
@@ -71,159 +72,159 @@
 					 style="width: 100%; height: 300px;"></camera>
 					<!--  #endif -->
 				</u-popup>
-		
+		
 		<view class="container">
-			
-			<view class="main">
-				<view class="list-item" v-for="(item,index) in scanList" :key="index">
-					<!--信息 -->
-					<view class="list-infos">
-						<view class="infos-head">
-							<view class="name">
-								{{item.title}}
+			
+			<view class="main">
+				<view class="list-item" v-for="(item,index) in scanList" :key="index">
+					<!--信息 -->
+					<view class="list-infos">
+						<view class="infos-head">
+							<view class="name">
+								{{item.title}}
 							</view>
 							<view class="qr-code" style="color:red;" @click="delOutListMethod(index)">
 								删除
-							</view>
-							
-						</view>
-						<view class="infos">
-							<view class="infos-1">
-								<view class="infos-item">
-									<view class="item-name">
-										型号:
-									</view>
-									<view class="item-value">
-										{{item.model}}
-									</view>
-								</view>
-
-							</view>
-							<view class="infos-2">
-								<view class="infos-item">
-									<view class="item-name">
-										设备编号:
-									</view>
-									<view class="item-value">
-										{{item.code}}
-									</view>
-								</view>
-
-							</view>
-
-						</view>
-
-					</view>
-					<view class="receive-options">
-						<view class="title">
-							检结果
-						</view>
-						<view class="receive-radio">
-							<u-radio-group v-model="item.reStatus" @change="radioGroupChange">
+							</view>
+							
+						</view>
+						<view class="infos">
+							<view class="infos-1">
+								<view class="infos-item">
+									<view class="item-name">
+										型号:
+									</view>
+									<view class="item-value">
+										{{item.model}}
+									</view>
+								</view>
+
+							</view>
+							<view class="infos-2">
+								<view class="infos-item">
+									<view class="item-name">
+										设备编号:
+									</view>
+									<view class="item-value">
+										{{item.code}}
+									</view>
+								</view>
+
+							</view>
+
+						</view>
+
+					</view>
+					<view class="receive-options">
+						<view class="title">
+							检结果
+						</view>
+						<view class="receive-radio">
+							<u-radio-group v-model="item.reStatus" @change="radioGroupChange">
 								
 								<u-radio @change="radioChange" v-for="(radio, index2) in radiolist" :key="index2"
 									:name="radio.value" :disabled="radio.disabled">
 									{{radio.name}}
-								</u-radio>
-							</u-radio-group>
-						</view>
-					</view>
-					<!-- 备注 -->
-					<textarea placeholder="备注" class="uni-textarea"  v-model="item.reRemark" name="" id="" cols="30" rows="10"></textarea>
-
-					<!-- 上传图片 -->
-					<view class="upload-img">
+								</u-radio>
+							</u-radio-group>
+						</view>
+					</view>
+					<!-- 备注 -->
+					<textarea placeholder="备注" class="uni-textarea"  v-model="item.reRemark" name="" id="" cols="30" rows="10"></textarea>
+
+					<!-- 上传图片 -->
+					<view class="upload-img">
 						<ujp-upload width="144" height="144" :ref="'uUpload'+index"
 						 :key="index"
 						 name="photoFile" :multiple="false"
 						 :form-data="formData" :header="header" :action="action"
-						 max-count="4"  upload-text=" " del-bg-color="#0051FF"  ></ujp-upload>
-					</view>
-				</view>
-
-
+						 max-count="4"  upload-text=" " del-bg-color="#0051FF"  ></ujp-upload>
+					</view>
+				</view>
+
+
 			</view>
 			<u-divider :isnone="scanList.length==0" 
 			
 			nonetext="点击'扫码'进行巡查" border-color="#CFD2D5">已经到底了</u-divider>
-			
-		</view>
-
-		<view class="bottom">
-
-			<u-button type="primary" @click="gotoOut()">巡查完成</u-button>
-
-		</view>
-	</view>
-</template>
-
-<script>
+			
+		</view>
+
+		<view class="bottom">
+
+			<u-button type="primary" @click="gotoOut()">巡查完成</u-button>
+
+		</view>
+	</view>
+</template>
+
+<script>
 	import * as API from '@/apis/pagejs/storeManagement.js'
 	import ujpUpload from "@/pages/storeManagement/components/u-upload.vue"
-	
-	import {
-		parseUnixTime
-	} from '@/apis/utils'
+	
+	import {
+		parseUnixTime
+	} from '@/apis/utils'
 	export default {
 		components:{
 			ujpUpload
-		},
-		data() {
-			return {
-				queryDate: "",
-				nowscan: {
-					"title": "",
-					"specifications": "",
-					"experimentLastTime":"",
-					"manufactor": "",
-					"unit": "",
-					"model": "",
-					"code": "",
-
-				},
-				scanList: [],
-				scanFunctionIsUseable: true,
-				showpopup: false,
-				action: "",
-				formData: {
-					subFolder: "equipmentEnter"
-				},
-				header: {
-
-				},
-				radiolist: [{
-						name: '合格',
-						value: "1",
-						disabled: false
-					},
-					{
-						name: '不合格',
-						value: "2",
-						disabled: false
-					},
-
-				],
-				// u-radio-group的v-model绑定的值如果设置为某个radio的name,就会被默认选中
-				value: '合格',
-				show: false
-			};
-		},
-		onLoad(op) {
-			// this.id=op.id
-			// this.getInfo()
-			this.queryDate = parseUnixTime(new Date(), "{y}-{m}-{d}")
-
-			this.action = process.car.BASE_URL + "uploadPicture"
-
-			this.formData.subFolder = "planDetail"
-			//接口应该免登陆
-			var token = this.carhelp.getToken()
-
-			this.header = {
-
-				'Authorization': token
-			}
-		},
+		},
+		data() {
+			return {
+				queryDate: "",
+				nowscan: {
+					"title": "",
+					"specifications": "",
+					"experimentLastTime":"",
+					"manufactor": "",
+					"unit": "",
+					"model": "",
+					"code": "",
+
+				},
+				scanList: [],
+				scanFunctionIsUseable: true,
+				showpopup: false,
+				action: "",
+				formData: {
+					subFolder: "equipmentEnter"
+				},
+				header: {
+
+				},
+				radiolist: [{
+						name: '合格',
+						value: "1",
+						disabled: false
+					},
+					{
+						name: '不合格',
+						value: "2",
+						disabled: false
+					},
+
+				],
+				// u-radio-group的v-model绑定的值如果设置为某个radio的name,就会被默认选中
+				value: '合格',
+				show: false
+			};
+		},
+		onLoad(op) {
+			// this.id=op.id
+			// this.getInfo()
+			this.queryDate = parseUnixTime(new Date(), "{y}-{m}-{d}")
+
+			this.action = process.car.BASE_URL + "uploadPicture"
+
+			this.formData.subFolder = "planDetail"
+			//接口应该免登陆
+			var token = this.carhelp.getToken()
+
+			this.header = {
+
+				'Authorization': token
+			}
+		},
 		methods: {
 			error(e) {
 			           console.log(e);
@@ -238,11 +239,11 @@
 					})
 				}
 			},
-			
+			
 			gotoOut() {
 				if(this.scanList.length==0){
 					uni.showToast({
-						title: "请扫码检设备",
+						title: "请扫码检设备",
 						icon: "none"
 					})
 					return
@@ -281,7 +282,7 @@
 				if(!bl){
 					return;
 				}
-				
+				
 				var returnObj=this.scanList.map(item=>{
 					return {
 						deviceId:item.id,
@@ -300,7 +301,7 @@
 				this.submitInfo({
 					recordData:JSON.stringify(json)
 				})
-				
+				
 			},submitInfo(obj){
 				uni.showLoading({
 					title: "加载中",
@@ -317,190 +318,190 @@
 						icon: "none"
 					})
 				})
-			},
-			// 选中某个单选框时,由radio时触发
-			radioChange(e) {
-				// console.log(e);
-			},
-			// 选中任一radio时,由radio-group触发
-			radioGroupChange(e) {
-				// console.log(e);
-			},
-			beforeUpload(index, list) {
-				// 只上传偶数索引的文件
-				if (index % 2 == 0) return true;
-				else return false;
-			},
-			changeShow() {
-				this.show = !this.show
-			},
-			gotoscan(val) {
-				// if(this.deviceposition=='back'){
-				// 	this.deviceposition="front"
-				// }else{
-				// 	this.deviceposition="back"
-				// }
-
-				// #ifdef H5
-				this.gotoscanH5(val)
-				// #endif
-
-				// #ifdef MP-WEIXIN
-
-				this.gotoscanMP(val)
-				// #endif
-
-			},
-			takeCode(e) {
-				console.log(e);
-				if (this.scanFunctionIsUseable) {
-					this.scanFunctionIsUseable = false;
-					// 对扫码结果进行处理
-					console.log(e.detail.result);
+			},
+			// 选中某个单选框时,由radio时触发
+			radioChange(e) {
+				// console.log(e);
+			},
+			// 选中任一radio时,由radio-group触发
+			radioGroupChange(e) {
+				// console.log(e);
+			},
+			beforeUpload(index, list) {
+				// 只上传偶数索引的文件
+				if (index % 2 == 0) return true;
+				else return false;
+			},
+			changeShow() {
+				this.show = !this.show
+			},
+			gotoscan(val) {
+				// if(this.deviceposition=='back'){
+				// 	this.deviceposition="front"
+				// }else{
+				// 	this.deviceposition="back"
+				// }
+
+				// #ifdef H5
+				this.gotoscanH5(val)
+				// #endif
+
+				// #ifdef MP-WEIXIN
+
+				this.gotoscanMP(val)
+				// #endif
+
+			},
+			takeCode(e) {
+				console.log(e);
+				if (this.scanFunctionIsUseable) {
+					this.scanFunctionIsUseable = false;
+					// 对扫码结果进行处理
+					console.log(e.detail.result);
 					
 					this.getscan(this.takeCodeJp(e.detail.result))
-					
-					// 扫码间隔两秒
-					setTimeout(() => {
-						this.scanFunctionIsUseable = true;
-
-					}, 1000)
-				}
-
-			},
-			gotoscanMP(val) {
-				this.showpopup = true;
-				// const ctx = uni.createCameraContext();
-				//            ctx.takePhoto({
-				//                quality: 'high',
-				//                success: (res) => {
-				//                    this.src = res.tempImagePath
-				//                }
-				//            });
-			},
-			gotoscanH5(val) {
-				console.log('111')
-
-				var _this = this;
-				uni.showModal({
-					title: '提示',
-					editable: true,
-					//content: '这是一个模态弹窗',
-					success: function(res) {
-						if (res.confirm) {
-							_this.getscan(res.content)
-						} else if (res.cancel) {
-							console.log('用户点击取消');
-						}
-					}
-				});
-
-
-			},
-			getscan(val) {
+					
+					// 扫码间隔两秒
+					setTimeout(() => {
+						this.scanFunctionIsUseable = true;
+
+					}, 1000)
+				}
+
+			},
+			gotoscanMP(val) {
+				this.showpopup = true;
+				// const ctx = uni.createCameraContext();
+				//            ctx.takePhoto({
+				//                quality: 'high',
+				//                success: (res) => {
+				//                    this.src = res.tempImagePath
+				//                }
+				//            });
+			},
+			gotoscanH5(val) {
+				console.log('111')
+
+				var _this = this;
+				uni.showModal({
+					title: '提示',
+					editable: true,
+					//content: '这是一个模态弹窗',
+					success: function(res) {
+						if (res.confirm) {
+							_this.getscan(res.content)
+						} else if (res.cancel) {
+							console.log('用户点击取消');
+						}
+					}
+				});
+
+
+			},
+			getscan(val) {
 				this.showpopup = true;
-				
+				
 				var c = this.scanList.find(item => {
 					return item.code == val
 				})
 				if (c) {
 					
 					return
-				}
-
-
-				uni.showLoading({
-					title: "加载中",
-					mask: true,
-				})
-				API.queryDeviceByCode({
-					code: val,
-				}).then((res) => {
-					uni.hideLoading();
-					if (res.data.deviceInfo) {
-						console.log(res.data.deviceInfo)
-						this.nowscan = res.data.deviceInfo;
-						var info = res.data.deviceInfo;
+				}
+
+
+				uni.showLoading({
+					title: "加载中",
+					mask: true,
+				})
+				API.queryDeviceByCode({
+					code: val,
+				}).then((res) => {
+					uni.hideLoading();
+					if (res.data.deviceInfo) {
+						console.log(res.data.deviceInfo)
+						this.nowscan = res.data.deviceInfo;
+						var info = res.data.deviceInfo;
 						info.reStatus="1"
 						info.reRemark=""
-						
-						uni.showToast({
-							title: "扫码成功",
-							icon: "none"
-						})
-						 this.scanList.push(info)
-
-
-
-					} else {
-						uni.showToast({
-							title: "二维码无效",
-							icon: "none"
+						
+						uni.showToast({
+							title: "扫码成功",
+							icon: "none"
 						})
-						this.nowscan={}
-					}
-
-				}).catch(error => {
-					uni.showToast({
-						title: error,
-						icon: "none"
-					})
-				})
-			},
-
-
-		},
-
-	};
-</script>
-
-<style scoped lang="scss">
-	.head {
-		background-color: #fff;
-		padding: 32rpx;
-
-		.title {
-			color: rgba(51, 51, 51, 1);
-			font-size: 36rpx;
-			margin-bottom: 16rpx;
-		}
-
-		.item {
-			display: flex;
-			color: #777777;
-			margin-top: 16rpx;
-
-			.name,
-			.value {
-				font-weight: bold;
-			}
-
-			.unfold {
-				margin-left: auto;
-				position: relative;
-				color: red;
-				font-family: Microsoft Yahei;
-
-				/deep/.uicon-arrow-down {
-					margin-left: 8rpx;
-				}
-			}
-
-			.options {
-				width: 120rpx;
-				height: 60rpx;
-				line-height: 60rpx;
-				text-align: center;
-				background-color: #fff;
-				color: rgba(65, 80, 88, 1);
-				font-family: Microsoft Yahei;
-				position: absolute;
-				top: 320rpx;
-				right: 24rpx;
-				box-shadow: 5px 5px 10px gray;
-			}
-		}
-	}
+						 this.scanList.push(info)
+
+
+
+					} else {
+						uni.showToast({
+							title: "二维码无效",
+							icon: "none"
+						})
+						this.nowscan={}
+					}
+
+				}).catch(error => {
+					uni.showToast({
+						title: error,
+						icon: "none"
+					})
+				})
+			},
+
+
+		},
+
+	};
+</script>
+
+<style scoped lang="scss">
+	.head {
+		background-color: #fff;
+		padding: 32rpx;
+
+		.title {
+			color: rgba(51, 51, 51, 1);
+			font-size: 36rpx;
+			margin-bottom: 16rpx;
+		}
+
+		.item {
+			display: flex;
+			color: #777777;
+			margin-top: 16rpx;
+
+			.name,
+			.value {
+				font-weight: bold;
+			}
+
+			.unfold {
+				margin-left: auto;
+				position: relative;
+				color: red;
+				font-family: Microsoft Yahei;
+
+				/deep/.uicon-arrow-down {
+					margin-left: 8rpx;
+				}
+			}
+
+			.options {
+				width: 120rpx;
+				height: 60rpx;
+				line-height: 60rpx;
+				text-align: center;
+				background-color: #fff;
+				color: rgba(65, 80, 88, 1);
+				font-family: Microsoft Yahei;
+				position: absolute;
+				top: 320rpx;
+				right: 24rpx;
+				box-shadow: 5px 5px 10px gray;
+			}
+		}
+	}
 	.scantitle{
 		text-align: center;
 		font-size: 44rpx;
@@ -613,168 +614,168 @@
 				margin-bottom: 8rpx;
 			}
 		}
-	}
+	}
 	.container {
-		
-		margin-top: 80px;
-		padding-bottom: 60px;
-		.main {
-			padding: 0 24rpx;
-
-			.list-item {
-				border-radius: 8px;
-				padding: 24rpx;
-				background-color: #fff;
-				margin-top: 24rpx;
-			}
-
-			// 信息
-			.list-infos {
-				padding-bottom: 24rpx;
-				border-bottom: 1px solid rgba(232, 232, 232, 1);
-
-				.infos-head {
-					display: flex;
-					justify-content: space-between;
-					align-items: center;
-					margin-bottom: 24rpx;
-
-					.name {
-						color: rgba(51, 51, 51, 1);
-						font-size: 32rpx;
-					}
-
-					.state {
-						border: 1px solid rgba(69, 186, 69, 1);
-						border-radius: 4px;
-						color: rgba(69, 186, 69, 1);
-						font-size: 24rpx;
-						line-height: 48rpx;
-						width: 160rpx;
-						text-align: center;
-
-						text {
-							img {
-								vertical-align: middle;
-								margin-right: 4rpx;
-							}
-						}
-					}
-
-
-				}
-
-				.infos {
-					margin-top: 16rpx;
-					display: flex;
-					justify-content: space-between;
-					color: #777777;
-					font-size: 24rpx;
-
-
-
-					.infos-item {
-						display: flex;
-						margin-bottom: 8rpx;
-
-						.item-value {
-							width: 200rpx;
-							overflow: hidden;
-							white-space: nowrap;
-							text-overflow: ellipsis;
-						}
-					}
-				}
-			}
-
-			// 接收选项
-			.receive-options {
-				display: flex;
-				align-items: center;
-				padding: 24rpx 0;
-
-				.title {
-					color: #333333;
-					margin-right: 24rpx;
-					font-weight: bold;
-				}
-
-				.receive-radio {
-					flex: 1;
-
-					/deep/.u-radio-group {
-						width: 100%;
-
-					}
-
-					/deep/.u-radio {
-						margin-right: 48rpx;
-					}
-				}
-
-			}
-
-			// 备注
-			.uni-textarea {
-				width: 100%;
-				height: 80rpx;
-				line-height: 80rpx;
-				text-indent: 24rpx;
-				background-color: rgba(241, 242, 245, 1);
-				color: rgba(136, 136, 136, 1);
-				border-radius: 8px;
-				font-family: Microsoft Yahei;
-				font-size: 28rpx;
-			}
-
-			// 上传图片
-			.upload-img {
-				margin-top: 24rpx;
-
-				/deep/.u-add-tips {
-					margin-top: 0;
-				}
-
-				// 右上角删除图标
-				/deep/.u-delete-icon {
-					top: -8rpx;
-					right: -8rpx;
-					width: 36rpx;
-					height: 36rpx;
-				}
-
-				/deep/.u-list-item {
-					overflow: inherit;
-				}
-
-				/deep/.u-list-item {
-					margin-right: 8rpx;
-				}
-			}
-
-		}
-
-
-
-	}
-
-	.bottom {
-		background-color: #fff;
-		margin-top: 44rpx;
-		padding: 16rpx 32rpx;
-		z-index: 999;
-		position: fixed;
-		left: 0;
-		right: 0;
-		bottom: 0;
-
-		uni-button {
-			border-radius: 8px;
-			background: linear-gradient(180deg, rgba(22, 119, 255, 1) 0%, rgba(16, 98, 213, 1) 100%);
-			color: rgba(255, 255, 255, 1);
-			font-size: 32rpx;
-			line-height: 88rpx;
-
-		}
-	}
+		
+		margin-top: 80px;
+		padding-bottom: 60px;
+		.main {
+			padding: 0 24rpx;
+
+			.list-item {
+				border-radius: 8px;
+				padding: 24rpx;
+				background-color: #fff;
+				margin-top: 24rpx;
+			}
+
+			// 信息
+			.list-infos {
+				padding-bottom: 24rpx;
+				border-bottom: 1px solid rgba(232, 232, 232, 1);
+
+				.infos-head {
+					display: flex;
+					justify-content: space-between;
+					align-items: center;
+					margin-bottom: 24rpx;
+
+					.name {
+						color: rgba(51, 51, 51, 1);
+						font-size: 32rpx;
+					}
+
+					.state {
+						border: 1px solid rgba(69, 186, 69, 1);
+						border-radius: 4px;
+						color: rgba(69, 186, 69, 1);
+						font-size: 24rpx;
+						line-height: 48rpx;
+						width: 160rpx;
+						text-align: center;
+
+						text {
+							img {
+								vertical-align: middle;
+								margin-right: 4rpx;
+							}
+						}
+					}
+
+
+				}
+
+				.infos {
+					margin-top: 16rpx;
+					display: flex;
+					justify-content: space-between;
+					color: #777777;
+					font-size: 24rpx;
+
+
+
+					.infos-item {
+						display: flex;
+						margin-bottom: 8rpx;
+
+						.item-value {
+							width: 200rpx;
+							overflow: hidden;
+							white-space: nowrap;
+							text-overflow: ellipsis;
+						}
+					}
+				}
+			}
+
+			// 接收选项
+			.receive-options {
+				display: flex;
+				align-items: center;
+				padding: 24rpx 0;
+
+				.title {
+					color: #333333;
+					margin-right: 24rpx;
+					font-weight: bold;
+				}
+
+				.receive-radio {
+					flex: 1;
+
+					/deep/.u-radio-group {
+						width: 100%;
+
+					}
+
+					/deep/.u-radio {
+						margin-right: 48rpx;
+					}
+				}
+
+			}
+
+			// 备注
+			.uni-textarea {
+				width: 100%;
+				height: 80rpx;
+				line-height: 80rpx;
+				text-indent: 24rpx;
+				background-color: rgba(241, 242, 245, 1);
+				color: rgba(136, 136, 136, 1);
+				border-radius: 8px;
+				font-family: Microsoft Yahei;
+				font-size: 28rpx;
+			}
+
+			// 上传图片
+			.upload-img {
+				margin-top: 24rpx;
+
+				/deep/.u-add-tips {
+					margin-top: 0;
+				}
+
+				// 右上角删除图标
+				/deep/.u-delete-icon {
+					top: -8rpx;
+					right: -8rpx;
+					width: 36rpx;
+					height: 36rpx;
+				}
+
+				/deep/.u-list-item {
+					overflow: inherit;
+				}
+
+				/deep/.u-list-item {
+					margin-right: 8rpx;
+				}
+			}
+
+		}
+
+
+
+	}
+
+	.bottom {
+		background-color: #fff;
+		margin-top: 44rpx;
+		padding: 16rpx 32rpx;
+		z-index: 999;
+		position: fixed;
+		left: 0;
+		right: 0;
+		bottom: 0;
+
+		uni-button {
+			border-radius: 8px;
+			background: linear-gradient(180deg, rgba(22, 119, 255, 1) 0%, rgba(16, 98, 213, 1) 100%);
+			color: rgba(255, 255, 255, 1);
+			font-size: 32rpx;
+			line-height: 88rpx;
+
+		}
+	}
 </style>