Lou
2024-02-19 7bd85d5a6d9b2586387cbcff1cdcadfc6c1c95a6
更新
8 files modified
187 ■■■■ changed files
api/reporting/reporting.js 12 ●●●●● patch | view | raw | blame | history
common/common.js 9 ●●●●● patch | view | raw | blame | history
main.js 5 ●●●●● patch | view | raw | blame | history
subPackage/article/detail.vue 2 ●●● patch | view | raw | blame | history
subPackage/label/check.vue 94 ●●●● patch | view | raw | blame | history
subPackage/workbench/views/patrol.vue 9 ●●●●● patch | view | raw | blame | history
subPackage/workbench/views/selfCheckDetail.vue 2 ●●● patch | view | raw | blame | history
subPackage/workbench/views/workLog.vue 54 ●●●● patch | view | raw | blame | history
api/reporting/reporting.js
@@ -189,7 +189,7 @@
    })
}
//消防自查
//消防自查提交
export const savePlaceCheck = (data) => {
    return http.request({
        url: '/blade-taskPlaceSelfCheck/taskPlaceSelfCheck/saveTwo',
@@ -198,6 +198,16 @@
    })
}
//消防自查保存
export const updatePlaceCheck = (data) => {
    return http.request({
        url: '/blade-taskPlaceSelfCheck/taskPlaceSelfCheck/saveTwo',
        method: 'POST',
        data: data
    })
}
//消防自查详情
export const getPlaceCheckDetail = (params) => {
    return http.request({
common/common.js
@@ -29,6 +29,15 @@
    }
}
/**
 *
 *  显示完整路径
 */
export const setFullUrl = (str) => {
    return `${minioBaseUrl}${str}`
}
export const showTips = (text, icon) => {
    uni.showToast({
main.js
@@ -10,7 +10,8 @@
    showTips,
    getIndex,
    formattingUrls,
    setLabelColor
    setLabelColor,
    setFullUrl
} from '@/common/common.js'
Vue.config.productionTip = false;
@@ -42,7 +43,7 @@
Vue.prototype.$getIndex = getIndex;
Vue.prototype.$formattingUrls = formattingUrls;
Vue.prototype.$setLabelColor = setLabelColor;
Vue.prototype.$setFullUrl = setFullUrl
// 公共函数
import globalFunc from '@/utils/func.js'
Vue.use(globalFunc, app);
subPackage/article/detail.vue
@@ -139,7 +139,7 @@
        </view>
        <view class="footer">
        <view class="footer" v-if="detailInfo.iscomment == 1">
            <u-search searchIcon='edit-pen' :animation="true" placeholder="写评论" disabled
                @click="navToComment"></u-search>
        </view>
subPackage/label/check.vue
@@ -97,7 +97,9 @@
    } from "@/api/place/place.js"
    import {
        savePlaceCheck
        savePlaceCheck,
        getPlaceCheckDetail,
        updatePlaceCheck
    } from "@/api/reporting/reporting.js"
    export default {
@@ -148,17 +150,59 @@
                ],
                time: Number(new Date()),
                showSelectDate: false,
                dangerCount: 0 //隐患项数量
                dangerCount: 0, //隐患项数量
                isEdit: false
            }
        },
        onLoad(option) {
            this.info.houseCode = uni.getStorageSync("siteInfo").houseCode;
            this.info.placeName = uni.getStorageSync("siteInfo").name;
            this.getItem();
        async onLoad(option) {
            await this.getItem();
            if (option.taskId) {
                this.isEdit = true;
                this.getDetail(option.taskId)
            } else {
                this.info.houseCode = uni.getStorageSync("siteInfo").houseCode;
                this.info.placeName = uni.getStorageSync("siteInfo").name;
            }
        },
        methods: {
            getDetail(id) {
                getPlaceCheckDetail({
                    taskId: id
                }).then(res => {
                    let data = res.data;
                    for (let i = 0, ii = this.questionList.length; i < ii; i++) {
                        for (let k = 0, kk = this.questionList[i].children.length; k < kk; k++) {
                            for (let j = 0, jj = data.taskPlaceRecordVOList.length; j < jj; j++) {
                                if (this.questionList[i].children[k].id == data.taskPlaceRecordVOList[j].itemId) {
                                    let children = this.questionList[i]
                                    children.children[k].state = data.taskPlaceRecordVOList[j].state;
                                    if (data.taskPlaceRecordVOList[j].imageUrls) {
                                        children.children[k].urls = this.$setImageUrl(data.taskPlaceRecordVOList[j]
                                            .imageUrls, 2);
                                    }
                                    children.children[k].remark = data.taskPlaceRecordVOList[j].remark || "";
                                    this.$set(this.questionList, i, children)
                                }
                            }
                        }
                    }
                    this.info.remark = data.remark;
                    if (data.signaturePath) {
                        this.signatureUrl = this.$setFullUrl(data.signaturePath);
                        this.info.signaturePath = data.signaturePath;
                    }
                    this.form.images = this.$setImageUrl(data.imageUrls, 2)
                })
            },
            getItem() {
                getPlaceCheckItem().then(res => {
                    let data = res.data;
@@ -328,18 +372,34 @@
                this.info.taskPlaceRecordVOList = this.getSelected()
                this.info.status = 1;
                savePlaceCheck(this.info).then(res => {
                    uni.hideLoading();
                    uni.showToast({
                        icon: 'success',
                        title: '提交成功',
                        success() {
                            setTimeout(() => {
                                uni.navigateBack();
                            }, 300)
                        }
                if (this.isEdit) {
                    updatePlaceCheck(this.info).then(res => {
                        uni.hideLoading();
                        uni.showToast({
                            icon: 'success',
                            title: '提交成功',
                            success() {
                                setTimeout(() => {
                                    uni.navigateBack();
                                }, 300)
                            }
                        })
                    })
                })
                } else {
                    savePlaceCheck(this.info).then(res => {
                        uni.hideLoading();
                        uni.showToast({
                            icon: 'success',
                            title: '提交成功',
                            success() {
                                setTimeout(() => {
                                    uni.navigateBack();
                                }, 300)
                            }
                        })
                    })
                }
            },
            previewImg() {
subPackage/workbench/views/patrol.vue
@@ -3,18 +3,18 @@
        <view class="content bgc-ff">
            <u-form labelPosition="left" :model="info" :rules="rules" ref="form" labelWidth="90"
                :labelStyle="{fontSize:'28rpx'}">
                <u-form-item label="巡查标题" prop="info.name" borderBottom required>
                <u-form-item label="巡查标题" prop="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="patrolTime" borderBottom required @click="showSelectDate = true">
                    <u-input v-model="info.patrolTime" 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="address" :borderBottom="false" required>
                <u-form-item label="巡查位置" prop="location" :borderBottom="false" required>
                    <view class="address-row flex">
                        <view class="address-content f-28" v-if="info.location">
                            {{info.location}}
@@ -78,7 +78,8 @@
                info: {
                    name: "",
                    context: "",
                    patrolTime: ""
                    patrolTime: "",
                    location: ""
                },
                rules: {
                    'name': {
subPackage/workbench/views/selfCheckDetail.vue
@@ -346,7 +346,7 @@
            navTo() {
                uni.navigateTo({
                    url: "/subPackage/label/check"
                    url: `/subPackage/label/check?taskId=${this.info.taskId}`
                })
            },
subPackage/workbench/views/workLog.vue
@@ -15,7 +15,8 @@
                    <u-icon slot="right" name="arrow-right"></u-icon>
                </u-form-item>
                <u-form-item label="被访人姓名" prop="name" :borderBottom="false" required @click="isShowPopup = true">
                <u-form-item label="被访人姓名" prop="householdId" :borderBottom="false" required
                    @click="isShowPopup = true">
                    <u-input v-model="selectedHousehold.name" disabled disabledColor="#fff" border="none"
                        placeholder="请选择" placeholderClass="f-28 c-99" inputAlign="right"></u-input>
                    <u-icon slot="right" name="arrow-right"></u-icon>
@@ -39,7 +40,7 @@
                    <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 required>
                <u-form-item label="内容" borderBottom required prop="context">
                    <u-input type="textarea" v-model="info.context" border="none" placeholderClass="f-28 c-99"
                        inputAlign="right" placeholder="请输入内容">
                    </u-input>
@@ -141,7 +142,11 @@
                info: {
                    // name: "",
                    // phone: "",
                    context: ""
                    type: "",
                    householdId: "",
                    context: "",
                    workTime: "",
                    personType: ""
                },
                rules: {
                    // 'name': {
@@ -157,24 +162,30 @@
                    //     trigger: ['blur', 'change']
                    // },
                    'info.type': {
                        type: 'string',
                    type: [{
                        type: 'number',
                        required: true,
                        message: '请选择走访类型',
                        trigger: ['blur', 'change']
                    },
                    'info.householdId': {
                    }],
                    // peopleType: [{
                    //     type: 'number',
                    //     required: true,
                    //     message: '请选择重点人群类型',
                    //     trigger: ['blur', 'change']
                    // }],
                    householdId: [{
                        type: 'string',
                        required: true,
                        message: '请选择被访问人',
                        trigger: ['blur', 'change']
                    },
                    'info.context': {
                    }],
                    context: [{
                        type: 'string',
                        required: true,
                        message: '请输入工作内容',
                        trigger: ['blur', 'change']
                    },
                    }],
                },
                showSelectDate: false,
                workTime: Number(new Date()),
@@ -216,6 +227,11 @@
            }
        },
        onReady() {
            //onReady 为uni-app支持的生命周期之一
            this.$refs.form.setRules(this.rules)
        },
        methods: {
            getDetail(id) {
@@ -230,17 +246,21 @@
                        if (data.workTime) {
                            this.workTime = Number(new Date(data.workTime))
                        }
                        this.info.type = data.type;
                        this.info.workTime = data.workTime;
                        this.info.context = data.context;
                        this.info.householdId = data.householdId;
                        this.info.personType = data.personType;
                        // this.info.type = data.type;
                        // this.info.workTime = data.workTime;
                        // this.info.context = data.context;
                        // this.info.householdId = data.householdId;
                        // this.info.personType = data.personType;
                        console.log(typeof data.personType)
                        this.labelIndex = this.$getIndex(this.labelList[0], data.personType, "id", "name").index;
                        this.labelName = this.$getIndex(this.labelList[0], data.personType, "id", "name").name;
                        this.getHouseholdList();
                        this.getHousehold(data.householdId);
                        this.form.images = this.$setImageUrl(data.url, 2);
                        this.info.id = data.id;
                        for (let i in this.info) {
                            this.$set(this.info, i, data[i])
                        }
                    }
                })
            },
@@ -354,6 +374,10 @@
                this.$refs.form.validate().then(valid => {
                    this.checkImages();
                    this.info.status = 2;
                    if (this.info.type == 2 && !this.info.personType) {
                        this.$showTips("请选择重点人群类型")
                        return
                    }
                    if (this.isEdit) {
                        this.updateWorkLogRequest()
                    } else {