瀏覽代碼

测试数据

lvhao 1 天之前
父節點
當前提交
7f1efdd04a
共有 2 個文件被更改,包括 235 次插入0 次删除
  1. 56 0
      core/CoreApp/controllers/Whlabelfz.php
  2. 179 0
      template/erp/whlabelfz_bqpl.html

+ 56 - 0
core/CoreApp/controllers/Whlabelfz.php

@@ -15,6 +15,8 @@ class Whlabelfz extends Start_Controller
         $this->load->_model('Model_typeclass','typeclass');
         $this->load->_model('Model_purchase', 'purchase');
 		$this->load->_model("Model_shop", "shop");
+		$this->load->_model("Model_whlabellabel","whlabellabel");
+		$this->load->_model("Model_logic_zhlp",'logic_zhlp');
     }
     //定义方法的调用规则 获取URI第二段值
 	public function _remap($arg, $arg_array)
@@ -33,6 +35,13 @@ class Whlabelfz extends Start_Controller
 		{
 			$this->_whlabel_cprk_excel();
 		}
+		elseif($arg == 'bqplindex'){
+			$this->_bqplindex();
+		}elseif($arg == 'bqplprint'){
+			$this->_bqplprint();
+		}elseif($arg == 'bqpladd'){
+			$this->_bqpladd();
+		}
 	    else {
 			$this->_index();
 		}
@@ -504,5 +513,52 @@ class Whlabelfz extends Start_Controller
 		
 	}
 
+	private function _bqplindex(){
+		if($this->input->method() == 'post'){
+			$rows = array('total'=>0,'over'=>1,'pagenum'=>1,'rows'=>([]));
+		    echo json_encode($rows);exit;
+		}
+		$this->_Template('whlabelfz_bqpl', $this->data);
+	}
+
+	private function _bqpladd(){
+		$params = $this->input->post('data',true);
+		
+	}
+	/**
+	 * 将数据转化为 批量打印标签需要data格式
+	 */
+	private function _transferForm($tmsku){
+		if (is_numeric($tmsku)) {
+			$yyh = $this->whlabellabel->get_label($tmsku);
+		} else {
+			$yyh = $this->whlabellabel->get_sku($tmsku);
+			if(empty($yyh)){
+				$r = $this->logic_u9tools->getErpSkuByU9Lp($tmsku);
+				if($r['code'] == -1 ){
+					return ['code'=>-1,'msg'=>"未找到对应的料品"];
+				}else{
+					$yyh = [];
+					$yyh['features'] = $r['data'];
+				}
+			}
+		}
+		if(empty($yyh)){
+			return ['code'=>-1,'msg'=>"未找到对应的料品"];
+		}
+		$str = $yyh['features'];
+
+		$arr = explode("-",trim($yyh,"-"));
+		$data = $this->logic_zhlp->transferSku($arr);
+		$res = $this->logic_zhlp->sortByName($data);
+		echo "<pre>";
+		print_r($res);
+		die;
+		
+	}
+
+	private function _bqplprint(){
+
+	}
 
 }

+ 179 - 0
template/erp/whlabelfz_bqpl.html

@@ -0,0 +1,179 @@
+{Template header}
+<body>
+    <div class="warp">
+        <div class="fixed">
+            <ul class="search">
+                <li>SKU:<input value="" name="sku" type="text"></li>
+                <li>货品名字:<input value="" name="title" type="text"></li>
+                <li>状态:<select name="status" class="select">
+                        <option value="0">未打印</option>
+                        <option value="1">已打印</option>
+                    </select></li>
+                <li>导入时间:<input id="timetk" value="{date('Y-m-d',time())} 06:00" name="timetk" type="text"
+                        onClick="laydate({istime: true,format:'YYYY-MM-DD hh:mm'})" readonly>
+                    至&nbsp;&nbsp;&nbsp;&nbsp; <input id="timetj" value="{date('Y-m-d',time())} 19:00" name="timetj"
+                        type="text" onClick="laydate({istime: true,format:'YYYY-MM-DD hh:mm'})" readonly></li>
+                <li><span>确 定</span></li>
+            </ul>
+            <div class="control zjcz">
+                <div class="tabprint">
+                    快递面单:<select name="printer" class="select" style="width:220px;">
+                        <option value="">选择打印机</option>
+                    </select>
+                </div>
+                <a href="javascript:void(0);" class="printing">打 印</a>
+                <a href="javascript:void(0);" class="lv_print_excel">导入需要打印的文件</a>
+                <input id="upload-file" name="files" accept="image/xls,image/xlsx" type="file" class="none">
+            </div>
+            <table class="datatitle data" border="0" style="border-collapse:collapse;">
+                <tr>
+                    <td><label onClick="swapCheck()"><input name="checkbox" type="checkbox"
+                                class="regular-checkbox"></label></td>
+                    <td>店铺名称</td>
+                    <td>订单号</td>
+                    <td>编号</td>
+                    <td>快递公司</td>
+                    <td>运单号</td>
+                    <td>状态</td>
+                    <td>类型</td>
+                    <td>次数</td>
+                    <td>打印时间</td>
+                    <td>仓库品名</td>
+                </tr>
+            </table>
+        </div>
+        <table class="datatext data" border="0" style="border-collapse:collapse;">
+        </table>
+        <div class="bomf"></div>
+    </div>
+    <div class="print none"></div>
+    <div class="ts">
+        <p class="tsn"></p>
+    </div>
+    <div class="systemwindow">
+        <div>
+            <p>是否确定删除所选信息?</p>
+            <p>
+                <font class="button">确 定</font>
+                <font class="esc">取 消</font>
+            </p>
+        </div>
+    </div>
+    <div class="tyrows">
+        <div>
+            <p></p>
+            <p></p>
+        </div>
+    </div>
+    <div class="list">
+        <div>
+            <p>操作配置</p>
+            <ul class="fj"></ul><em></em>
+        </div>
+    </div>
+    <span id="job" class="none"></span>
+    <span id="site" class="none"></span>
+    <script>
+        var dataurl = "/whlabelfz/bqplindex";
+        var fdataurl = "/whlabelfz/bqplindex";
+        var sysprint = 1;
+        var customon = 1;
+
+        function custom() {
+            $(".data tr").each(function() {
+                $(this).find('td:eq(0)').css("width", "1%");
+                $(this).find('td:eq(1)').css("width", "9%");
+                $(this).find('td:eq(2)').css("width", "9%");
+                $(this).find('td:eq(3)').css("width", "13%");
+                $(this).find('td:eq(4)').css("width", "9%");
+                $(this).find('td:eq(5)').css("width", "9%");
+                $(this).find('td:eq(6)').css("width", "5%");
+                $(this).find('td:eq(7)').css("width", "4%");
+                $(this).find('td:eq(8)').css("width", "5%");
+                $(this).find('td:eq(9)').css("width", "9%");
+                $(this).find('td:eq(10)').css("width", "27%");
+                $(this).find('td:eq(10)').css("font-size", "12px");
+            });
+        }
+        window.onload = function() {
+            if (typeof $("select[name='printer']").length < 1) return;
+            setTimeout(function() {
+                wprinter.printer()
+            }, 1000);
+            setTimeout(function() {
+                let h = $("select[name='printer']").html()
+                $("select[name='fp_printer']").html(h)
+            }, 1100)
+        };
+
+        $(".lv_print_excel").click(function() {
+            var me = $(this);
+            $("#upload-file").click();
+            $("#upload-file").unbind("change");
+            $("#upload-file").bind("change",function(){
+                whlabeldr_two(me);
+                layx.load('loadId','导入中,请稍后',{shadable:0.6});
+            });
+        });
+
+        let excel_data = [];
+        function whlabeldr_two(dr){
+            var file = document.getElementById("upload-file").files[0];
+            if (!file) return;
+
+            // 显示加载提示
+            //layx.load('loadId', '解析 Excel 中,请稍后', { shadable: 0.6 });
+
+            // 使用 FileReader 读取文件
+            var reader = new FileReader();
+            reader.onload = function(e) {
+                var data = e.target.result;
+                try {
+                    // 使用 SheetJS 解析 Excel 为 JSON
+                    var workbook = XLSX.read(data, { type: 'array' });
+                    var sheetName = workbook.SheetNames[0]; // 取第一个工作表
+                    var worksheet = workbook.Sheets[sheetName];
+                    var jsonData = XLSX.utils.sheet_to_json(worksheet, { header:1,defval: "" });
+                    jsonData.shift(); // 去掉第一行表头
+                    //console.log(jsonData)
+                    excel_data = jsonData;
+                    // 构建要上传的数据(可以包含文件名、sheet名等)
+                    // var uploadData = {
+                    //     fileName: file.name,
+                    //     sheetName: sheetName,
+                    //     data: jsonData   // 解析后的 JSON 数组
+                    // };
+                    // 通过 AJAX 上传 JSON 数据
+                    document.getElementById("upload-file").files[0] = '';
+                    if(excel_data.length>100){
+                        layx.destroy('loadId');
+                        errorc({ success: false, msg: "一次最多只能上传100条数据" });
+                    }
+                    print_label();
+                } catch (err) {
+                    layx.destroy('loadId');
+                    console.error("解析 Excel 失败:", err);
+                    errorc({ success: false, msg: "解析 Excel 文件失败" });
+                }
+            };
+            reader.onerror = function() {
+                layx.destroy('loadId');
+                errorc({ success: false, msg: "文件读取失败" });
+            };
+            reader.readAsArrayBuffer(file); // 以 ArrayBuffer 读取
+        }
+        function print_label() {
+            console.log(excel_data)
+            $.post("/whlabelfz/bqpladd", { data: JSON.stringify(excel_data) }, function(res) {
+
+            },'json');
+        
+        }
+
+
+
+    </script>
+    <script type="text/javascript" src="{$theme}js/excel/xlxs.js" ></script>
+    <script type="text/javascript" src="{$theme}js/laydate.js"></script>
+    <script type="text/javascript" src="{$theme}js/print.js?v=202505301539"></script>
+    {Template footer}