From 747613d7e856a7c104b8b4709442d34a51cdb9aa Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期六, 11 十月 2025 16:19:05 +0800
Subject: [PATCH] 核磅录入页面的打印功能调试,修复全部打印只出一张的问题,修复首次连接蓝牙后推出页面再进蓝牙无法连接问题
---
pages/wareHouse/nuclearScale/createwriteoffform.vue | 1354 +++++++++++++++++++++++++++++++++-------------------------
1 files changed, 772 insertions(+), 582 deletions(-)
diff --git a/pages/wareHouse/nuclearScale/createwriteoffform.vue b/pages/wareHouse/nuclearScale/createwriteoffform.vue
index dfaa5e2..74512c1 100644
--- a/pages/wareHouse/nuclearScale/createwriteoffform.vue
+++ b/pages/wareHouse/nuclearScale/createwriteoffform.vue
@@ -1,632 +1,822 @@
<template>
- <!-- 鏍哥褰曞叆 -->
- <div class="page">
- <view class="packing-registration-bg" />
- <u-navbar title="鏍哥褰曞叆" :background="background" :border-bottom="false" :title-bold="true" title-color="#000"
- back-icon-color="#000" />
- <u-form :model="form" ref="uForm" :label-width="210" labelAlign="left" :rules="rules" :error-type="['toast']"
- class="uForm">
- <u-form-item label="浜у搧绫诲瀷锛�" :border-bottom="false" prop="productType">
- <u-radio-group v-model="form.productType" @change="handleProductTypeChange">
- <u-radio name="1">瀵间綋</u-radio>
- <u-radio name="2">閾滄潌</u-radio>
- <u-radio name="3">瀵间綋2.6</u-radio>
- </u-radio-group>
- </u-form-item>
- <u-form-item label="鏇挎崲浜岀淮鐮侊細" :border-bottom="false" prop="replace">
- <u-radio-group v-model="form.replace">
- <u-radio name="1">鏄�</u-radio>
- <u-radio name="0">鍚�</u-radio>
- </u-radio-group>
- </u-form-item>
- <u-form-item label="杞︾墝鍙凤細" :border-bottom="false" prop="licensePlate">
- <u-input v-model="form.licensePlate" type="select" placeholder="璇疯緭鍏ヨ溅鐗屽彿" @click="lpn" />
- </u-form-item>
- <u-form-item label="瀹㈡埛鍚嶇О1锛�" :border-bottom="false" prop="customerName1">
- <picker class="item-one item-two" style="width: 100%; text-align: right"
- @change="selClientChange($event, selClientList, 'customerName1')" :value="selClientIndex1"
- :range="selClientList" range-key="label">
- <view>
- <text :style="{
+ <!-- 鏍哥褰曞叆 -->
+ <div class="page">
+ <view class="packing-registration-bg" />
+ <u-navbar
+ title="鏍哥褰曞叆"
+ :background="background"
+ :border-bottom="false"
+ :title-bold="true"
+ title-color="#000"
+ back-icon-color="#000"
+ />
+ <u-form
+ :model="form"
+ ref="uForm"
+ :label-width="235"
+ labelAlign="left"
+ :rules="rules"
+ :error-type="['toast']"
+ class="uForm"
+ >
+ <u-form-item
+ label="浜у搧绫诲瀷锛�"
+ :border-bottom="false"
+ prop="productType"
+ style="font-size: small"
+ >
+ <u-radio-group
+ v-model="form.productType"
+ @change="handleProductTypeChange"
+ style="font-size: small"
+ >
+ <u-radio name="DT01">瀵间綋</u-radio>
+ <u-radio name="TG01">閾滄潌</u-radio>
+ <u-radio name="DT02">瀵间綋2.6</u-radio>
+ </u-radio-group>
+ </u-form-item>
+ <!-- <u-form-item
+ label="鏇挎崲浜岀淮鐮侊細"
+ :border-bottom="false"
+ prop="replace"
+ style="font-size: small"
+ >
+ <u-radio-group v-model="form.replace" style="font-size: small">
+ <u-radio name="1">鏄�</u-radio>
+ <u-radio name="0">鍚�</u-radio>
+ </u-radio-group>
+ </u-form-item> -->
+ <u-form-item
+ label="杞︾墝鍙凤細"
+ :border-bottom="false"
+ prop="licensePlate"
+ style="font-size: small"
+ >
+ <u-input
+ v-model="form.licensePlate"
+ type="select"
+ placeholder="璇疯緭鍏ヨ溅鐗屽彿"
+ @click="lpn"
+ />
+ </u-form-item>
+ <u-form-item
+ label="瀹㈡埛鍚嶇О1锛�"
+ :border-bottom="false"
+ prop="customerName1"
+ style="font-size: small"
+ >
+ <picker
+ class="item-one item-two"
+ style="width: 100%; text-align: right"
+ @change="selClientChange($event, selClientList, 'customerName1')"
+ :value="selClientIndex1"
+ :range="selClientList"
+ range-key="label"
+ >
+ <view>
+ <text
+ :style="{
color: selClientIndex1 == null ? '#a5abb4' : '#0c0c0c',
- }">{{
+ }"
+ >{{
selClientIndex1 == null
? "璇烽�夋嫨"
: selClientList[selClientIndex1].label
- }}</text>
- </view>
- </picker>
- <u-icon v-if="selClientIndex1 == null" name="arrow-right" color="#687792" size="28"></u-icon>
- </u-form-item>
- <u-form-item label="鍙戣揣閫氱煡鍗曞彿1锛�" :border-bottom="false" prop="shippingNoticeNo1">
- <u-input v-model="form.shippingNoticeNo1" placeholder="" disabled />
- </u-form-item>
- <u-form-item label="瀹㈡埛鍚嶇О2锛�" :border-bottom="false" prop="customerName2">
- <picker class="item-one item-two" style="width: 100%; text-align: right"
- @change="selClientChange($event, selClientList, 'customerName2')" :value="selClientIndex2"
- :range="selClientList" range-key="label">
- <view>
- <text :style="{
+ }}</text
+ >
+ </view>
+ </picker>
+ <u-icon
+ v-if="selClientIndex1 == null"
+ name="arrow-right"
+ color="#687792"
+ size="28"
+ ></u-icon>
+ </u-form-item>
+ <u-form-item
+ label="鍙戣揣閫氱煡鍗曞彿1锛�"
+ :border-bottom="false"
+ prop="shippingNoticeNo1"
+ style="font-size: small"
+ :label-width="245"
+ >
+ <u-input v-model="form.shippingNoticeNo1" placeholder="" disabled />
+ </u-form-item>
+ <u-form-item
+ label="瀹㈡埛鍚嶇О2锛�"
+ :border-bottom="false"
+ prop="customerName2"
+ style="font-size: small"
+ >
+ <picker
+ class="item-one item-two"
+ style="width: 100%; text-align: right"
+ @change="selClientChange($event, selClientList, 'customerName2')"
+ :value="selClientIndex2"
+ :range="selClientList"
+ range-key="label"
+ >
+ <view>
+ <text
+ :style="{
color: selClientIndex2 == null ? '#a5abb4' : '#0c0c0c',
- }">{{
+ }"
+ >{{
selClientIndex2 == null
? "璇烽�夋嫨"
: selClientList[selClientIndex2].label
- }}</text>
- </view>
- </picker>
- <u-icon v-if="selClientIndex2 == null" name="arrow-right" color="#687792" size="28"></u-icon>
- </u-form-item>
- <u-form-item label="鍙戣揣閫氱煡鍗曞彿2锛�" :border-bottom="false" prop="shippingNoticeNo2">
- <u-input v-model="form.shippingNoticeNo2" placeholder="" disabled />
- </u-form-item>
- <u-form-item label="鐢熶骇杞﹂棿锛�" :border-bottom="false" prop="workshop">
- <picker class="item-one item-two" style="width: 100%; text-align: right"
- @change="workshopChange($event, workshopList)" :value="workshopIndex" :range="workshopList"
- range-key="label" :disabled="!form.productType">
- <view>
- <text :style="{ color: workshopIndex == null ? '#a5abb4' : '#0c0c0c' }">{{
+ }}</text
+ >
+ </view>
+ </picker>
+ <u-icon
+ v-if="selClientIndex2 == null"
+ name="arrow-right"
+ color="#687792"
+ size="28"
+ ></u-icon>
+ </u-form-item>
+ <u-form-item
+ label="鍙戣揣閫氱煡鍗曞彿2锛�"
+ :border-bottom="false"
+ prop="shippingNoticeNo2"
+ style="font-size: small"
+ :label-width="245"
+ >
+ <u-input v-model="form.shippingNoticeNo2" placeholder="" disabled />
+ </u-form-item>
+ <u-form-item
+ label="鐢熶骇杞﹂棿锛�"
+ :border-bottom="false"
+ prop="workshop"
+ style="font-size: small"
+ >
+ <picker
+ class="item-one item-two"
+ style="width: 100%; text-align: right"
+ @change="workshopChange($event, workshopList)"
+ :value="workshopIndex"
+ :range="workshopList"
+ range-key="label"
+ :disabled="!form.productType"
+ >
+ <view>
+ <text
+ :style="{ color: workshopIndex == null ? '#a5abb4' : '#0c0c0c' }"
+ >{{
workshopIndex == null
? "璇烽�夋嫨"
: workshopList[workshopIndex].label
- }}</text>
- </view>
- </picker>
- <u-icon v-if="workshopIndex == null" name="arrow-right" color="#687792" size="28"></u-icon>
- </u-form-item>
- <u-form-item label="鍙哥鍛橈細" :border-bottom="false" prop="weighingOperator">
- <picker class="item-one item-two" style="width: 100%; text-align: right"
- @change="weighmanChange($event, weighmanList)" :value="weighmanIndex" :range="weighmanList"
- range-key="label">
- <view>
- <text :style="{ color: weighmanIndex == null ? '#a5abb4' : '#0c0c0c' }">{{
+ }}</text
+ >
+ </view>
+ </picker>
+ <u-icon
+ v-if="workshopIndex == null"
+ name="arrow-right"
+ color="#687792"
+ size="28"
+ ></u-icon>
+ </u-form-item>
+ <u-form-item
+ label="鍙哥鍛橈細"
+ :border-bottom="false"
+ prop="weighingOperator"
+ style="font-size: small"
+ >
+ <picker
+ class="item-one item-two"
+ style="width: 100%; text-align: right"
+ @change="weighmanChange($event, weighmanList)"
+ :value="weighmanIndex"
+ :range="weighmanList"
+ range-key="label"
+ >
+ <view>
+ <text
+ :style="{ color: weighmanIndex == null ? '#a5abb4' : '#0c0c0c' }"
+ >{{
weighmanIndex == null
? "璇烽�夋嫨"
: weighmanList[weighmanIndex].label
- }}</text>
- </view>
- </picker>
- <u-icon v-if="weighmanIndex == null" name="arrow-right" color="#687792" size="28"></u-icon>
- </u-form-item>
- <u-form-item label="鍙夎溅宸ワ細" :border-bottom="false" prop="forkliftOperator">
- <u-input v-model="form.forkliftOperator" type="select" placeholder="璇烽�夋嫨"
- @click="openForkliftDriverList" />
- </u-form-item>
- </u-form>
- <u-button type="primary" class="bottom-button1" @click="submit">鍒涘缓</u-button>
+ }}</text
+ >
+ </view>
+ </picker>
+ <u-icon
+ v-if="weighmanIndex == null"
+ name="arrow-right"
+ color="#687792"
+ size="28"
+ ></u-icon>
+ </u-form-item>
+ <u-form-item
+ label="鍙夎溅宸ワ細"
+ :border-bottom="false"
+ prop="forkliftOperator"
+ style="font-size: small"
+ >
+ <u-input
+ v-model="form.forkliftOperator"
+ type="select"
+ placeholder="璇烽�夋嫨"
+ @click="openForkliftDriverList"
+ />
+ </u-form-item>
+ </u-form>
+ <u-button type="primary" class="bottom-button1" @click="submit"
+ >鍒涘缓</u-button
+ >
- <!--杞︾墝鍙� -->
- <modalBg ref="modalBg" :confirm="confirm">
- <u-field v-model="form.licensePlate" label="杞︾墝鍙凤細" placeholder="璇疯緭鍏�" :border-bottom="false">
- </u-field>
- </modalBg>
- <!-- 鍙夎溅宸� -->
- <u-modal v-model="showModal" title="" :show-cancel-button="true" :show-confirm-button="true"
- @confirm="confirmSelection" @cancel="cancel">
- <view class="popup-content">
- <view class="popup-header">
- <checkbox-group @change="checkboxChange">
- <label class="checkbox-item" v-for="(item, index) in checkboxList" :key="index">
- <checkbox :value="item.value" :checked="item.checked" />
- <text class="label">{{ item.label }}</text>
- </label>
- </checkbox-group>
- </view>
- </view>
- </u-modal>
- </div>
+ <!--杞︾墝鍙� -->
+ <modalBg ref="modalBg" :confirm="confirm">
+ <u-field
+ v-model="form.licensePlate"
+ label="杞︾墝鍙凤細"
+ placeholder="璇疯緭鍏�"
+ :border-bottom="false"
+ >
+ </u-field>
+ </modalBg>
+ <!-- 鍙夎溅宸� -->
+ <u-modal
+ v-model="showModal"
+ title=""
+ :show-cancel-button="true"
+ :show-confirm-button="true"
+ @confirm="confirmSelection"
+ @cancel="cancel"
+ >
+ <view class="popup-content" style="padding: 20rpx">
+ <scroll-view
+ scroll-y="true"
+ style="height: 400rpx; transform: translateZ(0)"
+ >
+ <view class="popup-header">
+ <checkbox-group @change="checkboxChange">
+ <label
+ class="checkbox-item"
+ v-for="(item, index) in checkboxList"
+ :key="index"
+ >
+ <checkbox :value="item.value" :checked="item.checked" />
+ <text class="label">{{ item.label }}</text>
+ </label>
+ </checkbox-group>
+ </view>
+ </scroll-view>
+ </view>
+ </u-modal>
+ </div>
</template>
<script>
- import modalBg from "@/components/modal/modal-bg.vue";
- import content_bg from "@/static/custom/packing/backBg.png";
- export default {
- components: {
- modalBg,
- },
- data() {
- return {
- checkboxList: [],
- background: {
- backgroundImage: `url(${content_bg})`,
- backgroundAttachment: "fixed",
- backgroundSize: "100% auto",
- backgroundRepeat: "no-repeat",
- },
- show: false,
- num: 1,
- form: {
- replace: '0',
- productType: '',
- licensePlate: '',
- customerName1: '',
- shippingNoticeNo1: '',
- customerName2: '',
- shippingNoticeNo2: '',
- workshop: '',
- weighingOperator: '',
- forkliftOperator: '',
- },
- rules: {
- productType: [{
- required: true,
- message: "璇烽�夋嫨浜у搧绫诲瀷",
- trigger: ["change"],
- }, ],
- replace: [{
- required: true,
- message: "璇烽�夋嫨鏄惁鏇挎崲浜岀淮鐮�",
- trigger: ["change", "blur"],
- }, ],
- licensePlate: [{
- required: true,
- message: "璇疯緭鍏ヨ溅鐗屽彿",
- trigger: ["change", "blur"],
- }, ],
- workshop: [{
- required: true,
- message: "璇烽�夋嫨鐢熶骇杞﹂棿",
- trigger: ["change"],
- }, ],
- weighingOperator: [{
- required: true,
- message: "璇烽�夋嫨鍙哥鍛�",
- trigger: ["change"],
- }, ],
- forkliftOperator: [{
- type: "string",
- required: true,
- message: "璇疯嚦灏戦�夋嫨涓�涓弶杞﹀伐",
- trigger: ["change"],
- }, ],
- },
- // 瀹㈡埛鍚嶇О
- selClientList: [],
- selClientIndex1: null,
- selClientIndex2: null,
- // 鐢熶骇杞﹂棿
- workshopList: [],
- workshopIndex: null,
- // 鍙哥鍛�
- weighmanList: [],
- weighmanIndex: null,
- showModal: false,
- selectedItems: [],
- id1: '',
- id2: '',
- isSubmitting: false
- };
- },
- onReady() {
- this.$refs.uForm.setRules(this.rules);
- // 浠呭湪缁勪欢鍒濇鍔犺浇鏃惰幏鍙栨暟鎹�
- if (this.selClientList.length === 0) {
- this.fetchClients();
- }
- if (this.workshopList.length === 0) {
- this.fetchWorkshops();
- }
- if (this.checkboxList.length === 0) {
- this.fetchForkliftOperators();
- }
- if (this.weighmanList.length === 0) {
- this.fetchWeighmen();
- }
- },
- onShow() {
- // 閲嶇疆琛ㄥ崟鏁版嵁
- this.form = {
- replace: '0',
- productType: '',
- licensePlate: '',
- customerName1: '',
- shippingNoticeNo1: '',
- customerName2: '',
- shippingNoticeNo2: '',
- workshop: '',
- weighingOperator: '',
- forkliftOperator: '',
- };
- this.selClientIndex1 = null;
- this.selClientIndex2 = null;
- this.workshopIndex = null;
- this.weighmanIndex = null;
- this.checkboxList = this.checkboxList.map(item => ({
- ...item,
- checked: false
- }));
- this.$refs.uForm && this.$refs.uForm.resetValidation();
- },
- methods: {
- /**
- * 鑾峰彇瀹㈡埛鍒楄〃
- */
- fetchClients() {
- this.$u.api.NuclearScaleEntry.selClient().then((res) => {
- console.log('瀹㈡埛鍚嶇О', res)
- if (res.code === 0) {
- res.data.forEach((i) => {
- const obj = Object.assign({
- label: i.customerName,
- value: i.customerName,
- shippingNoticeNo: i.shippingNoticeNo,
- id: i.id
- });
- this.selClientList.push(obj);
- });
- } else {
- uni.showToast({
- title: res.msg || '鑾峰彇瀹㈡埛鍚嶇О澶辫触',
- icon: 'none'
- });
- }
- }).catch(err => {
- uni.showToast({
- title: '缃戠粶閿欒锛岃幏鍙栧鎴峰悕绉板け璐�',
- icon: 'none'
- });
- console.error('鑾峰彇瀹㈡埛鍚嶇О閿欒:', err);
- });
- },
+import modalBg from "@/components/modal/modal-bg.vue";
+import content_bg from "@/static/custom/packing/backBg.png";
+export default {
+ components: {
+ modalBg,
+ },
+ data() {
+ return {
+ checkboxList: [],
+ background: {
+ backgroundImage: `url(${content_bg})`,
+ backgroundAttachment: "fixed",
+ backgroundSize: "100% auto",
+ backgroundRepeat: "no-repeat",
+ },
+ show: false,
+ num: 1,
+ form: {
+ // replace: "0",
+ productType: "",
+ licensePlate: "",
+ customerName1: "",
+ shippingNoticeNo1: "",
+ customerName2: "",
+ shippingNoticeNo2: "",
+ workshop: "",
+ weighingOperator: "",
+ forkliftOperator: "",
+ },
+ rules: {
+ productType: [
+ {
+ required: true,
+ message: "璇烽�夋嫨浜у搧绫诲瀷",
+ trigger: ["change"],
+ },
+ ],
+ // replace: [
+ // {
+ // required: true,
+ // message: "璇烽�夋嫨鏄惁鏇挎崲浜岀淮鐮�",
+ // trigger: ["change", "blur"],
+ // },
+ // ],
+ licensePlate: [
+ {
+ required: true,
+ message: "璇疯緭鍏ヨ溅鐗屽彿",
+ trigger: ["change", "blur"],
+ },
+ ],
+ workshop: [
+ {
+ required: true,
+ message: "璇烽�夋嫨鐢熶骇杞﹂棿",
+ trigger: ["change"],
+ },
+ ],
+ weighingOperator: [
+ {
+ required: true,
+ message: "璇烽�夋嫨鍙哥鍛�",
+ trigger: ["change"],
+ },
+ ],
+ forkliftOperator: [
+ {
+ type: "string",
+ required: true,
+ message: "璇疯嚦灏戦�夋嫨涓�涓弶杞﹀伐",
+ trigger: ["change"],
+ },
+ ],
+ },
+ // 瀹㈡埛鍚嶇О
+ selClientList: [],
+ selClientIndex1: null,
+ selClientIndex2: null,
+ // 鐢熶骇杞﹂棿
+ workshopList: [],
+ workshopIndex: null,
+ // 鍙哥鍛�
+ weighmanList: [],
+ weighmanIndex: null,
+ showModal: false,
+ selectedItems: [],
+ id1: "",
+ id2: "",
+ isSubmitting: false,
+ };
+ },
+ onReady() {
+ this.$refs.uForm.setRules(this.rules);
+ // 浠呭湪缁勪欢鍒濇鍔犺浇鏃惰幏鍙栨暟鎹�
+ if (this.selClientList.length === 0) {
+ this.fetchClients();
+ }
+ if (this.workshopList.length === 0) {
+ this.fetchWorkshops();
+ }
+ if (this.checkboxList.length === 0) {
+ this.fetchForkliftOperators();
+ }
+ if (this.weighmanList.length === 0) {
+ this.fetchWeighmen();
+ }
+ },
+ onShow() {
+ // 閲嶇疆琛ㄥ崟鏁版嵁
+ this.form = {
+ // replace: "0",
+ productType: "",
+ licensePlate: "",
+ customerName1: "",
+ shippingNoticeNo1: "",
+ customerName2: "",
+ shippingNoticeNo2: "",
+ workshop: "",
+ weighingOperator: "",
+ forkliftOperator: "",
+ };
+ this.selClientIndex1 = null;
+ this.selClientIndex2 = null;
+ this.workshopIndex = null;
+ this.weighmanIndex = null;
+ this.checkboxList = this.checkboxList.map((item) => ({
+ ...item,
+ checked: false,
+ }));
+ this.$refs.uForm && this.$refs.uForm.resetValidation();
+ },
+ methods: {
+ /**
+ * 鑾峰彇瀹㈡埛鍒楄〃
+ */
+ fetchClients() {
+ this.$u.api.NuclearScaleEntry.selClient()
+ .then((res) => {
+ console.log("瀹㈡埛鍚嶇О", res);
+ if (res.code === 0) {
+ res.data.forEach((i) => {
+ const obj = Object.assign({
+ label: i.customerName,
+ value: i.customerName,
+ shippingNoticeNo: i.shippingNoticeNo,
+ id: i.id,
+ });
+ this.selClientList.push(obj);
+ });
+ } else {
+ uni.showToast({
+ title: res.msg || "鑾峰彇瀹㈡埛鍚嶇О澶辫触",
+ icon: "none",
+ });
+ }
+ })
+ .catch((err) => {
+ uni.showToast({
+ title: "缃戠粶閿欒锛岃幏鍙栧鎴峰悕绉板け璐�",
+ icon: "none",
+ });
+ console.error("鑾峰彇瀹㈡埛鍚嶇О閿欒:", err);
+ });
+ },
- /**
- * 鑾峰彇杞﹂棿鍒楄〃
- */
- fetchWorkshops() {
- this.$u.api.dictData({
- dictType: 'workshop'
- }).then(res => {
- if (res.code === 0 && res.data.length > 0) {
- res.data.forEach(i => {
- const obj = Object.assign({
- label: i.label,
- value: i.value,
- })
- this.workshopList.push(obj)
- })
- } else {
- uni.showToast({
- title: res.msg || '鑾峰彇杞﹂棿鍒楄〃澶辫触',
- icon: 'none'
- });
- }
- }).catch(err => {
- uni.showToast({
- title: '缃戠粶閿欒锛岃幏鍙栬溅闂村垪琛ㄥけ璐�',
- icon: 'none'
- });
- console.error('鑾峰彇杞﹂棿鍒楄〃閿欒:', err);
- });
- },
+ /**
+ * 鑾峰彇杞﹂棿鍒楄〃
+ */
+ fetchWorkshops() {
+ this.$u.api
+ .dictData({
+ dictType: "workshop",
+ })
+ .then((res) => {
+ if (res.code === 0 && res.data.length > 0) {
+ res.data.forEach((i) => {
+ const obj = Object.assign({
+ label: i.label,
+ value: i.value,
+ });
+ this.workshopList.push(obj);
+ });
+ } else {
+ uni.showToast({
+ title: res.msg || "鑾峰彇杞﹂棿鍒楄〃澶辫触",
+ icon: "none",
+ });
+ }
+ })
+ .catch((err) => {
+ uni.showToast({
+ title: "缃戠粶閿欒锛岃幏鍙栬溅闂村垪琛ㄥけ璐�",
+ icon: "none",
+ });
+ console.error("鑾峰彇杞﹂棿鍒楄〃閿欒:", err);
+ });
+ },
- /**
- * 鑾峰彇鍙夎溅宸ュ垪琛�
- */
- fetchForkliftOperators() {
- this.$u.api.dictData({
- dictType: 'forklift'
- }).then(res => {
- if (res.code === 0 && res.data.length > 0) {
- res.data.forEach(i => {
- const obj = Object.assign({
- label: i.label,
- value: i.label,
- })
- this.checkboxList.push(obj)
- })
- } else {
- uni.showToast({
- title: res.msg || '鑾峰彇鍙夎溅宸ュ垪琛ㄥけ璐�',
- icon: 'none'
- });
- }
- }).catch(err => {
- uni.showToast({
- title: '缃戠粶閿欒锛岃幏鍙栧弶杞﹀伐鍒楄〃澶辫触',
- icon: 'none'
- });
- console.error('鑾峰彇鍙夎溅宸ュ垪琛ㄩ敊璇�:', err);
- });
- },
+ /**
+ * 鑾峰彇鍙夎溅宸ュ垪琛�
+ */
+ fetchForkliftOperators() {
+ this.$u.api
+ .dictData({
+ dictType: "forklift",
+ })
+ .then((res) => {
+ if (res.code === 0 && res.data.length > 0) {
+ res.data.forEach((i) => {
+ const obj = Object.assign({
+ label: i.label,
+ value: i.label,
+ });
+ this.checkboxList.push(obj);
+ });
+ } else {
+ uni.showToast({
+ title: res.msg || "鑾峰彇鍙夎溅宸ュ垪琛ㄥけ璐�",
+ icon: "none",
+ });
+ }
+ })
+ .catch((err) => {
+ uni.showToast({
+ title: "缃戠粶閿欒锛岃幏鍙栧弶杞﹀伐鍒楄〃澶辫触",
+ icon: "none",
+ });
+ console.error("鑾峰彇鍙夎溅宸ュ垪琛ㄩ敊璇�:", err);
+ });
+ },
- /**
- * 鑾峰彇鍙哥鍛樺垪琛�
- */
- fetchWeighmen() {
- this.$u.api.dictData({
- dictType: 'weighing'
- }).then(res => {
- if (res.code === 0 && res.data.length > 0) {
- res.data.forEach(i => {
- const obj = Object.assign({
- label: i.label,
- value: i.label,
- })
- this.weighmanList.push(obj)
- })
- } else {
- uni.showToast({
- title: res.msg || '鑾峰彇鍙哥鍛樺垪琛ㄥけ璐�',
- icon: 'none'
- });
- }
- }).catch(err => {
- uni.showToast({
- title: '缃戠粶閿欒锛岃幏鍙栧徃纾呭憳鍒楄〃澶辫触',
- icon: 'none'
- });
- console.error('鑾峰彇鍙哥鍛樺垪琛ㄩ敊璇�:', err);
- });
- },
- // 澶嶉�夋鍙樺寲浜嬩欢
- checkboxChange(e) {
- const values = e.detail.value;
- this.checkboxList = this.checkboxList.map((item) => {
- return {
- ...item,
- checked: values.includes(item.value),
- };
- });
- },
+ /**
+ * 鑾峰彇鍙哥鍛樺垪琛�
+ */
+ fetchWeighmen() {
+ this.$u.api
+ .dictData({
+ dictType: "weighing",
+ })
+ .then((res) => {
+ if (res.code === 0 && res.data.length > 0) {
+ res.data.forEach((i) => {
+ const obj = Object.assign({
+ label: i.label,
+ value: i.label,
+ });
+ this.weighmanList.push(obj);
+ });
+ } else {
+ uni.showToast({
+ title: res.msg || "鑾峰彇鍙哥鍛樺垪琛ㄥけ璐�",
+ icon: "none",
+ });
+ }
+ })
+ .catch((err) => {
+ uni.showToast({
+ title: "缃戠粶閿欒锛岃幏鍙栧徃纾呭憳鍒楄〃澶辫触",
+ icon: "none",
+ });
+ console.error("鑾峰彇鍙哥鍛樺垪琛ㄩ敊璇�:", err);
+ });
+ },
+ // 澶嶉�夋鍙樺寲浜嬩欢
+ checkboxChange(e) {
+ const values = e.detail.value;
+ this.checkboxList = this.checkboxList.map((item) => {
+ return {
+ ...item,
+ checked: values.includes(item.value),
+ };
+ });
+ },
- // 纭閫夋嫨
- confirmSelection() {
- // 灏嗛�変腑鐨勫弶杞﹀伐鏍囩鏁扮粍杞负浠ラ�楀彿鍒嗛殧鐨勫瓧绗︿覆
- this.form.forkliftOperator = this.checkboxList
- .filter((item) => item.checked)
- .map((item) => item.label)
- .join(',');
- },
- cancel() {},
- openForkliftDriverList() {
- this.showModal = true;
- },
- // 瀹㈡埛鍚嶇О
- selClientChange(e, storage, code) {
- if (storage.length <= 0) {
- this.selClientIndex1 = null;
- this.selClientIndex2 = null;
- return;
- }
- const selectedIndex = e.target.value;
- const selectedCustomer = storage[selectedIndex];
+ // 纭閫夋嫨
+ confirmSelection() {
+ // 灏嗛�変腑鐨勫弶杞﹀伐鏍囩鏁扮粍杞负浠ラ�楀彿鍒嗛殧鐨勫瓧绗︿覆
+ this.form.forkliftOperator = this.checkboxList
+ .filter((item) => item.checked)
+ .map((item) => item.label)
+ .join(",");
+ },
+ cancel() {},
+ openForkliftDriverList() {
+ this.showModal = true;
+ },
+ // 瀹㈡埛鍚嶇О
+ selClientChange(e, storage, code) {
+ if (storage.length <= 0) {
+ this.selClientIndex1 = null;
+ this.selClientIndex2 = null;
+ return;
+ }
+ const selectedIndex = e.target.value;
+ const selectedCustomer = storage[selectedIndex];
- // 妫�鏌ユ槸鍚﹂�夋嫨浜嗙浉鍚岀殑瀹㈡埛
- if (code === "customerName1" && this.selClientIndex2 === selectedIndex) {
- uni.showToast({
- title: '涓嶈兘閫夋嫨鐩稿悓鐨勫鎴�',
- icon: 'none'
- });
- return;
- }
- if (code === "customerName2" && this.selClientIndex1 === selectedIndex) {
- uni.showToast({
- title: '涓嶈兘閫夋嫨鐩稿悓鐨勫鎴�',
- icon: 'none'
- });
- return;
- }
+ // // 妫�鏌ユ槸鍚﹂�夋嫨浜嗙浉鍚岀殑瀹㈡埛
+ // if (code === "customerName1" && this.selClientIndex2 === selectedIndex) {
+ // uni.showToast({
+ // title: "涓嶈兘閫夋嫨鐩稿悓鐨勫鎴�",
+ // icon: "none",
+ // });
+ // return;
+ // }
+ // if (code === "customerName2" && this.selClientIndex1 === selectedIndex) {
+ // uni.showToast({
+ // title: "涓嶈兘閫夋嫨鐩稿悓鐨勫鎴�",
+ // icon: "none",
+ // });
+ // return;
+ // }
- if (code === "customerName2") {
- this.selClientIndex2 = selectedIndex;
- this.form.customerName2 = selectedCustomer.label;
- this.form.shippingNoticeNo2 = selectedCustomer.shippingNoticeNo;
- this.id2 = selectedCustomer.id;
- }
- if (code === "customerName1") {
- this.selClientIndex1 = selectedIndex;
- this.form.customerName1 = selectedCustomer.label;
- this.form.shippingNoticeNo1 = selectedCustomer.shippingNoticeNo;
- this.id1 = selectedCustomer.id
- }
- },
- // 鐢熶骇杞﹂棿
- workshopChange(e, storage) {
- if (storage.length <= 0) {
- this.workshopIndex = null;
- return;
- }
+ if (code === "customerName2") {
+ this.selClientIndex2 = selectedIndex;
+ this.form.customerName2 = selectedCustomer.label;
+ this.form.shippingNoticeNo2 = selectedCustomer.shippingNoticeNo;
+ this.form.customerNo2 = selectedCustomer.customerNo;
+ this.id2 = selectedCustomer.id;
+ }
+ if (code === "customerName1") {
+ this.selClientIndex1 = selectedIndex;
+ this.form.customerName1 = selectedCustomer.label;
+ this.form.shippingNoticeNo1 = selectedCustomer.shippingNoticeNo;
+ this.form.customerNo1 = selectedCustomer.customerNo;
+ this.id1 = selectedCustomer.id;
+ }
+ },
+ // 鐢熶骇杞﹂棿
+ workshopChange(e, storage) {
+ if (storage.length <= 0) {
+ this.workshopIndex = null;
+ return;
+ }
- const productType = this.form.productType;
- const selectedWorkshop = storage[e.target.value];
+ const productType = this.form.productType;
+ const selectedWorkshop = storage[e.target.value];
+ console.log('閫夋嫨鐨勮溅闂�:', selectedWorkshop);
+ // 妫�鏌ヤ骇鍝佺被鍨嬫槸鍚︿负閾滄潌(鍊间负TG01)
+ if (productType === "TG01") {
+ // 閾滄潌鍙兘閫夋嫨閾滄潌鐩稿叧杞﹂棿
+ if (!selectedWorkshop.label.includes("閾滄潌")) {
+ uni.showModal({
+ title: "鎻愮ず",
+ content: "閾滄潌浜у搧鍙兘閫夋嫨閾滄潌鐩稿叧杞﹂棿",
+ showCancel: false,
+ });
+ return;
+ }
+ } else {
+ // 瀵间綋浜у搧涓嶈兘閫夋嫨閾滄潌杞﹂棿
+ if (selectedWorkshop.label.includes("閾滄潌")) {
+ uni.showModal({
+ title: "鎻愮ず",
+ content: "瀵间綋浜у搧涓嶈兘閫夋嫨閾滄潌杞﹂棿",
+ showCancel: false,
+ });
+ return;
+ }
+ }
- // 妫�鏌ヤ骇鍝佺被鍨嬫槸鍚︿负閾滄潌(鍊间负2)
- if (productType === '2') {
- // 閾滄潌鍙兘閫夋嫨閾滄潌鐩稿叧杞﹂棿
- if (!selectedWorkshop.label.includes('閾滄潌')) {
- uni.showModal({
- title: "鎻愮ず",
- content: "閾滄潌浜у搧鍙兘閫夋嫨閾滄潌鐩稿叧杞﹂棿",
- showCancel: false
- });
- return;
- }
- } else {
- // 瀵间綋浜у搧涓嶈兘閫夋嫨閾滄潌杞﹂棿
- if (selectedWorkshop.label.includes('閾滄潌')) {
- uni.showModal({
- title: "鎻愮ず",
- content: "瀵间綋浜у搧涓嶈兘閫夋嫨閾滄潌杞﹂棿",
- showCancel: false
- });
- return;
- }
- }
+ this.workshopIndex = e.target.value;
+ this.form.workshop = selectedWorkshop.value;
+ },
+ // 鍙哥鍛�
+ weighmanChange(e, storage) {
+ if (storage.length <= 0) {
+ this.weighmanIndex = null;
+ return;
+ }
+ this.weighmanIndex = e.target.value;
+ this.form.weighingOperator = storage[this.weighmanIndex].label;
+ },
+ lpn() {
+ this.$refs.modalBg.open();
+ },
+ // 寮规淇濆瓨
+ confirm() {},
- this.workshopIndex = e.target.value;
- this.form.workshop = selectedWorkshop.label;
- },
- // 鍙哥鍛�
- weighmanChange(e, storage) {
- if (storage.length <= 0) {
- this.weighmanIndex = null;
- return;
- }
- this.weighmanIndex = e.target.value;
- this.form.weighingOperator = storage[this.weighmanIndex].label;
- },
- lpn() {
- this.$refs.modalBg.open();
- },
- // 寮规淇濆瓨
- confirm() {},
+ /**
+ * 浜у搧绫诲瀷鍙樺寲鏃舵竻绌鸿溅闂撮�夋嫨
+ */
+ handleProductTypeChange() {
+ this.workshopIndex = null;
+ this.form.workshop = "";
+ },
+ // 鎻愪氦鎸夐挳
+ async submit() {
+ if (this.isSubmitting) return;
- /**
- * 浜у搧绫诲瀷鍙樺寲鏃舵竻绌鸿溅闂撮�夋嫨
- */
- handleProductTypeChange() {
- this.workshopIndex = null;
- this.form.workshop = '';
- },
- // 鎻愪氦鎸夐挳
- async submit() {
- if (this.isSubmitting) return;
+ try {
+ // 缁熶竴琛ㄥ崟楠岃瘉
+ if (!(await this.validateForm())) return;
+ // 鏋勫缓鎻愪氦鏁版嵁
+ // const submitData = this.buildSubmitData().customerList;
+ const submitData = {
+ customerName1: this.form.customerName1,
+ shippingNoticeNo1: this.form.shippingNoticeNo1,
+ customerName2: this.form.customerName2,
+ shippingNoticeNo2: this.form.shippingNoticeNo2,
+ customerNo1: this.form.customerNo1,
+ customerNo2: this.form.customerNo2,
+ productType: this.form.productType,
+ licensePlate: this.form.licensePlate,
+ workshop: this.form.workshop,
+ weighingOperator: this.form.weighingOperator,
+ forkliftOperator: this.form.forkliftOperator,
+ }
+ console.log("鎻愪氦鐨勬暟鎹�", submitData);
+ this.isSubmitting = true;
+ const res = await this.$u.api.NuclearScaleEntry.createMain(submitData);
- try {
- // 缁熶竴琛ㄥ崟楠岃瘉
- if (!await this.validateForm()) return;
+ if (res.code === 0) {
+ this.$u.toast("鎻愪氦鎴愬姛");
+ uni.navigateBack();
+ } else {
+ uni.showToast({
+ title: res.msg || "鎻愪氦澶辫触锛氫笟鍔″鐞嗛敊璇�",
+ icon: "none",
+ });
+ console.error("涓氬姟閿欒:", res);
+ }
+ } catch (err) {
+ if (err.type === "validation") {
+ uni.showToast({
+ title: err.message,
+ icon: "none",
+ });
+ } else if (err.message.includes("Network Error")) {
+ uni.showToast({
+ title: "缃戠粶杩炴帴閿欒锛岃妫�鏌ョ綉缁滃悗閲嶈瘯",
+ icon: "none",
+ });
+ } else {
+ uni.showToast({
+ title: "绯荤粺閿欒锛岃绋嶅悗閲嶈瘯",
+ icon: "none",
+ });
+ }
+ console.error("鎻愪氦琛ㄥ崟閿欒:", err);
+ } finally {
+ this.isSubmitting = false;
+ }
+ },
- // 鏋勫缓鎻愪氦鏁版嵁
- const submitData = this.buildSubmitData().customerList;
- console.log('鎻愪氦鐨勬暟鎹�',submitData)
- this.isSubmitting = true;
- const res = await this.$u.api.NuclearScaleEntry.createMain(submitData);
+ // 缁熶竴琛ㄥ崟楠岃瘉
+ async validateForm() {
+ // 浣跨敤uView琛ㄥ崟楠岃瘉
+ if (!(await this.$refs.uForm.validate())) {
+ return false;
+ }
- if (res.code === 0) {
- this.$u.toast("鎻愪氦鎴愬姛");
- uni.navigateBack();
- } else {
- uni.showToast({
- title: res.msg || '鎻愪氦澶辫触锛氫笟鍔″鐞嗛敊璇�',
- icon: 'none'
- });
- console.error('涓氬姟閿欒:', res);
- }
- } catch (err) {
- if (err.type === 'validation') {
- uni.showToast({
- title: err.message,
- icon: 'none'
- });
- } else if (err.message.includes('Network Error')) {
- uni.showToast({
- title: '缃戠粶杩炴帴閿欒锛岃妫�鏌ョ綉缁滃悗閲嶈瘯',
- icon: 'none'
- });
- } else {
- uni.showToast({
- title: '绯荤粺閿欒锛岃绋嶅悗閲嶈瘯',
- icon: 'none'
- });
- }
- console.error('鎻愪氦琛ㄥ崟閿欒:', err);
- } finally {
- this.isSubmitting = false;
- }
- },
+ // 瀹㈡埛鍚嶇О楠岃瘉 - 淇敼涓鸿嚦灏戞湁涓�涓湁鍊�
+ if (!this.form.customerName1 && !this.form.customerName2) {
+ throw { type: "validation", message: "璇疯嚦灏戦�夋嫨涓�涓鎴峰悕绉�" };
+ }
- // 缁熶竴琛ㄥ崟楠岃瘉
- async validateForm() {
- // 浣跨敤uView琛ㄥ崟楠岃瘉
- if (!await this.$refs.uForm.validate()) {
- return false;
- }
+ return true;
+ },
- // 瀹㈡埛鍚嶇О楠岃瘉
- if (!this.form.customerName1 || !this.form.customerName2) {
- throw { type: 'validation', message: '璇峰厛閫夋嫨瀹㈡埛鍚嶇О' };
- }
+ // // 鏋勫缓鎻愪氦鏁版嵁
+ // buildSubmitData() {
+ // // 鍒涘缓瀹㈡埛鏁版嵁鐨勮緟鍔╁嚱鏁�
+ // const createCustomerItem = (customerIndex) => ({
+ // customerName: this.form[`customerName${customerIndex}`],
+ // shippingNoticeNo: this.form[`shippingNoticeNo${customerIndex}`],
+ // shippingNoticeId: this[`id${customerIndex}`],
+ // replace: this.form.replace,
+ // productType: this.form.productType,
+ // licensePlate: this.form.licensePlate,
+ // workshop: this.form.workshop,
+ // weighingOperator: this.form.weighingOperator,
+ // forkliftOperator: this.form.forkliftOperator,
+ // });
- return true;
- },
+ // // 鏋勫缓瀹㈡埛鍒楄〃
+ // const customerList = [1, 2].map(createCustomerItem);
- // 鏋勫缓鎻愪氦鏁版嵁
- buildSubmitData() {
- // 鍒涘缓瀹㈡埛鏁版嵁鐨勮緟鍔╁嚱鏁�
- const createCustomerItem = (customerIndex) => ({
- customerName: this.form[`customerName${customerIndex}`],
- shippingNoticeNo: this.form[`shippingNoticeNo${customerIndex}`],
- shippingNoticeId: this[`id${customerIndex}`],
- replace: this.form.replace,
- productType: this.form.productType,
- licensePlate: this.form.licensePlate,
- workshop: this.form.workshop,
- weighingOperator: this.form.weighingOperator,
- forkliftOperator: this.form.forkliftOperator,
- });
-
- // 鏋勫缓瀹㈡埛鍒楄〃
- const customerList = [1, 2].map(createCustomerItem);
-
- return {
- customerList
- };
- },
- },
- };
+ // return {
+ // customerList,
+ // };
+ // },
+ },
+};
</script>
<style lang="scss" scoped>
- @import "index.scss";
+@import "index.scss";
- /* 寮圭獥鏍峰紡 */
- .popup-content {
- padding: 30rpx;
- max-height: 70vh;
- overflow-y: auto;
- }
+/* 寮圭獥鏍峰紡 */
+.popup-content {
+ padding: 30rpx;
+ max-height: 70vh;
+ overflow-y: auto;
+}
- .popup-header {
- display: flex;
- justify-content: space-between;
- align-items: center;
- padding-bottom: 20rpx;
- border-bottom: 1rpx solid #eee;
- margin-bottom: 20rpx;
- }
+.popup-header {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding-bottom: 20rpx;
+ border-bottom: 1rpx solid #eee;
+ margin-bottom: 20rpx;
+}
- .title {
- font-size: 32rpx;
- font-weight: bold;
- }
+.title {
+ font-size: 32rpx;
+ font-weight: bold;
+}
- .confirm-btn {
- color: #007aff;
- font-size: 28rpx;
- }
+.confirm-btn {
+ color: #007aff;
+ font-size: small;
+}
- /* 澶嶉�夋鏍峰紡 */
- .checkbox-item {
- width: 230px;
- display: flex;
- align-items: center;
- padding: 20rpx 0;
- border-bottom: 1rpx solid #f5f5f5;
- background-color: #f8f9fa;
+/* 澶嶉�夋鏍峰紡 */
+.checkbox-item {
+ width: 230px;
+ display: flex;
+ align-items: center;
+ padding: 20rpx 0;
+ border-bottom: 1rpx solid #f5f5f5;
+ background-color: #f8f9fa;
- .label {
- position: relative;
- left: 130px;
- }
- }
+ .label {
+ position: relative;
+ left: 130px;
+ }
+}
- .checkbox-item:last-child {
- border-bottom: none;
- }
+.checkbox-item:last-child {
+ border-bottom: none;
+}
- .checkbox-item .label {
- margin-left: 20rpx;
- }
+.checkbox-item .label {
+ margin-left: 20rpx;
+}
- .item-one {
- font-size: 30rpx;
- color: #0c0c0c;
- margin-right: 6rpx;
- }
+.item-one {
+ font-size: small;
+ color: #0c0c0c;
+ margin-right: 6rpx;
+}
- .item-two {
- font-size: 30rpx;
- color: #a5abb4;
- margin-right: 6rpx;
- }
+.item-two {
+ font-size: small;
+ color: #a5abb4;
+ margin-right: 6rpx;
+}
</style>
\ No newline at end of file
--
Gitblit v1.9.3