From c076dc095b915c1936eff1c853188cb21274ce09 Mon Sep 17 00:00:00 2001
From: zrg <z1873@LAPTOP-EAVL132E>
Date: 星期四, 08 一月 2026 16:15:22 +0800
Subject: [PATCH] Merge branch 'Dev' of http://101.37.171.70:10101/r/~jhz/STUWMS into Dev

---
 pages/MJGL/Sb_EquipMaintainBill/Sb_EquipMaintainBill.vue |  805 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 800 insertions(+), 5 deletions(-)

diff --git a/pages/MJGL/Sb_EquipMaintainBill/Sb_EquipMaintainBill.vue b/pages/MJGL/Sb_EquipMaintainBill/Sb_EquipMaintainBill.vue
index 492629a..b187042 100644
--- a/pages/MJGL/Sb_EquipMaintainBill/Sb_EquipMaintainBill.vue
+++ b/pages/MJGL/Sb_EquipMaintainBill/Sb_EquipMaintainBill.vue
@@ -1,19 +1,814 @@
 <template>
     <view>
-        
+        <view class="tabs" id="tabs">
+            <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">鍩烘湰淇℃伅</view>
+            <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">鏄庣粏淇℃伅</view>
+            <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">鍏朵粬淇℃伅</view>
+            <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">闄勪欢淇℃伅</view>
+        </view>
+        <!-- 鍩烘湰淇℃伅 -->
+        <template v-if="tabs == 0">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form-item">
+                    <view class="title">璁惧鏉$爜:</view>
+                    <view :class="enableEdit?'right':'righton'">
+                        <input :disabled="!enableEdit" v-model="hform.HBarCode"
+                            @confirm="GetMessageByBarCode(hform.HBarCode)" placeholder="璇疯緭鍏�(鎴栨壂鎻�)璁惧鏉$爜" />
+                    </view>
+                    <view class="icon-wrapper">
+                        <uni-icons type="scan" size="20" @click="toScanCode"></uni-icons>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇濆吇寮�濮�:</view>
+                    <view class="right">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HBeginDate">
+                            <input :value="hform.HBeginDate" />
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇濆吇缁撴潫:</view>
+                    <view class="right">
+                        <uni-datetime-picker type="date" :clear-icon="false" v-model="hform.HEndDate">
+                            <input :value="hform.HEndDate" />
+                        </uni-datetime-picker>
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鏈�缁堢粨璁�:</view>
+                    <view class="right none-border">
+                        <radio-group @change="radioChange" class="radio_Container">
+                            <label>
+                                <view>
+                                    <radio value="OK" :checked="calcHLastResult == 'OK'" />
+                                    <text>OK</text>
+                                </view>
+                            </label>
+                            </label>
+                            <view>
+                                <radio value="NG" :checked="calcHLastResult == 'NG'" />
+                                <text>NG</text>
+                            </view>
+                            </label>
+                        </radio-group>
+                    </view>
+                </view>
+
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鍙�:</view>
+                    <view class="righton">
+                        <input disabled v-model="hform.HBillNo" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍗曟嵁鏃ユ湡:</view>
+                    <view class="righton">
+                        <input disabled v-model="hform.HDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">閮ㄩ棬:</view>
+                    <zxz-uni-data-select class="right" :localdata="HDeptList" dataKey="閮ㄩ棬鍚嶇О" dataValue="HItemID"
+                        v-model="hform.HDeptID">
+
+                    </zxz-uni-data-select>
+                    <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+                </view>
+                <view class="form-item">
+                    <view class="title">澶囨敞:</view>
+                    <view class="right">
+                        <input v-model="hform.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璁惧鍚嶇О:</view>
+                    <view class="righton">
+                        <input v-model="hform.HBarName" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璁惧瑙勬牸:</view>
+                    <view class="righton">
+                        <input v-model="hform.HBarSpec" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">璁惧鍨嬪彿:</view>
+                    <view class="righton">
+                        <input v-model="hform.HBarModel" disabled />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇濆吇璁″垝:</view>
+                    <view class="righton">
+                        <input v-model="hform.HPlanNo" disabled />
+                    </view>
+                </view>
+            </view>
+        </template>
+        <!-- 鏄庣粏淇℃伅 -->
+        <template v-if="tabs == 1">
+            <view :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form">
+                    <view class="form-item">
+                        <view class="left">
+                            璁惧淇濆吇瑙勭▼
+                        </view>
+                        <view class="right">
+                            <input type="text" :value="hform.HEquipMaintainRuleInterNo" />
+                        </view>
+                        <view class="icon-wrapper">
+                            <uni-icons type="search" size="20" @click="toCheckFile"></uni-icons>
+                        </view>
+                    </view>
+                </view>
+                <view class="list" v-for="(item,index) in HCheckFileList" :key="index">
+                    <uni-card style="margin: 10px;">
+                        <view class="card-detail">
+                            <view class="detail">
+                                <text>搴忓彿锛�</text>{{index+1}}
+                            </view>
+                            <view class="detail">
+                                <text>缁撴灉锛�</text>
+                                <checkbox-group style="display: inline-block;"
+                                    @change="checkBoxChangeHandler(index, $event)">
+                                    <checkbox value="enabled" :checked="item.HMaintainResult" />
+                                </checkbox-group>
+                            </view>
+                            <view class="detail">
+                                <text>淇濆吇椤圭洰锛�</text>{{item.HMaintainItem}}
+                            </view>
+                            <view class="detail" v-if="item.HMaintainPart">
+                                <text>淇濆吇閮ㄤ綅锛�</text>{{item.HMaintainPart}}
+                            </view>
+                            <view class="detail" v-if="item.HClaim">
+                                <text>鍏蜂綋瑕佹眰锛�</text>{{item.HClaim}}
+                            </view>
+                            <view class="detail">
+                                <text>璐熻矗浜猴細</text>{{item.HManagerName}}
+                            </view>
+                            <view class="detail" v-if="item.Remark">
+                                <text>澶囨敞锛�</text>{{item.Remark}}
+                            </view>
+                        </view>
+                    </uni-card>
+                </view>
+                <view class="over" v-if="HCheckFileList.length == 0">鏆傛棤鏁版嵁</view>
+            </view>
+        </template>
+        <!-- 鍏朵粬淇℃伅 -->
+        <template v-if="tabs == 2">
+            <view class="form" :style="{
+                height: containerHeight + 'px',
+                overflow: 'auto'
+            }">
+                <view class="form-item">
+                    <view class="title">鍒涘缓浜�:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMaker" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">鍒涘缓鏃ユ湡:</view>
+                    <view class="righton">
+                        <input v-model="hform.HMakeDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇敼浜�:</view>
+                    <view class="righton">
+                        <input v-model="hform.HUpDater" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">淇敼鏃ユ湡:</view>
+                    <view class="righton">
+                        <input v-model="hform.HUpDateDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹℃牳浜�:</view>
+                    <view class="righton">
+                        <input v-model="hform.HChecker" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">瀹℃牳鏃堕棿:</view>
+                    <view class="righton">
+                        <input v-model="hform.HCheckDate" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣滃簾浜�:</view>
+                    <view class="righton">
+                        <input v-model="hform.HDeleteMan" />
+                    </view>
+                </view>
+                <view class="form-item">
+                    <view class="title">浣滃簾鏃ユ湡:</view>
+                    <view class="righton">
+                        <input v-model="hform.HDeleteDate" />
+                    </view>
+                </view>
+            </view>
+
+        </template>
+        <!-- 闄勪欢淇℃伅 -->
+        <template v-if="tabs == 3">
+            <view class="card-item-wrapper">
+                <view class="attachment-btns">
+                    <button type="primary" size="mini" @tap="fileUpload">閫夋嫨鏂囦欢</button>
+                    <view style="flex: 1;"></view>
+                </view>
+                <view v-for="(item, index) in attachmentInfo" :key="index">
+                    <uni-card :title="item['fileName']" :thumbnail="item.filePath">
+                        <view class="card-detail">
+                            <view class="detail">
+                                <text>澶у皬锛�</text>{{item["size"]}}
+                            </view>
+                            <view class="detail">
+                                <text>鐘舵�侊細</text>{{item["status"]}}
+                            </view>
+                            <view class="detail operation" v-if="item['status']!='涓婁紶鎴愬姛'">
+                                <text>鎿嶄綔锛�</text>
+                                <button class="btn-a" size="mini" @tap.stop="uploadFile(index)">涓婁紶</button>
+                                <button class="btn-b" size="mini" @tap.stop="delFile(index)">鍒犻櫎</button>
+                            </view>
+                        </view>
+                    </uni-card>
+                </view>
+            </view>
+        </template>
+        <!-- 鎿嶄綔鎸夐挳 -->
+        <view class="buttons" id="buttons">
+            <button class="btn-a" size="mini" @tap="submit">鎻愪氦</button>
+            <view style="flex: 1;"></view>
+            <button class="btn-a" size="mini" @tap="addNew">鏂板</button>
+            <button class="btn-c" size="mini" @tap="goBack">閫�鍑�</button>
+        </view>
+        <xe-upload ref="XeUpload" :options="uploadOptions" @callback="handleUploadCallback"></xe-upload>
+        <BillSelectorPopupVue @update="billSelectHandler" ref="billSelector"></BillSelectorPopupVue>
     </view>
 </template>
 
 <script>
+    import dayjs from "dayjs";
+    import {
+        CommonUtils
+    } from "@/utils/common";
+    import {
+        MpaasScan
+    } from "@/utils/mpaasScan.js"
+    import {
+        getUserInfo
+    } from "../../../utils/auth";
+    import BillSelectorPopupVue from "../../../components/MJGL/BillSelectorPopup.vue";
     export default {
+        name: 'sb_EquipMaintainBill',
+        components: {
+            BillSelectorPopupVue
+        },
         data() {
             return {
-                
+                tabs: 0,
+                HMainSourceBillType: "",
+                btnTop: 0,
+                tabsBottom: 0,
+                HModName: "sb_EquipMaintainBill",
+                HBillType: '3901',
+                operationType: 1,
+                enableEdit: true,
+                uploadOptions: {},
+
+                HDeptList: [],
+                HShiftsList: [],
+                HCheckFileList: [],
+                attachmentInfo: [],
+
+                hform: {
+                    HBarCode: "",
+                    HBeginDate: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    HEndDate: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    HQty: 0,
+                    HErrNote: "",
+                    HBigSafeNote: "",
+                    HShiftsName: "",
+                    HShiftsID: 0,
+                    HBillNo: "",
+                    HInterID: 0,
+                    HDate: dayjs(new Date()).format("YYYY-MM-DD HH:mm:ss"),
+                    HDeptName: "",
+                    HDeptID: 0,
+                    HRemark: "",
+                    HBarName: "",
+                    HEquipID: 0,
+                    HBarSpec: "",
+                    HBarModel: "",
+                    HPlanNo: "",
+                    HPlanInterID: 0,
+                    HPlanEntryID: 0,
+                    HEquipMaintainPlanInterID: 0,
+                    HEquipMaintainPlanEntryID: "",
+                    HMaker: getUserInfo()['Czymc'],
+                    HMakeDate: dayjs(new Date()).format("YYYY-MM-DD"),
+                    HUpDater: "",
+                    HUpDateDate: "",
+                    HChecker: "",
+                    HCheckDate: "",
+                    HDeleteMan: "",
+                    HDeleteDate: "",
+                    lngBillKey: 0,
+                    lngBillSubKey: 0,
+                    HLastResult: "OK"
+                }
             };
+        },
+        computed: {
+            containerHeight: {
+                get() {
+                    return this.btnTop - this.tabsBottom - 5
+                }
+            },
+            calcHLastResult: {
+                get() {
+                    if (this.HCheckFileList.length == 0) {
+                        return 'OK'
+                    } else {
+                        let okCount = this.HCheckFileList.reduce((acc, item) => {
+                            if (item.HMaintainResult) {
+                                return acc + 1
+                            }
+                            return acc
+                        }, 0)
+                        if (okCount == this.HCheckFileList.length) {
+                            return 'OK'
+                        }
+                        return 'NG'
+                    }
+                }
+            }
+
+        },
+        methods: {
+            billSelectHandler(billData) {
+                console.log('billData: ', billData);
+                let data = billData.retVal[0]
+                this.get_DocCheckItem2(data.hmainid)
+            },
+            // 鑾峰彇淇濆吇瑙勭▼
+            async get_DocCheckItem2(HEquipMaintainRuleInterID) {
+                try{
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Web/GetMaintainItemByMaintainRuleID",
+                        data: {
+                            "HEquipMaintainRuleInterID": HEquipMaintainRuleInterID
+                        },
+                    })
+                    
+                    let {data, count, Message} = res.data
+                    if(count == 1) {
+                        console.log('data: ',data);
+                        this.HCheckFileList = Array.from(data).map(item => {
+                            return {
+                                "HMaintainResult": item.榛樿缁撹 == 1 ? true : false,
+                                "HMaintainItemID": item.HMaintainItemID,
+                                "HMaintainNumber": item.淇濆吇椤圭洰浠g爜,
+                                "HMaintainItem": item.淇濆吇椤圭洰,
+                                "HMaintainPart": item.淇濆吇閮ㄤ綅,
+                                "HClaim": item.鍏蜂綋瑕佹眰,
+                                "HManagerID": item.璐熻矗浜篒D,
+                                "HManagerNumber": item.璐熻矗浜轰唬鐮�,
+                                "HManagerName": item.璐熻矗浜哄悕绉�,
+                                "HRemark": "",
+                                "HSourceInterID": item.淇濆吇璁″垝ID || 0,
+                                "HSourceEntryID": item.淇濆吇璁″垝瀛怚D || 0,
+                                "HSourceBillNo": item.淇濆吇璁″垝鍗� || ""
+                            }
+                        })
+                        
+                        this.enableEdit = false
+                        this.$refs["billSelector"].exit()
+                        
+                    }else {
+                        CommonUtils.showTips({
+                            message: Message
+                        })
+                    }
+                }catch(err) {
+                    CommonUtils.showTips({
+                        message: err
+                    })
+                }
+                
+                
+                
+            },
+            toCheckFile() {
+                if(this.hform.HEquipID == 0) {
+                    return CommonUtils.showTips({
+                        message: '涓嶈兘閫夋嫨淇濆吇瑙勭▼锛岃鍏堟壂鎻忚澶囨潯鐮�!!!'
+                    })
+                }
+                console.log('this.$refs: ', this.$refs);
+                this.$refs['billSelector'].showPopup(0)
+            },
+            ValidCheck() {
+                if (this.hform.HEquipID == 0) {
+                    return {
+                        Message: "鏈綍鍏ヨ澶囦俊鎭紝璇峰厛褰曞叆璁惧淇℃伅!",
+                        state: false
+                    }
+                }
+
+                return {
+                    Message: "",
+                    state: true
+                }
+            },
+            addNew() {
+                uni.redirectTo({
+                    url: './Sb_EquipMaintainBill?operationType=1'
+                })
+            },
+            goBack() {
+                uni.navigateBack()
+            },
+            checkBoxChangeHandler(index, e) {
+                let cr = e.detail.value
+                if (cr.length == 0) {
+                    this.HCheckFileList[index]["HMaintainResult"] = false
+                } else {
+                    this.HCheckFileList[index]["HMaintainResult"] = true
+                }
+            },
+            uploadFile(index) {
+                console.log('filePath: ', this.attachmentInfo[index].filePath);
+                // 閫氳繃涓存椂璺緞璇诲彇鏂囦欢
+                uni.uploadFile({
+                    url: CommonUtils.getServerUrl() + "/Sb_EquipDotCheckBill/UploadFile",
+                    filePath: this.attachmentInfo[index].filePath,
+                    name: 'file',
+                    formData: {
+                        HBillNo: this.hform.HBillNo,
+                        HRemark: "",
+                        HUserName: getUserInfo()["Czymc"]
+                    },
+                    success: (uploadRes) => {
+                        CommonUtils.showTips({
+                            message: "涓婁紶鎴愬姛"
+                        })
+                        this.attachmentInfo[index].status = "涓婁紶鎴愬姛"
+                    },
+                    fail: (err) => {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `涓婁紶澶辫触: ${err}`
+                        })
+                    }
+                })
+            },
+            delFile(index) {
+                console.log('attachmentInfo: ', this.attachmentInfo[index]);
+                uni.showModal({
+                    title: '鎻愮ず',
+                    content: '纭瑕佸垹闄� " ' + this.attachmentInfo[index].fileName + ' " 鍒犻櫎鍚庡皢涓嶅彲鎭㈠锛�',
+                    success: (res) => {
+                        if (res.confirm) {
+                            this.attachmentInfo.splice(index, 1)
+                        }
+                    },
+                })
+
+            },
+            handleUploadCallback(res) { // 鏂囦欢涓婁紶鍥炶皟
+                console.log('file: ', res);
+                let fileInfo = res.data[0]
+                this.attachmentInfo.push({
+                    fileName: fileInfo.name,
+                    size: fileInfo.size,
+                    status: '绛夊緟涓婁紶',
+                    filePath: fileInfo.tempFilePath
+                })
+            },
+            // 涓婁紶鏂囦欢
+            fileUpload() {
+                this.$refs.XeUpload.upload('file', {});
+            },
+            //鑾峰彇鐝鏁版嵁
+            async getShiftList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Web/GetGy_ShiftsList_Json',
+                        data: {
+                            Shifts: "",
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HShiftsList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            //鑾峰彇浣跨敤閮ㄩ棬鏁版嵁
+            async getHDeptList() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: '/Gy_Department/list',
+                        data: {
+                            sWhere: "",
+                            user: uni.getStorageSync('HUserName'),
+                            Organization: uni.getStorageSync('Organization')
+                        }
+                    })
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        this.HDeptList = data
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: Message
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: err
+                    })
+                }
+            },
+            toScanCode() {
+                MpaasScan.scanCode(cb => {
+                    this.hfrom.HBarCode = cb
+                    this.GetMessageByBarCode(cb)
+                })
+            },
+            async GetMessageByBarCode(HBarCode) {
+                try {
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Gy_EquipFileBill/txtHBarCode_KeyDown",
+                        data: {
+                            HBarCode: HBarCode,
+                            user: getUserInfo()["Czymc"]
+                        },
+                    })
+
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        data,
+                        count,
+                        Message
+                    } = res.data
+
+                    console.log('data: ', data);
+
+                    if (count == 1) {
+                        this.hform.HEquipID = data[0].HInterID
+                        this.hform.HBarName = data[0].璁惧鍚嶇О
+                        this.hform.HBarSpec = data[0].璁惧瑙勬牸
+                        this.hform.HBarModel = data[0].璁惧鍨嬪彿
+                        this.hform.HQty = 1
+
+                        // 鑾峰彇妫�楠岃绋�
+                        this.GetItemByEquipFile()
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: Message
+                        })
+                    }
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: err
+                    })
+                }
+            },
+            async GetItemByEquipFile() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Web/GetItemByEquipFile",
+                        data: {
+                            "EquipProjectID": this.hform.HEquipID,
+                            "Type": "BY",
+                            "HDate": this.hform.HBeginDate
+                        }
+                    })
+
+                    let {
+                        data,
+                        Message,
+                        count
+                    } = res.data
+                    if (count == 1) {
+                        this.hform.HEquipMaintainRuleInterID = data[0].淇濆吇瑙勭▼ID
+                        this.hform.HEquipMaintainRuleInterNo = data[0].淇濆吇瑙勭▼鍗曞彿
+                        this.hform.HPlanNo = data[0].淇濆吇璁″垝鍗�
+                        this.hform.HEquipMaintainPlanInterID = (data[0].淇濆吇璁″垝ID == null ? 0 : data[0].淇濆吇璁″垝ID) == "" ?
+                            0 : data[0].淇濆吇璁″垝ID
+                        this.hform.HEquipMaintainPlanEntryID = (data[0].淇濆吇璁″垝瀛怚D == null ? 0 : data[0].淇濆吇璁″垝瀛怚D) ==
+                            "" ? 0 : data[0].淇濆吇璁″垝瀛怚D
+                        this.hform.HMainSourceBillNo = data[0].淇濆吇璁″垝鍗�
+                        this.hform.HMainSourceInterID = (data[0].淇濆吇璁″垝ID == null ? 0 : data[0].淇濆吇璁″垝ID) == "" ? 0 :
+                            data[0].淇濆吇璁″垝ID
+                        this.hform.HMainSourceEntryID = (data[0].淇濆吇璁″垝瀛怚D == null ? 0 : data[0].淇濆吇璁″垝瀛怚D) == "" ? 0 :
+                            data[0].淇濆吇璁″垝瀛怚D
+
+                        this.HCheckFileList = Array.from(data).map(item => {
+                            return {
+                                "HMaintainResult": item.榛樿缁撹 == 1 ? true : false,
+                                "HMaintainItemID": item.淇濆吇椤圭洰ID,
+                                "HMaintainNumber": item.淇濆吇椤圭洰浠g爜,
+                                "HMaintainItem": item.淇濆吇椤圭洰鍚嶇О,
+                                "HMaintainPart": item.淇濆吇閮ㄤ綅,
+                                "HClaim": item.鍏蜂綋瑕佹眰,
+                                "HManagerID": item.璐熻矗浜篒D,
+                                "HManagerNumber": item.璐熻矗浜轰唬鐮�,
+                                "HManagerName": item.璐熻矗浜哄悕绉�,
+                                "HRemark": "",
+                                "HSourceInterID": item.淇濆吇璁″垝ID,
+                                "HSourceEntryID": item.淇濆吇璁″垝瀛怚D,
+                                "HSourceBillNo": item.淇濆吇璁″垝鍗�
+                            }
+                        })
+
+                        this.enableEdit = false
+
+                    } else {
+                        CommonUtils.showTips({
+                            title: '娓╅Θ鎻愮ず',
+                            message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${Message}`
+                        })
+                    }
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: '娓╅Θ鎻愮ず',
+                        message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${err}`
+                    })
+                }
+            },
+            radioChange({
+                detail: {
+                    value
+                }
+            }) {
+                this.HLastResult = value
+            },
+            async getMaxNum() {
+                try {
+                    let res = await CommonUtils.doRequest2Async({
+                        url: "/Web/GetMAXNum",
+                        data: {
+                            "HBillType": this.HBillType
+                        }
+                    })
+
+                    let {
+                        count,
+                        data,
+                        Message
+                    } = res.data
+                    console.log('data: ', data);
+                    this.hform.HInterID = 0
+                    this.hform.HBillNo = data[0]["HBillNo"]
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: "鑾峰彇鍗曟嵁淇℃伅寮傚父: " + err
+                    })
+                }
+            },
+            async submit() {
+                let valid = this.ValidCheck()
+                if (!valid.state) {
+                    return CommonUtils.showTips({
+                        message: valid.Message
+                    })
+                }
+
+                try {
+                    let oMain = JSON.stringify(this.hform);
+                    let sSubStr = JSON.stringify(this.HCheckFileList);
+                    let sMainSub = oMain + ';' + sSubStr;
+                    let res = await CommonUtils.doRequest2Sync({
+                        url: "/Sb_PDA_EquipMaintainBill/SaveGetEquipMaintainBillList",
+                        data: {
+                            "msg": sMainSub
+                        },
+                        method: "POST"
+                    })
+
+                    if (!res) {
+                        return
+                    }
+
+                    let {
+                        count,
+                        Message
+                    } = res.data
+                    if (count == 1) {
+                        uni.showModal({
+                            title: '鎻愮ず',
+                            content: res.data.Message + '銆傛槸鍚︾户缁柊澧烇紵(鐐瑰嚮鍙栨秷杩斿洖涓婄骇椤甸潰)',
+                            success: (res) => {
+                                if (res.confirm) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+                                    uni.redirectTo({
+                                        url: '/pages/MJGL/Sb_EquipMaintainBill/Sb_EquipMaintainBill?operationType=1'
+                                    })
+                                } else if (res.cancel) {
+                                    console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+                                    setTimeout(() => {
+                                        uni.navigateBack();
+                                    }, 50)
+                                }
+                            }
+                        });
+                    } else {
+                        CommonUtils.showTips({
+                            title: "娓╅Θ鎻愮ず",
+                            message: "鎻愪氦鍗曟嵁澶辫触: " + Message
+                        })
+                    }
+
+
+                } catch (err) {
+                    CommonUtils.showTips({
+                        title: "娓╅Θ鎻愮ず",
+                        message: "鎻愪氦鍗曟嵁澶辫触: " + err
+                    })
+                }
+            }
+        },
+        onLoad(e) {
+            console.log('e: ', e);
+            if (!e.operationType) {
+                this.operationType = 1
+            } else {
+                this.operationType = e.operationType
+            }
+
+            if (this.operationType == 1) {
+                // 鏂板
+                this.getMaxNum()
+            } else if (this.operationType == 2) {
+                // 澶嶅埗
+            } else if (this.operationType == 3) {
+                // 缂栬緫
+
+            } else if (this.operationType == 4) {
+                // 娴忚
+
+            }
+
+            this.getHDeptList()
+            this.getShiftList()
+        },
+        onReady() {
+            const query = uni.createSelectorQuery().in(this)
+            query.select("#buttons")
+                .boundingClientRect()
+                .select("#tabs")
+                .boundingClientRect()
+                .exec(res => {
+                    this.btnTop = Math.floor(res[0].top)
+                    this.tabsBottom = Math.ceil(res[1].bottom)
+                })
         }
     }
 </script>
 
-<style lang="scss">
-
-</style>
+<style lang="scss" scoped>
+    @import "@/pages/MJGL/style/MJBillStyle.scss"
+</style>
\ No newline at end of file

--
Gitblit v1.9.1