lvhao 6 дней назад
Родитель
Сommit
f837435b82

+ 18 - 18
core/CoreApp/controllers/Fullorder.php

@@ -1522,24 +1522,24 @@ class Fullorder extends Start_Controller {
             }
 		}
 		$fpdata = $this->logic_order->checkOrderProduct($fpdata);
-		// $tmp_features = array_column($fpdata,0);
-		// $do_trans_pms = [];
-		// foreach ($tmp_features as $k=>$v) {
-		// 	if(strpos($v,",") === false){
-		// 		$do_trans_pms[] = [
-		// 			'features'=>$v
-		// 		];
-		// 	}else{
-		// 		$tmp_arr = explode(",",$v);
-		// 		$do_trans_pms[] = [
-		// 			'features'=>$tmp_arr[1].$tmp_arr[0]."-"
-		// 		];
-		// 	}
-		// }
-		// $r = $this->logic_whlabel->dataTran($do_trans_pms,['pm']);
-		// foreach ($fpdata as $k=>$v) {
-		// 	$fpdata[$k]['pm'] = $r[$k]['pm'];
-		// }
+		$tmp_features = array_column($fpdata,0);
+		$do_trans_pms = [];
+		foreach ($tmp_features as $k=>$v) {
+			if(strpos($v,",") === false){
+				$do_trans_pms[] = [
+					'features'=>$v
+				];
+			}else{
+				$tmp_arr = explode(",",$v);
+				$do_trans_pms[] = [
+					'features'=>$tmp_arr[1].$tmp_arr[0]."-"
+				];
+			}
+		}
+		$r = $this->logic_whlabel->dataTran($do_trans_pms,['pm']);
+		foreach ($fpdata as $k=>$v) {
+			$fpdata[$k]['pm'] = $r[$k]['pm'];
+		}
 		$this->data['fpdata'] = $fpdata;
 		$thfpdataxs = array();
 		if($fullorder['thfpdata'] != '')

+ 7 - 5
core/CoreApp/models/Model_logic_goods_replace.php

@@ -38,7 +38,7 @@ class Model_logic_goods_replace extends Lin_Model {
         }
         $shipmarks = [];
         //getOneU9bmHasGift($sku,$classid,$typeclass)
-        //$classid = $this->logic_u9tools->getClass();
+        $classid = $this->logic_u9tools->getClass();
         $class_list = $typeclass = $this->logic_u9tools->getTypeClass();
         
         $fpdata_date = explode(";",trim($fpdata,";"));
@@ -46,13 +46,15 @@ class Model_logic_goods_replace extends Lin_Model {
         //先查询是否占单了  如果占单了 那么就 不处理  如果不存在那么就处理
         foreach($fpdata_date as $k => $v){
            $r = $this->checkAbleToReplace($v);
+           $detail_arr = explode("|",$v);
+           $sku_str = $this->transferFeatures($detail_arr[0]);
+           $zh = $this->logic_zhlp->getZhname($sku_str,$classid,$typeclass);
            if($r){
                 $detail_arr = explode("|",$v);
-                $sku_str = $this->transferFeatures($detail_arr[0]);
                 //因为美仓是全占模式 所以不用逐个分析那几个产品是否占库存,有就是全站不处理  没有就替换 等保存的时候在进行处理
                 $ret_list = $this->whlabel->find_all(" state = 0 and zd = '".$number."' and features = '".$sku_str."' ");
                 if(count($ret_list) > 0){
-                    $fpdata_final_arr[] = $v;
+                    $fpdata_final_arr[] = $v."|".$zh;
                     // if(strpos($v,",")!== false){
                     //     $detail_arr = explode("|",trim($v,"|"));
                     //     $ll_tmp_arr = explode(",",$detail_arr[0]);
@@ -115,7 +117,7 @@ class Model_logic_goods_replace extends Lin_Model {
                     $detail_arr[0] = $final_sku_str;
                     $detail_arr[1] = $en_title;
                     $v = implode("|",$detail_arr);
-                    $fpdata_final_arr[] = $v;
+                    $fpdata_final_arr[] = $v."|".$zh;
                 }
            }else{
                 // if(strpos($v,",")!== false){
@@ -135,7 +137,7 @@ class Model_logic_goods_replace extends Lin_Model {
                 //         $shipmarks[] = $rr['zh'];
                 //     }
                 // }
-                $fpdata_final_arr[] = $v;
+                $fpdata_final_arr[] = $v."|".$zh;
            }
           
         }

+ 15 - 0
core/CoreApp/models/Model_logic_zhlp.php

@@ -583,4 +583,19 @@ class Model_logic_zhlp extends Lin_Model {
             return $select_size.','.$features;
         }
     }
+
+    public function getZhname($features,$classid,$typeclass){
+        $sku_img = explode("-",trim($features, '-'));
+        $pm = $classid;
+        foreach ($sku_img as $k => $v) {
+           if ($v != 0) {
+                if(isset($typeclass[$v])){
+                    $pm[$typeclass[$v]['classid']] = $typeclass[$v]['zh'];
+                }	
+		   }
+        }
+        $pm = array_filter($pm);
+		$zh = implode(" ", $pm);
+        return $zh;
+    }
 }

+ 4 - 1
template/erp/fullorder_edit.html

@@ -73,7 +73,8 @@
 	{else}
 	<font class="yxzd">允许占单</font>
 	{/if} 
-	<!-- <font style="padding: 2px 10px; margin: 0 6px;color: #fff;border: 1px solid #f51;color: #f51;border-radius: 5px;cursor: pointer;" onclick="fuzhishangpin(this)">复制商品</font>  -->
+	<font style="padding: 2px 10px; margin: 0 6px;color: #fff;border: 1px solid #f51;color: #f51;border-radius: 5px;cursor: pointer;" onclick="fuzhishangpin(this)">复制商品</font> 
+	<font style="padding: 2px 10px; margin: 0 6px;color: #fff;border: 1px solid #483D8B;color: #483D8B;border-radius: 5px;cursor: pointer;" onclick="fuzhi(this)" data-text="{$val['pm']}">复制品名</font> 
 </td>
 </tr>
 {/loop}
@@ -1111,6 +1112,7 @@ $(".data tr").each(function() {
 $(this).find('td:eq(0)').css("width","30%");
 $(this).find('td:eq(1)').css("width","3%");
 $(this).find('td:eq(10)').css("width","10%");
+$(this).find('td:eq(11)').css("width","15%");
 });}
 //监听input开始
 $("input[name=dtsbjz]").bind("input propertychange",function(event){
@@ -1291,5 +1293,6 @@ $("#is_jiaji_id").on('change',function(){
 
 </script>
 <script src="{$theme}js/fullorder-addedit.js?v=20260711094955"></script>
+<script src="{$theme}js/fullorder-addeditv2.js?v=202511101"></script>
 <script type="text/javascript" src="{$theme}js/time.js"></script>
 {Template footer}

+ 56 - 0
template/erp/js/fullorder-addedit.js

@@ -2136,4 +2136,60 @@ function checkGoodRepeat(check_sku){
 	if(unique_arr.length != check_sku.length){
 		alert("商品名称重复,请检查!!!");
 	}
+}
+/**复制商品**/
+function fuzhishangpin(that){
+	let str = $(that).closest("tr").html();
+	str = "<tr data-list='"+$(that).closest("tr").data("list")+"'>"+str+"</tr>";
+	$(".datatext").append(str);
+	setTimeout(function(){
+		tjTotalNum()
+	},200)
+	
+}
+/**复制中文品名**/
+function fuzhi(that){
+    let text = $(that).data('text');
+    // 优先使用 Clipboard API(现代浏览器)
+    if (navigator.clipboard && navigator.clipboard.writeText) {
+        navigator.clipboard.writeText(text).then(function() {
+            //alert('复制成功:' + text); // 可替换为更优雅的反馈
+        }).catch(function() {
+            fallbackCopy(text); // API 失败时降级
+        });
+    } else {
+        fallbackCopy(text); // 不支持 API 时降级
+    }
+    // 降级方案:使用 input 临时元素 + execCommand(兼容旧浏览器)
+    function fallbackCopy(text) {
+        var $input = $('<input>').val(text).css({
+            position: 'fixed',
+            opacity: 0,
+            pointerEvents: 'none'
+        }).appendTo('body');
+        $input.select();
+        try {
+            var success = document.execCommand('copy');
+            if (success) {
+                //alert('复制成功:' + text);
+            } else {
+                alert('复制失败,请手动复制');
+            }
+        } catch (e) {
+            alert('复制失败,请手动复制');
+        }
+        $input.remove();
+    }
+}
+
+function choicetjTotalNum(){
+	let num = 0;
+	let features_str = "";
+	$(".datatext tr",window.parent.document).each(function() {
+		features_str= $(this).data("list");
+		if(features_str.indexOf("-131-")===-1){
+			num = num + $(this).find("td:eq(1)").text()*1;
+		}
+	})
+	$("#sl_show",window.parent.document).text(num)
 }

Разница между файлами не показана из-за своего большого размера
+ 2212 - 0
template/erp/js/fullorder-addeditv2.js