diff --git a/weapp/app.js b/weapp/app.js
index d7e81ac..fe5f588 100644
--- a/weapp/app.js
+++ b/weapp/app.js
@@ -4,7 +4,8 @@ App({
globalData: {
userInfo: null,
baseUrl: 'http://10.8.16.221:4900', //api 本地环境
- imgUrl: 'http://10.8.16.221:5900/_file-server/', //web 本地环境
+ webUrl: "http://10.8.16.221:5900/", //web 本地环境
+ imgUrl: 'http://10.8.16.221:5900/_file-server/', //文件 本地环境
},
onShow(e) {
// 检查是否有更新
diff --git a/weapp/components/timePicker/index.js b/weapp/components/timePicker/index.js
new file mode 100644
index 0000000..68e0340
--- /dev/null
+++ b/weapp/components/timePicker/index.js
@@ -0,0 +1,590 @@
+// components/picker-timer/picker-time.js
+
+Component({
+ /**
+ * 组件的属性列表
+ */
+ properties: {
+ pickerShow: {
+ type: Boolean,
+ observer: function (val) { //弹出动画
+ if (val) {
+ let animation = wx.createAnimation({
+ duration: 500,
+ timingFunction: "ease"
+ });
+ let animationOpacity = wx.createAnimation({
+ duration: 500,
+ timingFunction: "ease"
+ });
+ setTimeout(() => {
+ animation.bottom(0).step();
+ animationOpacity.opacity(0.7).step();
+ this.setData({
+ animationOpacity: animationOpacity.export(),
+ animationData: animation.export()
+ })
+ }, 0);
+ } else {
+ let animation = wx.createAnimation({
+ duration: 100,
+ timingFunction: "ease"
+ });
+ let animationOpacity = wx.createAnimation({
+ duration: 500,
+ timingFunction: "ease"
+ });
+ animation.bottom(-320).step();
+ animationOpacity.opacity(0).step();
+ this.setData({
+ animationOpacity: animationOpacity.export(),
+ animationData: animation.export()
+ });
+ }
+
+ // 在picker滚动未停止前点确定,会使startValue数组各项归零,发生错误,这里判断并重新初始化
+ // 微信新增了picker滚动的回调函数,已进行兼容
+ if (this.data.startValue && this.data.endValue) {
+ let s = 0, e = 0;
+ let conf = this.data.config;
+
+ this.data.startValue.map(val => {
+ if (val == 0) {
+ s++
+ }
+ })
+ this.data.endValue.map(val => {
+ if (val == 0) {
+ e++;
+ }
+ });
+ let tmp = {
+ hour: 4,
+ minute: 5,
+ second: 6
+ }
+ let n = tmp[conf.column];
+ if (s >= n || e >= n) {
+ this.initPick(this.data.config);
+ this.setData({
+ startValue: this.data.startValue,
+ endValue: this.data.endValue,
+ });
+ }
+ }
+
+
+ }
+ },
+ config: Object
+ },
+
+ /**
+ * 组件的初始数据
+ */
+ data: {
+ // pickerShow:true
+ // limitStartTime: new Date().getTime()-1000*60*60*24*30,
+ // limitEndTime: new Date().getTime(),
+ // yearStart:2000,
+ // yearEnd:2100
+ },
+ detached: function () {
+ console.log("dele");
+ },
+ attached: function () { },
+ ready: function () {
+ this.readConfig();
+ this.initPick(this.data.config || null);
+ this.setData({
+ startValue: this.data.startValue,
+ endValue: this.data.endValue,
+ });
+
+
+
+
+ },
+ /**
+ * 组件的方法列表
+ */
+ methods: {
+ //阻止滑动事件
+ onCatchTouchMove(e) {
+
+ },
+ //读取配置项
+ readConfig() {
+ let limitEndTime = new Date().getTime();
+ let limitStartTime = new Date().getTime() - 1000 * 60 * 60 * 24 * 30;
+ if (this.data.config) {
+ let conf = this.data.config;
+
+ if (typeof conf.dateLimit == "number") {
+ limitStartTime =
+ new Date().getTime() - 1000 * 60 * 60 * 24 * conf.dateLimit;
+ }
+ if (conf.limitStartTime) {
+
+ limitStartTime = new Date(conf.limitStartTime.replace(/-/g, '/')).getTime();
+ }
+
+ if (conf.limitEndTime) {
+ limitEndTime = new Date(conf.limitEndTime.replace(/-/g, '/')).getTime();
+ }
+
+ this.setData({
+ yearStart: conf.yearStart || 2000,
+ yearEnd: conf.yearEnd || 2100,
+ endDate: conf.endDate || false,
+ dateLimit: conf.dateLimit || false,
+ hourColumn:
+ conf.column == "hour" ||
+ conf.column == "minute" ||
+ conf.column == "second",
+ minColumn: conf.column == "minute" || conf.column == "second",
+ secColumn: conf.column == "second"
+ });
+ }
+
+ let limitStartTimeArr = formatTime(limitStartTime);
+ let limitEndTimeArr = formatTime(limitEndTime);
+
+ this.setData({
+ limitStartTime,
+ limitStartTimeArr,
+ limitEndTime,
+ limitEndTimeArr
+ });
+ },
+ //滚动开始
+ handlePickStart: function (e) {
+ this.setData({
+ isPicking: true
+ })
+ },
+ //滚动结束
+ handlePickEnd: function (e) {
+ this.setData({
+ isPicking: false
+ })
+ },
+ onConfirm: function () {
+ //滚动未结束时不能确认
+ if (this.data.isPicking) { return }
+ let startTime = new Date(this.data.startPickTime.replace(/-/g, "/"));
+ let endTime = new Date(this.data.endPickTime.replace(/-/g, "/"));
+ if (startTime <= endTime || !this.data.endDate) {
+ this.setData({
+ startTime,
+ endTime
+ });
+ let startArr = formatTime(startTime).arr;
+ let endArr = formatTime(endTime).arr;
+ let format0 = function (num) {
+ return num < 10 ? '0' + num : num
+ }
+
+ let startTimeBack =
+ startArr[0] +
+ "-" +
+ format0(startArr[1]) +
+ "-" +
+ format0(startArr[2])
+ // +
+ // " " +
+ // (this.data.hourColumn ? format0(startArr[3]) : "00") +
+ // ":" +
+ // (this.data.minColumn ? format0(startArr[4]) : "00") +
+ // ":" +
+ // (this.data.secColumn ? format0(startArr[5]) : "00")
+ ;
+
+ let endTimeBack =
+ endArr[0] +
+ "-" +
+ format0(endArr[1]) +
+ "-" +
+ format0(endArr[2])
+ // +
+ // " " +
+ // (this.data.hourColumn ? format0(endArr[3]) : "00") +
+ // ":" +
+ // (this.data.minColumn ? format0(endArr[4]) : "00") +
+ // ":" +
+ // (this.data.secColumn ? format0(endArr[5]) : "00")
+ ;
+
+ let time = {
+ startTime: startTimeBack,
+ endTime: endTimeBack
+ };
+
+ //触发自定义事件
+ this.triggerEvent("setPickerTime", time);
+ this.triggerEvent("hidePicker", {});
+ } else {
+ wx.showToast({
+ icon: "none",
+ title: "开始时间必须小于结束时间"
+ });
+ }
+ },
+ hideModal: function () {
+
+ this.triggerEvent("hidePicker", {});
+ },
+ changeStartDateTime: function (e) {
+ let val = e.detail.value;
+
+ this.compareTime(val, "start");
+ },
+
+ changeEndDateTime: function (e) {
+ let val = e.detail.value;
+ this.compareTime(val, "end");
+ },
+ //比较时间是否在范围内
+ compareTime(val, type) {
+ let h = val[3] ? this.data.HourList[val[3]] : "00";
+ let m = val[4] ? this.data.MinuteList[val[4]] : "00";
+ let s = val[5] ? this.data.SecondList[val[5]] : "00";
+ let time =
+ this.data.YearList[val[0]] +
+ "-" +
+ this.data.MonthList[val[1]] +
+ "-" +
+ this.data.DayList[val[2]] +
+ " " +
+ h +
+ ":" +
+ m +
+ ":" +
+ s;
+
+ let start = this.data.limitStartTime;
+ let end = this.data.limitEndTime;
+ let timeNum = new Date(time.replace(/-/g, '/')).getTime();
+ let year, month, day, hour, min, sec, limitDate;
+ let tempArr = []
+
+ // if (!this.data.dateLimit){
+ // limitDate = [
+ // this.data.YearList[val[0]],
+ // this.data.MonthList[val[1]],
+ // this.data.DayList[val[2]],
+ // this.data.HourList[val[3]],
+ // this.data.MinuteList[val[4]],
+ // this.data.SecondList[val[5]]]
+ // } else if (type == "start" && timeNum > new Date(this.data.endPickTime.replace(/-/g, '/')) && this.data.config.endDate) {
+ // limitDate = formatTime(this.data.endPickTime).arr;
+
+ // } else if (type == "end" && timeNum < new Date(this.data.startPickTime.replace(/-/g, '/'))) {
+ // limitDate = formatTime(this.data.startPickTime).arr;
+
+ // } else if (timeNum < start) {
+ // limitDate = this.data.limitStartTimeArr.arr;
+
+ // } else if (timeNum > end) {
+ // limitDate = this.data.limitEndTimeArr.arr;
+
+ // } else {
+ // limitDate = [
+ // this.data.YearList[val[0]],
+ // this.data.MonthList[val[1]],
+ // this.data.DayList[val[2]],
+ // this.data.HourList[val[3]],
+ // this.data.MinuteList[val[4]],
+ // this.data.SecondList[val[5]]
+ // ]
+
+ // }
+
+ if (!this.data.dateLimit) {
+ limitDate = [
+ this.data.YearList[val[0]],
+ this.data.MonthList[val[1]],
+ this.data.DayList[val[2]],
+ this.data.HourList[val[3]],
+ this.data.MinuteList[val[4]],
+ this.data.SecondList[val[5]]]
+ } else {
+ limitDate = [
+ this.data.YearList[val[0]],
+ this.data.MonthList[val[1]],
+ this.data.DayList[val[2]],
+ this.data.HourList[val[3]],
+ this.data.MinuteList[val[4]],
+ this.data.SecondList[val[5]]
+ ]
+
+ }
+
+ year = limitDate[0];
+ month = limitDate[1];
+ day = limitDate[2];
+ hour = limitDate[3];
+ min = limitDate[4];
+ sec = limitDate[5];
+
+ if (type == "start") {
+ this.setStartDate(year, month, day, hour, min, sec);
+ } else if (type == "end") {
+ this.setEndDate(year, month, day, hour, min, sec);
+ }
+ },
+ getDays: function (year, month) {
+ let daysInMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
+ if (month === 2) {
+ return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0
+ ? 29
+ : 28;
+ } else {
+ return daysInMonth[month - 1];
+ }
+ },
+ initPick: function (initData) {
+ const date = initData.initStartTime ? new Date(initData.initStartTime.replace(/-/g, '/')) : new Date();
+ const endDate = initData.initEndTime ? new Date(initData.initEndTime.replace(/-/g, '/')) : new Date();
+ // const startDate = new Date(date.getTime() - 1000 * 60 * 60 * 24);
+ const startDate = date;
+ const startYear = date.getFullYear();
+ const startMonth = date.getMonth() + 1;
+ const startDay = date.getDate();
+ const startHour = date.getHours();
+ const startMinute = date.getMinutes();
+ const startSecond = date.getSeconds();
+
+ const endYear = endDate.getFullYear();
+ const endMonth = endDate.getMonth() + 1;
+ const endDay = endDate.getDate();
+ const endHour = endDate.getHours();
+ const endMinute = endDate.getMinutes();
+ const endSecond = endDate.getSeconds();
+
+ let YearList = [];
+ let MonthList = [];
+ let DayList = [];
+ let HourList = [];
+ let MinuteList = [];
+ let SecondList = [];
+
+ //设置年份列表
+ for (let i = this.data.yearStart; i <= this.data.yearEnd; i++) {
+ YearList.push(i);
+ }
+
+ // 设置月份列表
+ for (let i = 1; i <= 12; i++) {
+ MonthList.push(i);
+ }
+ // 设置日期列表
+ for (let i = 1; i <= 31; i++) {
+ DayList.push(i);
+ }
+ // 设置时列表
+ for (let i = 0; i <= 23; i++) {
+ if (0 <= i && i < 10) {
+ i = "0" + i;
+ }
+ HourList.push(i);
+ }
+ // 分|秒
+ for (let i = 0; i <= 59; i++) {
+ if (0 <= i && i < 10) {
+ i = "0" + i;
+ }
+ MinuteList.push(i);
+ SecondList.push(i);
+ }
+
+ this.setData({
+ YearList,
+ MonthList,
+ DayList,
+ HourList,
+ MinuteList,
+ SecondList
+ });
+
+ this.setStartDate(startYear, startMonth, startDay, startHour, startMinute, startSecond);
+ this.setEndDate(endYear, endMonth, endDay, endHour, endMinute, endSecond);
+
+ //!!!
+ // setTimeout(() => {
+ // this.setStartDate(nowYear, nowMonth, nowDay, nowHour, nowMinute)
+ // this.setEndDate(nowYear, nowMonth, nowDay, nowHour, nowMinute)
+ // }, 0);
+ },
+ setPickerDateArr(type, year, month, day, hour, minute, second) {
+ let yearIdx = 0;
+ let monthIdx = 0;
+ let dayIdx = 0;
+ let hourIdx = 0;
+ let minuteIdx = 0;
+ let secondIdx = 0;
+
+ this.data.YearList.map((v, idx) => {
+ if (parseInt(v) === year) {
+ yearIdx = idx;
+ }
+ });
+
+ this.data.MonthList.map((v, idx) => {
+ if (parseInt(v) === month) {
+ monthIdx = idx;
+ }
+ });
+
+ // 重新设置日期列表
+ let DayList = [];
+ for (let i = 1; i <= this.getDays(year, month); i++) {
+ DayList.push(i);
+ }
+
+ DayList.map((v, idx) => {
+ if (parseInt(v) === day) {
+ dayIdx = idx;
+ }
+ });
+ if (type == "start") {
+ this.setData({ startDayList: DayList });
+ } else if (type == "end") {
+ this.setData({ endDayList: DayList });
+ }
+
+ this.data.HourList.map((v, idx) => {
+ if (parseInt(v) === parseInt(hour)) {
+ hourIdx = idx;
+ }
+ });
+
+ this.data.MinuteList.map((v, idx) => {
+ if (parseInt(v) === parseInt(minute)) {
+ minuteIdx = idx;
+ }
+ });
+ this.data.SecondList.map((v, idx) => {
+ if (parseInt(v) === parseInt(second)) {
+ secondIdx = idx;
+ }
+ });
+
+ return {
+ yearIdx,
+ monthIdx,
+ dayIdx,
+ hourIdx,
+ minuteIdx,
+ secondIdx
+ };
+ },
+ setStartDate: function (year, month, day, hour, minute, second) {
+ let pickerDateArr = this.setPickerDateArr(
+ "start",
+ year,
+ month,
+ day,
+ hour,
+ minute,
+ second
+ );
+ this.setData({
+ startYearList: this.data.YearList,
+ startMonthList: this.data.MonthList,
+ // startDayList: this.data.DayList,
+ startHourList: this.data.HourList,
+ startMinuteList: this.data.MinuteList,
+ startSecondList: this.data.SecondList,
+ startValue: [
+ pickerDateArr.yearIdx,
+ pickerDateArr.monthIdx,
+ pickerDateArr.dayIdx,
+ pickerDateArr.hourIdx,
+ pickerDateArr.minuteIdx,
+ pickerDateArr.secondIdx
+ ],
+ startPickTime:
+ this.data.YearList[pickerDateArr.yearIdx] +
+ "-" +
+ this.data.MonthList[pickerDateArr.monthIdx] +
+ "-" +
+ this.data.DayList[pickerDateArr.dayIdx] +
+ " " +
+ this.data.HourList[pickerDateArr.hourIdx] +
+ ":" +
+ this.data.MinuteList[pickerDateArr.minuteIdx] +
+ ":" +
+ this.data.SecondList[pickerDateArr.secondIdx]
+ });
+ },
+ setEndDate: function (year, month, day, hour, minute, second) {
+ let pickerDateArr = this.setPickerDateArr(
+ "end",
+ year,
+ month,
+ day,
+ hour,
+ minute,
+ second
+ );
+
+ this.setData({
+ endYearList: this.data.YearList,
+ endMonthList: this.data.MonthList,
+ // endDayList: this.data.DayList,
+ endHourList: this.data.HourList,
+ endMinuteList: this.data.MinuteList,
+ endSecondList: this.data.SecondList,
+ endValue: [
+ pickerDateArr.yearIdx,
+ pickerDateArr.monthIdx,
+ pickerDateArr.dayIdx,
+ pickerDateArr.hourIdx,
+ pickerDateArr.minuteIdx,
+ pickerDateArr.secondIdx
+ ],
+ endPickTime:
+ this.data.YearList[pickerDateArr.yearIdx] +
+ "-" +
+ this.data.MonthList[pickerDateArr.monthIdx] +
+ "-" +
+ this.data.DayList[pickerDateArr.dayIdx] +
+ " " +
+ this.data.HourList[pickerDateArr.hourIdx] +
+ ":" +
+ this.data.MinuteList[pickerDateArr.minuteIdx] +
+ ":" +
+ this.data.SecondList[pickerDateArr.secondIdx]
+ });
+ },
+ }
+});
+
+
+function formatTime(date) {
+
+ if (typeof date == 'string' || 'number') {
+ try {
+ date = date.replace(/-/g, '/')//兼容ios
+ } catch (error) {
+ }
+ date = new Date(date)
+ }
+
+ const year = date.getFullYear()
+ const month = date.getMonth() + 1
+ const day = date.getDate()
+ const hour = date.getHours()
+ const minute = date.getMinutes()
+ const second = date.getSeconds()
+
+ return {
+ str: [year, month, day].map(formatNumber).join('-') + ' ' + [hour, minute, second].map(formatNumber).join(':'),
+ arr: [year, month, day, hour, minute, second]
+ }
+}
+function formatNumber(n) {
+ n = n.toString()
+ return n[1] ? n : '0' + n
+}
\ No newline at end of file
diff --git a/weapp/components/timePicker/index.json b/weapp/components/timePicker/index.json
new file mode 100644
index 0000000..32640e0
--- /dev/null
+++ b/weapp/components/timePicker/index.json
@@ -0,0 +1,3 @@
+{
+ "component": true
+}
\ No newline at end of file
diff --git a/weapp/components/timePicker/index.wxml b/weapp/components/timePicker/index.wxml
new file mode 100644
index 0000000..5c2299e
--- /dev/null
+++ b/weapp/components/timePicker/index.wxml
@@ -0,0 +1,75 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{item}}年
+
+
+ {{item}}月
+
+
+ {{item}}日
+
+
+
+
+ 至
+
+
+
+
+ {{item}}年
+
+
+
+ {{item}}月
+
+
+
+
+ {{item}}日
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/weapp/components/timePicker/index.wxss b/weapp/components/timePicker/index.wxss
new file mode 100644
index 0000000..9598196
--- /dev/null
+++ b/weapp/components/timePicker/index.wxss
@@ -0,0 +1,133 @@
+/* components/timePicker/timePicker.wxss */
+
+.picker-item {
+ line-height: 100rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+}
+
+/* 自定义时间 */
+.picker-container {
+ display: flex;
+ flex-direction: column;
+ /* justify-content: center; */
+ align-items: center;
+
+ width: 100%;
+ overflow: hidden;
+ position: fixed;
+ bottom: -640rpx;
+ left: 0;
+ /* height: 0; */
+ transition: height 0.5s;
+ z-index: 2000;
+ background: white;
+ border-top: 1px solid #EFEFF4;
+}
+
+.time-part {
+ display: flex;
+ flex-direction: row;
+ justify-content: space-between;
+ align-items: center;
+ width: 100%;
+ padding: 10rpx;
+}
+
+.sensorType-screen {
+ width: 100vw;
+ position: fixed;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ background: #000;
+ opacity: 0;
+ overflow: hidden;
+ z-index: 1999;
+ color: #fff;
+}
+
+.left {
+ width: 40%;
+ /* border: 1px solid red; */
+}
+
+.right {
+ width: 40%;
+ /* border: 1px solid red; */
+}
+
+.sensorTypePicker {
+ height: 250rpx;
+ margin: 0 auto;
+}
+
+.picker-item {
+ line-height: 100rpx;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ font-size: 32rpx;
+ /* overflow: hidden; */
+}
+
+.box {
+ padding: 0 20rpx;
+}
+
+/* 至 */
+.to {
+ width: 10%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ font-size: 32rpx;
+ font-weight: 600;
+ color: #282828;
+ /* border: 1px solid #000; */
+}
+
+
+.btn-box {
+ width: 100%;
+ display: flex;
+ justify-content: flex-end;
+ align-items: center;
+ border-bottom: 2rpx solid #eee;
+}
+
+.pick_btn {
+ padding: 14rpx 30rpx;
+ color: #ccc;
+ /* background-color: #159; */
+}
+
+.show_picker {
+ height: 320px;
+}
+
+.hide_picker {
+ height: 0;
+}
+
+.img-32 {
+ width: 32rpx;
+ height: 32rpx;
+}
+
+.bottom-btn {
+ width: 710rpx;
+ height: 90rpx;
+ background: #2F54FF;
+ border-radius: 54px;
+ line-height: 90rpx;
+ font-size: 32rpx;
+ font-weight: 600;
+ color: #FFFFFF;
+}
+
+.btn-bottom {
+ margin: auto 20rpx 40rpx;
+}
\ No newline at end of file
diff --git a/weapp/images/close.svg b/weapp/images/close.svg
new file mode 100644
index 0000000..ab02ad7
--- /dev/null
+++ b/weapp/images/close.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/weapp/images/upload.png b/weapp/images/upload.png
new file mode 100644
index 0000000..bd33611
Binary files /dev/null and b/weapp/images/upload.png differ
diff --git a/weapp/package/inspectionRecord/inspectionRecord.js b/weapp/package/inspectionRecord/inspectionRecord.js
index 2b1eea3..e3df021 100644
--- a/weapp/package/inspectionRecord/inspectionRecord.js
+++ b/weapp/package/inspectionRecord/inspectionRecord.js
@@ -16,7 +16,20 @@ Page({
}
],
ResIndex: 0, //巡检结果
- dataList: [1, 2, 3, 4, 5,]
+ dataList: [1, 2, 3, 4, 5,],
+ isPickerRender: false,
+ isPickerShow: false,
+ startTime: "开始日期", //开始日期
+ endTime: "结束日期", //结束日期
+ pickerConfig: { //自定义时间选择器配置项
+ endDate: true, //是否需要结束时间,为true时显示开始时间和结束时间两个picker
+ column: "day", //可选的最小时间范围day、hour、minute、second
+ dateLimit: true, //是否现在时间可选范围,false时可选任意时间;当为数字n时,范围是当前时间的最近n天
+ initStartTime: "", //picker初始时间
+ initEndTime: "", //picker初始结束时间
+ // limitStartTime: "", //最小可选时间
+ // limitEndTime: "" //最大可选时间
+ },
},
// 巡检结果
@@ -27,6 +40,38 @@ Page({
})
},
+ // 时间选择器显示
+ pickerShow: function () {
+ this.setData({
+ isPickerShow: true,
+ isPickerRender: true,
+ });
+ },
+
+ // 时间选择器隐藏
+ pickerHide: function () {
+ this.setData({
+ isPickerShow: false,
+ });
+ },
+
+ // 获取选择时间
+ setPickerTime: function (val) {
+ let data = val.detail;
+ this.setData({
+ startTime: data.startTime,
+ endTime: data.endTime
+ });
+ },
+
+ // 清空提交日期筛选框
+ bindClearDate() {
+ this.setData({
+ startTime: '开始日期',
+ endTime: '结束日期'
+ })
+ },
+
/**
* 生命周期函数--监听页面加载
*/
diff --git a/weapp/package/inspectionRecord/inspectionRecord.json b/weapp/package/inspectionRecord/inspectionRecord.json
index 3656c38..07ca620 100644
--- a/weapp/package/inspectionRecord/inspectionRecord.json
+++ b/weapp/package/inspectionRecord/inspectionRecord.json
@@ -2,5 +2,8 @@
"navigationBarBackgroundColor": "#1979ff",
"navigationBarTextStyle": "white",
"navigationBarTitleText": "巡检记录",
- "enablePullDownRefresh": false
+ "enablePullDownRefresh": false,
+ "usingComponents": {
+ "timePicker": "/components/timePicker/index"
+ }
}
\ No newline at end of file
diff --git a/weapp/package/inspectionRecord/inspectionRecord.wxml b/weapp/package/inspectionRecord/inspectionRecord.wxml
index 1eee279..3d90ce5 100644
--- a/weapp/package/inspectionRecord/inspectionRecord.wxml
+++ b/weapp/package/inspectionRecord/inspectionRecord.wxml
@@ -3,18 +3,26 @@
时间范围:
- 2022-12-15
- 至
- 2022-12-26
+
+
+ {{startTime}} 至 {{endTime}}
+
+
+
+
+
+
+
+
巡检结果:
-
+
{{ResList[ResIndex].text}}
- 查询
+ 查询
diff --git a/weapp/package/inspectionRecord/inspectionRecord.wxss b/weapp/package/inspectionRecord/inspectionRecord.wxss
index e981149..f959722 100644
--- a/weapp/package/inspectionRecord/inspectionRecord.wxss
+++ b/weapp/package/inspectionRecord/inspectionRecord.wxss
@@ -1,5 +1,5 @@
/* package/inspectionRecord/inspectionRecord.wxss */
-page{
+page {
background: #F7F7FA;
}
@@ -44,4 +44,21 @@ page{
float: left;
margin-left: 30rpx;
margin-top: 20rpx;
+}
+
+.page-date {
+ text-align: center;
+ padding-top: 6rpx;
+ margin-right: 20rpx;
+ background: #fff;
+}
+
+.clearDate {
+ float: left;
+ line-height: 50rpx;
+}
+
+.clearDate image {
+ width: 20rpx;
+ height: 20rpx;
}
\ No newline at end of file
diff --git a/weapp/package/startInspection/startInspection.js b/weapp/package/startInspection/startInspection.js
index a4eccd9..0cb683d 100644
--- a/weapp/package/startInspection/startInspection.js
+++ b/weapp/package/startInspection/startInspection.js
@@ -5,7 +5,8 @@ Page({
* 页面的初始数据
*/
data: {
- dataList: ''
+ dataList: '',
+ imgs: [], //上传图片
},
handleChangeTwo(e) {
@@ -32,6 +33,111 @@ Page({
})
},
+ // 上传图片
+ chooseImg: function (e) { //这里是选取图片的方法
+ var that = this;
+ var pics = [];
+ var detailPics = that.data.imgs;
+ if (detailPics.length >= 20) {
+ commonJs.showToast('最多选择20张图片上传');
+ return;
+ }
+ wx.chooseMedia({
+ count: 20, // 基础库2.25.0前,最多可支持9个文件,2.25.0及以后最多可支持20个文件
+ mediaType: ['image'], // 文件类型
+ sizeType: ['original', 'compressed'], // original 原图,compressed 压缩图,默认二者都有
+ sourceType: ['album', 'camera'], // album 从相册选图,camera 使用相机,默认二者都有
+ success: function (res) {
+ console.log(res);
+ var imgs = res.tempFiles;
+ for (var i = 0; i < imgs.length; i++) {
+ if (res.tempFiles[i].size > 15728640) {
+ commonJs.showToast('图片大于15M,不可上传');
+ return;
+ }
+ pics.push(imgs[i])
+ }
+ that.uploadimg({
+ url: getApp().globalData.webUrl + '_upload/attachments/project', //这里是你图片上传的接口
+ path: pics, //这里是选取的图片的地址数组
+ });
+ },
+ })
+ },
+ //多张图片上传
+ uploadimg: function (data) {
+ wx.showLoading({
+ title: '上传中...',
+ mask: true,
+ })
+ var that = this,
+ i = data.i ? data.i : 0,
+ success = data.success ? data.success : 0,
+ fail = data.fail ? data.fail : 0;
+ let imgs = that.data.imgs;
+ wx.uploadFile({
+ url: data.url,
+ filePath: data.path[i],
+ name: 'file',
+ success: (resp) => {
+ wx.hideLoading();
+ success++;
+ var str = resp.data //返回的结果,可能不同项目结果不一样
+ console.log(str);
+ if (imgs.length >= 20) {
+ that.setData({
+ imgs: imgs
+ });
+ return false;
+ } else {
+ imgs.push(str);
+ that.setData({
+ imgs: imgs
+ })
+ }
+ },
+ fail: (res) => {
+ fail++;
+ console.log('fail:' + i + "fail:" + fail);
+ },
+ complete: () => {
+ i++;
+ if (i == data.path.length) { //当图片传完时,停止调用
+ console.log('执行完毕');
+ console.log('成功:' + success + " 失败:" + fail);
+ } else { //若图片还没有传完,则继续调用函数
+ data.i = i;
+ data.success = success;
+ data.fail = fail;
+ that.uploadimg(data);//递归,回调自己
+ }
+ }
+ });
+ },
+
+ // 删除图片
+ deleteImg: function (e) {
+ var imgs = this.data.imgs;
+ var index = e.currentTarget.dataset.index;
+ imgs.splice(index, 1);
+ this.setData({
+ imgs: imgs
+ });
+ },
+ // 预览图片
+ previewImg: function (e) {
+ //获取当前图片的下标
+ var index = e.currentTarget.dataset.index;
+ //所有图片
+ var imgs = this.data.imgs;
+ wx.previewImage({
+ //当前显示图片
+ current: imgs[index],
+ //所有图片
+ urls: imgs
+ })
+ },
+
// selfLocation() {
// const self = this
// wx.showLoading({
diff --git a/weapp/package/startInspection/startInspection.wxml b/weapp/package/startInspection/startInspection.wxml
index 0befb86..c2745c9 100644
--- a/weapp/package/startInspection/startInspection.wxml
+++ b/weapp/package/startInspection/startInspection.wxml
@@ -48,7 +48,7 @@
巡检人
- 巡检人A
+ {{dataList.user.name}}
本次巡检日期
@@ -78,6 +78,21 @@
中度
严重
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
取消
提交
diff --git a/weapp/package/startInspection/startInspection.wxss b/weapp/package/startInspection/startInspection.wxss
index 619c2ee..11ed736 100644
--- a/weapp/package/startInspection/startInspection.wxss
+++ b/weapp/package/startInspection/startInspection.wxss
@@ -82,4 +82,27 @@
background: #1979ff;
color: #fff;
border: 2rpx solid #1979ff;
+}
+
+.pic {
+ float: left;
+ position: relative;
+ margin-right: 8px;
+ margin-bottom: 8px;
+}
+
+.showImg {
+ width: 160rpx;
+ height: 160rpx;
+}
+
+.delete-btn {
+ position: absolute;
+ top: 0;
+ right: 0;
+}
+
+.upload {
+ width: 160rpx;
+ height: 160rpx;
}
\ No newline at end of file
diff --git a/weapp/pages/index/index.js b/weapp/pages/index/index.js
index 7a502be..af5bf32 100644
--- a/weapp/pages/index/index.js
+++ b/weapp/pages/index/index.js
@@ -3,7 +3,6 @@ import { getProjectList } from "../../utils/getApiUrl";
import { Request } from "../../common";
Page({
-
/**
* 页面的初始数据
*/
diff --git a/weapp/project.private.config.json b/weapp/project.private.config.json
index dabc5aa..5fd81b0 100644
--- a/weapp/project.private.config.json
+++ b/weapp/project.private.config.json
@@ -1,10 +1,6 @@
{
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档:https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
- "projectname": "%E5%B7%A1%E6%A3%80%E5%B0%8F%E7%A8%8B%E5%BA%8F",
"setting": {
- "compileHotReLoad": false,
"urlCheck": false
- },
- "condition": {},
- "libVersion": "2.29.0"
+ }
}
\ No newline at end of file