Browse Source

计划指定

master
巴林闲侠 2 years ago
parent
commit
036c0cc0de
  1. 2
      api/app/lib/controllers/patrolManage/patrolRecord.js
  2. 506
      weapp/package/polling/polling.js
  3. 2
      weapp/package/troubleshooting/index.wxml
  4. 103
      weapp/package/troubleshooting/shootingForm/index.js
  5. 67
      weapp/package/troubleshooting/shootingForm/index.wxml
  6. 10
      weapp/utils/getApiUrl.js

2
api/app/lib/controllers/patrolManage/patrolRecord.js

@ -245,7 +245,7 @@ async function getPatrolRecordIssueHandleById (ctx) {
const res = await models.PatrolRecordIssueHandle.findOne({ const res = await models.PatrolRecordIssueHandle.findOne({
where: { where: {
id
}, },
include: [{ include: [{
model: models.PatrolRecord model: models.PatrolRecord

506
weapp/package/polling/polling.js

@ -5,284 +5,284 @@ const moment = require("../../utils/moment");
Page({ Page({
/** /**
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
/* 待巡检 */ /* 待巡检 */
dataList: [], dataList: [],
limit: 10, //条数 limit: 10, //条数
page: 0, //当前页 page: 0, //当前页
count: '', //总条数 count: '', //总条数
hidden: true, hidden: true,
currentTab: '0', currentTab: '0',
/* 巡检记录 */ /* 巡检记录 */
ResList: [ //阅读状态 ResList: [ //阅读状态
{ {
value: 'all', value: 'all',
text: '全部', text: '全部',
}, },
{ {
value: 'normal', value: 'normal',
text: '正常', text: '正常',
}, },
{ {
value: 'abnormal', value: 'abnormal',
text: '异常', text: '异常',
} }
], ],
ResIndex: 0, //巡检结果 ResIndex: 0, //巡检结果
recordDataList: [], recordDataList: [],
isPickerRender: false, isPickerRender: false,
isPickerShow: false, isPickerShow: false,
startTime: "开始日期", //开始日期 startTime: "开始日期", //开始日期
endTime: "结束日期", //结束日期 endTime: "结束日期", //结束日期
pickerConfig: { //自定义时间选择器配置项 pickerConfig: { //自定义时间选择器配置项
endDate: true, //是否需要结束时间,为true时显示开始时间和结束时间两个picker endDate: true, //是否需要结束时间,为true时显示开始时间和结束时间两个picker
column: "day", //可选的最小时间范围day、hour、minute、second column: "day", //可选的最小时间范围day、hour、minute、second
dateLimit: true, //是否现在时间可选范围,false时可选任意时间;当为数字n时,范围是当前时间的最近n天 dateLimit: true, //是否现在时间可选范围,false时可选任意时间;当为数字n时,范围是当前时间的最近n天
initStartTime: "", //picker初始时间 initStartTime: "", //picker初始时间
initEndTime: "", //picker初始结束时间 initEndTime: "", //picker初始结束时间
// limitStartTime: "", //最小可选时间 // limitStartTime: "", //最小可选时间
// limitEndTime: "" //最大可选时间 // limitEndTime: "" //最大可选时间
},
recordHidden: true,
}, },
recordHidden: true,
},
// 顶部tab切换 // 顶部tab切换
clickTab(e) { clickTab (e) {
this.setData({ this.setData({
currentTab: e.currentTarget.dataset.current currentTab: e.currentTarget.dataset.current
}) })
if (e.currentTarget.dataset.current == '0') { if (e.currentTarget.dataset.current == '0') {
this.setData({ this.setData({
page: 0, page: 0,
dataList: [] dataList: []
}, () => { }, () => {
this.getPatrolPlan(); this.getPatrolPlan();
}) })
} else if (e.currentTarget.dataset.current == '1') { } else if (e.currentTarget.dataset.current == '1') {
this.getPatrolRecord(); this.getPatrolRecord();
} }
}, },
/***** 待巡检的方法 *****/ /***** 待巡检的方法 *****/
// 开始巡检 // 开始巡检
bindStart(e) { bindStart (e) {
let data = JSON.stringify(e.currentTarget.dataset.item); let data = JSON.stringify(e.currentTarget.dataset.item);
wx.navigateTo({ wx.navigateTo({
url: '/package/startInspection/startInspection?data=' + encodeURIComponent(data), url: '/package/startInspection/startInspection?data=' + encodeURIComponent(data),
}) })
}, },
// 获取巡检计划 // 获取巡检计划
getPatrolPlan: function () { getPatrolPlan: function () {
let that = this; let that = this;
let { page, limit } = that.data; let { page, limit } = that.data;
wx.showLoading({ wx.showLoading({
title: '加载中', title: '加载中',
}) })
const userInfo = wx.getStorageSync('userInfo'); const userInfo = wx.getStorageSync('userInfo');
Request.get(getPatrolPlan(), { limit, page, userId: userInfo.id }).then(res => { Request.get(getPatrolPlan(), { limit, page, userId: userInfo.id }).then(res => {
if (res.rows.length == 0) { if (res.rows.length == 0) {
that.setData({ that.setData({
dataList: res.rows, dataList: res.rows,
hidden: false hidden: false
})
wx.hideLoading()
return;
}
let dataSource = res.rows.map(e => {
e.startTime = moment(e.startTime).format('YYYY-MM-DD');
e.endTime = moment(e.endTime).format('YYYY-MM-DD');
return e;
})
var arr1 = that.data.dataList; //从data获取当前dataList数组
var arr2 = dataSource; //从此次请求返回的数据中获取新数组
arr1 = arr1.concat(arr2); //合并数组
that.setData({
dataList: arr1,
count: res.count, //总条数
hidden: true
})
wx.hideLoading()
}) })
wx.hideLoading() },
return;
}
let dataSource = res.rows.map(e => {
e.startTime = moment(e.startTime).format('YYYY-MM-DD');
e.endTime = moment(e.endTime).format('YYYY-MM-DD');
return e;
})
var arr1 = that.data.dataList; //从data获取当前dataList数组
var arr2 = dataSource; //从此次请求返回的数据中获取新数组
arr1 = arr1.concat(arr2); //合并数组
that.setData({
dataList: arr1,
count: res.count, //总条数
hidden: true
})
wx.hideLoading()
})
},
/***** 巡检记录的方法 *****/ /***** 巡检记录的方法 *****/
// 巡检结果 // 巡检结果
bindPickerRes(e) { bindPickerRes (e) {
let that = this; let that = this;
that.setData({ that.setData({
ResIndex: e.detail.value ResIndex: e.detail.value
}) })
}, },
// 时间选择器显示 // 时间选择器显示
pickerShow: function () { pickerShow: function () {
this.setData({ this.setData({
isPickerShow: true, isPickerShow: true,
isPickerRender: true, isPickerRender: true,
}); });
}, },
// 时间选择器隐藏 // 时间选择器隐藏
pickerHide: function () { pickerHide: function () {
this.setData({ this.setData({
isPickerShow: false, isPickerShow: false,
}); });
}, },
// 获取选择时间 // 获取选择时间
setPickerTime: function (val) { setPickerTime: function (val) {
let data = val.detail; let data = val.detail;
this.setData({ this.setData({
startTime: data.startTime, startTime: data.startTime,
endTime: data.endTime endTime: data.endTime
}); });
}, },
// 清空提交日期筛选框 // 清空提交日期筛选框
bindClearDate() { bindClearDate () {
this.setData({ this.setData({
startTime: '开始日期', startTime: '开始日期',
endTime: '结束日期' endTime: '结束日期'
}) })
}, },
// 查询 // 查询
bindSearch() { bindSearch () {
this.getPatrolRecord(); this.getPatrolRecord();
}, },
// 查看详情 // 查看详情
bindDetail(e) { bindDetail (e) {
let data = JSON.stringify(e.currentTarget.dataset.item); let data = JSON.stringify(e.currentTarget.dataset.item);
wx.navigateTo({ wx.navigateTo({
url: '/package/polling/inspectionRecordDetail/inspectionRecordDetail?data=' + encodeURIComponent(data), url: '/package/polling/inspectionRecordDetail/inspectionRecordDetail?data=' + encodeURIComponent(data),
}) })
}, },
// 获取巡检记录 // 获取巡检记录
getPatrolRecord: function () { getPatrolRecord: function () {
let that = this; let that = this;
let { endTime, startTime, ResList, ResIndex } = that.data; let { endTime, startTime, ResList, ResIndex } = that.data;
let sevenYearAgo = moment().subtract(7, 'days').format('YYYY-MM-DD 00:00:00'); let sevenYearAgo = moment().subtract(7, 'days').format('YYYY-MM-DD 00:00:00');
let currentData = moment().startOf('days').format('YYYY-MM-DD 23:59:59'); let currentData = moment().startOf('days').format('YYYY-MM-DD 23:59:59');
let alarm = ResList[ResIndex].value == 'all' ? 'null' : ResList[ResIndex].value == 'normal' ? false : true; let alarm = ResList[ResIndex].value == 'all' ? 'null' : ResList[ResIndex].value == 'normal' ? false : true;
wx.showLoading({ wx.showLoading({
title: '加载中' title: '加载中'
})
Request.get(getPatrolRecord('all', startTime == '开始日期' ? sevenYearAgo : startTime + ' 00:00:00', endTime == '结束日期' ? currentData : endTime + ' 23:59:59', alarm, 'null')).then(res => {
if (res.length == 0) {
that.setData({
recordDataList: res,
recordHidden: false
}) })
wx.hideLoading() Request.get(getPatrolRecord('all', startTime == '开始日期' ? sevenYearAgo : startTime + ' 00:00:00', endTime == '结束日期' ? currentData : endTime + ' 23:59:59', alarm, 'null')).then(res => {
return; if (res.length == 0) {
} that.setData({
let dataSource = res.map(e => { recordDataList: res,
e.lastInspectionTime = e.lastInspectionTime ? moment(e.lastInspectionTime).format('YYYY-MM-DD') : '--'; recordHidden: false
e.inspectionTime = moment(e.inspectionTime).format('YYYY-MM-DD'); })
return e; wx.hideLoading()
}) return;
that.setData({ }
recordDataList: dataSource, let dataSource = res.map(e => {
recordHidden: true e.lastInspectionTime = e.lastInspectionTime ? moment(e.lastInspectionTime).format('YYYY-MM-DD') : '--';
}) e.inspectionTime = moment(e.inspectionTime).format('YYYY-MM-DD');
wx.hideLoading() return e;
}) })
}, that.setData({
recordDataList: dataSource,
recordHidden: true
})
wx.hideLoading()
})
},
/** /**
* 生命周期函数--监听页面加载 * 生命周期函数--监听页面加载
*/ */
onLoad(options) { onLoad (options) {
this.getPatrolPlan(); this.getPatrolPlan();
}, },
/** /**
* 生命周期函数--监听页面初次渲染完成 * 生命周期函数--监听页面初次渲染完成
*/ */
onReady() { onReady () {
}, },
/** /**
* 生命周期函数--监听页面显示 * 生命周期函数--监听页面显示
*/ */
onShow() { onShow () {
}, },
/** /**
* 生命周期函数--监听页面隐藏 * 生命周期函数--监听页面隐藏
*/ */
onHide() { onHide () {
}, },
/** /**
* 生命周期函数--监听页面卸载 * 生命周期函数--监听页面卸载
*/ */
onUnload() { onUnload () {
}, },
/** /**
* 页面相关事件处理函数--监听用户下拉动作 * 页面相关事件处理函数--监听用户下拉动作
*/ */
onPullDownRefresh() { onPullDownRefresh () {
let that = this; let that = this;
if (that.data.currentTab == '0') { if (that.data.currentTab == '0') {
that.setData({ that.setData({
dataList: [], dataList: [],
page: 0, //当前页 page: 0, //当前页
count: '', //总条数 count: '', //总条数
}) })
that.getPatrolPlan() that.getPatrolPlan()
// 手动控制回弹 // 手动控制回弹
wx.stopPullDownRefresh(); wx.stopPullDownRefresh();
} else if (that.data.currentTab == '1') { } else if (that.data.currentTab == '1') {
that.setData({ that.setData({
recordDataList: [], recordDataList: [],
ResIndex: 0, //巡检结果 ResIndex: 0, //巡检结果
startTime: "开始日期", //开始日期 startTime: "开始日期", //开始日期
endTime: "结束日期", //结束日期 endTime: "结束日期", //结束日期
}) })
that.getPatrolRecord() that.getPatrolRecord()
// 手动控制回弹 // 手动控制回弹
wx.stopPullDownRefresh(); wx.stopPullDownRefresh();
} }
}, },
/** /**
* 页面上拉触底事件的处理函数 * 页面上拉触底事件的处理函数
*/ */
onReachBottom() { onReachBottom () {
let _that = this; let _that = this;
if (_that.data.currentTab == '0') { if (_that.data.currentTab == '0') {
let page = _that.data.page + 1; //获取当前页数并+1 let page = _that.data.page + 1; //获取当前页数并+1
let { dataList, count } = _that.data; let { dataList, count } = _that.data;
if (dataList.length == count) { if (dataList.length == count) {
wx.showToast({ wx.showToast({
title: '没有更多数据了...', title: '没有更多数据了...',
icon: 'none', icon: 'none',
}) })
return; return;
} }
_that.setData({ _that.setData({
page: page, //更新当前页数 page: page, //更新当前页数
}) })
_that.getPatrolPlan() _that.getPatrolPlan()
} }
}, },
/** /**
* 用户点击右上角分享 * 用户点击右上角分享
*/ */
onShareAppMessage() { onShareAppMessage () {
} }
}) })

2
weapp/package/troubleshooting/index.wxml

@ -47,7 +47,7 @@
<view wx:for="{{dataList}}"> <view wx:for="{{dataList}}">
<view class="mission-card-title"> <view class="mission-card-title">
<span>{{item.PatrolRecord.points.project.name}}</span> <span>{{item.PatrolRecord.points.project.name}}</span>
<van-button type="info" round bind:tap="toShootingForm" data-shootingid="{{5}}"> <van-button type="info" round bind:tap="toShootingForm" data-shootingid="{{item.id}}">
{{ {{
item.state == 1 ?'制定计划': item.state == 1 ?'制定计划':
item.state == 2 ?'审批计划': item.state == 2 ?'审批计划':

103
weapp/package/troubleshooting/shootingForm/index.js

@ -1,19 +1,33 @@
// package/troubleshooting/shootingForm/index.js // package/troubleshooting/shootingForm/index.js
import { getPatrolRecordIssueHandleById, getStructuresUsers } from "../../../utils/getApiUrl";
import { Request } from "../../../common";
const moment = require("../../../utils/moment");
Page({ Page({
/** /**
* 页面的初始数据 * 页面的初始数据
*/ */
data: { data: {
data: {},
strucFocusUser: {},
focusPerson: [],
shootingid: '', shootingid: '',
maintenancePersonIndex: undefined,
maintenancePersonId: null, maintenancePersonId: null,
maintenanceRequirement: '', maintenanceRequirement: '',
qualityPersonIndex: undefined,
planStartTimePopupShow: false, planStartTimePopupShow: false,
planStartTime: '', planStartTime: '',
planStartTimeShow: '',
planEndTimePopupShow: false, planEndTimePopupShow: false,
planEndTime: '', planEndTime: '',
planEndTimeShow: '',
planApproval: '', planApproval: '',
repair: '', repair: '',
// 表单控制
isPlanState: false,
}, },
/** /**
@ -25,39 +39,97 @@ Page({
this.setData({ this.setData({
shootingid shootingid
}) })
Promise.all(
[
Request.get(getPatrolRecordIssueHandleById(shootingid), {}),
Request.get(getStructuresUsers(), {})
]
).then(res => {
console.log(res, 222);
const [issue, strucUser] = res
this.setData({
data: {
...issue,
PatrolRecord: {
...issue.PatrolRecord,
inspectionTime: moment(issue.PatrolRecord.inspectionTime).format('YYYY-MM-DD HH:mm:ss')
}
},
isPlanState: issue.state == 1 || issue.state == 3
})
this.setData({
strucFocusUser: {
...strucUser,
}
})
const focusPerson = (strucUser.find(s => s.id == issue.PatrolRecord.points.project.id) || {}).users || []
this.setData({
focusPerson: focusPerson
})
})
} else { } else {
} }
}, },
onMaintenancePersonPopupChange (e) { onMaintenancePersonPopupChange (e) {
this.setData({ console.log(e);
multiIndex: e.detail.value if (e.target.dataset.type == 'zhijian') {
}) this.setData({
qualityPersonIndex: e.detail.value
})
} else {
this.setData({
maintenancePersonIndex: e.detail.value
})
}
}, },
showPlanStartTimePopup () { showPlanStartTimePopup () {
this.setData({ planStartTimePopupShow: true }) if (this.data.isPlanState) {
this.setData({ planStartTimePopupShow: true })
}
}, },
closePlanStartTimePopup () { closePlanStartTimePopup (e) {
this.setData({ planStartTimePopupShow: false }) this.setData({ planStartTimePopupShow: false })
console.log(e.target, this.data.planStartTime);
if (e.target.dataset.option == 'cancel') {
// this.setData({ planStartTime: '' })
} else if (e.target.dataset.option == 'confirmed') {
this.setData({
planStartTimeShow: this.data.planStartTime ? moment(this.data.planStartTime).format('YYYY-MM-DD HH:mm') : ''
})
}
}, },
onPlanStartTimeChange (event) { onPlanStartTimeChange (event) {
this.setData({ planStartTime: event.detail, }) console.log(event);
this.setData({
planStartTime: event.detail,
})
}, },
showPlanEndTimePopup () { showPlanEndTimePopup () {
this.setData({ planEndTimePopupShow: true }) if (this.data.isPlanState) {
this.setData({ planEndTimePopupShow: true })
}
}, },
closePlanEndTimePopup () { closePlanEndTimePopup (e) {
this.setData({ planEndTimePopupShow: false }) this.setData({ planEndTimePopupShow: false })
if (e.target.dataset.option == 'confirmed') {
this.setData({
planEndTimeShow: this.data.planEndTime ? moment(this.data.planEndTime).format('YYYY-MM-DD HH:mm') : ''
})
}
}, },
onPlanEndTimeChange (event) { onPlanEndTimeChange (event) {
this.setData({ planEndTime: event.detail, }) this.setData({
planEndTime: event.detail,
})
}, },
// 上传图片 // 上传图片
@ -168,6 +240,19 @@ Page({
// }); // });
}, },
confirm (e) {
const { state } = this.data.data
let nextState = ''
let confirmData = {}
if (state == 1) {
nextState = 2
confirmData = {
...confirmData,
}
}
},
/** /**
* 生命周期函数--监听页面初次渲染完成 * 生命周期函数--监听页面初次渲染完成
*/ */

67
weapp/package/troubleshooting/shootingForm/index.wxml

@ -1,17 +1,18 @@
<page-meta page-style="{{ planStartTimePopupShow||planEndTimePopupShow ? 'overflow: hidden;' : '' }}" />
<view style="background:#F7F7FA; min-height:calc(100vh - 48rpx); padding:24rpx 0"> <view style="background:#F7F7FA; min-height:calc(100vh - 48rpx); padding:24rpx 0">
<van-cell-group inset class="mission-card"> <van-cell-group inset class="mission-card">
<view class="mission-card-title"> <view class="mission-card-title">
<span>巡检信息</span> <span>巡检信息</span>
</view> </view>
<van-field value="输入框已禁用" label="结构物名称" readonly border="{{ false }}" /> <van-field value="{{data.PatrolRecord.points.project.name}}" label="结构物名称" readonly border="{{ false }}" />
<van-field value="输入框已禁用" label="巡检人" readonly border="{{ false }}" /> <van-field value="{{data.PatrolRecord.points.user.name}}" label="巡检人" readonly border="{{ false }}" />
<van-field value="输入框已禁用" label="巡检单位" readonly border="{{ false }}" /> <van-field value="{{data.PatrolRecord.points.user.department.name}}" label="巡检单位" readonly border="{{ false }}" />
<van-field value="输入框已禁用" label="巡检时间" readonly border="{{ false }}" /> <van-field value="{{data.PatrolRecord.inspectionTime}}" label="巡检时间" readonly border="{{ false }}" />
<view class="mission-card-title mission-center-card-title"> <view class="mission-card-title mission-center-card-title">
<span>问题详情</span> <span>问题详情</span>
</view> </view>
<van-field value="输入框已禁用" label="点位名称" readonly border="{{ false }}" /> <van-field value="输入框已禁用" label="{{data.PatrolRecord.points.itemData.name}}" readonly border="{{ false }}" />
<van-field value="输入框已禁用" label="检查项" readonly border="{{ false }}" /> <van-field value="{{data.PatrolRecord.points.itemData}}" label="检查项" readonly border="{{ false }}" />
<van-field value="输入框已禁用" label="异常等级" readonly border="{{ false }}" /> <van-field value="输入框已禁用" label="异常等级" readonly border="{{ false }}" />
<van-field value="输入框已禁用" label="问题描述" readonly border="{{ false }}" /> <van-field value="输入框已禁用" label="问题描述" readonly border="{{ false }}" />
<van-cell border="{{false}}"> <van-cell border="{{false}}">
@ -29,21 +30,21 @@
<van-cell> <van-cell>
<view style="display:flex"> <view style="display:flex">
<view class="fs-cell-title" style="">维修人</view> <view class="fs-cell-title" style="">维修人</view>
<picker style="width:100%;text-align:left" bindchange="onMaintenancePersonPopupChange" value="{{0}}" range="{{['array']}}"> <picker style="width:100%;text-align:left" disabled="{{!isPlanState}}" bindchange="onMaintenancePersonPopupChange" data-type='weixiu' value="{{0}}" range="{{focusPerson}}" range-key="name">
<view class="fs-cell-content" style="width:100%"> <view class="fs-cell-content" style="width:100%">
当前选择 {{maintenancePersonIndex||maintenancePersonIndex==0?focusPerson[maintenancePersonIndex].name:'请选择'}}
<van-icon name="arrow" style="float:right;position:relative; top:4px" /> <van-icon name="arrow" style="float:right;position:relative; top:4px" />
</view> </view>
</picker> </picker>
</view> </view>
</van-cell> </van-cell>
<van-field value="xxxx" label="维修单位" placeholder="请填写" readonly="{{0}}" border="{{ true }}" /> <van-field value="xxxx" label="维修单位" placeholder="" readonly="{{!isPlanState}}" border="{{ !isPlanState }}" />
<van-cell> <van-cell>
<view style="display:flex"> <view style="display:flex">
<view class="fs-cell-title" style="">质检人</view> <view class="fs-cell-title" style="">质检人</view>
<picker style="width:100%;text-align:left" bindchange="onMaintenancePersonPopupChange" value="{{0}}" range="{{['array']}}"> <picker style="width:100%;text-align:left" disabled="{{!isPlanState}}" bindchange="onMaintenancePersonPopupChange" data-type='zhijian' value="{{qualityPersonIndex}}" range="{{focusPerson}}" range-key="name">
<view class="fs-cell-content" style="width:100%"> <view class="fs-cell-content" style="width:100%">
当前选择 {{qualityPersonIndex||qualityPersonIndex==0?focusPerson[qualityPersonIndex].name:'请选择'}}
<van-icon name="arrow" style="float:right;position:relative; top:4px" /> <van-icon name="arrow" style="float:right;position:relative; top:4px" />
</view> </view>
</picker> </picker>
@ -53,33 +54,47 @@
<view style="display:flex"> <view style="display:flex">
<view class="fs-cell-title" style="">计划开始时间</view> <view class="fs-cell-title" style="">计划开始时间</view>
<view class="fs-cell-content" style="width:100%;text-align:left" bindtap="showPlanStartTimePopup"> <view class="fs-cell-content" style="width:100%;text-align:left" bindtap="showPlanStartTimePopup">
当前选择 {{planStartTimeShow?planStartTimeShow:'请选择'}}
<van-icon name="arrow" style="float:right;position:relative; top:4px" /> <van-icon wx:if="{{isPlanState}}" name="arrow" style="float:right;position:relative; top:4px" />
</view> </view>
<van-popup show="{{ planStartTimePopupShow }}" position="bottom" custom-style="height: 50%;" bind:close="closePlanStartTimePopup"> <van-popup show="{{ planStartTimePopupShow }}" position="bottom" custom-style="height: 50%;" bind:close="closePlanStartTimePopup">
<van-datetime-picker value="{{ planStartTime }}" bind:input="onInput" show-toolbar="{{false}}" /> <view style="display:flex;justify-content: space-between;padding:24rpx;font-size:larger;border-bottom:1px solid #f5f5f5">
<view bindtap="closePlanStartTimePopup" data-option='cancel'>取消</view>
<view style="color:#07c160;" data-option='confirmed' bindtap="closePlanStartTimePopup">
确定
</view>
</view>
<van-datetime-picker value="{{ planStartTime }}" bind:input="onPlanStartTimeChange" show-toolbar="{{false}}" />
</van-popup> </van-popup>
</view> </view>
</van-cell> </van-cell>
<van-cell> <van-cell>
<view style="display:flex"> <view style="display:flex">
<view class="fs-cell-title" style="">计划结束时间</view> <view class="fs-cell-title" style="">计划结束时间</view>
<view class="fs-cell-content" style="width:100%;text-align:left" bindtap="showPlanStartTimePopup"> <view class="fs-cell-content" style="width:100%;text-align:left" bindtap="showPlanEndTimePopup">
当前选择 {{planEndTimeShow?planEndTimeShow:'请选择'}}
<van-icon name="arrow" style="float:right;position:relative; top:4px" /> <van-icon wx:if="{{isPlanState}}" name="arrow" style="float:right;position:relative; top:4px" />
</view> </view>
<van-popup show="{{ planStartTimePopupShow }}" position="bottom" custom-style="height: 50%;" bind:close="closePlanStartTimePopup"> <van-popup show="{{ planEndTimePopupShow }}" position="bottom" custom-style="height: 50%;" bind:close="closePlanEndTimePopup">
<van-datetime-picker value="{{ planStartTime }}" bind:input="onInput" show-toolbar="{{false}}" /> <view style="display:flex;justify-content: space-between;padding:24rpx;font-size:larger;border-bottom:1px solid #f5f5f5">
<view bindtap="closePlanEndTimePopup" data-option='cancel'>取消</view>
<view style="color:#07c160;" data-option='confirmed' bindtap="closePlanEndTimePopup">
确定
</view>
</view>
<van-datetime-picker value="{{ planEndTime }}" bind:input="onPlanEndTimeChange" show-toolbar="{{false}}" />
</van-popup> </van-popup>
</view> </view>
</van-cell> </van-cell>
<van-field value="{{ maintenanceRequirement }}" label="维修要求" type="textarea" placeholder="请输入" autosize border="{{ true }}" /> <van-field value="{{ maintenanceRequirement }}" label="维修要求" type="textarea" placeholder="请输入" autosize readonly="{{!isPlanState}}" border="{{ !isPlanState }}" />
<view class="mission-card-title mission-center-card-title"> <view wx:if="{{data.state > 1}}">
<span>维修计划审批</span> <view class="mission-card-title mission-center-card-title">
<span>维修计划审批</span>
</view>
<van-field value="{{ planApproval }}" label="审批意见" type="textarea" placeholder="请输入" autosize border="{{ true }}" />
<van-field value="输入框已禁用" label="审批人" readonly border="{{ false }}" />
<van-field value="输入框已禁用" label="审批日期" readonly border="{{ false }}" />
</view> </view>
<van-field value="{{ planApproval }}" label="审批意见" type="textarea" placeholder="请输入" autosize border="{{ true }}" />
<van-field value="输入框已禁用" label="审批人" readonly border="{{ false }}" />
<van-field value="输入框已禁用" label="审批日期" readonly border="{{ false }}" />
<view class="mission-card-title mission-center-card-title"> <view class="mission-card-title mission-center-card-title">
<span>维修处理</span> <span>维修处理</span>
</view> </view>
@ -131,7 +146,7 @@
<van-field value="{{ repair }}" label="验收意见" type="textarea" placeholder="请输入" autosize border="{{ true }}" /> <van-field value="{{ repair }}" label="验收意见" type="textarea" placeholder="请输入" autosize border="{{ true }}" />
</van-cell-group> </van-cell-group>
<view style="margin:24px 16px"> <view style="margin:24px 16px">
<van-button type="info" block style="">提交</van-button> <van-button type="info" block style="" bindtap="confirm">提交</van-button>
<view style="display:flex; justify-content:space-between"> <view style="display:flex; justify-content:space-between">
<van-button type="info" custom-style="width:calc((100vw - 32px - 24px) / 2)"> <van-button type="info" custom-style="width:calc((100vw - 32px - 24px) / 2)">
同意 同意

10
weapp/utils/getApiUrl.js

@ -33,6 +33,14 @@ exports.getPatrolTemplate = (id) => {
return `/patrolTemplate?id=${id}` return `/patrolTemplate?id=${id}`
} }
exports.getPatrolRecordIssueHandle = (id) => { exports.getPatrolRecordIssueHandle = () => {
return `/patrolRecord/issue/handle` return `/patrolRecord/issue/handle`
} }
exports.getPatrolRecordIssueHandleById = (id) => {
return `/patrolRecord/issue/handle/${id}`
}
exports.getStructuresUsers = () => {
return `/structures/users`
}
Loading…
Cancel
Save