Procházet zdrojové kódy

优化如果检验任务为空时,页面操作逻辑和数据显示

ZhangLeo před 3 měsíci
rodič
revize
88a1d5229f

+ 28 - 7
pages/work/download/DownloadDetail.uvue

@@ -19,26 +19,26 @@
 				<uni-tr>
 					<uni-td class="grid-text">{{item.gxno}}</uni-td>
 				</uni-tr>
-				<uni-tr class="section-title" @click="enterItem(item.pdid, 0)">
+				<uni-tr class="section-title" @click="enterItem(item.pdid, 0, item)">
 					<uni-td class="grid-text">拍照点</uni-td>
 					<uni-td class="grid-text">
 						<text :class="{
 							'bg-green bg-text': item.photoStatus == '已完成',
 							'bg-yellow bg-text': item.photoCount > 0 && item.photoCount < item.photoTotal,
-							'bg-black bg-text': item.photoCount == 0,
+							'bg-black bg-text': item.photoCount == 0 && item.photoTotal > 0,
 						  }">
 							{{item.photoCount}} / {{item.photoTotal}}
 						</text>
 					</uni-td>
 					<uni-td class="grid-text">{{item.photoStatus}}</uni-td>
 				</uni-tr>
-				<uni-tr class="section-title" @click="enterItem(item.pdid, 1)">
+				<uni-tr class="section-title" @click="enterItem(item.pdid, 1, item)">
 					<uni-td class="grid-text">检验记录</uni-td>
 					<uni-td class="grid-text">
 						<text :class="{
 							'bg-green bg-text': item.recordCount == item.recordTotal,
 							'bg-yellow bg-text': item.recordCount > 0 && item.recordCount < item.recordTotal,
-							'bg-black bg-text': item.recordCount == 0,
+							'bg-black bg-text': item.recordCount == 0 && item.recordTotal > 0,
 						  }">
 							{{item.recordCount}} / {{item.recordTotal}}
 						</text>
@@ -47,13 +47,13 @@
 						'ft-red':item.recordStatus == '不合格'
 					}">{{item.recordStatus}}</text></uni-td>
 				</uni-tr>
-				<uni-tr class="section-title" @click="enterItem(item.pdid, 2)">
+				<uni-tr class="section-title" @click="enterItem(item.pdid, 2, item)">
 					<uni-td class="grid-text">关键工序记录</uni-td>
 					<uni-td class="grid-text">
 						<text :class="{
 							'bg-green bg-text': item.keyCount == item.keyTotal,
 							'bg-yellow bg-text': item.keyCount > 0 && item.keyCount < item.keyTotal,
-							'bg-black bg-text': item.keyCount == 0,
+							'bg-black bg-text': item.keyCount == 0 && item.keyTotal > 0,
 						  }">
 							{{item.keyCount}} / {{item.keyTotal}}
 						</text>
@@ -162,13 +162,34 @@
 		uni.navigateBack()
 	}
 
-	const enterItem = (id : string, type : number) => {
+	const enterItem = (id : string, type : number, item : TaskDetail) => {
 		let url = ''
 		if (type == 0) {
+			if(item.photoTotal == 0) {
+			    uni.showToast({
+			      title: '暂无数据',
+			      icon: 'error'
+			    });
+				return
+			}
 			url = `/pages/work/download/PhotoRecord?pdid=${id}`
 		} else if (type == 1) {
+			if(item.recordTotal == 0) {
+				uni.showToast({
+				  title: '暂无数据',
+				  icon: 'error'
+				});
+				return
+			}
 			url = `/pages/work/report/InspectionList?pdid=${id}`
 		} else if (type == 2) {
+			if(item.keyTotal == 0) {
+				uni.showToast({
+				  title: '暂无数据',
+				  icon: 'error'
+				});
+				return
+			}
 			url = `/pages/work/process/ProcessList?pdid=${id}`
 		}
 		uni.navigateTo({

+ 0 - 4
utils/auth.uts

@@ -46,10 +46,6 @@ export function setCurrentUserNameSync(username : string) : void {
 
 export function getTokenFromApi() : Promise<string> {
 	console.log(`${globalConfig.host}${globalConfig.tokenURL}${getCurrentUserNameSync()}`)
-
-	uni.showLoading({
-		title: `${globalConfig.host}${globalConfig.tokenURL}${getCurrentUserNameSync()}`
-	})
 	return new Promise<string>((resolve) => {
 		uni.request({
 			url: `${globalConfig.host}${globalConfig.tokenURL}${getCurrentUserNameSync()}`,

+ 9 - 7
utils/qcDataProcessor.uts

@@ -356,15 +356,17 @@ export const downloadDataFromAPI = async (gxpk : string, callback ?: () => void)
 							}
 
 							//保存检验记录
-							let recordObj = taskInfo?.['qcrecord'] as UTSJSONObject ?? {} as UTSJSONObject;
+							let recordObj = taskInfo?.['qcrecord'] as (UTSJSONObject | null);
+							console.log('------------------------------>');
+							console.log(recordObj);
 							if (recordObj != null) {
 								recordObj['pdid'] = lastId;
-								const resSave = await saveTaskRecord(recordObj);
-								const recordIdStr = resSave?.['lastId'] as string | null;
-								const recordId = recordIdStr != null ? parseInt(recordIdStr) : null;
-								if (recordId != null) {
-									let recordItemList = recordObj?.['items'] as UTSJSONObject[] ?? Array<UTSJSONObject>();
-									if (recordItemList != null && recordItemList.length > 0) {
+								let recordItemList = recordObj?.['items'] as UTSJSONObject[] ?? Array<UTSJSONObject>();
+								if (recordItemList != null && recordItemList.length > 0) {
+									const resSave = await saveTaskRecord(recordObj);
+									const recordIdStr = resSave?.['lastId'] as string | null;
+									const recordId = recordIdStr != null ? parseInt(recordIdStr) : null;
+									if (recordId != null) {
 										recordItemList.forEach(item => {
 											item['psxid'] = recordId;
 											console.log(item);

+ 12 - 12
utils/sqlite.uts

@@ -594,9 +594,9 @@ export function selectLatestInfoData (
  
  	var sql = `SELECT
 					m.*,
-					CASE WHEN p.photoCount = p.photoTotal THEN 1 ELSE 0 END as photoStatus,
-					CASE WHEN k.keyCount = k.keyTotal THEN 1 ELSE 0 END as keyStatus,
-					CASE WHEN i.recordCount = i.recordTotal THEN 1 ELSE 0 END as recordStatus
+					CASE WHEN COALESCE(p.photoCount,0) = COALESCE(p.photoTotal,0) THEN 1 ELSE 0 END as photoStatus,
+					CASE WHEN COALESCE(k.keyCount,0) = COALESCE(k.keyTotal,0) THEN 1 ELSE 0 END as keyStatus,
+					CASE WHEN COALESCE(i.recordCount,0) = COALESCE(i.recordTotal,0) THEN 1 ELSE 0 END as recordStatus
 				FROM
 				  app_task_info m
 				  LEFT JOIN (
@@ -740,19 +740,19 @@ export function selectLatestInfoData (
     var sql = `SELECT
 	                m.pdid,
 					m.gxno,
-					p.photoTotal,
-					p.photoCount,
-					CASE WHEN p.photoCount = p.photoTotal THEN '已完成' ELSE '' END as photoStatus,
-					k.keyTotal,
-					k.keyCount,
+					COALESCE(p.photoTotal, 0 ) as photoTotal,
+					COALESCE(p.photoCount, 0 ) as photoCount,
+					CASE WHEN COALESCE(p.photoTotal, 0 ) = COALESCE(p.photoCount, 0 ) THEN '已完成' ELSE '' END as photoStatus,
+					COALESCE(k.keyTotal, 0 ) as keyTotal,
+					COALESCE(k.keyCount, 0 ) as keyCount,
 					CASE 
 					WHEN k.errorCount > 0 then '不合格'
-					WHEN k.keyCount = k.keyTotal THEN '已完成' ELSE '' END as keyStatus,
-					i.recordTotal,
-					i.recordCount,
+					WHEN COALESCE(k.keyTotal, 0 ) = COALESCE(k.keyCount, 0 ) THEN '已完成' ELSE '' END as keyStatus,
+					COALESCE(i.recordTotal, 0) as recordTotal,
+					COALESCE(i.recordCount, 0) as recordCount,
 					CASE 
 					WHEN i.errorCount > 0 then '不合格'
-					WHEN i.recordCount = i.recordTotal THEN '已完成' ELSE '' END as recordStatus
+					WHEN COALESCE(i.recordTotal, 0) = COALESCE(i.recordCount, 0) THEN '已完成' ELSE '' END as recordStatus
 					 
 				FROM
 				  app_task_info m