From feeb9cdfcf7628a9b7e8e01b995ceed70ac333ca Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Thu, 05 May 2022 17:45:37 +0800
Subject: [PATCH] fix goods-add
---
src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html | 340 +++++++++++++++++++++++++++++++++-----------------------
1 files changed, 201 insertions(+), 139 deletions(-)
diff --git a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
index 8435667..5d2d761 100644
--- a/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
+++ b/src/main/resources/templates/febs/views/modules/goods/goodsAddNew.html
@@ -5,119 +5,168 @@
<div class="layui-card-body febs-table-full">
<div class="layui-fluid" id="goods-add">
<form class="layui-form" action="" lay-filter="goods-add-form">
- <div class="layui-row layui-col-space10 layui-form-item">
- <div class="layui-col-lg6">
- <label class="layui-form-label febs-form-item-require">商品名称:</label>
- <div class="layui-input-block">
- <input type="text" name="goodsName" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
+ <ul class="layui-tab-title">
+ <li class="layui-this">基础信息</li>
+ <li>详情设置</li>
+ <li>价格设置</li>
+ </ul>
+ <div class="layui-tab-content">
+ <div class="layui-tab-item layui-show">
+ <blockquote class="layui-elem-quote blue-border">基本信息设置</blockquote>
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">商品名称:</label>
+ <div class="layui-input-block">
+ <input type="text" name="goodsName" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">商品编号:</label>
+ <div class="layui-input-block">
+ <input type="text" name="goodsNo" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">商品分类:</label>
+ <div class="layui-input-block">
+ <select name="categoryId" class="categary-addPeoduct" >
+ <option value="">请选择</option>
+ </select>
+ </div>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">单位:</label>
+ <div class="layui-input-block">
+ <input type="text" name="unit" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">库存:</label>
+ <div class="layui-input-block">
+ <input type="text" name="store" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label">商品介绍:</label>
+ <div class="layui-input-block">
+ <label>
+ <textarea name="goodsIntrodution" rows="5" autocomplete="off" class="layui-textarea" ></textarea>
+ </label>
+ </div>
+ </div>
+
+ <blockquote class="layui-elem-quote blue-border">商品类型</blockquote>
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">商品类型</label>
+ <div class="layui-input-block">
+ <select name="goodsType" class="goods-type" >
+ <option value="1">普通商品区</option>
+ <option value="2">套餐区</option>
+ </select>
+ </div>
+ </div>
</div>
- </div>
- <div class="layui-col-lg6">
- <label class="layui-form-label febs-form-item-require">商品编号:</label>
- <div class="layui-input-block">
- <input type="text" name="goodsNo" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ <div class="layui-tab-item">
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">缩略图:</label>
+ <div class="layui-input-block">
+ <div class="layui-upload">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn" id="test2">上传</button>
+ <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
+ <div class="layui-upload-list" id="demo2"></div>
+ </blockquote>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item febs-hide">
+ <label class="layui-form-label">缩略图链接:</label>
+ <div class="layui-input-block">
+ <input type="text" id="thumb" lay-verify="required" name="thumb" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">轮播图:</label>
+ <div class="layui-input-block">
+ <div class="layui-upload">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn" id="thumbsBanner">上传</button>
+ <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
+ <div class="layui-upload-list" id="thumbsBanners"></div>
+ </blockquote>
+ </div>
+ </div>
+ </div>
+ <div class="layui-form-item febs-hide">
+ <label class="layui-form-label">缩略图链接:</label>
+ <div class="layui-input-block">
+ <input type="text" id="thumbs" lay-verify="required" name="thumbs" autocomplete="off" class="layui-input" readonly>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">商品详情:</label>
+ <div class="layui-input-block">
+ <textarea id="lay_edit" lay-verify="goodsDetails" name = "goodsDetails" class="layui-textarea"></textarea>
+ </div>
+ </div>
</div>
- </div>
- </div>
- <div class="layui-row layui-col-space10 layui-form-item">
- <div class="layui-col-lg6">
- <label class="layui-form-label febs-form-item-require">所属分类:</label>
- <div class="layui-input-block">
- <select name="parentId" class="categary-update-category" >
- <option value="">请选择</option>
- </select>
+ <div class="layui-tab-item">
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">原价:</label>
+ <div class="layui-input-block">
+ <input type="text" name="originalPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">现价:</label>
+ <div class="layui-input-block">
+ <input type="text" name="presentPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label febs-form-item-require">成本价:</label>
+ <div class="layui-input-block">
+ <input type="text" name="costPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label febs-form-item-require">样式:</label>
+ <div class="layui-input-block">
+ <input type="text" name="addMallGoodsSkuDtos" autocomplete="off" class="layui-input" id="attrName">
+ </div>
+ </div>
+ <div class="layui-col-lg6">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn" id="test3" >添加</button>
+ </div>
+ </div>
+ <div id="attrWrap"></div>
+
+ <div class="layui-row layui-col-space10 layui-form-item">
+ <div class="layui-col-lg6">
+ <label class="layui-form-label">是否热卖:</label>
+ <div class="layui-input-block">
+ <input type="radio" name="isHot" value="1" title="是" >
+ <input type="radio" name="isHot" value="2" title="否" checked="">
+ </div>
+ </div>
+ </div>
</div>
- </div>
- <div class="layui-col-lg6">
- <label class="layui-form-label febs-form-item-require">单位:</label>
- <div class="layui-input-block">
- <input type="text" name="unit" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
- </div>
- </div>
- </div>
- <div class="layui-row layui-col-space10 layui-form-item">
- <div class="layui-col-lg6">
- <label class="layui-form-label febs-form-item-require">原价:</label>
- <div class="layui-input-block">
- <input type="text" name="originalPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
- </div>
- </div>
- <div class="layui-col-lg6">
- <label class="layui-form-label febs-form-item-require">现价:</label>
- <div class="layui-input-block">
- <input type="text" name="presentPrice" lay-verify="required" placeholder="" autocomplete="off" class="layui-input">
- </div>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label">商品介绍:</label>
- <div class="layui-input-block">
- <input type="text" name="goodsIntrodution" autocomplete="off" class="layui-input" >
- </div>
- </div>
- <div class="layui-row layui-col-space10 layui-form-item">
- <div class="layui-col-lg6">
- <label class="layui-form-label">规格:</label>
- <div class="layui-input-block">
- <input type="text" name="addMallGoodsSkuDtos" autocomplete="off" class="layui-input" id="attrName">
- </div>
- </div>
- <div class="layui-col-lg6">
- <button type="button" class="layui-btn layui-btn-normal layui-btn-xs" id="test3" >添加</button>
- </div>
- </div>
- <div id="attrWrap"></div>
- <div class="layui-form-item">
- <label class="layui-form-label febs-form-item-require">缩略图:</label>
- <div class="layui-input-block">
- <div class="layui-upload">
- <button type="button" class="layui-btn layui-btn-normal layui-btn-xs" id="test2">上传</button>
- <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
- <div class="layui-upload-list" id="demo2"></div>
- </blockquote>
- </div>
- </div>
- </div>
- <div class="layui-form-item febs-hide">
- <label class="layui-form-label">缩略图链接:</label>
- <div class="layui-input-block">
- <input type="text" id="thumb" lay-verify="required" name="thumb" autocomplete="off" class="layui-input" readonly>
</div>
</div>
- <div class="layui-form-item">
- <label class="layui-form-label febs-form-item-require">轮播图:</label>
- <div class="layui-input-block">
- <div class="layui-upload">
- <button type="button" class="layui-btn layui-btn-normal layui-btn-xs" id="thumbsBanner">上传</button>
- <blockquote class="layui-elem-quote layui-quote-nm" style="margin-top: 10px;">
- <div class="layui-upload-list" id="thumbsBanners"></div>
- </blockquote>
- </div>
- </div>
- </div>
- <div class="layui-form-item febs-hide">
- <label class="layui-form-label">缩略图链接:</label>
- <div class="layui-input-block">
- <input type="text" id="thumbs" lay-verify="required" name="thumbs" autocomplete="off" class="layui-input" readonly>
- </div>
- </div>
- <div class="layui-form-item">
- <label class="layui-form-label febs-form-item-require">商品详情:</label>
- <div class="layui-input-block">
- <textarea id="lay_edit" lay-verify="required" name = "goodsDetails" class="layui-textarea"></textarea>
- </div>
- </div>
- <div class="layui-row layui-col-space10 layui-form-item">
- <div class="layui-col-lg6">
- <label class="layui-form-label">是否热卖:</label>
- <div class="layui-input-block">
- <input type="radio" name="isHot" value="1" title="是" >
- <input type="radio" name="isHot" value="2" title="否" checked="">
- </div>
- </div>
- </div>
<div class="layui-form-item" style="text-align:center">
<button class="layui-btn" lay-submit="" lay-filter="goods-add-form-submit" id="submit">保存</button>
<button class="layui-btn" lay-submit="" lay-filter="goods-add-form-cancel" id="cancel">取消</button>
@@ -130,9 +179,15 @@
</div>
</div>
</div>
+<style>
+ .blue-border {
+ border-left-color: #2db7f5;
+ font-size: 18px;
+ }
+</style>
<!-- 表格操作栏 end -->
<script data-th-inline="javascript">
- layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','dropdown', 'laydate','layedit','upload'], function () {
+ layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree','dropdown', 'laydate','layedit','upload', 'element'], function () {
var $ = layui.jquery,
febs = layui.febs,
layer = layui.layer,
@@ -145,7 +200,8 @@
$view = $('#goods-add'),
layedit = layui.layedit,
upload = layui.upload,
- validate = layui.validate;
+ validate = layui.validate,
+ element = layui.element;
form.render();
laydate.render({
@@ -156,10 +212,10 @@
//(下拉框)
- $.get(ctx + 'admin/goodsCategory/categorys/tree', function (data) {
+ $.get(ctx + 'admin/goodsCategory/categorys/allTree', function (data) {
for (var k in data)
{
- $(".categary-update-category").append("<option value='" + data[k].parentId + "'>" + data[k].name + "</option>");
+ $(".categary-addPeoduct").append("<option value='" + data[k].parentId + "'>" + data[k].name + "</option>");
}
layui.use('form', function () {
var form = layui.form;
@@ -190,7 +246,7 @@
}
});
- //多图片上传
+ //图片上传
upload.render({
elem: '#test2'
,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
@@ -232,43 +288,53 @@
$('#test3').on('click', function (){
var index = $("#attrWrap").children().length;
+ let attrNameVal = $('#attrName').val();
+ if(attrNameVal==null || attrNameVal==""){
+ febs.alert.warn('样式名称不能为空');
+ return false;
+ }
$('#attrWrap').append(`
<div class="layui-form-item item">
<div style="float:left" >
- <input type="text" name="skuName` + index + `" autocomplete="off" class="layui-input" value="` + $('#attrName').val() + `" readonly >
+ <input type="text" name="styleName` + index + `" value="` + $('#attrName').val() + `" autocomplete="off" class="layui-input" readonly >
+ </div>
+ <div style="float:left" >
+ <div>
+ <input type="text" name="skuName` + index +`" placeholder="规格名称" autocomplete="off" class="layui-input" >
+ </div>
</div>
<div style="float:left" >
<label class="layui-form-label">图片:</label>
<div class="layui-input-block">
<div class="layui-upload">
- <button type="button" class="layui-btn layui-btn-normal layui-btn-xs sku-img" id="` + index + `">上传</button>
- <input type="text" id="skuImage` + index +`" name="skuImage` + index + `" autocomplete="off"
- class="layui-input">
+ <button type="button" class="layui-btn layui-btn-normal layui-btn-xs sku-img" id="skuImg` + index + `">上传</button>
+ <img class="layui-upload-img" id="imageUrls` + index + `" style="width: 100px" >
</div>
</div>
</div>
- <div style="float:left" >
- <label class="layui-form-label">库存:</label>
- <div class="layui-input-block">
- <input type="text" name="stock` + index +`" autocomplete="off" class="layui-input" >
+ <div style="float:left" class="febs-hide">
+ <div>
+ <input type="text" id="skuImage` + index +`" name="skuImage` + index + `" autocomplete="off" class="layui-input">
</div>
</div>
<div style="float:left" >
- <label class="layui-form-label">销售数量:</label>
- <div class="layui-input-block">
- <input type="text" name="skuVolume` + index +`" autocomplete="off" class="layui-input" >
+ <div>
+ <input type="number" name="stock` + index +`" placeholder="库存" autocomplete="off" class="layui-input" >
</div>
</div>
<div style="float:left" >
- <label class="layui-form-label">原价:</label>
- <div class="layui-input-block">
- <input type="text" name="originalPrice` + index +`" autocomplete="off" class="layui-input" >
+ <div>
+ <input type="number" name="skuVolume` + index +`" placeholder="销售数量" autocomplete="off" class="layui-input" >
</div>
</div>
<div style="float:left" >
- <label class="layui-form-label">现价:</label>
- <div class="layui-input-block">
- <input type="text" name="presentPrice` + index + `" autocomplete="off" class="layui-input" >
+ <div>
+ <input type="number" name="originalPrice` + index +`" placeholder="原价" autocomplete="off" class="layui-input" >
+ </div>
+ </div>
+ <div style="float:left" >
+ <div>
+ <input type="number" name="presentPrice` + index + `" placeholder="现价" autocomplete="off" class="layui-input" >
</div>
</div>
<div style="float:left" >
@@ -278,30 +344,25 @@
`)
//普通图片上传
upload.render({
- elem: '.sku-img'
+ elem: '#skuImg' + index
,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
,done: function(res){
febs.alert.success(res.data.src);
- var cid = this.item.attr('id');
- $('#skuImgPreview' + cid).attr('src', res.data.src);
- $('#skuImage'+cid).val(res.data.src);
+ $('#imageUrls' + index).attr('src', res.data.src);
+ $('#skuImage'+ index).val(res.data.src);
}
});
});
upload.render({
- elem: '.sku-img'
+ elem: '#skuImg'+index
,url: ctx + 'admin/goods/uploadFileBase64' //改成您自己的上传接口
,done: function(res){
febs.alert.success(res.data.src);
- var cid = this.item.attr('id');
- $('#skuImgPreview' + cid).attr('src', res.data.src);
- $('#skuImage'+cid).val(res.data.src);
+ $('#imageUrls' + index).attr('src', res.data.src);
+ $('#skuImage'+ index).val(res.data.src);
}
});
$("#attrWrap").on("click",".del-attr-btn",function(){
- // console.log(this)
- // console.log($(this).index())
- // console.log($(this).attr('data-index'))
var index = $(this).attr('data-index')
$($("#attrWrap").find(".item")[index].remove());
});
@@ -310,6 +371,7 @@
var skuArr = $("#attrWrap").find(".item");
for(var i = 0;i < skuArr.length;i++){
skuArrs.push({
+ styleName: $("input[name='styleName" + i + "']").val(),
skuName: $("input[name='skuName" + i + "']").val(),
skuImage: $("input[name='skuImage" + i + "']").val(),
stock: $("input[name='stock" + i + "']").val(),
--
Gitblit v1.9.1