提交 f687a284 authored 作者: caodi\cd's avatar caodi\cd

fix:提交备份

上级 9d540224
...@@ -46,13 +46,13 @@ ...@@ -46,13 +46,13 @@
<view class="form-item"> <view class="form-item">
<text class="form-label"><text class="required">*</text>巡检结论:</text> <text class="form-label"><text class="required">*</text>巡检结论:</text>
<view class="switch-container"> <view class="switch-container">
<switch :checked="sliderValue === 1" @change="onSwitchChange" class="switch" color="#007AFF" /> <switch :checked="inspectionResult === 1" @change="onSwitchChange" class="switch" color="#007AFF" />
<text class="switch-text">{{ sliderValue === 0 ? '正常' : '异常' }}</text> <text class="switch-text">{{ inspectionResult === 0 ? '正常' : '异常' }}</text>
</view> </view>
</view> </view>
<view class="form-item"> <view class="form-item">
<text class="form-label"><text class="required">*</text>情况摘要:</text> <text class="form-label"><text class="required">*</text>情况摘要:</text>
<input v-model="tabData[activeTab].summary" placeholder="请输入情况摘要" class="input-box" /> <input v-model="list[activeTab].conclusion" placeholder="请输入情况摘要" class="input-box" />
</view> </view>
<view class="form-item"> <view class="form-item">
<text class="form-label">现场照片:</text> <text class="form-label">现场照片:</text>
...@@ -98,9 +98,24 @@ ...@@ -98,9 +98,24 @@
<script> <script>
import { import {
pad_2_1_inspection_items,
pad_2_1_inspection_position, pad_2_1_inspection_position,
pad_2_1_floor pad_2_1_floor
} from "@/utils/dict.js"; //巡检位置,A座到F座 楼层2楼4楼到26楼 } from "@/utils/dict.js"; //巡检位置,A座到F座 楼层2楼4楼到26楼
import {
addLog,
getLogContent,
LOG_TYPE_ENUM,
writeDarf,
writeInspectionData,
} from "@/utils/IoReadingAndWriting.js";
import {
getInspectionDetails,
getDarft
} from "@/request/index.js";
import moment from "moment";
export default { export default {
data() { data() {
return { return {
...@@ -121,27 +136,30 @@ ...@@ -121,27 +136,30 @@
}, },
], ],
activeTab: 0, // 当前选中的 Tab activeTab: 0, // 当前选中的 Tab
sliderValue: 0, // Switch 值(0: 正常, 1: 异常) inspectionResult: 0, // Switch 值(0: 正常, 1: 异常)
summary: "", // 情况摘要 conclusion: "", // 情况摘要
photos: [], // 现场照片 photos: [], // 现场照片
tabData: [{ tabData: [{
sliderValue: 0, inspectionResult: 0,
summary: "", conclusion: "",
photos: [] photos: []
}, // 门禁 }, // 门禁
{ {
sliderValue: 0, inspectionResult: 0,
summary: "", conclusion: "",
photos: [] photos: []
}, // 卫生 }, // 卫生
{ {
sliderValue: 0, inspectionResult: 0,
summary: "", conclusion: "",
photos: [] photos: []
}, // 设备告警 }, // 设备告警
], ],
historyData: null, // 历史数据 historyData: null, // 历史数据
firstSubmitTime: null, // 首次提交时间 firstSubmitTime: null, // 首次提交时间
detailsInfo: {}, // 详情
baseInfo: {}, // 基础信息
list: [], //巡检信息
}; };
}, },
watch: { watch: {
...@@ -153,7 +171,44 @@ ...@@ -153,7 +171,44 @@
onLoad() { onLoad() {
this.loadHistoryData(); this.loadHistoryData();
}, },
mounted() {
this.init();
this.coverlist();
},
methods: { methods: {
// 初始化
init() {
return new Promise((resolve, reject) => {
// 判断是否有回显数据
if (this.detailsInfo && this.detailsInfo.inspectionType) {} else {
this.baseInfo = {
inspectionType: "2",
inspectionCode: `JFXJ${moment().format("yyyyMMDDHHmmss")}${(Math.floor(Math.random() * 900) + 100)}`,
recordName: `${moment().format("yyyyMMDD")}-机房巡检记录`,
inspectionTime: moment().format("yyyy-MM-DD HH:mm"),
inspectionBy: this.$store.state.now_user.user,
inspectionById: this.$store.state.now_user.userId,
createByName: this.$store.state.now_user.user,
isException: "", // 是否有异常
position: "", // 位置
isSubmit: "", // 0 是草稿态; 1 是正式提交
conclusion: "", //摘要
creatTime: `${new Date().getTime()}`,
items: [
// {
// "itemCode": "1", // 检查项
// "measuredData": "2,3", // 异常的楼层
// "inspectionResult": "1" // 检查项的结果, 1是异常 0 是正常
// },
],
};
}
console.log(2222, this.baseInfo)
resolve();
});
},
// 返回 // 返回
back() { back() {
uni.navigateBack(); uni.navigateBack();
...@@ -174,16 +229,52 @@ ...@@ -174,16 +229,52 @@
this.historyData = history; this.historyData = history;
this.location = history.location; this.location = history.location;
this.randomDescription = history.randomDescription; this.randomDescription = history.randomDescription;
this.tabData = history.tabData; this.list = history.tabData;
this.activeTab = 0; // 默认切换到第一个 Tab this.activeTab = 0; // 默认切换到第一个 Tab
this.updateCurrentTabData(); this.updateCurrentTabData();
} }
}, },
// 数据结构重组
coverlist() {
const temp = pad_2_1_inspection_items.rows.map((item) => {
return {
// ...item,
dictLabel: item.dictLabel,
dictValue: item.dictValue,
conclusion: "", // 情况摘要
// roomType,
inspectionResult: 0, // 异常结论
itemCode: item.dictValue, // 检查项 如:门禁
resultArr: [{
value: 0,
label: "正常",
isActive: true,
},
{
value: 1,
label: "异常",
isActive: false,
},
],
measuredData: "", // 逗号分隔字符串
measuredDataArr: [], // 前端本地使用
photos: [], // 照片
postionList: [{
...pad_2_1_floor.rows[0],
dictLabel: location,
isActive: false,
}]
};
});
this.list = temp;
},
// 更新当前 Tab 数据 // 更新当前 Tab 数据
updateCurrentTabData() { updateCurrentTabData() {
const currentTabData = this.tabData[this.activeTab]; const currentTabData = this.list[this.activeTab];
this.sliderValue = currentTabData.sliderValue; this.inspectionResult = currentTabData.inspectionResult;
this.summary = currentTabData.summary; this.conclusion = currentTabData.conclusion;
this.photos = currentTabData.photos; this.photos = currentTabData.photos;
}, },
// 切换 Tab // 切换 Tab
...@@ -193,8 +284,8 @@ ...@@ -193,8 +284,8 @@
}, },
// Switch 值变化 // Switch 值变化
onSwitchChange(e) { onSwitchChange(e) {
this.sliderValue = e.detail.value ? 1 : 0; this.inspectionResult = e.detail.value ? 1 : 0;
this.tabData[this.activeTab].sliderValue = this.sliderValue; this.list[this.activeTab].inspectionResult = this.inspectionResult;
}, },
// 拍照 // 拍照
takePhoto() { takePhoto() {
...@@ -203,7 +294,7 @@ ...@@ -203,7 +294,7 @@
success: (res) => { success: (res) => {
if (this.photos.length < 5) { if (this.photos.length < 5) {
this.photos.push(res.tempFilePaths[0]); this.photos.push(res.tempFilePaths[0]);
this.tabData[this.activeTab].photos = this.photos; this.list[this.activeTab].photos = this.photos;
} else { } else {
uni.showToast({ uni.showToast({
title: "最多只能上传5张照片", title: "最多只能上传5张照片",
...@@ -216,22 +307,71 @@ ...@@ -216,22 +307,71 @@
// 删除照片 // 删除照片
deletePhoto(index) { deletePhoto(index) {
this.photos.splice(index, 1); this.photos.splice(index, 1);
this.tabData[this.activeTab].photos = this.photos; this.list[this.activeTab].photos = this.photos;
}, // 处理提交数据
getParams() {
const baseInfo = this.baseInfo;
console.log("this.list",this.list)
const item = {
...baseInfo,
isSubmit: 0,
items: [],
synchronization: 0, // 是否导出过
submitTime: moment().format("yyyy-MM-DD"), // 记录提交时间
submitMonth: moment().format("yyyy-MM"), // 记录提交月份
originData: {
baseInfo,
tempForm:this.list
},
};
console.log("item,item",item)
return item;
}, },
// 暂存 // 暂存
saveDraft() { saveDraft(isSave = true) {
uni.showToast({ return new Promise((resolve, reject) => {
title: "暂存成功",
icon: "success", if (isSave) {
// 写入草稿文件 更新 store 草稿内容
const params = this.getParams();
params.isSubmit = 0;
this.$store.commit("SET_DARF_DATA", params); // 缓存[巡检信息]
writeDarf(params).then((res) => {
console.log("写入草稿文件成功");
uni.showToast({
icon: "success",
title: "保存草稿成功",
});
});
// 新增日志信息
const logContent = getLogContent(
LOG_TYPE_ENUM.darf,
`${params.recordName}(${params.inspectionCode})`,
"巡检模块"
);
const log_list = this.$store.state.log_list;
logContent.inspectionType = params.inspectionType;
log_list.push(logContent);
this.$store.commit("SET_LOG_LIST", log_list);
addLog(log_list).then((res) => {
console.log("日志文件写入成功");
});
}
resolve();
}); });
}, },
// 检查当前 Tab 的必填项是否填写完整 // 检查当前 Tab 的必填项是否填写完整
isCurrentTabValid() { isCurrentTabValid() {
const currentTabData = this.tabData[this.activeTab]; const currentTabData = this.list[this.activeTab];
console.log("currentTabData", currentTabData) console.log("currentTabData", currentTabData)
return ( return (
currentTabData.sliderValue !== null && // 巡检结论必填 currentTabData.inspectionResult !== null && // 巡检结论必填
currentTabData.summary.trim() !== "" // 情况摘要必填 currentTabData.conclusion.trim() !== "" // 情况摘要必填
// 现场照片为非必填项,不做校验 // 现场照片为非必填项,不做校验
); );
}, },
...@@ -244,7 +384,7 @@ ...@@ -244,7 +384,7 @@
const historyData = { const historyData = {
location: this.location, location: this.location,
randomDescription: this.randomDescription, randomDescription: this.randomDescription,
tabData: this.tabData, tabData: this.list,
firstSubmitTime: this.firstSubmitTime, firstSubmitTime: this.firstSubmitTime,
}; };
uni.setStorageSync("inspectionHistory", historyData); uni.setStorageSync("inspectionHistory", historyData);
......
...@@ -894,7 +894,8 @@ export const pad_2_1_inspection_items = { ...@@ -894,7 +894,8 @@ export const pad_2_1_inspection_items = {
"listClass": "default", "listClass": "default",
"isDefault": "N", "isDefault": "N",
"status": "0", "status": "0",
"default": false "default": false,
"phones":[],//现场照片
}, },
{ {
"createBy": "admin", "createBy": "admin",
...@@ -911,7 +912,8 @@ export const pad_2_1_inspection_items = { ...@@ -911,7 +912,8 @@ export const pad_2_1_inspection_items = {
"listClass": "default", "listClass": "default",
"isDefault": "N", "isDefault": "N",
"status": "0", "status": "0",
"default": false "default": false,
"phones":[],
}, },
{ {
"createBy": "admin", "createBy": "admin",
...@@ -928,7 +930,8 @@ export const pad_2_1_inspection_items = { ...@@ -928,7 +930,8 @@ export const pad_2_1_inspection_items = {
"listClass": "default", "listClass": "default",
"isDefault": "N", "isDefault": "N",
"status": "0", "status": "0",
"default": false "default": false,
"phones":[],
} }
], ],
"code": 200, "code": 200,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论