username@email.com
2024-04-12 5f4384bdab4697cc0a678fb17e55603a91a4750b
CoreCms.Net.Web.Admin/wwwroot/views/good/goods/edit.html
@@ -61,6 +61,12 @@
                                </div>
                            </div>
                            <div class="layui-form-item">
                                <label for="areaId" class="layui-form-label ">所属地区</label>
                                <div class="layui-input-block layui-inline-4 address-class">
                                    <input type="hidden" name="areaId" value="{{d.data.areaId || '' }}">
                                </div>
                            </div>
                            <div class="layui-form-item">
                                <label for="bn" class="layui-form-label layui-form-required">商品编码</label>
                                <div class="layui-input-inline layui-inline-6">
                                    <input name="goods[bn]" id="bn" lay-verType="tips" lay-verify="required|verifybn" value="{{d.data.model.bn }}" class="layui-input" lay-reqText="请输入商品编码" placeholder="请输入不超过30个字符内容" />
@@ -306,15 +312,18 @@
                <th>货号</th>
                <th>SKU</th>
                <th>重量(克)</th>
                <th>赠送积分</th>
                <th>积分最大<br />可抵金额</th>
                <!-- <th>赠送积分</th>
                <th>积分最大<br />可抵金额</th> -->
                <th>库存</th>
                <th><i class="required-color">*</i>销售价</th>
                <th>经销商价格</th>
                <th>成本价</th>
                <th>市场价</th>
                <th>一级返现</th>
                <th>二级返现</th>
                <th>三级返现</th>
                <th>指导零售价</th>
                <th>经销商用户购买返现</th>
                <th>普通用户购买返现</th>
                <!-- <th>二级返现</th>
                <!-- <th>三级返现</th> --> -->
                <th>冻结库存</th>
                <th>操作</th>
            </tr>
@@ -356,12 +365,12 @@
                <td>
                    <input type="number" name="product[weight][]" value="{{item.weight}}" placeholder="重量" class="layui-input layui-inline-1">
                </td>
                <td>
                <!-- <td>
                    <input type="number" name="product[points][]" value="{{item.points}}" placeholder="积分" class="layui-input layui-inline-1">
                </td>
                <td>
                </td> -->
                <!-- <td>
                    <input type="text" name="product[pointsDeduction][]" value="{{item.pointsDeduction}}" placeholder="金额" class="layui-input layui-inline-1">
                </td>
                </td> -->
                <td class="have-add-td">
                    <input type="number" name="product[stock][]" value="{{item.stock}}" placeholder="库存" class="layui-input layui-inline-1 goods-stock">
                </td>
@@ -369,20 +378,27 @@
                    <input type="text" name="product[price][]" value="{{item.price}}" placeholder="销售价" class="layui-input layui-inline-1">
                </td>
                <td>
                    <input type="text" name="product[distributionPrice][]" value="{{item.distributionPrice||'0'}}" placeholder="经销商价格" class="layui-input layui-inline-1">
                </td>
                <td>
                    <input type="text" name="product[costprice][]" value="{{item.costprice}}" placeholder="成本价" class="layui-input layui-inline-1">
                </td>
                <td>
                    <input type="text" name="product[mktprice][]" value="{{item.mktprice}}" placeholder="市场价" class="layui-input layui-inline-1">
                    <input type="text" name="product[mktprice][]" value="{{item.mktprice}}" placeholder="指导零售价" class="layui-input layui-inline-1">
                </td>
                <td>
                    <input type="text" name="product[levelOne][]" value="{{item.levelOne}}" placeholder="一级返现" class="layui-input layui-inline-1">
                    <input type="text" name="product[distributionCutMoney][]" value="{{item.distributionCutMoney||'0'}}" placeholder="经销商购买返现" class="layui-input layui-inline-1">
                </td>
                <td>
                    <input type="text" name="product[cutMoney][]" value="{{item.cutMoney||'0'}}" placeholder="普通用户购买返现" class="layui-input layui-inline-1">
                </td>
                <!-- <td>
                    <input type="text" name="product[levelTwo][]" value="{{item.levelTwo}}" placeholder="二级返现" class="layui-input layui-inline-1">
                </td>
                <td>
                    <input type="text" name="product[levelThree][]" value="{{item.levelThree}}" placeholder="三级返现" class="layui-input layui-inline-1">
                </td>
                </td> -->
                <td>
                    {{item.freezeStock}}
                </td>
@@ -462,11 +478,11 @@
                <div class="layui-input-inline">
                    <button type="button" class="layui-btn  layui-btn-warm layui-btn-sm" lay-active="getGenerateSpecBtn"><i class="layui-icon layui-icon-export"></i>生成SKU货品列表</button>
                </div>
                <div class="layui-input-inline">
                <!-- <div class="layui-input-inline">
                    <button type="button" class="aKeySetBtn layui-btn layui-btn-warm layui-btn-sm">
                        <i class="layui-icon layui-icon-set"></i>一键设置
                    </button>
                </div>
                </div> -->
            </div>
        </div>
        <div id="more_spec"></div>
@@ -560,7 +576,7 @@
                            </div>
                        </div>
                        <div class="layui-form-item">
                            <label class="layui-form-label">市场价</label>
                            <label class="layui-form-label">指导零售价</label>
                            <div class="layui-input-inline layui-inline-2">
                                <input class="layui-input" id="oneKeySetMktPrice">
                            </div>
@@ -633,6 +649,8 @@
    <input type="checkbox" name="skuAttrValue" value="{{item}}" title="{{item}}" lay-filter="skuAttrValue-filter">
    {{#  }); }}
</script>
    <script src="/views/liao.js"></script>
<script>
    var $;
@@ -758,6 +776,119 @@
                    var btn = $('#openSpecBtn');
                    $(btn).html("取消SKU");
                }
                 /*****************************************************************/
                //地区选择
                var expensiveItems =   d.data.categories.data.filter(function(item) {
                    return item.price > 100;
                  });
                   var areaid=0;
                var arelist= d.data.model?.areaCode?.split(",");
                if(Array.isArray(arelist))
                {
                   var u= arelist[arelist.length - 1]
                   let num = Number(u);
                   if(!Number.isNaN(num))
                   {
                    areaid=num;
                   }
                }
                coreHelper.Post("Api/Tools/GetAreaCheckedList", { id: areaid}, function (data) {
                    var str = "";
                    $.each(data, function (i, n) {
                        str += "<select lay-ignore name='areaId_" + (i + 1) + "' dep='" + (i + 1) + "'  class='select-address'>";
                        str += `<option value= ${(d.data.areaId??0)===0?" selected='selected'":''} >请选择</option>`;
                        if(n.list.length>0)
                       { $.each(n.list, function (h, z) {
                            if (n.hasOwnProperty('info') && n.info?.id == z.id) {
                                str += "<option value='" + z.id + "' selected='selected'>" + z.name + "</option>";
                            } else {
                                str += "<option value='" + z.id + "' >" + z.name + "</option>";
                            }
                        });
                    }
                    else
                    {
                        $.each(n.thisList, function (h, z) {
                            if (n.hasOwnProperty('info') && n.info?.id == z.id) {
                                str += "<option value='" + z.id + "' selected='selected'>" + z.name + "</option>";
                            } else {
                                str += "<option value='" + z.id + "' >" + z.name + "</option>";
                            }
                        });
                    }
                        str += "</select>";
                    });
                    $("input[name='areaId']").after(str);
                    //以上数据输出完,以下绑定事件
                    $.each(data, function (i, n) {
                        if (i < (data.length)) {
                            $("select[name='areaId_" + (i + 1) + "']").change(function () {
                                changeareaIdArea(i + 1, data.length);
                            });
                        }
                    });
                });
                function changeareaIdArea(i, max_i) {
                    //清除后面节点
                    for (var x = i + 1; x <= 6; x++) {  //最多6层,足够了
                        $("select[name='areaId_" + x + "']").remove();
                    }
                    var val = $("select[name='areaId_" + i + "']").val();
                    if (val != "") {
                        //取子节点数据,然后显示下一级
                        coreHelper.Post("Api/Tools/GetAreaChildren", { id: val }, function (e) {
                            if (debug) { console.log(e); } //开启调试返回数据
                            if (e.length > 0) {
                                var str = "";
                                str += "<select lay-ignore name='areaId_" + (i + 1) + "' dep='" + (i + 1) + "'  class='select-address'>";
                                str += "<option value='' >请选择</option>";
                                $.each(e, function (h, z) {
                                    str += "<option value='" + z.id + "' >" + z.name + "</option>";
                                });
                                str += "</select>";
                                $("select[name='areaId_" + i + "']").after(str);
                                //以上数据输出完,以下绑定事件
                                $("select[name='areaId_" + (i + 1) + "']").change(function () {
                                    changeareaIdArea(i + 1, i + 2);
                                });
                                //如果有返回值,就说明省市区没有选择到最终节点
                                if (1 == 1) {
                                    $("input[name='areaId']").val("");
                                } else {
                                    $("input[name='areaId']").val($("select[name='areaId_" + i + "']").val());
                                }
                            } else {
                                $("input[name='areaId']").val($("select[name='areaId_" + i + "']").val());
                            }
                        });
                    } else {
                        if (1 == 1) {
                            $("input[name='areaId']").val("");
                        } else {
                            //第一级的元素就直接赋值为空就是了
                            if (i == 1) {
                                $("input[name='areaId']").val("");
                            } else {
                                i--;
                                $("input[name='areaId']").val($("select[name='areaId_" + i + "']").val());
                            }
                        }
                    }
                }
                 /*****************************************************************/
                // 渲染商品分类
                var insXmSelGoodsCategoryId = xmSelect.render({
@@ -1817,6 +1948,18 @@
                        goods.stock = field['goods[stock]'];
                        goods.unit = field['goods[unit]'];
                        goods.weight = field['goods[weight]'];
                        goods.areaCode='';
                        if (isNumericString(field["areaId_1"])) {
                            goods.areaCode+=`${field["areaId_1"]}`;
                            if (isNumericString(field["areaId_2"]))
                            goods.areaCode+=`,${field["areaId_2"]}`;
                            if (isNumericString(field["areaId_3"]))
                            goods.areaCode+=`,${field["areaId_3"]}`;
                          } else {
                          }
                        goods.openSpec = parseInt(field.openSpec);
                        //多参数产品库生成列表集合
                        var products = [];
@@ -1848,7 +1991,12 @@
                            productModel.levelThree = field['product[levelThree][' + i + ']'];
                            productModel.pointsDeduction = field['product[pointsDeduction][' + i + ']'];
                            productModel.points = field['product[points][' + i + ']'];
                            //添加 百分兵法
                            productModel.distributionPrice = field['product[distributionPrice][' + i + ']'];
                            productModel.distributionCutMoney = field['product[distributionCutMoney][' + i + ']'];
                            productModel.cutMoney = field['product[cutMoney][' + i + ']'];
                            products.push(productModel);
                        }
                        //会员价格模型
                        var gradePrice = [];