App-Android(使用App+htnl5框架,解决消息推送兼容SignalR问题)
loulijun2021
2022-10-10 542593742c26593b049b83b00e1a17209af13343
1.维修验证页面开发完成
已修改4个文件
708 ■■■■■ 文件已修改
pages/sbgl/sbwx.html 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/sbgl/wxyz.html 353 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
unpackage/cache/wgt/H5EDA0853/pages/sbgl/sbwx.html 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
unpackage/cache/wgt/H5EDA0853/pages/sbgl/wxyz.html 353 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pages/sbgl/sbwx.html
@@ -383,6 +383,7 @@
                    const formData = new FormData()
                    formData.append("username", localStorage.getItem('username'))
                    formData.append("docu_code", result.docu_code)
                    formData.append("eqpcode", result.eqpcode)
                    formData.append("wkshpcode", result.wksp_code)
                    formData.append("faultdescr", this.messageDescr)
pages/sbgl/wxyz.html
@@ -22,62 +22,63 @@
        <script type="text/javascript" src="../../js/global.js"></script>
        <script type="text/javascript">
            var topContent = [{
                    wxsqd: 'SB00990001',
                    code: 'SB001',
                    name: '齿轮箱组',
                    wksp_code: "CJ002",
                    wksp_name: '装配车间',
                    eqpchkmain_code: "djbz002",
                    sqry: '佩罗西',
                    sqsj: '2022-09-20 15:20:30',
                    gzly: '设备点检',
                    gzms: '精工车间注塑机一号开不精工车间注塑机一号开不',
                    arrowType: true, //箭头类别
                    messageDescr: '123',
                    fileList: [],
                },
                {
                    wxsqd: 'SB00990002',
                    code: 'SB002',
                    name: '齿轮箱组',
                    wksp_code: "CJ002",
                    wksp_name: '装配车间',
                    eqpchkmain_code: "djbz002",
                    sqry: '佩罗西',
                    sqsj: '2022-09-20 15:20:30',
                    gzly: '设备点检',
                    gzms: '精工车间注塑机一号开不',
                    arrowType: true, //箭头类别
                    messageDescr: '123',
                    fileList: [],
                },
            var topContent = [
                // {
                //     wxsqd: 'SB00990003',
                //     code: 'SB003',
                //     name: '齿轮箱组',
                //     repair_code: 'SB00990001',
                //     eqpcode: 'SB001',
                //     eqpname: '齿轮箱组',
                //     wksp_code: "CJ002",
                //     wksp_name: '装配车间',
                //     eqpchkmain_code: "djbz002",
                //     sqry: '佩罗西',
                //     sqsj: '2022-09-20 15:20:30',
                //     gzly: '设备点检',
                //     gzms: '精工车间注塑机一号开不了',
                //     repair_person: '佩罗西',
                //     repair_date: '2022-09-20 15:20:30',
                //     is_shutdown: 'Y',
                //     failure_descript: '精工车间注塑机一号开不精工车间注塑机一号开不',
                //     arrowType: true, //箭头类别
                //     messageDescr: '123',
                //     fileList: [],
                // },
                // {
                //     wxsqd: 'SB00990004',
                //     code: 'SB004',
                //     name: '齿轮箱组',
                //     repair_code: 'SB00990002',
                //     eqpcode: 'SB002',
                //     eqpname: '齿轮箱组',
                //     wksp_code: "CJ002",
                //     wksp_name: '装配车间',
                //     eqpchkmain_code: "djbz002",
                //     sqry: '佩罗西',
                //     sqsj: '2022-09-20 15:20:30',
                //     gzly: '设备点检',
                //     gzms: '精工车间注塑机一号开不了',
                //     repair_person: '佩罗西',
                //     repair_date: '2022-09-20 15:20:30',
                //     is_shutdown: 'N',
                //     failure_descript: '精工车间注塑机一号开不',
                //     arrowType: true, //箭头类别
                //     messageDescr: '123',
                //     fileList: [],
                // },
                // {
                //     repair_code: 'SB00990003',
                //     eqpcode: 'SB003',
                //     eqpname: '齿轮箱组',
                //     wksp_code: "CJ002",
                //     wksp_name: '装配车间',
                //     eqpchkmain_code: "djbz002",
                //     repair_person: '佩罗西',
                //     repair_date: '2022-09-20 15:20:30',
                //     is_shutdown: 'Y',
                //     failure_descript: '精工车间注塑机一号开不了',
                //     arrowType: true, //箭头类别
                //     messageDescr: '123',
                //     fileList: [],
                // },
                // {
                //     repair_code: 'SB00990004',
                //     eqpcode: 'SB004',
                //     eqpname: '齿轮箱组',
                //     wksp_code: "CJ002",
                //     wksp_name: '装配车间',
                //     eqpchkmain_code: "djbz002",
                //     repair_person: '佩罗西',
                //     repair_date: '2022-09-20 15:20:30',
                //     is_shutdown: 'N',
                //     failure_descript: '精工车间注塑机一号开不了',
                //     arrowType: true, //箭头类别
                //     messageDescr: '123',
                //     fileList: [],
@@ -96,26 +97,26 @@
                radioValue = r
                // let temp = {}
                // let flag = false
                // topContent.forEach((item, index) => {
                //     if (item.code === radioValue) {
                //         temp = item
                //         topContent.splice(index, 1)
                //         flag = true
                //     }
                // })
                // if (flag) {
                //     topContent.unshift(temp)
                // } else {
                //     vant.Notify({
                //         type: 'danger',
                //         message: '所扫二维码围在列表中!'
                //     })
                //     if (topContent.length > 0) {
                //         radioValue = topContent[0].code
                //     }
                // }
                let temp = {}
                let flag = false
                topContent.forEach((item, index) => {
                    if (item.repair_code === radioValue) {
                        temp = item
                        topContent.splice(index, 1)
                        flag = true
                    }
                })
                if (flag) {
                    topContent.unshift(temp)
                } else {
                    vant.Notify({
                        type: 'danger',
                        message: '所扫二维码围在列表中!'
                    })
                    if (topContent.length > 0) {
                        radioValue = topContent[0].repair_code
                    }
                }
@@ -178,24 +179,28 @@
                    <van-radio-group v-model="radioValue">
                        <van-cell-group>
                            <div class="head" style="width: 96%;float: left;margin-right: 0;"
                                v-for="(item,index) in topContent" :key="item.code" @click="topContentClcik(item.code)">
                                <div class="cellDiv">维修申请单:{{item.wxsqd}}</div>
                                <div class="cellDiv">工位编码:{{item.code}}</div>
                                <div class="cellDiv">工位名称:{{item.name}}</div>
                                v-for="(item,index) in topContent"
                                @click="topContentClcik(item.repair_code,item.eqpcode,item.wksp_code)"
                                :key="item.repair_code">
                                <div class="cellDiv">设备维修单:{{item.repair_code}}</div>
                                <div class="cellDiv">工位编码:{{item.eqpcode}}</div>
                                <div class="cellDiv">工位名称:{{item.eqpname}}</div>
                                <div class="cellDiv">生产车间:{{item.wksp_name}}</div>
                                <van-cell :title="'申请人员:'+item.sqry">
                                <van-cell :title="'申请人员:'+item.repair_person">
                                    <template #right-icon>
                                        <van-radio style="margin-right: 10px;" checked-color='red' :name="item.code" />
                                        <van-radio style="margin-right: 10px;" checked-color='red'
                                            :name="item.repair_code" />
                                    </template>
                                </van-cell>
                                <div class="cellDiv">申请时间:{{item.sqsj}}</div>
                                <div class="cellDiv">故障来源:{{item.gzly}}</div>
                                <div class="cellDiv">故障描述:{{item.gzms}}</div>
                                <div class="cellDiv">维修时间:{{item.repair_date}}</div>
                                <div class="cellDiv">停机维修:{{item.is_shutdown==='Y'?'是':'否'}}</div>
                                <div class="cellDiv">故障描述:{{item.failure_descript}}</div>
                                <div v-show="item.arrowType" style="height: 30px;margin: auto;margin-top: 10px;"
                                    :style="{marginBottom:(topContent.length-1===index)?'70px':'0px'}">
                                    <div style="border-radius: 5px;width: 60px;height: 30px;background-color: aliceblue;"
                                        @click="arrowTypeChangeDown(item.code)" class="flex_center_center">
                                        @click="arrowTypeChangeDown(item.repair_code,item.eqpcode,item.wksp_code)"
                                        class="flex_center_center">
                                        <van-icon :name="item.arrowType?'arrow-down':'arrow-up'" />
                                    </div>
                                </div>
@@ -221,13 +226,11 @@
                                        <div
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px 10px 0 10px;">
                                            <!--     <van-field class="vanFieldInputArea" readonly v-model="item.messageDescr"
                                                rows="2" autosize type="textarea" placeholder="请输入" /> -->
                                            {{item.messageDescr}}
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px;">
                                            {{messageDescr}}
                                        </div>
                                        <div style="width: 96%;margin: auto;">
                                            <van-uploader multiple v-model="item.fileList" multiple :max-count="3" />
                                        <div v-show="fileList.length!==0" style="width: 96%;margin: auto;">
                                            <van-uploader multiple v-model="fileList" multiple :max-count="3" />
                                        </div>
                                    </div>
@@ -244,8 +247,9 @@
                                                </div>
                                            </div>
                                            <van-button class="buttonSmall" plain size="small" type="primary">
                                                否</van-button>
                                            <van-button class="buttonSmall" size="small" type="primary">
                                                {{isStop==='Y'?'是':'否'}}
                                            </van-button>
                                        </div>
@@ -253,7 +257,7 @@
                                    <div style="background-color: #eff0f1;height: 10px;"></div>
                                    <div class="head" style="padding-bottom: 0;">
                                    <div class="head" style="padding-bottom: 0;" v-show="messageDescr2!==''">
                                        <div class="head_block">
                                            <div class="head_left">
                                                <div class="head_bar"></div>
@@ -264,11 +268,8 @@
                                        </div>
                                        <div
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px 10px 0 10px;">
                                            <!--                 <van-field class="vanFieldInputArea" readonly v-model="item.messageDescr"
                                                rows="2" autosize type="textarea" placeholder="请输入" />
                                 -->
                                            {{item.messageDescr}}
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px;">
                                            {{messageDescr2}}
                                        </div>
                                    </div>
@@ -276,7 +277,7 @@
                                    <div style="background-color: #eff0f1;height: 10px;"></div>
                                    <div class="head" style="padding-bottom: 0;">
                                    <div class="head" style="padding-bottom: 0;" v-show="messageDescr3!==''">
                                        <div class="head_block">
                                            <div class="head_left">
                                                <div class="head_bar"></div>
@@ -289,13 +290,11 @@
                                        <div
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px 10px 0 10px;">
                                            <!--     <van-field class="vanFieldInputArea" readonly v-model="item.messageDescr"
                                                rows="2" autosize type="textarea" placeholder="请输入" /> -->
                                            {{item.messageDescr}}
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px;">
                                            {{messageDescr3}}
                                        </div>
                                        <div style="width: 96%;margin: auto;">
                                            <van-uploader multiple v-model="item.fileList" multiple :max-count="3" />
                                        <div v-show="fileList2.length!==0" style="width: 96%;margin: auto;">
                                            <van-uploader multiple v-model="fileList2" multiple :max-count="3" />
                                        </div>
                                    </div>
@@ -313,9 +312,14 @@
                                            <div class="flex_center"
                                                style="width: 30%;display: flex;justify-content: space-around;">
                                                <van-button class="buttonSmall" size="small" plain type="primary">
                                                <van-button class="buttonSmall" size="small"
                                                    :plain="item.resultValue!=='OK'"
                                                    @click="resultValueClick(item.repair_code,'OK')" type="primary">
                                                    正常</van-button>
                                                <van-button class="buttonSmall" size="small" plain type="danger">异常
                                                <van-button class="buttonSmall" size="small"
                                                    :plain="item.resultValue!=='NG'"
                                                    @click="resultValueClick(item.repair_code,'NG')" type="danger">
                                                    异常
                                                </van-button>
                                            </div>
@@ -327,7 +331,7 @@
                                    <div v-show="!item.arrowType" style="height: 30px;margin: auto;margin-top: 10px;"
                                        :style="{marginBottom:(topContent.length-1===index)?'70px':'0px'}">
                                        <div style="border-radius: 5px;width: 60px;height: 30px;background-color: aliceblue;"
                                            @click="arrowTypeChangeUp(item.code)" class="flex_center_center">
                                            @click="arrowTypeChangeUp(item.repair_code)" class="flex_center_center">
                                            <van-icon :name="item.arrowType?'arrow-down':'arrow-up'" />
                                        </div>
                                    </div>
@@ -339,11 +343,13 @@
                        </van-cell-group>
                    </van-radio-group>
                    <div class="footer" style="min-height:50px;">
                        <div
                            style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center">
                            <van-button :loading="submitIsDisabled" loading-text='正在提交,请稍等...' class="vanButtonInfo"
                                @click="submit" type="info">
                            <van-button :loading="submitIsDisabled"
                                :disabled="topContent.find(item=>item.repair_code===radioValue).resultValue===''"
                                loading-text='正在提交,请稍等...' class="vanButtonInfo" @click="submit" type="info">
                                确认提交</van-button>
                        </div>
@@ -378,20 +384,15 @@
                    }],
                    topContent2: topContent,
                    messageDescr: '', //故障描述  必填
                    fileList: [
                        // {
                        //     url: 'https://img01.yzcdn.cn/vant/leaf.jpg'
                        // },
                        // Uploader 根据文件后缀来判断是否为图片文件
                        // 如果图片 URL 中不包含类型信息,可以添加 isImage 标记来声明
                        // {
                        //     url: 'https://img01.yzcdn.cn/vant/leaf.jpg'
                        // },
                    ],
                    messageDescr: '', //故障描述
                    fileList: [],
                    fileList2: [],
                    isStop: 'Y',
                    messageContent: '', //维修内容  当维修停机选了否   此字段必填
                    falseArray2: falseArray
                    messageDescr2: '', //维修内容
                    messageDescr3: '', //更换备件
                    falseArray2: falseArray,
                    baseUrl: 'http://121.196.36.24:8001', //ip基础地址
                    // resultValue: '', //验证结果
                }
            },
            watch: {
@@ -400,9 +401,10 @@
                        if (newValue !== oldValue) {
                            // this.topContent2 = topContent
                            // this.$forceUpdate()
                            if (topContent[0] && topContent[0].code) {
                            if (topContent[0] && topContent[0].repair_code) {
                                this.$forceUpdate()
                                this.topContentClcik(topContent[0].code)
                                this.topContentClcik(topContent[0].repair_code, topContent[0].eqpcode, topContent[0]
                                    .wksp_code)
                            }
                        }
@@ -420,55 +422,127 @@
            },
            created() {},
            mounted() {
                // this.getList()
                this.getList()
            },
            methods: {
                getList() {
                    get('AppDeviceManage/RepairVerificationScanDeviceData').then(res => {
                        if (res.code === '200') {
                            topContent = res.data
                            radioValue = topContent[0].repair_code
                        
                            topContent.forEach(item => {
                                item.arrowType = true
                                item.resultValue = ''
                            })
                            this.getDetail(topContent[0].repair_code, topContent[0].eqpcode, topContent[0]
                                .wksp_code)
                            this.$forceUpdate()
                        }
                    })
                },
                arrowTypeChangeUp(code) {
                getDetail(repair_code, eqpcode, wkshpcode) {
                    const data = {
                        repair_code,
                        eqpcode,
                        wkshpcode
                    }
                    get('AppDeviceManage/RepairVerificationScanDeviceDataSub' + formatParams(data)).then(res => {
                        if (res.code === '200') {
                            console.log(res.data)
                            this.messageDescr = res.data.failure_descript
                            this.fileList = res.data.failure_descriptimg ? res.data.failure_descriptimg
                                .filter(item => item.img1url !== '') : []
                            this.fileList.forEach(item => {
                                item.url = this.baseUrl + item.img1url
                            })
                            this.isStop = res.data.repair_content ? 'N' : 'Y'
                            this.messageDescr2 = res.data.repair_content ? res.data.repair_content : ''
                            this.messageDescr3 = res.data.repair_part ? res.data.repair_part : ''
                            this.fileList2 = res.data.repair_partimage ? res.data.repair_partimage.filter(
                                item => item.img2url !== '') : []
                            this.fileList2.forEach(item => {
                                item.url = this.baseUrl + item.img2url
                            })
                            this.$forceUpdate()
                        }
                    })
                },
                arrowTypeChangeUp(repair_code) {
                    topContent.forEach(item => {
                        item.arrowType = true
                    })
                    this.$forceUpdate()
                },
                arrowTypeChangeDown(code) {
                arrowTypeChangeDown(repair_code, eqpcode, wksp_code) {
                    radioValue = repair_code
                    topContent.forEach(item => {
                        item.arrowType = true
                        if (item.code === code) {
                        if (item.repair_code === repair_code) {
                            item.arrowType = false
                            item.resultValue = ''
                            this.messageDescr = ''
                            this.messageDescr2 = ''
                            this.messageDescr3 = ''
                            this.fileList = []
                            this.fileList2 = []
                            // this.resultValue =''
                            this.getDetail(item.repair_code, item.eqpcode, item.wksp_code)
                        }
                    })
                    this.$forceUpdate()
                },
                submit() {
                    const result = topContent.find(item => item.code === radioValue)
                    // if(this.resultValue===''){
                    // return
                    // }
                    const result = topContent.find(item => item.repair_code === radioValue)
                    const formData = new FormData()
                    formData.append("username", localStorage.getItem('username'))
                    formData.append("eqpcode", result.code)
                    formData.append("eqpcode", result.eqpcode)
                    formData.append("wkshpcode", result.wksp_code)
                    formData.append("faultdescr", this.messageDescr)
                    formData.append("is_stoprepair", this.isStop)
                    formData.append("repaircontent", this.messageDescr2)
                    formData.append("replaceparts", this.messageDescr3)
                    // this.fileList.forEach(item => {
                    //     formData.append('files1', item.file)
                    // })
                    formData.append("repairwo", result.repair_code)
                    formData.append("result", result.resultValue)
                    for (let [a, b] of formData.entries()) {
                        console.log(a, ', ', b);
                    }
                    // post('AppDeviceManage/RepairVerificationScanDeviceSave', formData).then(res => {
                    //     if (res.code === '200') {
                    //     }
                    // })
                    post('AppDeviceManage/RepairVerificationScanDeviceSave', formData).then(res => {
                        if (res.code === '200') {
                            topContent.forEach((item, index) => {
                                if (item.repair_code === radioValue) {
                                    topContent.splice(index, 1)
                                }
                            })
                            if (topContent.length > 0) {
                                radioValue = topContent[0].repair_code
                                this.getDetail(topContent[0].repair_code, topContent[0].eqpcode, topContent[0]
                                    .wksp_code)
                            }
                            // this.resultValue=''
                            this.$forceUpdate()
                        }
                    })
                },
                resultValueClick(repair_code, val) {
                    topContent.forEach(item => {
                        if (item.repair_code === repair_code) {
                            item.resultValue = val
                        }
                    })
                    // this.resultValue = val
                    this.$forceUpdate()
                },
                topScanClick() {
                    createWithoutTitle('../../components/barcode_scan.html', {
@@ -491,8 +565,15 @@
                vanFieldBlur() {
                    this.$forceUpdate()
                },
                topContentClcik(code) {
                    radioValue = code
                topContentClcik(repair_code, eqpcode, wksp_code) {
                    radioValue = repair_code
                    // this.resultValue = ''
                    // topContent.forEach(item => {
                    //     if (item.repair_code === repair_code) {
                    //         this.getDetail(item.repair_code, item.eqpcode, item.wksp_code)
                    //     }
                    // })
                    this.$forceUpdate()
                },
                onClickleft() {
unpackage/cache/wgt/H5EDA0853/pages/sbgl/sbwx.html
@@ -383,6 +383,7 @@
                    const formData = new FormData()
                    formData.append("username", localStorage.getItem('username'))
                    formData.append("docu_code", result.docu_code)
                    formData.append("eqpcode", result.eqpcode)
                    formData.append("wkshpcode", result.wksp_code)
                    formData.append("faultdescr", this.messageDescr)
unpackage/cache/wgt/H5EDA0853/pages/sbgl/wxyz.html
@@ -22,62 +22,63 @@
        <script type="text/javascript" src="../../js/global.js"></script>
        <script type="text/javascript">
            var topContent = [{
                    wxsqd: 'SB00990001',
                    code: 'SB001',
                    name: '齿轮箱组',
                    wksp_code: "CJ002",
                    wksp_name: '装配车间',
                    eqpchkmain_code: "djbz002",
                    sqry: '佩罗西',
                    sqsj: '2022-09-20 15:20:30',
                    gzly: '设备点检',
                    gzms: '精工车间注塑机一号开不精工车间注塑机一号开不',
                    arrowType: true, //箭头类别
                    messageDescr: '123',
                    fileList: [],
                },
                {
                    wxsqd: 'SB00990002',
                    code: 'SB002',
                    name: '齿轮箱组',
                    wksp_code: "CJ002",
                    wksp_name: '装配车间',
                    eqpchkmain_code: "djbz002",
                    sqry: '佩罗西',
                    sqsj: '2022-09-20 15:20:30',
                    gzly: '设备点检',
                    gzms: '精工车间注塑机一号开不',
                    arrowType: true, //箭头类别
                    messageDescr: '123',
                    fileList: [],
                },
            var topContent = [
                // {
                //     wxsqd: 'SB00990003',
                //     code: 'SB003',
                //     name: '齿轮箱组',
                //     repair_code: 'SB00990001',
                //     eqpcode: 'SB001',
                //     eqpname: '齿轮箱组',
                //     wksp_code: "CJ002",
                //     wksp_name: '装配车间',
                //     eqpchkmain_code: "djbz002",
                //     sqry: '佩罗西',
                //     sqsj: '2022-09-20 15:20:30',
                //     gzly: '设备点检',
                //     gzms: '精工车间注塑机一号开不了',
                //     repair_person: '佩罗西',
                //     repair_date: '2022-09-20 15:20:30',
                //     is_shutdown: 'Y',
                //     failure_descript: '精工车间注塑机一号开不精工车间注塑机一号开不',
                //     arrowType: true, //箭头类别
                //     messageDescr: '123',
                //     fileList: [],
                // },
                // {
                //     wxsqd: 'SB00990004',
                //     code: 'SB004',
                //     name: '齿轮箱组',
                //     repair_code: 'SB00990002',
                //     eqpcode: 'SB002',
                //     eqpname: '齿轮箱组',
                //     wksp_code: "CJ002",
                //     wksp_name: '装配车间',
                //     eqpchkmain_code: "djbz002",
                //     sqry: '佩罗西',
                //     sqsj: '2022-09-20 15:20:30',
                //     gzly: '设备点检',
                //     gzms: '精工车间注塑机一号开不了',
                //     repair_person: '佩罗西',
                //     repair_date: '2022-09-20 15:20:30',
                //     is_shutdown: 'N',
                //     failure_descript: '精工车间注塑机一号开不',
                //     arrowType: true, //箭头类别
                //     messageDescr: '123',
                //     fileList: [],
                // },
                // {
                //     repair_code: 'SB00990003',
                //     eqpcode: 'SB003',
                //     eqpname: '齿轮箱组',
                //     wksp_code: "CJ002",
                //     wksp_name: '装配车间',
                //     eqpchkmain_code: "djbz002",
                //     repair_person: '佩罗西',
                //     repair_date: '2022-09-20 15:20:30',
                //     is_shutdown: 'Y',
                //     failure_descript: '精工车间注塑机一号开不了',
                //     arrowType: true, //箭头类别
                //     messageDescr: '123',
                //     fileList: [],
                // },
                // {
                //     repair_code: 'SB00990004',
                //     eqpcode: 'SB004',
                //     eqpname: '齿轮箱组',
                //     wksp_code: "CJ002",
                //     wksp_name: '装配车间',
                //     eqpchkmain_code: "djbz002",
                //     repair_person: '佩罗西',
                //     repair_date: '2022-09-20 15:20:30',
                //     is_shutdown: 'N',
                //     failure_descript: '精工车间注塑机一号开不了',
                //     arrowType: true, //箭头类别
                //     messageDescr: '123',
                //     fileList: [],
@@ -96,26 +97,26 @@
                radioValue = r
                // let temp = {}
                // let flag = false
                // topContent.forEach((item, index) => {
                //     if (item.code === radioValue) {
                //         temp = item
                //         topContent.splice(index, 1)
                //         flag = true
                //     }
                // })
                // if (flag) {
                //     topContent.unshift(temp)
                // } else {
                //     vant.Notify({
                //         type: 'danger',
                //         message: '所扫二维码围在列表中!'
                //     })
                //     if (topContent.length > 0) {
                //         radioValue = topContent[0].code
                //     }
                // }
                let temp = {}
                let flag = false
                topContent.forEach((item, index) => {
                    if (item.repair_code === radioValue) {
                        temp = item
                        topContent.splice(index, 1)
                        flag = true
                    }
                })
                if (flag) {
                    topContent.unshift(temp)
                } else {
                    vant.Notify({
                        type: 'danger',
                        message: '所扫二维码围在列表中!'
                    })
                    if (topContent.length > 0) {
                        radioValue = topContent[0].repair_code
                    }
                }
@@ -178,24 +179,28 @@
                    <van-radio-group v-model="radioValue">
                        <van-cell-group>
                            <div class="head" style="width: 96%;float: left;margin-right: 0;"
                                v-for="(item,index) in topContent" :key="item.code" @click="topContentClcik(item.code)">
                                <div class="cellDiv">维修申请单:{{item.wxsqd}}</div>
                                <div class="cellDiv">工位编码:{{item.code}}</div>
                                <div class="cellDiv">工位名称:{{item.name}}</div>
                                v-for="(item,index) in topContent"
                                @click="topContentClcik(item.repair_code,item.eqpcode,item.wksp_code)"
                                :key="item.repair_code">
                                <div class="cellDiv">设备维修单:{{item.repair_code}}</div>
                                <div class="cellDiv">工位编码:{{item.eqpcode}}</div>
                                <div class="cellDiv">工位名称:{{item.eqpname}}</div>
                                <div class="cellDiv">生产车间:{{item.wksp_name}}</div>
                                <van-cell :title="'申请人员:'+item.sqry">
                                <van-cell :title="'申请人员:'+item.repair_person">
                                    <template #right-icon>
                                        <van-radio style="margin-right: 10px;" checked-color='red' :name="item.code" />
                                        <van-radio style="margin-right: 10px;" checked-color='red'
                                            :name="item.repair_code" />
                                    </template>
                                </van-cell>
                                <div class="cellDiv">申请时间:{{item.sqsj}}</div>
                                <div class="cellDiv">故障来源:{{item.gzly}}</div>
                                <div class="cellDiv">故障描述:{{item.gzms}}</div>
                                <div class="cellDiv">维修时间:{{item.repair_date}}</div>
                                <div class="cellDiv">停机维修:{{item.is_shutdown==='Y'?'是':'否'}}</div>
                                <div class="cellDiv">故障描述:{{item.failure_descript}}</div>
                                <div v-show="item.arrowType" style="height: 30px;margin: auto;margin-top: 10px;"
                                    :style="{marginBottom:(topContent.length-1===index)?'70px':'0px'}">
                                    <div style="border-radius: 5px;width: 60px;height: 30px;background-color: aliceblue;"
                                        @click="arrowTypeChangeDown(item.code)" class="flex_center_center">
                                        @click="arrowTypeChangeDown(item.repair_code,item.eqpcode,item.wksp_code)"
                                        class="flex_center_center">
                                        <van-icon :name="item.arrowType?'arrow-down':'arrow-up'" />
                                    </div>
                                </div>
@@ -221,13 +226,11 @@
                                        <div
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px 10px 0 10px;">
                                            <!--     <van-field class="vanFieldInputArea" readonly v-model="item.messageDescr"
                                                rows="2" autosize type="textarea" placeholder="请输入" /> -->
                                            {{item.messageDescr}}
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px;">
                                            {{messageDescr}}
                                        </div>
                                        <div style="width: 96%;margin: auto;">
                                            <van-uploader multiple v-model="item.fileList" multiple :max-count="3" />
                                        <div v-show="fileList.length!==0" style="width: 96%;margin: auto;">
                                            <van-uploader multiple v-model="fileList" multiple :max-count="3" />
                                        </div>
                                    </div>
@@ -244,8 +247,9 @@
                                                </div>
                                            </div>
                                            <van-button class="buttonSmall" plain size="small" type="primary">
                                                否</van-button>
                                            <van-button class="buttonSmall" size="small" type="primary">
                                                {{isStop==='Y'?'是':'否'}}
                                            </van-button>
                                        </div>
@@ -253,7 +257,7 @@
                                    <div style="background-color: #eff0f1;height: 10px;"></div>
                                    <div class="head" style="padding-bottom: 0;">
                                    <div class="head" style="padding-bottom: 0;" v-show="messageDescr2!==''">
                                        <div class="head_block">
                                            <div class="head_left">
                                                <div class="head_bar"></div>
@@ -264,11 +268,8 @@
                                        </div>
                                        <div
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px 10px 0 10px;">
                                            <!--                 <van-field class="vanFieldInputArea" readonly v-model="item.messageDescr"
                                                rows="2" autosize type="textarea" placeholder="请输入" />
                                 -->
                                            {{item.messageDescr}}
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px;">
                                            {{messageDescr2}}
                                        </div>
                                    </div>
@@ -276,7 +277,7 @@
                                    <div style="background-color: #eff0f1;height: 10px;"></div>
                                    <div class="head" style="padding-bottom: 0;">
                                    <div class="head" style="padding-bottom: 0;" v-show="messageDescr3!==''">
                                        <div class="head_block">
                                            <div class="head_left">
                                                <div class="head_bar"></div>
@@ -289,13 +290,11 @@
                                        <div
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px 10px 0 10px;">
                                            <!--     <van-field class="vanFieldInputArea" readonly v-model="item.messageDescr"
                                                rows="2" autosize type="textarea" placeholder="请输入" /> -->
                                            {{item.messageDescr}}
                                            style="display:flex;flex-direction: column;width: 96%;margin: auto;padding: 10px;">
                                            {{messageDescr3}}
                                        </div>
                                        <div style="width: 96%;margin: auto;">
                                            <van-uploader multiple v-model="item.fileList" multiple :max-count="3" />
                                        <div v-show="fileList2.length!==0" style="width: 96%;margin: auto;">
                                            <van-uploader multiple v-model="fileList2" multiple :max-count="3" />
                                        </div>
                                    </div>
@@ -313,9 +312,14 @@
                                            <div class="flex_center"
                                                style="width: 30%;display: flex;justify-content: space-around;">
                                                <van-button class="buttonSmall" size="small" plain type="primary">
                                                <van-button class="buttonSmall" size="small"
                                                    :plain="item.resultValue!=='OK'"
                                                    @click="resultValueClick(item.repair_code,'OK')" type="primary">
                                                    正常</van-button>
                                                <van-button class="buttonSmall" size="small" plain type="danger">异常
                                                <van-button class="buttonSmall" size="small"
                                                    :plain="item.resultValue!=='NG'"
                                                    @click="resultValueClick(item.repair_code,'NG')" type="danger">
                                                    异常
                                                </van-button>
                                            </div>
@@ -327,7 +331,7 @@
                                    <div v-show="!item.arrowType" style="height: 30px;margin: auto;margin-top: 10px;"
                                        :style="{marginBottom:(topContent.length-1===index)?'70px':'0px'}">
                                        <div style="border-radius: 5px;width: 60px;height: 30px;background-color: aliceblue;"
                                            @click="arrowTypeChangeUp(item.code)" class="flex_center_center">
                                            @click="arrowTypeChangeUp(item.repair_code)" class="flex_center_center">
                                            <van-icon :name="item.arrowType?'arrow-down':'arrow-up'" />
                                        </div>
                                    </div>
@@ -339,11 +343,13 @@
                        </van-cell-group>
                    </van-radio-group>
                    <div class="footer" style="min-height:50px;">
                        <div
                            style="position:fixed;bottom: 0;width: 96%;display: flex;justify-content: center;flex-direction: column;align-items: center">
                            <van-button :loading="submitIsDisabled" loading-text='正在提交,请稍等...' class="vanButtonInfo"
                                @click="submit" type="info">
                            <van-button :loading="submitIsDisabled"
                                :disabled="topContent.find(item=>item.repair_code===radioValue).resultValue===''"
                                loading-text='正在提交,请稍等...' class="vanButtonInfo" @click="submit" type="info">
                                确认提交</van-button>
                        </div>
@@ -378,20 +384,15 @@
                    }],
                    topContent2: topContent,
                    messageDescr: '', //故障描述  必填
                    fileList: [
                        // {
                        //     url: 'https://img01.yzcdn.cn/vant/leaf.jpg'
                        // },
                        // Uploader 根据文件后缀来判断是否为图片文件
                        // 如果图片 URL 中不包含类型信息,可以添加 isImage 标记来声明
                        // {
                        //     url: 'https://img01.yzcdn.cn/vant/leaf.jpg'
                        // },
                    ],
                    messageDescr: '', //故障描述
                    fileList: [],
                    fileList2: [],
                    isStop: 'Y',
                    messageContent: '', //维修内容  当维修停机选了否   此字段必填
                    falseArray2: falseArray
                    messageDescr2: '', //维修内容
                    messageDescr3: '', //更换备件
                    falseArray2: falseArray,
                    baseUrl: 'http://121.196.36.24:8001', //ip基础地址
                    // resultValue: '', //验证结果
                }
            },
            watch: {
@@ -400,9 +401,10 @@
                        if (newValue !== oldValue) {
                            // this.topContent2 = topContent
                            // this.$forceUpdate()
                            if (topContent[0] && topContent[0].code) {
                            if (topContent[0] && topContent[0].repair_code) {
                                this.$forceUpdate()
                                this.topContentClcik(topContent[0].code)
                                this.topContentClcik(topContent[0].repair_code, topContent[0].eqpcode, topContent[0]
                                    .wksp_code)
                            }
                        }
@@ -420,55 +422,127 @@
            },
            created() {},
            mounted() {
                // this.getList()
                this.getList()
            },
            methods: {
                getList() {
                    get('AppDeviceManage/RepairVerificationScanDeviceData').then(res => {
                        if (res.code === '200') {
                            topContent = res.data
                            radioValue = topContent[0].repair_code
                        
                            topContent.forEach(item => {
                                item.arrowType = true
                                item.resultValue = ''
                            })
                            this.getDetail(topContent[0].repair_code, topContent[0].eqpcode, topContent[0]
                                .wksp_code)
                            this.$forceUpdate()
                        }
                    })
                },
                arrowTypeChangeUp(code) {
                getDetail(repair_code, eqpcode, wkshpcode) {
                    const data = {
                        repair_code,
                        eqpcode,
                        wkshpcode
                    }
                    get('AppDeviceManage/RepairVerificationScanDeviceDataSub' + formatParams(data)).then(res => {
                        if (res.code === '200') {
                            console.log(res.data)
                            this.messageDescr = res.data.failure_descript
                            this.fileList = res.data.failure_descriptimg ? res.data.failure_descriptimg
                                .filter(item => item.img1url !== '') : []
                            this.fileList.forEach(item => {
                                item.url = this.baseUrl + item.img1url
                            })
                            this.isStop = res.data.repair_content ? 'N' : 'Y'
                            this.messageDescr2 = res.data.repair_content ? res.data.repair_content : ''
                            this.messageDescr3 = res.data.repair_part ? res.data.repair_part : ''
                            this.fileList2 = res.data.repair_partimage ? res.data.repair_partimage.filter(
                                item => item.img2url !== '') : []
                            this.fileList2.forEach(item => {
                                item.url = this.baseUrl + item.img2url
                            })
                            this.$forceUpdate()
                        }
                    })
                },
                arrowTypeChangeUp(repair_code) {
                    topContent.forEach(item => {
                        item.arrowType = true
                    })
                    this.$forceUpdate()
                },
                arrowTypeChangeDown(code) {
                arrowTypeChangeDown(repair_code, eqpcode, wksp_code) {
                    radioValue = repair_code
                    topContent.forEach(item => {
                        item.arrowType = true
                        if (item.code === code) {
                        if (item.repair_code === repair_code) {
                            item.arrowType = false
                            item.resultValue = ''
                            this.messageDescr = ''
                            this.messageDescr2 = ''
                            this.messageDescr3 = ''
                            this.fileList = []
                            this.fileList2 = []
                            // this.resultValue =''
                            this.getDetail(item.repair_code, item.eqpcode, item.wksp_code)
                        }
                    })
                    this.$forceUpdate()
                },
                submit() {
                    const result = topContent.find(item => item.code === radioValue)
                    // if(this.resultValue===''){
                    // return
                    // }
                    const result = topContent.find(item => item.repair_code === radioValue)
                    const formData = new FormData()
                    formData.append("username", localStorage.getItem('username'))
                    formData.append("eqpcode", result.code)
                    formData.append("eqpcode", result.eqpcode)
                    formData.append("wkshpcode", result.wksp_code)
                    formData.append("faultdescr", this.messageDescr)
                    formData.append("is_stoprepair", this.isStop)
                    formData.append("repaircontent", this.messageDescr2)
                    formData.append("replaceparts", this.messageDescr3)
                    // this.fileList.forEach(item => {
                    //     formData.append('files1', item.file)
                    // })
                    formData.append("repairwo", result.repair_code)
                    formData.append("result", result.resultValue)
                    for (let [a, b] of formData.entries()) {
                        console.log(a, ', ', b);
                    }
                    // post('AppDeviceManage/RepairVerificationScanDeviceSave', formData).then(res => {
                    //     if (res.code === '200') {
                    //     }
                    // })
                    post('AppDeviceManage/RepairVerificationScanDeviceSave', formData).then(res => {
                        if (res.code === '200') {
                            topContent.forEach((item, index) => {
                                if (item.repair_code === radioValue) {
                                    topContent.splice(index, 1)
                                }
                            })
                            if (topContent.length > 0) {
                                radioValue = topContent[0].repair_code
                                this.getDetail(topContent[0].repair_code, topContent[0].eqpcode, topContent[0]
                                    .wksp_code)
                            }
                            // this.resultValue=''
                            this.$forceUpdate()
                        }
                    })
                },
                resultValueClick(repair_code, val) {
                    topContent.forEach(item => {
                        if (item.repair_code === repair_code) {
                            item.resultValue = val
                        }
                    })
                    // this.resultValue = val
                    this.$forceUpdate()
                },
                topScanClick() {
                    createWithoutTitle('../../components/barcode_scan.html', {
@@ -491,8 +565,15 @@
                vanFieldBlur() {
                    this.$forceUpdate()
                },
                topContentClcik(code) {
                    radioValue = code
                topContentClcik(repair_code, eqpcode, wksp_code) {
                    radioValue = repair_code
                    // this.resultValue = ''
                    // topContent.forEach(item => {
                    //     if (item.repair_code === repair_code) {
                    //         this.getDetail(item.repair_code, item.eqpcode, item.wksp_code)
                    //     }
                    // })
                    this.$forceUpdate()
                },
                onClickleft() {