From 70cb04a1eabdf0ffdddc017f219eb6bc9f13de66 Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期三, 28 五月 2025 15:22:31 +0800
Subject: [PATCH] 1.现场收料字段优化
---
H5/Xcsl.aspx | 8
H5/Xctl.aspx.cs | 14 ++
H5/Js/Xctl.js | 174 ++++++++++++++++++++++++
H5/Xctl.aspx | 199 ++++++++++++++++++++++++++++
4 files changed, 391 insertions(+), 4 deletions(-)
diff --git a/H5/Js/Xctl.js b/H5/Js/Xctl.js
new file mode 100644
index 0000000..ef63bbe
--- /dev/null
+++ b/H5/Js/Xctl.js
@@ -0,0 +1,174 @@
+锘縱ar vm = new Vue({
+ el: '#app',
+ data: function () {
+ return {
+ isLoading: false,
+ userInfo: {
+ "loginGuid": '',
+ "loginAccount": '',
+ },
+ Bar: "",//绠辨潯鐮�
+ UserName: Cookies.get('loginName'),//鐢ㄦ埛鍚嶇О
+ KbBarInfo: [],
+ KbBarMxInfo: [],
+ Xvalue:4,
+ XbarInfo: [],
+ DAA001: "",
+ DAANum: "",
+ xcslItemList: [], //鏉愭枡鍒楄〃
+ xcslWjsBarList: [],//鏈帴鏀跺垪琛�
+ xcslYjsBarList: [],//宸叉帴鏀跺垪琛�
+ selectKey: "",//鏌ヨ鍏抽敭瀛�
+ actions: [],//鍒楄〃鐨勫��
+ show: false,//鍒楄〃灞曠ず
+
+ }
+ },
+ mounted() {
+ var that = this;
+ this.userInfo = {
+ loginGuid: this.GetLoginInfor().loginGuid,
+ loginAccount: this.GetLoginInfor().loginAccount,
+ };
+ },
+ methods: {
+ GetItemsXcsl() {
+ var that = this;
+
+ if (!that.DAA001 || that.DAA001.length <= 0) {
+ that.$toast.fail("宸ュ崟鍗曞彿涓嶈兘涓虹┖锛�");
+ that.$refs.DAA001.focus();
+ return;
+ }
+
+ that.isLoading = true;
+ that.AxiosHttp("post", 'Womdaa/GetItemsXcsl', {
+ daa001: that.DAA001
+ }, false)
+ .then(function (res) {
+ var json = res;
+ if (json.status == 0) {
+ that.DAANum = json.data.tbBillList.gD_Num;
+ that.xcslItemList = json.data.tbBillList.xcslItemList;
+ that.xcslWjsBarList = json.data.tbBillList.xcslWjsBarList;
+ that.xcslYjsBarList = json.data.tbBillList.xcslYjsBarList;
+ that.$refs.Bar.focus();
+ }
+ else {
+ that.$toast.fail(json.message);
+ that.$refs.DAA001.focus();
+ that.DAA001 = "";
+ }
+ that.isLoading = false;
+ })
+ .catch(function (error) {
+ that.isLoading = false;
+ that.$toast.fail("缃戠粶閿欒锛岃閲嶈瘯锛�");
+ });
+ },
+ ScanXcsl() {
+ // 娣诲姞闃叉姈鍒ゆ柇
+ if (this.isLoading) {
+ return;
+ }
+
+ var that = this;
+ if (!that.Bar ||that.Bar.length <= 0) {
+ that.$toast.fail("鐗╂枡鏉$爜涓嶈兘涓虹┖锛�");
+ that.$refs.Bar.focus();
+ return;
+ }
+
+
+ if (!that.DAA001 ||that.DAA001.length <= 0) {
+ that.$toast.fail("宸ュ崟鍗曞彿涓嶈兘涓虹┖锛�");
+ that.$refs.DAA001.focus();
+ return;
+ }
+
+ that.isLoading = true;
+ that.AxiosHttp("post", 'Womdaa/ScanXcsl', {
+ DAA001: that.DAA001,
+ Bar: that.Bar,
+ userAccount: that.userInfo.loginAccount,
+ }, false)
+ .then(function (res) {
+ var json = res;
+ if (json.status == 0) {
+ // that.scanInfo = json.data.tbBillList;
+ that.$notify({ type: 'success', message: json.message });
+ that.GetItemsXcsl();
+ }
+ else {
+ that.$toast.fail(json.message);
+ }
+ that.isLoading = false;
+ that.$refs.Bar.focus();
+ that.Bar = "";
+ })
+ .catch(function (error) {
+ that.isLoading = false;
+ that.$toast.fail("缃戠粶閿欒锛岃閲嶈瘯锛�");
+ });
+ },
+ //鑾峰彇宸ュ崟淇℃伅
+ getInfo() {
+ this.show = true;
+ var that = this;
+ that.actions = [];
+ that.isLoading = true;
+ that.AxiosHttp("post", 'Womdaa/GetXcslDaa', {
+ selectKey: that.selectKey,
+ }, false)
+ .then(function (res) {
+ var json = res;
+ if (json.status == 0) {
+
+ if (json.data.tbBillList.length <= 0) {
+ that.$toast.fail("娌℃湁鍙敤鐨勬暟鎹�");
+ that.$playSound('error');
+ } else {
+ that.itemInfo = json.data.tbBillList;
+ that.actions = json.data.tbBillList.map(item => {
+ return {
+ name: item.daaInfo // 鎷兼帴瀛楁
+
+ };
+ });
+ }
+ }
+ else {
+ that.$toast.fail(json.message);
+ that.$playSound('error');
+ }
+ that.isLoading = false;
+ })
+ .catch(function (error) {
+ that.isLoading = false;
+ that.$toast.fail("缃戠粶閿欒锛岃閲嶈瘯锛�");
+ that.$playSound('error');
+ console.log(error);
+ });
+ },
+ onSelect(item) {
+ // 榛樿鎯呭喌涓嬬偣鍑婚�夐」鏃朵笉浼氳嚜鍔ㄦ敹璧�
+ // 鍙互閫氳繃 close-on-click-action 灞炴�у紑鍚嚜鍔ㄦ敹璧�
+ this.show = false;
+ console.log(item);
+ // 姝e垯鍖归厤绗竴涓柟鎷彿鍐呭
+ const regex = /\[([^\]]+)\]/;
+ const matchResult = item.name.match(regex);
+
+ if (matchResult && matchResult[1]) {
+ this.DAA001 = matchResult[1]; // PPBOM00000088-1
+ console.log('鎻愬彇鐨凞AA001:', this.DAA001);
+ } else {
+ this.$toast.fail('宸ュ崟鍙锋牸寮忓紓甯�');
+ this.DAA001 = '';
+ }
+ this.GetItemsXcsl();
+ //this.$toast(item.name);
+
+ },
+ }
+})
\ No newline at end of file
diff --git a/H5/Xcsl.aspx b/H5/Xcsl.aspx
index da23ccd..9f91119 100644
--- a/H5/Xcsl.aspx
+++ b/H5/Xcsl.aspx
@@ -113,20 +113,20 @@
<van-tab title="鏉愭枡鍒楄〃" class="mySolid font">
<van-row>
<van-col span="8" class="text-left padding-left">鐗╂枡</van-col>
+ <van-col span="8" class="text-left padding-left">瑙勬牸鍨嬪彿</van-col>
<van-col span="4">澶囨枡鏁�</van-col>
<van-col span="4">鎺ユ敹鏁�</van-col>
- <van-col span="8" class="text-left padding-left">鎵�灞炲崟鎹�</van-col>
</van-row>
<van-row v-for="(itm,index) in xcslItemList" :key="index">
<van-col span="8" class="text-left padding-left">
<div class="blue-text">{{itm.item_no}}</div>
<div>{{itm.item_name}}</div>
</van-col>
- <van-col span="4" class="blue-text">{{itm.bL_Num}}</van-col>
- <van-col span="4" class="blue-text">{{itm.jS_Num}}</van-col>
<van-col span="8" class="text-left padding-left">
- <div>{{itm.item_out_no}}</div>
+ <div>{{itm.item_model}}</div>
</van-col>
+ <van-col span="4" class="blue-text">{{itm.bL_Num}}</van-col>
+ <van-col span="4" class="blue-text">{{itm.jS_Num}}</van-col
</van-row>
</van-tab>
<van-tab title="鏈帴鏀跺垪琛�" class="mySolid font">
diff --git a/H5/Xctl.aspx b/H5/Xctl.aspx
new file mode 100644
index 0000000..24b249f
--- /dev/null
+++ b/H5/Xctl.aspx
@@ -0,0 +1,199 @@
+锘�<%@ Page Title="鐜板満鎶曟枡" Language="C#" MasterPageFile="~/Mst.master" AutoEventWireup="true" CodeFile="Xctl.aspx.cs" Inherits="H5_Cpdbsj" %>
+<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
+ <style>
+ .si-status-box,
+ .si-status__left
+ {
+ background-color: transparent !important; /* 閫忔槑鑳屾櫙 */
+ border: 1px solid #000 !important; /* 榛戣壊澶栨 */
+ color: #000 !important; /* 鍏ㄥ眬鏂囧瓧棰滆壊 */
+ height: 0.5rem;
+ }
+
+ .si-status__left::after {
+ content: none !important;
+ }
+
+ .si-status__label,
+ .si-status__right {
+ font-size: 0.33rem !important; /* 缁熶竴瀛椾綋澶у皬 */
+ color: inherit !important; /* 缁ф壙鐖剁骇鏂囧瓧棰滆壊 */
+ }
+
+
+ /* 灞呬腑鏍稿績鏍峰紡 */
+.centered-stepper-field {
+ .stepper-container {
+ display: flex;
+ justify-content: center; /* 姘村钩灞呬腑 */
+ width: 100%;
+ }
+
+ /* 璋冩暣姝ヨ繘鍣ㄦ寜閽棿璺� */
+ .van-stepper__minus {
+ margin-right: 12px;
+ }
+ .van-stepper__plus {
+ margin-left: 12px;
+ }
+}
+
+ /* 鏂板鏍峰紡 */
+ .button-container {
+ display: flex;
+ width: 100%;
+ gap: 12px; /* 鎸夐挳闂磋窛 */
+ padding: 0 16px; /* 宸﹀彸鐣欑櫧 */
+ box-sizing: border-box;
+ }
+
+ .action-button {
+ flex: 1; /* 绛夊垎鍓╀綑绌洪棿 */
+ min-width: 0; /* 闃叉鍐呭婧㈠嚭 */
+ }
+</style>
+</asp:Content>
+
+<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" Runat="Server">
+ <div class="content-wrapper">
+ <van-nav-bar
+ title="鐜板満鎶曟枡"
+ left-text="杩斿洖"
+ left-arrow
+ @click-left="GoBack()">
+ </van-nav-bar>
+
+ <div class="mySolid">
+ <van-cell-group>
+ <van-field
+ ref ="selectKey"
+ value=""
+ label="宸ュ崟鏌ヨ"
+ clearable
+ placeholder="璇疯緭鍏ュ伐鍗曞彿杩涜鏌ヨ"
+ :right-icon-size="19"
+ v-model="selectKey"
+ @keyup.enter.native="GetMesItemBlDetailByBillNo"
+ ><template #button>
+ <van-button size="small" type="info" plain @click="getInfo" >閫夋嫨</van-button>
+ </template></van-field>
+ <van-field
+ ref="DAA001"
+ v-model="DAA001"
+ label="鎸囦护宸ュ崟"
+ placeholder="鎸囦护宸ュ崟"
+ @keyup.enter.native="GetItemsXcsl"
+ autofocus="true"
+ >
+ </van-field>
+
+ <van-field
+ v-model="DAANum"
+ label="宸ュ崟鏁伴噺"
+ placeholder="宸ュ崟鏁伴噺"
+ autofocus="true"
+ readonly>
+ </van-field>
+
+ <van-field
+ ref="Bar"
+ v-model="Bar"
+ label="鐗╂枡鏉$爜"
+ placeholder="璇锋壂鐗╂枡鏉$爜"
+ @keyup.enter.native="ScanXcsl"
+ autofocus="true">
+ </van-field>
+
+ </van-cell-group>
+ </div>
+
+ <van-action-sheet v-model="show" :actions="actions" @select="onSelect" ></van-action-sheet>
+
+ <van-tabs color="#000" title-active-color="#0283EF">
+ <van-tab title="鏉愭枡鍒楄〃" class="mySolid font">
+ <van-row>
+ <van-col span="8" class="text-left padding-left">鐗╂枡</van-col>
+ <van-col span="4">澶囨枡鏁�</van-col>
+ <van-col span="4">鎺ユ敹鏁�</van-col>
+ <van-col span="4">鎶曟枡鏁�</van-col>
+ <van-col span="4" class="text-left padding-left">鎵�灞炲崟鎹�</van-col>
+ </van-row>
+ <van-row v-for="(itm,index) in xcslItemList" :key="index">
+ <van-col span="8" class="text-left padding-left">
+ <div class="blue-text">{{itm.item_no}}</div>
+ <div>{{itm.item_name}}</div>
+ </van-col>
+ <van-col span="4" class="blue-text">{{itm.bL_Num}}</van-col>
+ <van-col span="4" class="blue-text">{{itm.jS_Num}}</van-col>
+ <van-col span="4" class="blue-text">{{itm.jS_Num}}</van-col>
+ <van-col span="4" class="text-left padding-left">
+ <div>{{itm.item_out_no}}</div>
+ </van-col>
+ </van-row>
+ </van-tab>
+ <van-tab title="鏈姇鏂欏垪琛�" class="mySolid font">
+ <van-row>
+ <van-col span="5" class="text-left padding-left">鏉$爜</van-col>
+ <van-col span="8" class="text-left padding-left">鐗╂枡</van-col>
+ <van-col span="3" class="text-left padding-left">鏁伴噺</van-col>
+ <van-col span="3" >浜哄憳</van-col>
+ <van-col span="5" >鏃堕棿</van-col>
+ </van-row>
+ <van-row
+ v-for="(itm,index) in xcslWjsBarList"
+ :key="index">
+ <van-col span="5" class="text-left padding-left">{{itm.iteM_BARCODE}}</van-col>
+ <van-col span="8" class="text-left padding-left">
+ <div class="blue-text">{{itm.item_no}}</div>
+ <div>{{itm.item_name}}</div>
+ </van-col>
+ <van-col span="3" class="text-left padding-left">
+ <div>{{itm.quantity}}</div>
+ </van-col>
+ <van-col span="3">
+ <div>{{itm.useR_NAME}}</div>
+ </van-col>
+ <van-col span="5">
+ <div>{{itm.create_date}}</div>
+ </van-col>
+ </van-row>
+ </van-tab>
+
+ <van-tab title="宸叉姇鏂欏垪琛�" class="mySolid font">
+ <van-row>
+ <van-col span="5" class="text-left padding-left">鏉$爜</van-col>
+ <van-col span="8" class="text-left padding-left">鐗╂枡</van-col>
+ <van-col span="3" class="text-left padding-left">鏁伴噺</van-col>
+ <van-col span="3" >鎺ユ敹浜�</van-col>
+ <van-col span="5" >鎺ユ敹鏃堕棿</van-col>
+ </van-row>
+ <van-row
+ v-for="(itm,index) in xcslYjsBarList"
+ :key="index">
+ <van-col span="5" class="text-left padding-left">{{itm.iteM_BARCODE}}</van-col>
+ <van-col span="8" class="text-left padding-left">
+ <div class="blue-text">{{itm.item_no}}</div>
+ <div>{{itm.item_name}}</div>
+ </van-col>
+ <van-col span="3" class="text-left padding-left">
+ <div>{{itm.quantity}}</div>
+ </van-col>
+ <van-col span="3">
+ <div>{{itm.useR_NAME}}</div>
+ </van-col>
+ <van-col span="5">
+ <div>{{itm.xcsL_CREATE_DATE}}</div>
+ </van-col>
+ </van-row>
+ </van-tab>
+ </van-tabs>
+ </div>
+</asp:Content>
+
+<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder3" Runat="Server">
+ <comloading v-if="isLoading"></comloading>
+</asp:Content>
+
+<asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder4" Runat="Server">
+ <script src="Js/Xctl.js?<%=1 %>"></script>
+</asp:Content>
\ No newline at end of file
diff --git a/H5/Xctl.aspx.cs b/H5/Xctl.aspx.cs
new file mode 100644
index 0000000..c84ddf3
--- /dev/null
+++ b/H5/Xctl.aspx.cs
@@ -0,0 +1,14 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+
+public partial class H5_Cpdbsj : System.Web.UI.Page
+{
+ protected void Page_Load(object sender, EventArgs e)
+ {
+
+ }
+}
\ No newline at end of file
--
Gitblit v1.9.3