From a7169fdee8b683deb83f147fc9319b0bd7b04cf4 Mon Sep 17 00:00:00 2001
From: Lou <luzhiping@qqyjz.com>
Date: Fri, 17 Nov 2023 18:08:54 +0800
Subject: [PATCH] 工作日志数据交互, 住户审核列表,任务页面数据渲染
---
subPackage/workbench/views/workLog.vue | 143 ++++++++++++++++++++++++++++++++---------------
1 files changed, 98 insertions(+), 45 deletions(-)
diff --git a/subPackage/workbench/views/workLog.vue b/subPackage/workbench/views/workLog.vue
index 1296ffb..671de54 100644
--- a/subPackage/workbench/views/workLog.vue
+++ b/subPackage/workbench/views/workLog.vue
@@ -1,34 +1,38 @@
<template>
<view>
<view class="content bgc-ff">
- <u-form labelPosition="left" :model="info" :rules="rules" ref="uForm" labelWidth="90"
+ <u-form labelPosition="left" :model="info" :rules="rules" ref="form" labelWidth="90"
:labelStyle="{fontSize:'28rpx'}">
- <u-form-item label="姓名" prop="info.name" borderBottom ref="item1">
- <u-input v-model="info.title" border="none" placeholder="请输入标题" placeholderClass="f-28 c-99"
+ <u-form-item label="姓名" prop="info.name" borderBottom required>
+ <u-input v-model="info.name" border="none" placeholder="请输入标题" placeholderClass="f-28 c-99"
inputAlign="right"></u-input>
</u-form-item>
- <u-form-item label="手机号" prop="info.phone" borderBottom ref="item1">
- <u-input v-model="info.title" border="none" placeholder="请输入标题" placeholderClass="f-28 c-99"
+ <u-form-item label="手机号" prop="phone" borderBottom required>
+ <u-input v-model="info.phone" border="none" placeholder="请输入标题" placeholderClass="f-28 c-99"
inputAlign="right"></u-input>
</u-form-item>
- <u-form-item label="内容" borderBottom ref="item1">
- <u-input type="textarea" v-model="info.address" border="none" placeholderClass="f-28 c-99"
+ <u-form-item label="内容" borderBottom required>
+ <u-input type="textarea" v-model="info.context" border="none" placeholderClass="f-28 c-99"
inputAlign="right">
-
</u-input>
</u-form-item>
-
- <u-form-item label="走访时间" prop="applyTime" borderBottom required @click="showSelectDate = true">
- <u-input v-model="info.applyTime" disabled disabledColor="#ffffff" border="none" placeholder="请输入"
+ <u-form-item label="走访时间" prop="workTime" :borderBottom="false" required @click="showSelectDate = true">
+ <u-input v-model="info.workTime" disabled disabledColor="#ffffff" border="none" placeholder="请选择"
placeholderClass="f-28 c-99" inputAlign="right"></u-input>
<u-icon slot="right" name="arrow-right"></u-icon>
</u-form-item>
+ <!-- <u-form-item label="房屋" prop="houseCode" :borderBottom="false" required
+ @click="isShowScStatus = true">
+ <u-input v-model="info.scStatus" disabled disabledColor="#fff" border="none" placeholder="请选择"
+ placeholderClass="f-28 c-99" inputAlign="right"></u-input>
+ <u-icon slot="right" name="arrow-right"></u-icon>
+ </u-form-item> -->
</u-form>
</view>
<view class="upload bgc-ff">
<view class="f-28">走访图片</view>
<view class="mt-20">
- <u-upload :fileList="images" :previewFullImage="uploadConfig.previewFullImage"
+ <u-upload :fileList="form.images" :previewFullImage="uploadConfig.previewFullImage"
:accept="uploadConfig.acceptImg" :multiple="uploadConfig.multiple" :maxCount="uploadConfig.maxCount"
:capture="uploadConfig.capture" @afterRead="afterReadImg" @delete="deletePic">
<view class="upload-item upload-icon flex_base">
@@ -37,62 +41,108 @@
</u-upload>
</view>
</view>
-
- <u-datetime-picker ref="datetimePicker" :show="showSelectDate" v-model="applyTime" mode="datetime"
- :formatter="formatter" @confirm="confirmDate" @cancel="showSelectDate = false"></u-datetime-picker>
+ <u-datetime-picker ref="datetimePicker" :show="showSelectDate" v-model="workTime" mode="datetime"
+ :formatter="formatter" @confirm="confirmDate" @cancel="isShowPicker = false"></u-datetime-picker>
+ <!-- <u-picker :show="isShowPicker" :columns="scStatus" :defaultIndex="houseIndex" @cancel="isShowPicker = false"
+ @confirm="confirmHouse()"></u-picker> -->
<view class="footer">
- <button class="footer-btn">提交</button>
+ <button class="footer-btn" @click="submitInfo">提交</button>
</view>
-
</view>
</template>
<script>
+ import {
+ addWorkLog
+ } from "@/api/workLog/workLog.js"
import uploadMixin from "@/mixin/uploadMixin";
export default {
mixins: [uploadMixin],
data() {
return {
+ form: {
+ images: []
+ },
info: {
- title: "",
- content: ""
+ name: "",
+ phone: "",
+ context: ""
},
rules: {
- 'title': {
+ 'name': {
type: 'string',
required: true,
- message: '请输入工作主题',
+ message: '请输入姓名',
trigger: ['blur', 'change']
},
- 'content': {
+ 'phone': {
+ type: 'string',
+ required: true,
+ message: '请输入手机号',
+ trigger: ['blur', 'change']
+ },
+ 'context': {
type: 'string',
required: true,
message: '请输入工作内容',
trigger: ['blur', 'change']
},
},
-
- images: [
-
- ],
- showSelectDate:false
+ showSelectDate: false,
+ workTime: Number(new Date()),
+ isShowPicker: false,
+ houseIndex: [0]
}
},
- methods:{
-
+ onLoad() {
+ let userInfo = uni.getStorageSync("userInfo");
+ this.$set(this.info, "name", userInfo.real_name);
+ this.$set(this.info, "phone", userInfo.phone);
+ },
+ methods: {
+
confirmDate(e) {
this.showSelectDate = false;
- this.info.applyTime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM:ss')
+ this.info.workTime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM:ss')
},
-
-
- getLocation(){
- uni.chooseLocation({
- success:(res)=>{
- console.log(res);
- }
+
+ confirmHouse(e) {
+ this.houseIndex = e.indexs;
+ this.info.houseCode = e.value[0];
+ this.isShowPicker = false;
+ },
+
+ checkImages() {
+ if (this.form.images.length) {
+ this.$set(this.info, "url", this.setImages())
+ }
+ },
+
+ setImages() {
+ let urls = [];
+ for (let i of this.form.images) {
+ urls.push(i.name);
+ }
+ return urls.join(",")
+ },
+
+
+ submitInfo() {
+ this.$refs.form.validate().then(valid => {
+ this.checkImages();
+ addWorkLog(this.info).then(res => {
+ uni.showToast({
+ icon: 'success',
+ title: '提交成功',
+ success() {
+ setTimeout(() => {
+ uni.navigateBack()
+ }, 1000)
+ }
+ })
+ })
})
}
}
@@ -108,23 +158,26 @@
margin: 20rpx 30rpx;
padding: 0 30rpx;
}
- .row{
- padding:20rpx 0;
- border-bottom:1px solid
+
+ .row {
+ padding: 20rpx 0;
+ border-bottom: 1px solid
}
- .location-btn{
- width:116rpx;
- height:46rpx;
+
+ .location-btn {
+ width: 116rpx;
+ height: 46rpx;
line-height: 46rpx;
border-radius: 4rpx;
- border:1px solid currentColor;
- padding:0;
+ border: 1px solid currentColor;
+ padding: 0;
background-color: #fff;
}
.upload {
margin: 0 30rpx;
padding: 30rpx;
+
.upload-item {
width: 140rpx;
height: 140rpx;
--
Gitblit v1.9.3