From dd517a295209672cb3ec6bef3d2df894d3bce370 Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期五, 09 一月 2026 16:45:28 +0800
Subject: [PATCH] 添加 器具维修检验单 设备维修派工单 器具维修派工单
---
pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList.vue | 476 +++++++
pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList.vue | 478 +++++++
pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill.vue | 800 +++++++++++
pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue | 2
pages/index/tab3.vue | 42
pages.json | 42
main.js | 2
pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList.vue | 478 +++++++
utils/i18n.js | 1
pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill.vue | 887 +++++++++++++
pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue | 777 +++++++++++
pages/MJGL/style/MJBillStyle.scss | 39
12 files changed, 4,021 insertions(+), 3 deletions(-)
diff --git a/main.js b/main.js
index aade6d2..eaccbc7 100644
--- a/main.js
+++ b/main.js
@@ -48,7 +48,7 @@
import VueI18n from 'vue-i18n'
Vue.use(VueI18n)
const i18n = new VueI18n(i18nConfig)
-// TODO missing鍥炶皟鏃犳硶婊¤冻 鍔犺浇绾夸笂鍖� 鍚庣殑妫�楠屽姛鑳斤紝闇�閲嶅啓$t鍑芥暟
+// missing鍥炶皟鏃犳硶婊¤冻 鍔犺浇绾夸笂鍖� 鍚庣殑妫�楠屽姛鑳斤紝闇�閲嶅啓$t鍑芥暟
const originalT = Vue.prototype.$t
Vue.prototype.$t = function(key, ...args) {
// 璋冪敤鍘熷 $t 鎵ц缈昏瘧
diff --git a/pages.json b/pages.json
index 7bfae43..420b181 100644
--- a/pages.json
+++ b/pages.json
@@ -1459,6 +1459,48 @@
{
"navigationBarTitleText" : "璁惧缁翠慨楠屾敹鍗曠紦瀛�"
}
+ },
+ {
+ "path" : "pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill",
+ "style" :
+ {
+ "navigationBarTitleText" : "璁惧缁翠慨娲惧伐鍗�"
+ }
+ },
+ {
+ "path" : "pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList",
+ "style" :
+ {
+ "navigationBarTitleText" : "璁惧缁翠慨娲惧伐鍗曠紦瀛�"
+ }
+ },
+ {
+ "path" : "pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill",
+ "style" :
+ {
+ "navigationBarTitleText" : "鍣ㄥ叿缁翠慨娲惧伐鍗�"
+ }
+ },
+ {
+ "path" : "pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList",
+ "style" :
+ {
+ "navigationBarTitleText" : "鍣ㄥ叿缁翠慨娲惧伐鍗曠紦瀛�"
+ }
+ },
+ {
+ "path" : "pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill",
+ "style" :
+ {
+ "navigationBarTitleText" : "鍣ㄥ叿缁翠慨楠屾敹鍗�"
+ }
+ },
+ {
+ "path" : "pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList",
+ "style" :
+ {
+ "navigationBarTitleText" : "鍣ㄥ叿缁翠慨楠屾敹鍗曠紦瀛�"
+ }
}
],
diff --git a/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue b/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue
new file mode 100644
index 0000000..9a53f20
--- /dev/null
+++ b/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill.vue
@@ -0,0 +1,777 @@
+<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 v-model="hform.HBarCode" :disabled="!enableEdit"
+ @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 none-border">
+ <radio-group @change="radioChange" class="radio_Container">
+ <label>
+ <view>
+ <radio value="OK" :checked="hform.HCheckResult == 'OK'" />
+ <text>OK</text>
+ </view>
+ </label>
+ </label>
+ <view>
+ <radio value="NG" :checked="hform.HCheckResult == 'NG'" />
+ <text>NG</text>
+ </view>
+ </label>
+ </radio-group>
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">楠屾敹鍐呭:</view>
+ <view class="right">
+ <textarea v-model="hform.HRepairCheckMainContent" placeholder="璇疯緭鍏ラ獙鏀跺唴瀹�" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">婧愬崟绫诲瀷:</view>
+ <zxz-uni-data-select class="right" :localdata="[
+ {key: '鎵嬪伐褰曞叆', value: '-1'},
+ {key: '妯″叿鏁呴殰鐧昏鍗�', value: '3815'}
+ ]" dataKey="key" dataValue="value" v-model="hform.HMainSourceBillType">
+
+ </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.HMainSourceBillNo" />
+ </view>
+ <view class="icon-wrapper">
+ <uni-icons type="search" size="20" @click="toCheckFile"></uni-icons>
+ </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 required">閮ㄩ棬:</view>
+ <zxz-uni-data-select required 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 required">楠屾敹浜�:</view>
+ <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
+ dataValue="HItemID" v-model="hform.HEmpID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </view>
+ <view class="form-item">
+ <view class="title required">楠屾敹椤圭洰:</view>
+ <zxz-uni-data-select required class="right" :localdata="HRepairCheckList" dataKey="缁翠慨楠屾敹椤圭洰"
+ dataValue="hitemid" v-model="hform.HRepairCheckMainID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </view>
+ <view class="form-item">
+ <view class="title required">璐熻矗浜�:</view>
+ <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
+ dataValue="HItemID" v-model="hform.HManagerID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </view>
+ <!-- 鎵爜甯﹀嚭缁翠慨璁板綍 -->
+ <view class="form-item">
+ <view class="title required">缁翠慨璁板綍:</view>
+ <view class="right">
+ <input type="text" value="" />
+ </view>
+ <view class="icon-wrapper">
+ <uni-icons type="search" size="20" @click="toCheckFile"></uni-icons>
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">妯″叿鍚嶇О:</view>
+ <view class="righton">
+ <input v-model="hform.HMouldName" disabled />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">妯″叿瑙勬牸:</view>
+ <view class="righton">
+ <input v-model="hform.HMouldSpec" disabled />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">妯″叿鍨嬪彿:</view>
+ <view class="righton">
+ <input v-model="hform.HMouldModel" disabled />
+ </view>
+ </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>
+ <!-- 鎿嶄綔鎸夐挳 -->
+ <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>
+ </view>
+</template>
+
+<script>
+ import dayjs from "dayjs";
+ import {
+ CommonUtils
+ } from "@/utils/common";
+ import {
+ MpaasScan
+ } from "@/utils/mpaasScan.js"
+ import {
+ getUserInfo
+ } from "../../../utils/auth";
+ export default {
+ name: 'Sc_MouldRepairCheckBill',
+ data() {
+ return {
+ tabs: 0,
+ HMainSourceBillType: "",
+ btnTop: 0,
+ tabsBottom: 0,
+ HModName: "Sc_MouldRepairCheckBill",
+ HBillType: '3817',
+ operationType: 1,
+ uploadOptions: {},
+ enableEdit: true,
+
+ HDeptList: [],
+ HRepairCheckList: [],
+ HEmpList: [],
+
+ hform: {
+ "HBarCode": "",
+ "HBillNo": "",
+ "HInterID": 0,
+ "HDate": dayjs(new Date()).format("YYYY-MM-DD"),
+ "HInnerBillNo": "",
+ "HMouldName": "",
+ "HMouldSpec": "",
+ "HMouldModel": "",
+ "HMouldID": 0,
+ "HMainSourceBillType": "-1",
+ "HMainSourceInterID": 0,
+ "HMainSourceEntryID": 0,
+ "HCheckResult": "OK",
+ "HEmpName": "",
+ "HEmpID": 0,
+ "HCheckBeginDate": dayjs(new Date()).format("YYYY-MM-DD"),
+ "HDeptName": "",
+ "HDeptID": 0,
+ "HMainSourceBillNo": "",
+ "HManagerName": "",
+ "HManagerID": 0,
+ "HMouldRepairWorkName": "",
+ "HMouldRepairWorkID": 0,
+ "HExplanation": "",
+ "HRemark": "",
+ "HOrgID": uni.getStorageSync("OrganizationID"),
+ "HMaker": getUserInfo()["Czymc"],
+ "HChecker": "",
+ "HCloseMan": "",
+ "HUpDater": "",
+ "HMakeDate": dayjs(new Date()).format("YYYY-MM-DD"),
+ "HCheckDate": "",
+ "HCloseDate": "",
+ "HUpDateDate": "",
+ "HDeleteMan": "",
+ "HDeleteDate": "",
+ "HRepairCheckMainID": 0,
+ "HRepairCheckMainContent": "",
+ },
+ HBillSub: [{ // 鍚庣鎺ュ彛闇�瑕併�傚惁鍒欐暟鎹笉浼氭樉绀哄湪缂撳瓨涓�
+ "HRepairCheckID": 0,
+ "HRepairCheckCode": "",
+ "HRepairCheckName": "",
+ "HRepairCheckContent": "",
+ "HManagerID": 0,
+ "HManagerCode": "",
+ "HManagerName": "",
+ "HRemark": "",
+ "LAY_TABLE_INDEX": 0
+ }]
+ };
+ },
+ computed: {
+ containerHeight: {
+ get() {
+ return this.btnTop - this.tabsBottom - 5
+ }
+ },
+ },
+ methods: {
+ // 鎻愪氦鏁版嵁鏈夋晥鎬ф牎楠�
+ ValidCheck() {
+ if (this.hform.HEquipID == 0) {
+ return {
+ Message: "鏈綍鍏ユā鍏蜂俊鎭紝璇峰厛褰曞叆妯″叿淇℃伅!",
+ state: false
+ }
+ }
+ if (this.hform.HDeptID == 0) {
+ return {
+ Message: "閮ㄩ棬涓嶅緱涓虹┖!",
+ state: false
+ }
+ }
+ if (this.hform.HEmpID == 0) {
+ return {
+ Message: "楠屾敹浜轰笉寰椾负绌�!",
+ state: false
+ }
+ }
+ if (this.hform.HRepairCheckMainID == 0) {
+ return {
+ Message: "楠岃瘉椤圭洰涓嶅緱涓虹┖!",
+ state: false
+ }
+ }
+ if (this.hform.HManagerID == 0) {
+ return {
+ Message: "璐熻矗浜轰笉寰椾负绌�!",
+ state: false
+ }
+ }
+
+ return {
+ Message: "",
+ state: true
+ }
+ },
+ addNew() {
+ uni.redirectTo({
+ url: './Sb_MouldRepairCheckBill?operationType=1'
+ })
+ },
+ goBack() {
+ uni.navigateBack()
+ },
+ checkBoxChangeHandler(index, e) {
+ let cr = e.detail.value
+ if (cr.length == 0) {
+ this.HCheckFileList[index]["HDotCheckResult"] = false
+ } else {
+ this.HCheckFileList[index]["HDotCheckResult"] = 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
+ })
+ }
+ },
+ // 鑾峰彇鑱屽憳鏁版嵁
+ async getEmpList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: '/PublicPageMethod/UserList',
+ data: {
+ sWhere: " where 1=1",
+ }
+ })
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ this.HEmpList = data
+ } else {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: Message
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: err
+ })
+ }
+ },
+ // 鑾峰彇楠岃瘉椤圭洰鏁版嵁
+ async getCheckProjList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: '/Gy_RepairCheck/GetRepairCheckList',
+ data: {
+ sWhere: "",
+ user: uni.getStorageSync('HUserName'),
+ }
+ })
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ this.HRepairCheckList = 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: "/Sc_PDA_MouldRepairCheckBill/txtHBarCode_KeyDown_List",
+ data: {
+ HBarCode: HBarCode,
+ },
+ })
+
+
+ if (!res) {
+ return
+ }
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+
+ if (count == 1) {
+ console.log('data: ', data);
+ this.hform.HMouldID = data[0].hmainid
+ this.hform.HMouldName = data[0].妯″叿鍚嶇О
+ this.hform.HMouldSpec = data[0].妯″叿鍝佺被
+ this.hform.HMouldModel = data[0].妯″叿鍨嬪彿
+ this.hform.HQty = 1
+
+ this.enableEdit = false
+ } 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": "DJ",
+ "HDate": this.hform.HBeginDate
+ }
+ })
+
+ let {
+ data,
+ Message,
+ count
+ } = res.data
+ if (count == 1) {
+ this.hform.HEquipDotCheckRuleInterID = data[0].鐐规瑙勭▼ID
+ this.hform.HEquipDotCheckRuleInterNo = data[0].鐐规瑙勭▼鍗曞彿
+ this.hform.HPlanNo = data[0].鐐规璁″垝鍗�
+ this.hform.HPlanInterID = (data[0].鐐规璁″垝ID == null ? 0 : data[0].鐐规璁″垝ID) == "" ? 0 : data[0]
+ .鐐规璁″垝ID
+ this.hform.HPlanEntryID = (data[0].鐐规璁″垝瀛怚D == null ? 0 : data[0].鐐规璁″垝瀛怚D) == "" ? 0 : data[
+ 0].鐐规璁″垝瀛怚D
+
+ this.HCheckFileList = Array.from(data).map(item => {
+ return {
+ "HDotCheckItemID": item.HDotCheckItemID,
+ "HDotCheckCode": item.鐐规椤圭洰浠g爜,
+ "HDotCheckItem": item.鐐规椤圭洰,
+ "HDotCheckPart": item.鐐规閮ㄤ綅,
+ "HClaim": item.鍏蜂綋瑕佹眰,
+ "HManagerID": item.璐熻矗浜篒D,
+ "HManagerCode": item.璐熻矗浜轰唬鐮�,
+ "HManagerName": item.璐熻矗浜哄悕绉�,
+ "HSourceInterID": item.鐐规璁″垝ID == null ? 0 : item.鐐规璁″垝ID,
+ "HSourceEntryID": item.鐐规璁″垝瀛怚D == null ? 0 : item.鐐规璁″垝瀛怚D,
+ "HSourceBillNo": item.鐐规璁″垝鍗�,
+ "HDotCheckItemClassID": 0,
+ "HDotCheckItemClassName": "",
+ "HDotCheckItemMethodID": 0,
+ "HDotCheckItemMethodName": "",
+ "HDotCheckResult": item.榛樿缁撹 == 1 ? true : false
+ }
+ })
+
+ } else {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${Message}`
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${err}`
+ })
+ }
+ },
+ radioChange({
+ detail: {
+ value
+ }
+ }) {
+ this.hform.HCheckResult = 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) {
+ CommonUtils.showTips({
+ message: valid.Message
+ })
+ return
+ }
+
+ try {
+ let oMain = JSON.stringify(this.hform);
+ this.HBillSub[0].HRepairCheckID = this.hform.HRepairCheckMainID
+ this.HBillSub[0].HManagerID = this.hform.HManagerID
+ this.HBillSub[0].HRepairCheckContent = this.hform.HRepairCheckMainContent
+ let sSubStr = JSON.stringify(this.HBillSub);
+ let sMainSub = oMain + ';' + sSubStr + ';' + getUserInfo()['Czymc'];
+ let res = await CommonUtils.doRequest2Sync({
+ url: "/Sc_MouldRepairCheckBill/SaveGetMouldRepairCheckBillList",
+ 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_EquipRepairCheck/Sb_EquipRepairCheckBill?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.getEmpList()
+ this.getCheckProjList()
+ },
+ 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" scoped>
+ @import "@/pages/MJGL/style/MJBillStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList.vue b/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList.vue
new file mode 100644
index 0000000..cc1cb4a
--- /dev/null
+++ b/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList.vue
@@ -0,0 +1,476 @@
+<template>
+ <view class="content">
+ <view class="form">
+ <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 v-if="showmore">
+ <view class="form-item">
+ <view class="title">鍗曟嵁鍙�:</view>
+ <view class="right">
+ <input v-model="hform.HBillNo" placeholder="璇疯緭鍏ュ崟鎹彿" />
+ </view>
+ </view>
+
+ </view>
+ <view class="other">
+ <view v-if="!showmore" @tap="changeShowMore">
+ 灞曞紑鍏朵粬鏉′欢<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="bottom"></uni-icons>
+ </view>
+ <view v-if="showmore" @tap="changeShowMore">
+ 鎶樺彔鍏朵粬鏉′欢<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="top"></uni-icons>
+ </view>
+ </view>
+
+ <view class="buttons">
+ <button class="btn-a" size="mini" type="default" @tap="clear">閲嶇疆</button>
+ <button class="btn-b" size="mini" type="default" @tap="add">鏂板</button>
+ <button class="btn-c" size="mini" type="default" @tap="search">鏌ヨ</button>
+ </view>
+ </view>
+
+ <view id="divide" style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+ <view :style="{
+ height: calcContentHeight + 'px',
+ overflowY: 'auto'
+ }">
+ <view class="list" v-for="(item,index) in showList" :key="index" v-if="tabs==0">
+ <uni-card :title="item.鍒跺崟鏃ユ湡.substr(0,10)" :extra="item.鍗曟嵁鍙�" style="margin: 10px;"
+ @tap="showDetail = showDetail==index?-1:index">
+ <view class="card-detail">
+ <view class="detail" v-if="item.鍒跺崟浜�">
+ <text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+ </view>
+ <view class="detail" v-if="item.浜у搧妯″叿浠g爜">
+ <text>浜у搧妯″叿浠g爜锛�</text>{{item.浜у搧妯″叿浠g爜}}
+ </view>
+ <view class="detail" v-if="item.浜у搧妯″叿">
+ <text>浜у搧妯″叿锛�</text>{{item.浜у搧妯″叿}}
+ </view>
+ <view class="detail" v-if="item.璐熻矗浜�">
+ <text>璐熻矗浜猴細</text>{{item.璐熻矗浜簘}
+ </view>
+ <view class="detail" v-if="item.楠屾敹閮ㄩ棬">
+ <text>楠屾敹閮ㄩ棬锛�</text>{{item.楠屾敹閮ㄩ棬}}
+ </view>
+ <view class="detail" v-if="item.楠屾敹浜�">
+ <text>楠屾敹浜猴細</text>{{item.楠屾敹浜簘}
+ </view>
+ <view class="detail" v-if="item.楠屾敹椤圭洰">
+ <text>楠屾敹椤圭洰锛�</text>{{item.楠屾敹椤圭洰}}
+ </view>
+ <view class="card-detail" v-if="showDetail == index">
+
+
+ <view class="detail" v-if="item.琛ㄥご澶囨敞">
+ <text>琛ㄥご澶囨敞锛�</text>{{item.琛ㄥご澶囨敞}}
+ </view>
+ <view class="detail" v-if="item.鍙戠敓鏃ユ湡">
+ <text>寮�濮嬫棩鏈燂細</text>{{dayjs(item.鍙戠敓鏃ユ湡).format("YYYY-MM-DD HH:mm:DD")}}
+ </view>
+ <view class="detail" v-if="item.楠屾敹浜轰唬鐮�">
+ <text>楠屾敹浜轰唬鐮侊細</text>{{item.楠屾敹浜轰唬鐮亇}
+ </view>
+ <view class="detail" v-if="item.缁翠慨閮ㄩ棬浠g爜">
+ <text>缁翠慨閮ㄩ棬浠g爜锛�</text>{{item.缁翠慨閮ㄩ棬浠g爜}}
+ </view>
+ <view class="detail" v-if="item.璐熻矗浜轰唬鐮�">
+ <text>璐熻矗浜轰唬鐮侊細</text>{{item.璐熻矗浜轰唬鐮亇}
+ </view>
+ <view class="detail" v-if="item.hmainid">
+ <text>鍐呴儴鍗曟嵁鍙凤細</text>{{item.hmainid}}
+ </view>
+ </view>
+ </view>
+
+ <view class="more" v-if="showDetail == index && operations != index">
+ <view class="part" style="border-right: 1px solid #eee;">
+ <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
+ </view>
+ <view class="part" @tap.stop="operations = operations==index?-1:index">
+ <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+ size="14"></uni-icons>鎿嶄綔
+ </view>
+ </view>
+ <view class="more" v-if="showDetail != index && operations != index">
+ <view class="part" style="border-right: 1px solid #eee;">
+ <uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏇村淇℃伅
+ </view>
+ <view class="part" @tap.stop="operations = operations==index?-1:index">
+ <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+ size="14"></uni-icons>鎿嶄綔
+ </view>
+ </view>
+ <view class="op" v-if="operations == index">
+ <!-- <button class="op3" size="mini" plain @tap.stop="edit(item)">缂栬緫</button> -->
+ <button class="op4" size="mini" plain @tap.stop="del(item)">鍒犻櫎</button>
+ <button class="op5" size="mini" plain @tap.stop="operations = -1">鍙栨秷鎿嶄綔</button>
+ </view>
+ </uni-card>
+ </view>
+ </view>
+ <view class="pagination-zone" id="pagination-zone">
+ <uni-pagination show-icon :page-size="size" :total="dataLength" :current="page"
+ @change="onPaginationChangeHandler"></uni-pagination>
+ </view>
+ <BarCodePopupVue ref="barcodePopup"></BarCodePopupVue>
+ </view>
+</template>
+
+<script>
+ import {
+ getUserInfo
+ } from "@/utils/auth.js";
+ import BarCodePopupVue from "@/components/BarCodePopup/BarCodePopup.vue";
+ import {
+ CommonUtils
+ } from "../../../utils/common";
+ import dayjs from "dayjs";
+ export default {
+ name: "Sc_MouldRepairCheckBillList",
+ data() {
+ return {
+ dayjs,
+ userInfo: getUserInfo(),
+ serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+ tabs: 0,
+ urls: '/Web/GetMouldBillsList',
+ MvarReportTitle: '妯″叿缁翠慨妫�楠屽崟缂撳瓨',
+ hform: {
+ HBillNo: '',
+ HSourceBillNo: '',
+ HBillType: 3899,
+ user: uni.getStorageSync('HUserName'),
+ HStockOrgID: uni.getStorageSync('OrganizationID'),
+ Type: "RC",
+ sWhere: "",
+ HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+ HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ },
+ sWhere: '',
+ listData: [],
+ showList: [],
+ showDetail: -1,
+ operations: -1,
+
+ page: 1,
+ size: 20,
+ dataLength: 0,
+ divideBottom: 0,
+ paginationTop: 0,
+ showmore: false,
+ }
+ },
+ computed: {
+ calcContentHeight: {
+ get() {
+ return this.paginationTop - this.divideBottom
+ }
+ }
+ },
+ onShow() {
+ //鐢ㄦ埛妯″潡鏉冮檺鍒ゆ柇
+ this.CheckModRight()
+ this.changeTab(0)
+ console.log(this.userInfo, uni.getStorageSync('HUserName'))
+ },
+ components: {
+ BarCodePopupVue
+ },
+ onPullDownRefresh: function() {
+ this.clear()
+ setTimeout(() => {
+ uni.stopPullDownRefresh();
+ }, 1000);
+ },
+ onReady() {
+ this.getCalcHeight()
+ },
+ methods: {
+ changeShowMore() {
+ this.showmore = !this.showmore
+ this.$nextTick(() => {
+ // 閲嶆柊璁$畻鍐呭瑙嗗彛楂樺害
+ this.getCalcHeight()
+ })
+ },
+ getCalcHeight() {
+ let query = uni.createSelectorQuery().in(this)
+ query
+ .select("#divide")
+ .boundingClientRect()
+ .select("#pagination-zone")
+ .boundingClientRect()
+ .exec(res => {
+ this.divideBottom = Math.ceil(res[0].bottom)
+ this.paginationTop = Math.floor(res[1].top)
+ })
+ },
+ async qrCodeDisplay(item) {
+ this.$refs.barcodePopup.setCodeInfo(item.HBillNo)
+ await this.$nextTick()
+ this.$refs.barcodePopup.open()
+ },
+ CheckModRight() {
+ uni.request({
+ url: this.serverUrl + '/WEBSController/CheckModRight_Json',
+ data: {
+ ModRightName: 'CE_OtherOut',
+ HUserName: uni.getStorageSync('HUserName')
+ },
+ success: (res) => {
+ if (res.data.count == 1) {} else {
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ }
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ },
+ onPaginationChangeHandler({
+ current
+ }) {
+ this.page = current
+ this.showList = this.getPage(current, this.size, this.listData)
+ },
+ getPage(page, size, list) {
+ let sindex = (parseInt(page) - 1) * size
+ let eindex = parseInt(page) * size
+ let newList = list.slice(sindex, eindex)
+ return newList
+ },
+ changeTab(e) {
+ this.tabs = e
+ this.page = 1
+ this.showList = []
+
+ if (this.tabs == 0) {
+ this.urls = '/Web/GetMouldBillsList'
+ }
+ // if (this.tabs == 1) {
+ // this.urls = '/WEBSController/GetKf_ICStockBillQueryList_User_Json'
+ // }
+ this.search()
+ },
+ async getList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: this.urls,
+ data: this.hform
+ })
+
+ let {
+ count,
+ data,
+ Message
+ } = res.data
+
+ if (count == 1) {
+ if(data == null) {
+ data = []
+ }
+ this.listData = data
+ console.log('data: ', data);
+ this.showList = this.getPage(this.page, this.size, data)
+ this.dataLength = data.length
+ } else {
+ CommonUtils.showTips({
+ title: "娓╅Θ鎻愮ず",
+ message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${Message}`
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: "娓╅Θ鎻愮ず",
+ message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${err}`
+ })
+ }
+
+ },
+ search() {
+ this.hform.sWhere = ''
+ this.listData = []
+ this.page = 1
+ this.showList = []
+
+ console.log(this.hform)
+ if (this.hform.HBillNo) {
+ this.hform.sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'";
+ }
+ if (this.hform.HBeginDate && this.hform.HEndDate) {
+ this.hform.sWhere +=
+ ` and convert(date,鏃ユ湡) between convert(date, '${this.hform.HBeginDate}') and convert(date, '${this.hform.HEndDate}')`;
+ }
+ this.getList()
+ },
+ clear() {
+ this.listData = []
+ this.page = 1
+ this.showList = []
+
+ this.sWhere = ''
+ this.hform = {
+ HBillNo: '',
+ HSourceBillNo: '',
+ HBillType: 3899,
+ user: uni.getStorageSync('HUserName'),
+ HStockOrgID: uni.getStorageSync('OrganizationID'),
+ sWhere: '',
+ Type: "RC",
+ HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+ HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ }
+ this.search()
+ },
+ add() {
+ uni.navigateTo({
+ url: '/pages/MJGL/Sb_EquipRepariCheckBill/Sb_EquipRepariCheckBill?operationType=1'
+ })
+ },
+ //缂栬緫
+ edit(item) {
+ console.log(item)
+ uni.request({
+ url: this.serverUrl + '/WEBSController/TempList_Modify_Json',
+ data: {
+ "HInterID": item.HInterID,
+ "HBillNo": item.鍗曟嵁鍙�,
+ "HBillType": this.hform.HBillType
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ uni.navigateTo({
+ url: './OtherOutBill?OperationType=2&HInterID=' + item.HInterID
+ })
+ } else {
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ }
+
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ })
+ },
+ //鍒犻櫎
+ del(item) {
+ // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+ success: (res) => {
+ if (res.confirm) {
+ console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+ uni.request({
+ url: this.serverUrl +
+ '/Sc_MouldRepairCheckBill/DeltetMouldRepairCheckBill',
+ data: {
+ HInterID: item.hmainid,
+ user: uni.getStorageSync('HUserName'),
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.clear()
+ }
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ } else if (res.cancel) {
+ console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+ }
+ }
+ });
+ },
+ //鎾ら攢
+ revoke(item) {
+ // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '鏄惁纭鎾ら攢',
+ success: (res) => {
+ if (res.confirm) {
+ console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+ uni.request({
+ url: this.serverUrl +
+ '/WEBSController/set_DeleteICStockBillAndWMS_Json',
+ data: {
+ HInterID: item.HInterID,
+ HBillNo: item.鍗曟嵁鍙�,
+ HBillType: this.hform.HBillType,
+ HMaker: uni.getStorageSync('HUserName'),
+ MvarReportTitle: this.MvarReportTitle,
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.clear()
+ }
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ } else if (res.cancel) {
+ console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+ }
+ }
+ });
+ },
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ @import "@/pages/MJGL/style/MJListStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue b/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue
index 1cb0fad..174694f 100644
--- a/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue
+++ b/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBillList.vue
@@ -389,7 +389,7 @@
console.log('鐢ㄦ埛鐐瑰嚮纭畾');
uni.request({
url: this.serverUrl +
- '/Sb_EquipMaintainBill/DeltetEquipMaintainBillList',
+ '/Sb_EqpRepairWorkBill/DeltetEqpRepairCheckBill',
data: {
HInterID: item.hmainid,
user: uni.getStorageSync('HUserName'),
diff --git a/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill.vue b/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill.vue
new file mode 100644
index 0000000..cff4b33
--- /dev/null
+++ b/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill.vue
@@ -0,0 +1,800 @@
+<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 v-model="hform.HBarCode" :disabled="!enableEdit"
+ @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.HRepairPlanBeginDate">
+ <input :value="hform.HRepairPlanBeginDate" />
+ </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.HRepairPlanEndDate">
+ <input :value="hform.HRepairPlanEndDate" />
+ </uni-datetime-picker>
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">缁翠慨鍐呭:</view>
+ <view class="right">
+ <textarea v-model="hform.HRepairContent" placeholder="璇疯緭鍏ラ獙璇佸唴瀹�" />
+ </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="[
+ {key: '灏忔椂', value: '灏忔椂'},
+ {key: '澶�', value: '澶�'},
+ {key: '鏈�', value: '鏈�'},
+ ]" dataKey="key" dataValue="value" v-model="hform.HCycleUnit">
+ </zxz-uni-data-select>
+ </view>
+ <view class="form-item">
+ <view class="title">璁″垝缁翠慨宸ユ椂:</view>
+ <view class="right">
+ <input type="number" v-model="hform.HPlanTimes" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title required">缁翠慨閮ㄩ棬:</view>
+ <zxz-uni-data-select required 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 required">缁翠慨浜�:</view>
+ <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
+ dataValue="HItemID" v-model="hform.HEmpID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </view>
+ <view class="form-item">
+ <view class="title required">缁翠慨椤圭洰:</view>
+ <zxz-uni-data-select required class="right" :localdata="HRepairList" dataKey="缁翠慨椤圭洰"
+ dataValue="hitemid" v-model="hform.HRepairID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </view>
+ <view class="form-item">
+ <view class="title required">璐熻矗浜�:</view>
+ <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
+ dataValue="HItemID" v-model="hform.HManagerID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </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="right">
+ <textarea v-model="hform.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">缁翠慨瑕佹眰:</view>
+ <view class="right">
+ <textarea v-model="HDetailList[0].HRepairExplanation" placeholder="璇疯緭鍏ョ淮淇姹�" />
+ </view>
+ </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>
+ <!-- 鎿嶄綔鎸夐挳 -->
+ <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> -->
+ </view>
+</template>
+
+<script>
+ import dayjs from "dayjs";
+ import {
+ CommonUtils
+ } from "@/utils/common";
+ import {
+ MpaasScan
+ } from "@/utils/mpaasScan.js"
+ import {
+ getUserInfo
+ } from "../../../utils/auth";
+ export default {
+ // 璁惧缁翠慨娲惧伐鍗�
+ name: 'Sb_EquipRepairSendWorkBill',
+ data() {
+ return {
+ tabs: 0,
+ HMainSourceBillType: "",
+ btnTop: 0,
+ tabsBottom: 0,
+ HModName: "Sb_EquipRepairSendWorkBill",
+ HBillType: '3909',
+ operationType: 1,
+ uploadOptions: {},
+ enableEdit: true,
+
+ HDeptList: [],
+ HRepairCheckList: [],
+ HEmpList: [],
+ HRepairList: [],
+
+ hform: {
+ "HBarCode": "",
+ HBillNo: '',
+ HInterID: 0,
+ HDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ HInnerBillNo: '',
+ HRepairContent: '',
+ HDeptIDName: '',
+ HDeptID: 0,
+ HEmpIDName: '',
+ HEmpID: 0,
+ HManagerIDName: '',
+ HManagerID: 0,
+ HEquipIDName: '',
+ HEquipID: 0,
+ HRepairIDName: '',
+ HRepairID: 0,
+ HRepairPlanBeginDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ HRepairPlanEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ HCycleUnit: '灏忔椂',
+ HPlanTimes: '',
+ HExplanation: '',
+ HRemark: '',
+ HMaker: getUserInfo()["Czymc"],
+ HChecker: '',
+ HCloseMan: '',
+ HUpDater: '',
+ HMakeDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ HCheckDate: '',
+ HCloseDate: '',
+ HUpDateDate: '',
+ HDeleteMan: '',
+ HDeleteDate: ''
+ },
+ HDetailList: [{ // 鍚庣鎺ュ彛鎻愪氦闇�瑕� 鏄庣粏淇℃伅
+ "瀛愮淮淇」鐩�": "",
+ "HRepairID": 0,
+ "瀛愮淮淇」鐩唬鐮�": "",
+ "HRepairExplanation": "",
+ "瀛愯礋璐d汉浠g爜": "",
+ "HManagerID": "",
+ "瀛愯礋璐d汉": "",
+ "HRemark": ""
+ }]
+ };
+ },
+ computed: {
+ containerHeight: {
+ get() {
+ return this.btnTop - this.tabsBottom - 5
+ }
+ },
+ },
+ methods: {
+ // 缁翠慨椤圭洰
+ async getRepairList() {
+ try{
+ let res = await CommonUtils.doRequest2Async({
+ url: '/Gy_Repair/GetRepairList',
+ data: {
+ sWhere: '',
+ user: getUserInfo()["Czymc"]
+ }
+ })
+
+ let {data, count, Message} = res.data
+ if(count == 1){
+ this.HRepairList = data
+ }else {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇妫�楠岄」鐩け璐�: ${Message}`
+ })
+ }
+ }catch(err) {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇妫�楠岄」鐩け璐�: ${err}`
+ })
+ }
+ },
+ // 鍒犻櫎鏄庣粏
+ delDetail(item) {
+
+ },
+ // 鎻愪氦鏁版嵁鏈夋晥鎬ф牎楠�
+ ValidCheck() {
+ if (this.hform.HEquipID == 0) {
+ return {
+ Message: "鏈綍鍏ヨ澶囦俊鎭紝璇峰厛褰曞叆璁惧淇℃伅!",
+ state: false
+ }
+ }
+ if (this.hform.HDeptID == 0) {
+ return {
+ Message: "閮ㄩ棬涓嶅緱涓虹┖!",
+ state: false
+ }
+ }
+ if (this.hform.HEmpID == 0) {
+ return {
+ Message: "楠屾敹浜轰笉寰椾负绌�!",
+ state: false
+ }
+ }
+ if (this.hform.HRepairCheckMainID == 0) {
+ return {
+ Message: "楠岃瘉椤圭洰涓嶅緱涓虹┖!",
+ state: false
+ }
+ }
+ if (this.hform.HManagerID == 0) {
+ return {
+ Message: "璐熻矗浜轰笉寰椾负绌�!",
+ state: false
+ }
+ }
+
+ return {
+ Message: "",
+ state: true
+ }
+ },
+ addNew() {
+ uni.redirectTo({
+ url: './Sb_EquipRepairSendWorkBill?operationType=1'
+ })
+ },
+ goBack() {
+ uni.navigateBack()
+ },
+ checkBoxChangeHandler(index, e) {
+ let cr = e.detail.value
+ if (cr.length == 0) {
+ this.HCheckFileList[index]["HDotCheckResult"] = false
+ } else {
+ this.HCheckFileList[index]["HDotCheckResult"] = 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
+ })
+ }
+ },
+ // 鑾峰彇鑱屽憳鏁版嵁
+ async getEmpList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: '/PublicPageMethod/UserList',
+ data: {
+ sWhere: " where 1=1",
+ }
+ })
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ this.HEmpList = data
+ } else {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: Message
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: err
+ })
+ }
+ },
+ // 鑾峰彇楠岃瘉椤圭洰鏁版嵁
+ async getCheckProjList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: '/Gy_RepairCheck/GetRepairCheckList',
+ data: {
+ sWhere: "",
+ user: uni.getStorageSync('HUserName'),
+ }
+ })
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ this.HRepairCheckList = 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: "/Sb_PDA_EquipDotCheckBill/txtHBarCode_KeyDown_List",
+ data: {
+ HBarCode: HBarCode,
+ },
+ })
+
+
+ if (!res) {
+ return
+ }
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+
+ if (count == 1) {
+ console.log('data: ', data);
+ this.hform.HEquipID = data[0].hmainid
+ this.hform.HBarName = data[0].璁惧鍚嶇О
+ this.hform.HBarSpec = data[0].璁惧瑙勬牸
+ this.hform.HBarModel = data[0].璁惧鍨嬪彿
+ this.hform.HQty = 1
+
+ this.enableEdit = false
+ } 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": "DJ",
+ "HDate": this.hform.HBeginDate
+ }
+ })
+
+ let {
+ data,
+ Message,
+ count
+ } = res.data
+ if (count == 1) {
+ this.hform.HEquipDotCheckRuleInterID = data[0].鐐规瑙勭▼ID
+ this.hform.HEquipDotCheckRuleInterNo = data[0].鐐规瑙勭▼鍗曞彿
+ this.hform.HPlanNo = data[0].鐐规璁″垝鍗�
+ this.hform.HPlanInterID = (data[0].鐐规璁″垝ID == null ? 0 : data[0].鐐规璁″垝ID) == "" ? 0 : data[0]
+ .鐐规璁″垝ID
+ this.hform.HPlanEntryID = (data[0].鐐规璁″垝瀛怚D == null ? 0 : data[0].鐐规璁″垝瀛怚D) == "" ? 0 : data[
+ 0].鐐规璁″垝瀛怚D
+
+ this.HCheckFileList = Array.from(data).map(item => {
+ return {
+ "HDotCheckItemID": item.HDotCheckItemID,
+ "HDotCheckCode": item.鐐规椤圭洰浠g爜,
+ "HDotCheckItem": item.鐐规椤圭洰,
+ "HDotCheckPart": item.鐐规閮ㄤ綅,
+ "HClaim": item.鍏蜂綋瑕佹眰,
+ "HManagerID": item.璐熻矗浜篒D,
+ "HManagerCode": item.璐熻矗浜轰唬鐮�,
+ "HManagerName": item.璐熻矗浜哄悕绉�,
+ "HSourceInterID": item.鐐规璁″垝ID == null ? 0 : item.鐐规璁″垝ID,
+ "HSourceEntryID": item.鐐规璁″垝瀛怚D == null ? 0 : item.鐐规璁″垝瀛怚D,
+ "HSourceBillNo": item.鐐规璁″垝鍗�,
+ "HDotCheckItemClassID": 0,
+ "HDotCheckItemClassName": "",
+ "HDotCheckItemMethodID": 0,
+ "HDotCheckItemMethodName": "",
+ "HDotCheckResult": item.榛樿缁撹 == 1 ? true : false
+ }
+ })
+
+ } else {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${Message}`
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${err}`
+ })
+ }
+ },
+ radioChange({
+ detail: {
+ value
+ }
+ }) {
+ this.hform.HCheckResult = 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 = data[0]["HInterID"]
+ this.hform.HBillNo = data[0]["HBillNo"]
+ } catch (err) {
+ CommonUtils.showTips({
+ title: "娓╅Θ鎻愮ず",
+ message: "鑾峰彇鍗曟嵁淇℃伅寮傚父: " + err
+ })
+ }
+ },
+ async submit() {
+ let valid = this.ValidCheck()
+ if (!valid.state) {
+ CommonUtils.showTips({
+ message: valid.Message
+ })
+ return
+ }
+
+ try {
+ let oMain = JSON.stringify(this.hform);
+ this.HDetailList[0].HManagerID = this.hform.HManagerID
+ this.HDetailList[0].HRepairID = this.hform.HRepairID
+ let sSubStr = JSON.stringify(this.HDetailList);
+ let sMainSub = oMain + ';' + sSubStr + `;-1;${this.operationType}` + ';' + getUserInfo()[
+ 'Czymc'];
+ let res = await CommonUtils.doRequest2Sync({
+ url: "/Sb_EquipRepairSendWorkBill/AddEquipRepairSendWorkBill",
+ data: {
+ "sMainSub": 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: './Sb_EquipRepairSendWorkBill?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.getEmpList()
+ this.getCheckProjList()
+ this.getRepairList()
+ },
+ 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" scoped>
+ @import "@/pages/MJGL/style/MJBillStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList.vue b/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList.vue
new file mode 100644
index 0000000..3dec3c5
--- /dev/null
+++ b/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList.vue
@@ -0,0 +1,478 @@
+<template>
+ <view class="content">
+ <view class="form">
+ <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 v-if="showmore">
+ <view class="form-item">
+ <view class="title">鍗曟嵁鍙�:</view>
+ <view class="right">
+ <input v-model="hform.HBillNo" placeholder="璇疯緭鍏ュ崟鎹彿" />
+ </view>
+ </view>
+
+ </view>
+ <view class="other">
+ <view v-if="!showmore" @tap="changeShowMore">
+ 灞曞紑鍏朵粬鏉′欢<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="bottom"></uni-icons>
+ </view>
+ <view v-if="showmore" @tap="changeShowMore">
+ 鎶樺彔鍏朵粬鏉′欢<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="top"></uni-icons>
+ </view>
+ </view>
+
+ <view class="buttons">
+ <button class="btn-a" size="mini" type="default" @tap="clear">閲嶇疆</button>
+ <button class="btn-b" size="mini" type="default" @tap="add">鏂板</button>
+ <button class="btn-c" size="mini" type="default" @tap="search">鏌ヨ</button>
+ </view>
+ </view>
+
+ <view id="divide" style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+ <view :style="{
+ height: calcContentHeight + 'px',
+ overflowY: 'auto'
+ }">
+ <view class="list" v-for="(item,index) in showList" :key="index" v-if="tabs==0">
+ <uni-card :title="item.鍒跺崟鏃ユ湡.substr(0,10)" :extra="item.鍗曟嵁鍙�" style="margin: 10px;"
+ @tap="showDetail = showDetail==index?-1:index">
+ <view class="card-detail">
+ <view class="detail" v-if="item.鍒跺崟浜�">
+ <text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+ </view>
+ <view class="detail" v-if="item.璁惧浠g爜">
+ <text>璁惧浠g爜锛�</text>{{item.璁惧浠g爜}}
+ </view>
+ <view class="detail" v-if="item.璁惧">
+ <text>璁惧鍚嶇О锛�</text>{{item.璁惧}}
+ </view>
+ <view class="detail" v-if="item.璐熻矗浜�">
+ <text>璐熻矗浜猴細</text>{{item.璐熻矗浜簘}
+ </view>
+ <view class="detail" v-if="item.缁翠慨椤圭洰">
+ <text>缁翠慨椤圭洰锛�</text>{{item.缁翠慨椤圭洰}}
+ </view>
+ <view class="detail" v-if="item.缁翠慨閮ㄩ棬">
+ <text>缁翠慨閮ㄩ棬锛�</text>{{item.缁翠慨閮ㄩ棬}}
+ </view>
+ <view class="detail" v-if="item.缁翠慨浜�">
+ <text>缁翠慨浜猴細</text>{{item.缁翠慨浜簘}
+ </view>
+ <view class="detail" v-if="item.璁″垝缁翠慨宸ユ椂">
+ <text>缁翠慨鏃堕棿锛�</text>{{ item.璁″垝缁翠慨宸ユ椂 + '' + item.鏃堕棿鍗曚綅}}
+ </view>
+ <view class="card-detail" v-if="showDetail == index">
+
+
+ <view class="detail" v-if="item.琛ㄥご澶囨敞">
+ <text>琛ㄥご澶囨敞锛�</text>{{item.琛ㄥご澶囨敞}}
+ </view>
+ <view class="detail" v-if="item.鍙戠敓鏃ユ湡">
+ <text>寮�濮嬫棩鏈燂細</text>{{dayjs(item.鍙戠敓鏃ユ湡).format("YYYY-MM-DD HH:mm:DD")}}
+ </view>
+ <view class="detail" v-if="item.楠屾敹浜轰唬鐮�">
+ <text>楠屾敹浜轰唬鐮侊細</text>{{item.楠屾敹浜轰唬鐮亇}
+ </view>
+ <view class="detail" v-if="item.缁翠慨閮ㄩ棬浠g爜">
+ <text>缁翠慨閮ㄩ棬浠g爜锛�</text>{{item.缁翠慨閮ㄩ棬浠g爜}}
+ </view>
+ <view class="detail" v-if="item.璐熻矗浜轰唬鐮�">
+ <text>璐熻矗浜轰唬鐮侊細</text>{{item.璐熻矗浜轰唬鐮亇}
+ </view>
+ <view class="detail" v-if="item.hmainid">
+ <text>鍐呴儴鍗曟嵁鍙凤細</text>{{item.hmainid}}
+ </view>
+ </view>
+ </view>
+
+ <view class="more" v-if="showDetail == index && operations != index">
+ <view class="part" style="border-right: 1px solid #eee;">
+ <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
+ </view>
+ <view class="part" @tap.stop="operations = operations==index?-1:index">
+ <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+ size="14"></uni-icons>鎿嶄綔
+ </view>
+ </view>
+ <view class="more" v-if="showDetail != index && operations != index">
+ <view class="part" style="border-right: 1px solid #eee;">
+ <uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏇村淇℃伅
+ </view>
+ <view class="part" @tap.stop="operations = operations==index?-1:index">
+ <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+ size="14"></uni-icons>鎿嶄綔
+ </view>
+ </view>
+ <view class="op" v-if="operations == index">
+ <!-- <button class="op3" size="mini" plain @tap.stop="edit(item)">缂栬緫</button> -->
+ <button class="op4" size="mini" plain @tap.stop="del(item)">鍒犻櫎</button>
+ <button class="op5" size="mini" plain @tap.stop="operations = -1">鍙栨秷鎿嶄綔</button>
+ </view>
+ </uni-card>
+ </view>
+ </view>
+ <view class="pagination-zone" id="pagination-zone">
+ <uni-pagination show-icon :page-size="size" :total="dataLength" :current="page"
+ @change="onPaginationChangeHandler"></uni-pagination>
+ </view>
+ <BarCodePopupVue ref="barcodePopup"></BarCodePopupVue>
+ </view>
+</template>
+
+<script>
+ import {
+ getUserInfo
+ } from "@/utils/auth.js";
+ import BarCodePopupVue from "@/components/BarCodePopup/BarCodePopup.vue";
+ import {
+ CommonUtils
+ } from "../../../utils/common";
+ import dayjs from "dayjs";
+ export default {
+ data() {
+ return {
+ dayjs,
+ userInfo: getUserInfo(),
+ serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+ tabs: 0,
+ urls: '/Web/GetEquipmentBillsList',
+ MvarReportTitle: '璁惧缁翠慨娲惧伐鍗曠紦瀛�',
+ hform: {
+ HBillNo: '',
+ HSourceBillNo: '',
+ HBillType: 3909,
+ user: uni.getStorageSync('HUserName'),
+ HStockOrgID: uni.getStorageSync('OrganizationID'),
+ Type: "PG",
+ sWhere: "",
+ HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+ HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ },
+ sWhere: '',
+ listData: [],
+ showList: [],
+ showDetail: -1,
+ operations: -1,
+
+ page: 1,
+ size: 20,
+ dataLength: 0,
+ divideBottom: 0,
+ paginationTop: 0,
+ showmore: false,
+ }
+ },
+ computed: {
+ calcContentHeight: {
+ get() {
+ return this.paginationTop - this.divideBottom
+ }
+ }
+ },
+ onShow() {
+ //鐢ㄦ埛妯″潡鏉冮檺鍒ゆ柇
+ this.CheckModRight()
+ this.changeTab(0)
+ console.log(this.userInfo, uni.getStorageSync('HUserName'))
+ },
+ components: {
+ BarCodePopupVue
+ },
+ onPullDownRefresh: function() {
+ this.clear()
+ setTimeout(() => {
+ uni.stopPullDownRefresh();
+ }, 1000);
+ },
+ onReady() {
+ this.getCalcHeight()
+ },
+ methods: {
+ changeShowMore() {
+ this.showmore = !this.showmore
+ this.$nextTick(() => {
+ // 閲嶆柊璁$畻鍐呭瑙嗗彛楂樺害
+ this.getCalcHeight()
+ })
+ },
+ getCalcHeight() {
+ let query = uni.createSelectorQuery().in(this)
+ query
+ .select("#divide")
+ .boundingClientRect()
+ .select("#pagination-zone")
+ .boundingClientRect()
+ .exec(res => {
+ this.divideBottom = Math.ceil(res[0].bottom)
+ this.paginationTop = Math.floor(res[1].top)
+ })
+ },
+ async qrCodeDisplay(item) {
+ this.$refs.barcodePopup.setCodeInfo(item.HBillNo)
+ await this.$nextTick()
+ this.$refs.barcodePopup.open()
+ },
+ CheckModRight() {
+ uni.request({
+ url: this.serverUrl + '/WEBSController/CheckModRight_Json',
+ data: {
+ ModRightName: 'CE_OtherOut',
+ HUserName: uni.getStorageSync('HUserName')
+ },
+ success: (res) => {
+ if (res.data.count == 1) {} else {
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ }
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ },
+ onPaginationChangeHandler({
+ current
+ }) {
+ this.page = current
+ this.showList = this.getPage(current, this.size, this.listData)
+ },
+ getPage(page, size, list) {
+ let sindex = (parseInt(page) - 1) * size
+ let eindex = parseInt(page) * size
+ let newList = list.slice(sindex, eindex)
+ return newList
+ },
+ changeTab(e) {
+ this.tabs = e
+ this.page = 1
+ this.showList = []
+
+ if (this.tabs == 0) {
+ this.urls = '/Web/GetEquipmentBillsList'
+ }
+ // if (this.tabs == 1) {
+ // this.urls = '/WEBSController/GetKf_ICStockBillQueryList_User_Json'
+ // }
+ this.search()
+ },
+ async getList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: this.urls,
+ data: this.hform
+ })
+
+ let {
+ count,
+ data,
+ Message
+ } = res.data
+
+ if (count == 1) {
+ if(data == null) {
+ data = []
+ }
+ this.listData = data
+ console.log('data: ', data);
+ this.showList = this.getPage(this.page, this.size, data)
+ this.dataLength = data.length
+ } else {
+ CommonUtils.showTips({
+ title: "娓╅Θ鎻愮ず",
+ message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${Message}`
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: "娓╅Θ鎻愮ず",
+ message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${err}`
+ })
+ }
+
+ },
+ search() {
+ this.hform.sWhere = ''
+ this.listData = []
+ this.page = 1
+ this.showList = []
+
+ console.log(this.hform)
+ if (this.hform.HBillNo) {
+ this.hform.sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'";
+ }
+ if (this.hform.HBeginDate && this.hform.HEndDate) {
+ this.hform.sWhere +=
+ ` and convert(date,鏃ユ湡) between convert(date, '${this.hform.HBeginDate}') and convert(date, '${this.hform.HEndDate}')`;
+ }
+ this.getList()
+ },
+ clear() {
+ this.listData = []
+ this.page = 1
+ this.showList = []
+
+ this.sWhere = ''
+ this.hform = {
+ HBillNo: '',
+ HSourceBillNo: '',
+ HBillType: 3909,
+ user: uni.getStorageSync('HUserName'),
+ HStockOrgID: uni.getStorageSync('OrganizationID'),
+ Type: "PG",
+ sWhere: "",
+ HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+ HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ }
+ this.search()
+ },
+ add() {
+ uni.navigateTo({
+ url: '/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill?operationType=1'
+ })
+ },
+ //缂栬緫
+ edit(item) {
+ console.log(item)
+ uni.request({
+ url: this.serverUrl + '/WEBSController/TempList_Modify_Json',
+ data: {
+ "HInterID": item.HInterID,
+ "HBillNo": item.鍗曟嵁鍙�,
+ "HBillType": this.hform.HBillType
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ uni.navigateTo({
+ url: './OtherOutBill?OperationType=2&HInterID=' + item.HInterID
+ })
+ } else {
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ }
+
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ })
+ },
+ //鍒犻櫎
+ del(item) {
+ // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+ success: (res) => {
+ if (res.confirm) {
+ console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+ uni.request({
+ url: this.serverUrl +
+ '/Sb_EquipRepairSendWorkBill/DeleteWorkBill',
+ data: {
+ HInterID: item.hmainid,
+ user: uni.getStorageSync('HUserName'),
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.clear()
+ }
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ } else if (res.cancel) {
+ console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+ }
+ }
+ });
+ },
+ //鎾ら攢
+ revoke(item) {
+ // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '鏄惁纭鎾ら攢',
+ success: (res) => {
+ if (res.confirm) {
+ console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+ uni.request({
+ url: this.serverUrl +
+ '/WEBSController/set_DeleteICStockBillAndWMS_Json',
+ data: {
+ HInterID: item.HInterID,
+ HBillNo: item.鍗曟嵁鍙�,
+ HBillType: this.hform.HBillType,
+ HMaker: uni.getStorageSync('HUserName'),
+ MvarReportTitle: this.MvarReportTitle,
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.clear()
+ }
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ } else if (res.cancel) {
+ console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+ }
+ }
+ });
+ },
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ @import "@/pages/MJGL/style/MJListStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill.vue b/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill.vue
new file mode 100644
index 0000000..7066f6c
--- /dev/null
+++ b/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill.vue
@@ -0,0 +1,887 @@
+<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 v-model="hform.HBarCode" :disabled="!enableEdit"
+ @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.HRepairBeginDate">
+ <input :value="hform.HRepairBeginDate" />
+ </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.HRepairEndDate">
+ <input :value="hform.HRepairEndDate" />
+ </uni-datetime-picker>
+ </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="[
+ {key: '灏忔椂', value: '灏忔椂'},
+ {key: '澶�', value: '澶�'},
+ {key: '鏈�', value: '鏈�'},
+ ]" dataKey="key" dataValue="value" v-model="hform.HCycleUnit">
+ </zxz-uni-data-select>
+ </view>
+ <view class="form-item">
+ <view class="title required">璁″垝缁翠慨宸ユ椂:</view>
+ <view class="right">
+ <input type="number" v-model="hform.HPlanTimes" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title required">瀹為檯缁翠慨宸ユ椂:</view>
+ <view class="right">
+ <input type="number" v-model="hform.HTimes" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title required">缁翠慨閮ㄩ棬:</view>
+ <zxz-uni-data-select required 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 required">缁翠慨浜�:</view>
+ <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
+ dataValue="HItemID" v-model="hform.HEmpID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </view>
+ <view class="form-item">
+ <view class="title required">缁翠慨椤圭洰:</view>
+ <zxz-uni-data-select required class="right" :localdata="HRepairList" dataKey="缁翠慨椤圭洰"
+ dataValue="hitemid" v-model="hform.HRepairID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </view>
+ <view class="form-item">
+ <view class="title required">涓荤:</view>
+ <zxz-uni-data-select required class="right" :localdata="HEmpList" dataKey="HName"
+ dataValue="HItemID" v-model="hform.HManagerID">
+
+ </zxz-uni-data-select>
+ <!-- <input disabled v-model="hform.HDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" /> -->
+ </view>
+ <view class="form-item">
+ <view class="title">鍣ㄥ叿鍚嶇О:</view>
+ <view class="righton">
+ <input v-model="hform.HMouldName" disabled />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">鍣ㄥ叿瑙勬牸:</view>
+ <view class="righton">
+ <input v-model="hform.HMouldModel" disabled />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">鍣ㄥ叿鍨嬪彿:</view>
+ <view class="righton">
+ <input v-model="hform.HMouldSpec" disabled />
+ </view>
+ </view>
+ </view>
+ </template>
+ <!-- 鍏朵粬淇℃伅(闈為噸瑕佷俊鎭�) -->
+ <template v-if="tabs == 1">
+ <view class="form" :style="{
+ height: containerHeight + 'px',
+ overflow: 'auto'
+ }">
+ <view class="form-item">
+ <view class="title">渚涘簲鍟�:</view>
+ <view class="right">
+ <input v-model="hform.HSupID" placeholder="" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">缁翠慨绫诲瀷:</view>
+ <zxz-uni-data-select class="right" :localdata="[
+ {key: '鍐呴儴缁翠慨', value: '鍐呴儴缁翠慨'},
+ {key: '澶栭儴缁翠慨', value: '澶栭儴缁翠慨'},
+ ]" dataKey="key" dataValue="value" v-model="hform.HRepairType">
+ </zxz-uni-data-select>
+ </view>
+ <view class="form-item">
+ <view class="title">缁翠慨鍚庢柊瑙勬牸:</view>
+ <view class="right">
+ <input type="number" v-model="hform.HNewModel" placeholder="" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">鏂拌璁″鍛�:</view>
+ <view class="right">
+ <input type="number" v-model="hform.HNewDesignLife" placeholder="" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">璁惧:</view>
+ <view class="right">
+ <input v-model="hform.HEquipID" placeholder="" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">缁翠慨璐圭敤:</view>
+ <view class="right">
+ <input type="number" v-model="HDetailList[0].HMoney" placeholder="" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">缁翠慨鍐呭:</view>
+ <view class="right">
+ <textarea v-model="hform.HRepairContent" placeholder="璇疯緭鍏ョ淮淇唴瀹�" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">缁翠慨瑕佹眰:</view>
+ <view class="right">
+ <textarea v-model="hform.HExplanation" placeholder="璇疯緭鍏ョ淮淇姹�" />
+ </view>
+ </view>
+ <view class="form-item">
+ <view class="title">澶囨敞:</view>
+ <view class="right">
+ <textarea v-model="hform.HRemark" placeholder="璇疯緭鍏ュ娉�" />
+ </view>
+ </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>
+ <!-- 鎿嶄綔鎸夐挳 -->
+ <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> -->
+ </view>
+</template>
+
+<script>
+ import dayjs from "dayjs";
+ import {
+ CommonUtils
+ } from "@/utils/common";
+ import {
+ MpaasScan
+ } from "@/utils/mpaasScan.js"
+ import {
+ getUserInfo
+ } from "../../../utils/auth";
+ export default {
+ // 鍣ㄥ叿缁翠慨娲惧伐鍗�
+ name: 'Sc_MouldRepairSendWorkBill',
+ data() {
+ return {
+ tabs: 0,
+ HMainSourceBillType: "",
+ btnTop: 0,
+ tabsBottom: 0,
+ HModName: "Sc_MouldRepairSendWorkBill",
+ HBillType: '3843',
+ operationType: 1,
+ uploadOptions: {},
+ enableEdit: true,
+
+ HDeptList: [],
+ HRepairCheckList: [],
+ HEmpList: [],
+ HRepairList: [],
+
+ hform: {
+ "HBarCode": "",
+ "HBillNo": "",
+ "HInterID": "0",
+ "HDate": dayjs(new Date()).format('YYYY-MM-DD'),
+ "HInnerBillNo": "",
+ "MouldHNumber": "",
+ "HMouldID": "0",
+ "HRepairIDName": "",
+ "HRepairID": "0",
+ "HCycleUnit": "灏忔椂",
+ "MouldHName": "",
+ "MouldHModel": "",
+ "HDeptIDName": "",
+ "HDeptID": "0",
+ "HManagerIDName": "",
+ "HManagerID": "0",
+ "HEmpIDName": "",
+ "HEmpID": "0",
+ "HRepairBeginDate": dayjs(new Date()).format('YYYY-MM-DD'),
+ "HMainSourceBillType": "",
+ "HMainSourceInterID": "0",
+ "HMainSourceEntryID": "0",
+ "HPlanTimes": "0",
+ "HTimes": "0",
+ "HRepairEndDate": dayjs(new Date()).format('YYYY-MM-DD'),
+ "HMainSourceBillNo": "",
+ "HSupIDName": "",
+ "HSupID": "0",
+ "HRepairType": "鍐呴儴缁翠慨",
+ "HNewModel": "0",
+ "HOrgID": "",
+ "HNewDesignLife": "0",
+ "HEquipIDName": "",
+ "HEquipID": "0",
+ "HRepairContent": "",
+ "HExplanation": "",
+ "HRemark": "",
+ "HMaker": getUserInfo()["Czymc"],
+ "HChecker": "",
+ "HCloseMan": "",
+ "HUpDater": "",
+ "HMakeDate": dayjs(new Date()).format('YYYY-MM-DD'),
+ "HCheckDate": "",
+ "HCloseDate": "",
+ "HUpDateDate": "",
+ "HDeleteMan": "",
+ "HDeleteDate": "",
+ HMouldName: "",
+ HMouldSpec: "",
+ HMouldModel: "",
+ },
+ HDetailList: [{ // 鍚庣鎺ュ彛鎻愪氦闇�瑕� 鏄庣粏淇℃伅
+ "瀛愮淮淇」鐩�": "",
+ "HRepairID": 0,
+ "瀛愮淮淇」鐩唬鐮�": "",
+ "HRepairExplanation": "",
+ "瀛愯礋璐d汉浠g爜": "",
+ "HManagerID": "",
+ "瀛愯礋璐d汉": "",
+ "HMoney": 0,
+ "HRemark": ""
+ }]
+ };
+ },
+ computed: {
+ containerHeight: {
+ get() {
+ return this.btnTop - this.tabsBottom - 5
+ }
+ },
+ },
+ methods: {
+ // 缁翠慨椤圭洰
+ async getRepairList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: '/Gy_Repair/GetRepairList',
+ data: {
+ sWhere: '',
+ user: getUserInfo()["Czymc"]
+ }
+ })
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ this.HRepairList = data
+ } else {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇妫�楠岄」鐩け璐�: ${Message}`
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇妫�楠岄」鐩け璐�: ${err}`
+ })
+ }
+ },
+ // 鍒犻櫎鏄庣粏
+ delDetail(item) {
+
+ },
+ // 鎻愪氦鏁版嵁鏈夋晥鎬ф牎楠�
+ ValidCheck() {
+ if (this.hform.HMouldID == 0) {
+ return {
+ Message: "鏈綍鍏ュ櫒鍏蜂俊鎭紝璇峰厛褰曞叆鍣ㄥ叿淇℃伅!",
+ state: false
+ }
+ }
+ if (this.hform.HDeptID == 0) {
+ return {
+ Message: "閮ㄩ棬涓嶅緱涓虹┖!",
+ state: false
+ }
+ }
+ if (this.hform.HEmpID == 0) {
+ return {
+ Message: "楠屾敹浜轰笉寰椾负绌�!",
+ state: false
+ }
+ }
+ if (this.hform.HRepairCheckMainID == 0) {
+ return {
+ Message: "楠岃瘉椤圭洰涓嶅緱涓虹┖!",
+ state: false
+ }
+ }
+ if (this.hform.HManagerID == 0) {
+ return {
+ Message: "璐熻矗浜轰笉寰椾负绌�!",
+ state: false
+ }
+ }
+ if (this.hform.HPlanTimes == '') {
+ return {
+ Message: "璁″垝缁翠慨宸ユ椂涓嶅緱涓虹┖!",
+ state: false
+ }
+ }
+ if (this.hform.HTimes == '') {
+ return {
+ Message: "瀹為檯缁翠慨宸ユ椂涓嶅緱涓虹┖!",
+ state: false
+ }
+ }
+
+
+ return {
+ Message: "",
+ state: true
+ }
+ },
+ addNew() {
+ uni.redirectTo({
+ url: './Sb_EquipRepairSendWorkBill?operationType=1'
+ })
+ },
+ goBack() {
+ uni.navigateBack()
+ },
+ checkBoxChangeHandler(index, e) {
+ let cr = e.detail.value
+ if (cr.length == 0) {
+ this.HCheckFileList[index]["HDotCheckResult"] = false
+ } else {
+ this.HCheckFileList[index]["HDotCheckResult"] = 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
+ })
+ }
+ },
+ // 鑾峰彇鑱屽憳鏁版嵁
+ async getEmpList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: '/PublicPageMethod/UserList',
+ data: {
+ sWhere: " where 1=1",
+ }
+ })
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ this.HEmpList = data
+ } else {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: Message
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: err
+ })
+ }
+ },
+ // 鑾峰彇楠岃瘉椤圭洰鏁版嵁
+ async getCheckProjList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: '/Gy_RepairCheck/GetRepairCheckList',
+ data: {
+ sWhere: "",
+ user: uni.getStorageSync('HUserName'),
+ }
+ })
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+ if (count == 1) {
+ this.HRepairCheckList = 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: "/Sc_PDA_MouldRepairCheckBill/txtHBarCode_KeyDown_List",
+ data: {
+ HBarCode: HBarCode,
+ },
+ })
+
+
+ if (!res) {
+ return
+ }
+
+ let {
+ data,
+ count,
+ Message
+ } = res.data
+
+ if (count == 1) {
+ console.log('data: ', data);
+ this.hform.HMouldID = data[0].hmainid
+ this.hform.HMouldName = data[0].妯″叿鍚嶇О
+ this.hform.HMouldSpec = data[0].妯″叿鍝佺被
+ this.hform.HMouldModel = data[0].妯″叿鍨嬪彿
+ this.hform.HQty = 1
+
+ this.enableEdit = false
+ } 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": "DJ",
+ "HDate": this.hform.HBeginDate
+ }
+ })
+
+ let {
+ data,
+ Message,
+ count
+ } = res.data
+ if (count == 1) {
+ this.hform.HEquipDotCheckRuleInterID = data[0].鐐规瑙勭▼ID
+ this.hform.HEquipDotCheckRuleInterNo = data[0].鐐规瑙勭▼鍗曞彿
+ this.hform.HPlanNo = data[0].鐐规璁″垝鍗�
+ this.hform.HPlanInterID = (data[0].鐐规璁″垝ID == null ? 0 : data[0].鐐规璁″垝ID) == "" ? 0 : data[0]
+ .鐐规璁″垝ID
+ this.hform.HPlanEntryID = (data[0].鐐规璁″垝瀛怚D == null ? 0 : data[0].鐐规璁″垝瀛怚D) == "" ? 0 : data[
+ 0].鐐规璁″垝瀛怚D
+
+ this.HCheckFileList = Array.from(data).map(item => {
+ return {
+ "HDotCheckItemID": item.HDotCheckItemID,
+ "HDotCheckCode": item.鐐规椤圭洰浠g爜,
+ "HDotCheckItem": item.鐐规椤圭洰,
+ "HDotCheckPart": item.鐐规閮ㄤ綅,
+ "HClaim": item.鍏蜂綋瑕佹眰,
+ "HManagerID": item.璐熻矗浜篒D,
+ "HManagerCode": item.璐熻矗浜轰唬鐮�,
+ "HManagerName": item.璐熻矗浜哄悕绉�,
+ "HSourceInterID": item.鐐规璁″垝ID == null ? 0 : item.鐐规璁″垝ID,
+ "HSourceEntryID": item.鐐规璁″垝瀛怚D == null ? 0 : item.鐐规璁″垝瀛怚D,
+ "HSourceBillNo": item.鐐规璁″垝鍗�,
+ "HDotCheckItemClassID": 0,
+ "HDotCheckItemClassName": "",
+ "HDotCheckItemMethodID": 0,
+ "HDotCheckItemMethodName": "",
+ "HDotCheckResult": item.榛樿缁撹 == 1 ? true : false
+ }
+ })
+
+ } else {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${Message}`
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: '娓╅Θ鎻愮ず',
+ message: `鑾峰彇鐐规瑙勭▼閿欒锛� ${err}`
+ })
+ }
+ },
+ radioChange({
+ detail: {
+ value
+ }
+ }) {
+ this.hform.HCheckResult = 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 = data[0]["HInterID"]
+ this.hform.HBillNo = data[0]["HBillNo"]
+ } catch (err) {
+ CommonUtils.showTips({
+ title: "娓╅Θ鎻愮ず",
+ message: "鑾峰彇鍗曟嵁淇℃伅寮傚父: " + err
+ })
+ }
+ },
+ async submit() {
+ let valid = this.ValidCheck()
+ if (!valid.state) {
+ CommonUtils.showTips({
+ message: valid.Message
+ })
+ return
+ }
+
+ try {
+ let oMain = JSON.stringify(this.hform);
+ this.HDetailList[0].HManagerID = this.hform.HManagerID
+ this.HDetailList[0].HRepairID = this.hform.HRepairID
+ let sSubStr = JSON.stringify(this.HDetailList);
+ let sMainSub = oMain + ';' + sSubStr + `;${this.operationType}` + ';' + getUserInfo()[
+ 'Czymc'];
+ let res = await CommonUtils.doRequest2Sync({
+ url: "/Sc_MouldRepairSendWorkBill/AddBill",
+ data: {
+ "sMainSub": 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: './Sb_EquipRepairSendWorkBill?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.getEmpList()
+ this.getCheckProjList()
+ this.getRepairList()
+ },
+ 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" scoped>
+ @import "@/pages/MJGL/style/MJBillStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList.vue b/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList.vue
new file mode 100644
index 0000000..a05ae16
--- /dev/null
+++ b/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList.vue
@@ -0,0 +1,478 @@
+<template>
+ <view class="content">
+ <view class="form">
+ <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 v-if="showmore">
+ <view class="form-item">
+ <view class="title">鍗曟嵁鍙�:</view>
+ <view class="right">
+ <input v-model="hform.HBillNo" placeholder="璇疯緭鍏ュ崟鎹彿" />
+ </view>
+ </view>
+
+ </view>
+ <view class="other">
+ <view v-if="!showmore" @tap="changeShowMore">
+ 灞曞紑鍏朵粬鏉′欢<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="bottom"></uni-icons>
+ </view>
+ <view v-if="showmore" @tap="changeShowMore">
+ 鎶樺彔鍏朵粬鏉′欢<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="top"></uni-icons>
+ </view>
+ </view>
+
+ <view class="buttons">
+ <button class="btn-a" size="mini" type="default" @tap="clear">閲嶇疆</button>
+ <button class="btn-b" size="mini" type="default" @tap="add">鏂板</button>
+ <button class="btn-c" size="mini" type="default" @tap="search">鏌ヨ</button>
+ </view>
+ </view>
+
+ <view id="divide" style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
+ <view :style="{
+ height: calcContentHeight + 'px',
+ overflowY: 'auto'
+ }">
+ <view class="list" v-for="(item,index) in showList" :key="index" v-if="tabs==0">
+ <uni-card :title="item.鍒跺崟鏃ユ湡.substr(0,10)" :extra="item.鍗曟嵁鍙�" style="margin: 10px;"
+ @tap="showDetail = showDetail==index?-1:index">
+ <view class="card-detail">
+ <view class="detail" v-if="item.鍒跺崟浜�">
+ <text>鍒跺崟浜猴細</text>{{item.鍒跺崟浜簘}
+ </view>
+ <view class="detail" v-if="item.浜у搧妯″叿浠g爜">
+ <text>妯″叿浠g爜锛�</text>{{item.浜у搧妯″叿浠g爜}}
+ </view>
+ <view class="detail" v-if="item.浜у搧妯″叿">
+ <text>妯″叿鍚嶇О锛�</text>{{item.浜у搧妯″叿}}
+ </view>
+ <view class="detail" v-if="item.璐熻矗浜�">
+ <text>璐熻矗浜猴細</text>{{item.璐熻矗浜簘}
+ </view>
+ <view class="detail" v-if="item.缁翠慨椤圭洰">
+ <text>缁翠慨椤圭洰锛�</text>{{item.缁翠慨椤圭洰}}
+ </view>
+ <view class="detail" v-if="item.缁翠慨閮ㄩ棬">
+ <text>缁翠慨閮ㄩ棬锛�</text>{{item.缁翠慨閮ㄩ棬}}
+ </view>
+ <view class="detail" v-if="item.缁翠慨浜�">
+ <text>缁翠慨浜猴細</text>{{item.缁翠慨浜簘}
+ </view>
+ <view class="detail" v-if="item.璁″垝缁翠慨宸ユ椂">
+ <text>缁翠慨鏃堕棿锛�</text>{{ item.璁″垝缁翠慨宸ユ椂 + '' + item.鏃堕棿鍗曚綅}}
+ </view>
+ <view class="card-detail" v-if="showDetail == index">
+
+
+ <view class="detail" v-if="item.琛ㄥご澶囨敞">
+ <text>琛ㄥご澶囨敞锛�</text>{{item.琛ㄥご澶囨敞}}
+ </view>
+ <view class="detail" v-if="item.鍙戠敓鏃ユ湡">
+ <text>寮�濮嬫棩鏈燂細</text>{{dayjs(item.鍙戠敓鏃ユ湡).format("YYYY-MM-DD HH:mm:DD")}}
+ </view>
+ <view class="detail" v-if="item.缁翠慨浜轰唬鐮�">
+ <text>缁翠慨浜轰唬鐮侊細</text>{{item.缁翠慨浜轰唬鐮亇}
+ </view>
+ <view class="detail" v-if="item.缁翠慨閮ㄩ棬浠g爜">
+ <text>缁翠慨閮ㄩ棬浠g爜锛�</text>{{item.缁翠慨閮ㄩ棬浠g爜}}
+ </view>
+ <view class="detail" v-if="item.璐熻矗浜轰唬鐮�">
+ <text>璐熻矗浜轰唬鐮侊細</text>{{item.璐熻矗浜轰唬鐮亇}
+ </view>
+ <view class="detail" v-if="item.hmainid">
+ <text>鍐呴儴鍗曟嵁鍙凤細</text>{{item.hmainid}}
+ </view>
+ </view>
+ </view>
+
+ <view class="more" v-if="showDetail == index && operations != index">
+ <view class="part" style="border-right: 1px solid #eee;">
+ <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏀惰捣
+ </view>
+ <view class="part" @tap.stop="operations = operations==index?-1:index">
+ <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+ size="14"></uni-icons>鎿嶄綔
+ </view>
+ </view>
+ <view class="more" v-if="showDetail != index && operations != index">
+ <view class="part" style="border-right: 1px solid #eee;">
+ <uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>鏇村淇℃伅
+ </view>
+ <view class="part" @tap.stop="operations = operations==index?-1:index">
+ <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
+ size="14"></uni-icons>鎿嶄綔
+ </view>
+ </view>
+ <view class="op" v-if="operations == index">
+ <!-- <button class="op3" size="mini" plain @tap.stop="edit(item)">缂栬緫</button> -->
+ <button class="op4" size="mini" plain @tap.stop="del(item)">鍒犻櫎</button>
+ <button class="op5" size="mini" plain @tap.stop="operations = -1">鍙栨秷鎿嶄綔</button>
+ </view>
+ </uni-card>
+ </view>
+ </view>
+ <view class="pagination-zone" id="pagination-zone">
+ <uni-pagination show-icon :page-size="size" :total="dataLength" :current="page"
+ @change="onPaginationChangeHandler"></uni-pagination>
+ </view>
+ <BarCodePopupVue ref="barcodePopup"></BarCodePopupVue>
+ </view>
+</template>
+
+<script>
+ import {
+ getUserInfo
+ } from "@/utils/auth.js";
+ import BarCodePopupVue from "@/components/BarCodePopup/BarCodePopup.vue";
+ import {
+ CommonUtils
+ } from "../../../utils/common";
+ import dayjs from "dayjs";
+ export default {
+ data() {
+ return {
+ dayjs,
+ userInfo: getUserInfo(),
+ serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
+ tabs: 0,
+ urls: '/Web/GetMouldBillsList',
+ MvarReportTitle: '妯″叿缁翠慨娲惧伐鍗曠紦瀛�',
+ hform: {
+ HBillNo: '',
+ HSourceBillNo: '',
+ HBillType: 3843,
+ user: uni.getStorageSync('HUserName'),
+ HStockOrgID: uni.getStorageSync('OrganizationID'),
+ Type: "PG",
+ sWhere: "",
+ HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+ HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ },
+ sWhere: '',
+ listData: [],
+ showList: [],
+ showDetail: -1,
+ operations: -1,
+
+ page: 1,
+ size: 20,
+ dataLength: 0,
+ divideBottom: 0,
+ paginationTop: 0,
+ showmore: false,
+ }
+ },
+ computed: {
+ calcContentHeight: {
+ get() {
+ return this.paginationTop - this.divideBottom
+ }
+ }
+ },
+ onShow() {
+ //鐢ㄦ埛妯″潡鏉冮檺鍒ゆ柇
+ this.CheckModRight()
+ this.changeTab(0)
+ console.log(this.userInfo, uni.getStorageSync('HUserName'))
+ },
+ components: {
+ BarCodePopupVue
+ },
+ onPullDownRefresh: function() {
+ this.clear()
+ setTimeout(() => {
+ uni.stopPullDownRefresh();
+ }, 1000);
+ },
+ onReady() {
+ this.getCalcHeight()
+ },
+ methods: {
+ changeShowMore() {
+ this.showmore = !this.showmore
+ this.$nextTick(() => {
+ // 閲嶆柊璁$畻鍐呭瑙嗗彛楂樺害
+ this.getCalcHeight()
+ })
+ },
+ getCalcHeight() {
+ let query = uni.createSelectorQuery().in(this)
+ query
+ .select("#divide")
+ .boundingClientRect()
+ .select("#pagination-zone")
+ .boundingClientRect()
+ .exec(res => {
+ this.divideBottom = Math.ceil(res[0].bottom)
+ this.paginationTop = Math.floor(res[1].top)
+ })
+ },
+ async qrCodeDisplay(item) {
+ this.$refs.barcodePopup.setCodeInfo(item.HBillNo)
+ await this.$nextTick()
+ this.$refs.barcodePopup.open()
+ },
+ CheckModRight() {
+ uni.request({
+ url: this.serverUrl + '/WEBSController/CheckModRight_Json',
+ data: {
+ ModRightName: 'CE_OtherOut',
+ HUserName: uni.getStorageSync('HUserName')
+ },
+ success: (res) => {
+ if (res.data.count == 1) {} else {
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ }
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ },
+ onPaginationChangeHandler({
+ current
+ }) {
+ this.page = current
+ this.showList = this.getPage(current, this.size, this.listData)
+ },
+ getPage(page, size, list) {
+ let sindex = (parseInt(page) - 1) * size
+ let eindex = parseInt(page) * size
+ let newList = list.slice(sindex, eindex)
+ return newList
+ },
+ changeTab(e) {
+ this.tabs = e
+ this.page = 1
+ this.showList = []
+
+ if (this.tabs == 0) {
+ this.urls = '/Web/GetMouldBillsList'
+ }
+ // if (this.tabs == 1) {
+ // this.urls = '/WEBSController/GetKf_ICStockBillQueryList_User_Json'
+ // }
+ this.search()
+ },
+ async getList() {
+ try {
+ let res = await CommonUtils.doRequest2Async({
+ url: this.urls,
+ data: this.hform
+ })
+
+ let {
+ count,
+ data,
+ Message
+ } = res.data
+
+ if (count == 1) {
+ if (data == null) {
+ data = []
+ }
+ this.listData = data
+ console.log('data: ', data);
+ this.showList = this.getPage(this.page, this.size, data)
+ this.dataLength = data.length
+ } else {
+ CommonUtils.showTips({
+ title: "娓╅Θ鎻愮ず",
+ message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${Message}`
+ })
+ }
+ } catch (err) {
+ CommonUtils.showTips({
+ title: "娓╅Θ鎻愮ず",
+ message: `鑾峰彇璁惧鐐规璁板綍鍗曞け璐�: ${err}`
+ })
+ }
+
+ },
+ search() {
+ this.hform.sWhere = ''
+ this.listData = []
+ this.page = 1
+ this.showList = []
+
+ console.log(this.hform)
+ if (this.hform.HBillNo) {
+ this.hform.sWhere += " and 鍗曟嵁鍙� like '%" + this.hform.HBillNo + "%'";
+ }
+ if (this.hform.HBeginDate && this.hform.HEndDate) {
+ this.hform.sWhere +=
+ ` and convert(date,鏃ユ湡) between convert(date, '${this.hform.HBeginDate}') and convert(date, '${this.hform.HEndDate}')`;
+ }
+ this.getList()
+ },
+ clear() {
+ this.listData = []
+ this.page = 1
+ this.showList = []
+
+ this.sWhere = ''
+ this.hform = {
+ HBillNo: '',
+ HSourceBillNo: '',
+ HBillType: 3843,
+ user: uni.getStorageSync('HUserName'),
+ HStockOrgID: uni.getStorageSync('OrganizationID'),
+ Type: "PG",
+ sWhere: "",
+ HBeginDate: dayjs(new Date()).subtract(30, 'day').format("YYYY-MM-DD"),
+ HEndDate: dayjs(new Date()).format("YYYY-MM-DD"),
+ }
+ this.search()
+ },
+ add() {
+ uni.navigateTo({
+ url: '/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill?operationType=1'
+ })
+ },
+ //缂栬緫
+ edit(item) {
+ console.log(item)
+ uni.request({
+ url: this.serverUrl + '/WEBSController/TempList_Modify_Json',
+ data: {
+ "HInterID": item.HInterID,
+ "HBillNo": item.鍗曟嵁鍙�,
+ "HBillType": this.hform.HBillType
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ uni.navigateTo({
+ url: './OtherOutBill?OperationType=2&HInterID=' + item.HInterID
+ })
+ } else {
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ }
+
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ })
+ },
+ //鍒犻櫎
+ del(item) {
+ // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '纭瑕佸垹闄よ褰曪紵鍒犻櫎鍚庝笉鑳芥仮澶�',
+ success: (res) => {
+ if (res.confirm) {
+ console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+ uni.request({
+ url: this.serverUrl +
+ '/Sc_MouldRepairSendWorkBill/MouldDeleteBill',
+ data: {
+ HInterID: item.hmainid,
+ user: uni.getStorageSync('HUserName'),
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.clear()
+ }
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ } else if (res.cancel) {
+ console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+ }
+ }
+ });
+ },
+ //鎾ら攢
+ revoke(item) {
+ // console.log(item.hmainid,uni.getStorageSync('HUserName'))
+ uni.showModal({
+ title: '鎻愮ず',
+ content: '鏄惁纭鎾ら攢',
+ success: (res) => {
+ if (res.confirm) {
+ console.log('鐢ㄦ埛鐐瑰嚮纭畾');
+ uni.request({
+ url: this.serverUrl +
+ '/WEBSController/set_DeleteICStockBillAndWMS_Json',
+ data: {
+ HInterID: item.HInterID,
+ HBillNo: item.鍗曟嵁鍙�,
+ HBillType: this.hform.HBillType,
+ HMaker: uni.getStorageSync('HUserName'),
+ MvarReportTitle: this.MvarReportTitle,
+ },
+ success: (res) => {
+ console.log(1, res);
+ if (res.data.count == 1) {
+ this.clear()
+ }
+ uni.showToast({
+ title: res.data.Message,
+ icon: 'none'
+ })
+ },
+ fail: (res) => {
+ console.log(res);
+ uni.hideLoading()
+ uni.showToast({
+ title: '鎺ュ彛璇锋眰澶辫触',
+ icon: 'none'
+ })
+ },
+ });
+ } else if (res.cancel) {
+ console.log('鐢ㄦ埛鐐瑰嚮鍙栨秷');
+ }
+ }
+ });
+ },
+ }
+ }
+</script>
+
+<style lang="scss" scoped>
+ @import "@/pages/MJGL/style/MJListStyle.scss"
+</style>
\ No newline at end of file
diff --git a/pages/MJGL/style/MJBillStyle.scss b/pages/MJGL/style/MJBillStyle.scss
index d2bcbda..21ebdbb 100644
--- a/pages/MJGL/style/MJBillStyle.scss
+++ b/pages/MJGL/style/MJBillStyle.scss
@@ -268,4 +268,43 @@
justify-content: flex-start;
gap: 6rpx;
+ }
+
+ .card-buttons {
+ padding: 8rpx;
+ display: flex;
+ flex-direction: row;
+ gap: 20rpx;
+ justify-content: center;
+ align-items: flex-start;
+
+ button {
+ border-radius: 10rpx;
+ width: 180rpx;
+ height: 66rpx;
+ line-height: 66rpx;
+ font-size: 28rpx;
+ }
+ .btn-a {
+ background-color: #3a78ff;
+ color: #fff;
+ }
+ .btn-b {
+ background-color: #41a863;
+ color: #fff;
+ }
+ .btn-c {
+ background-color: #acacac;
+ color: #fff;
+ // position: absolute;
+ // right: 120rpx;
+ }
+ .btn-d {
+ background-color: #ff8901;
+ color: #fff;
+ }
+
+ .placeholder {
+ flex: 1
+ }
}
\ No newline at end of file
diff --git a/pages/index/tab3.vue b/pages/index/tab3.vue
index 95f9bfd..98492f7 100644
--- a/pages/index/tab3.vue
+++ b/pages/index/tab3.vue
@@ -177,6 +177,48 @@
"url": "/pages/MJGL/Sb_EquipRepairCheckBill/Sb_EquipRepairCheckBill",
"id": 57,
"hidden": false
+ },
+ {
+ "img": "../../static/icon/icon8.png",
+ "text": "璁惧缁翠慨娲惧伐鍗曞垪琛�",
+ "url": "/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBillList",
+ "id": 58,
+ "hidden": false
+ },
+ {
+ "img": "../../static/icon/icon8.png",
+ "text": "璁惧缁翠慨娲惧伐鍗�",
+ "url": "/pages/MJGL/Sb_EquipRepairSendWork/Sb_EquipRepairSendWorkBill",
+ "id": 59,
+ "hidden": false
+ },
+ {
+ "img": "../../static/icon/icon8.png",
+ "text": "妯″叿缁翠慨楠屾敹鍗曞垪琛�",
+ "url": "/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBillList",
+ "id": 60,
+ "hidden": false
+ },
+ {
+ "img": "../../static/icon/icon8.png",
+ "text": "妯″叿缁翠慨楠屾敹鍗�",
+ "url": "/pages/MJGL/SC_MouldRepairCheck/Sc_MouldRepairCheckBill",
+ "id": 61,
+ "hidden": false
+ },
+ {
+ "img": "../../static/icon/icon8.png",
+ "text": "妯″叿缁翠慨娲惧伐鍗曞垪琛�",
+ "url": "/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBillList",
+ "id": 62,
+ "hidden": false
+ },
+ {
+ "img": "../../static/icon/icon8.png",
+ "text": "妯″叿缁翠慨娲惧伐鍗�",
+ "url": "/pages/MJGL/Sc_MouldRepairSendWork/Sc_MouldRepairSendWorkBill",
+ "id": 63,
+ "hidden": false
}
]
}
diff --git a/utils/i18n.js b/utils/i18n.js
index 04133e2..5ff2f8b 100644
--- a/utils/i18n.js
+++ b/utils/i18n.js
@@ -52,7 +52,6 @@
}
// 闃叉椤甸潰鍒濇鍔犺浇鏃讹紝浣跨敤鏈湴缈昏瘧妯″潡瀵艰嚧鐨� 鍋囩己澶辩幇璞�
MissingKeysMap[key].add(HFieldCode)
- console.log('MissingKeysMap: ', MissingKeysMap);
if (!clockID) {
clockID = setTimeout(() => {
syncMissingKeyToDB()
--
Gitblit v1.9.1