• shop--9.商品--商品管理--修改(前端)


    商品管理的页面和商品分类管理的页面很类似

    shop--8.商品类别--初始化展示

    shop--8.商品类别--批量操作--添加(前端)

    要有一个转发路由

    //进行店铺管理显示的转发
        @RequestMapping("/productmanagement")
        public String productmanagement(){
            //返回显示店铺注册的页面
            return "shop/productmanagement";
        }
    

      

    productmanagement.html

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <title>商店管理</title>
        <meta name="viewport" content="initial-scale=1, maximum-scale=1">
        <link rel="shortcut icon" href="/favicon.ico">
        <meta name="apple-mobile-web-app-capable" content="yes">
        <meta name="apple-mobile-web-app-status-bar-style" content="black">
        <link rel="stylesheet" href="//g.alicdn.com/msui/sm/0.6.2/css/sm.min.css">
        <link rel="stylesheet" href="//g.alicdn.com/msui/sm/0.6.2/css/sm-extend.min.css">
        <link rel="stylesheet" href="../resources/css/shop/productmanagement.css">
    </head>
    <body>
    <header class="bar bar-nav">
        <h1 class="title">商品管理</h1>
    </header>
    <div class="content">
        <div class="content-block">
            <div class="row row-product">
                <div class="col-33">商品名称</div>
                <div class="col-20">优先级</div>
                <div class="col-40">操作</div>
            </div>
    
            <div class="product-wrap">
                <!--<div class="row row-product">
                    <div class="col-33">item.productName</div>
                    <div class="col-20">item.priority</div>
                    <div class="col-40">
                        <a href="#" class="edit" data-id="item.productId" data-status="item.status">编辑</a>
                        <a href="#" class="status" data-id="item.productId" data-status="contraryStatus">testOp</a>
                        <a href="#" class="preview" data-id="item.productId" data-status="item.status">预览</a>
                    </div>-->
                </div>
    
            </div>
    
    
        </div>
        <div class="content-block">
            <div class="row">
                <div class="col-50">
                    <a href="/shopadmin/shopmanagement"
                    class="button button-big button-fill button-success" id="submit">返回</a>
                </div>
                <div class="col-50">
                    <a href="/shopadmin/productoperation"
                       class="button button-big button-fill button-danger" id="new">新增</a>
                </div>
            </div>
        </div>
    </div>
    
    
    
    <script type='text/javascript' src='//g.alicdn.com/sj/lib/zepto/zepto.min.js' charset='utf-8'></script>
    <script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/sm.min.js' charset='utf-8'></script>
    <script type='text/javascript' src='//g.alicdn.com/msui/sm/0.6.2/js/sm-extend.min.js' charset='utf-8'></script>
    <script type='text/javascript' src='../resources/js/shop/productmanagement.js' charset="utf-8"></script>
    </body>
    </html>
    

      

    productmanegement.css

    .row-product {
        border: 1px solid #999;
        padding: .5rem;
        border-bottom: none;
    }
    .row-product* {
        white-space: nowrap;
        overflow: scroll;
    }
    .row-product:last-child {
        border-bottom: 1px solid #999;
    }
    .product-name {
        white-space: nowrap;
        overflow-x: scroll;
    }
    .product-wrap a {
        margin-right: 1rem;
    }
    

      

    productmanagement.js

    $(function(){
        //获取店铺下的商品列表
        var listUrl = '/shopadmin/getproductlistbyshop?pageIndex=1&&pageSize=100';
        //商品下架
        var statusUrl = '/shopadmin/modifyproduct';
        getProductList();
    
        //获取店铺下的商品列表
        function getProductList() {
            $.getJSON(listUrl, function (data) {
                if (data.success) {
                    var productList = data.productList;
                    var tempHtml='';
                    //遍历每一条商品信息,拼接成一行显示
                    //每一列包括:商品名称、优先级、下架(包含productId)、编辑(包含productId)、预览(包含productId)
                    productList.map(function(item, index){
                        //先将每个商品的状态标识符标为下架,如果实际为下架情况,则改为上架,这样就可以在页面中改为相应的状态
                        var textOp = '下架';
                        //与当前状态相反
                        var contraryStatus = 0;
                        //若状态为0,表示实际商品为下架状态,可以在页面中操作为上架状态
                        if(item.status == 0){
                            var textOp = '上架';
                            var contraryStatus = 1;
                        } else{
                            var contraryStatus = 0;
                        }
                        //拼接每件商品的行信息
                        tempHtml += ''
                            + '<div class="row row-product">'
                            + '<div class="col-33">'
                            + item.productName
                            + '</div>'
                            + '<div class="col-20">'
                            + item.priority
                            + '</div>'
                            + '<div class="col-40">'
                            + '<a href="#" class="edit" data-id="'
                            + item.productId
                            + '" data-status="'
                            + item.status
                            + '">编辑</a>'
                            + '<a href="#" class="status" data-id="'
                            + item.productId
                            + '" data-status="'
                            + contraryStatus
                            + '">'
                            + textOp
                            + '</a>'
                            + '<a href="#" class="preview" data-id="'
                            + item.productId
                            + '" data-status="'
                            + item.status
                            + '">预览</a>'
                            + '</div>'
                            + '</div>';
                    });
                    //将拼接好的信息赋值到html中
                    $('.product-wrap').html(tempHtml);
                }
            });
        }
        //将class为product-wrap里面a标签的href绑定点击事件
        $('.product-wrap').on('click', 'a', function(e){
            var target = $(e.currentTarget);
            if(target.hasClass('edit')){
                //如果有class edit事件,就进入商品编辑页面,并加上productId
                window.location.href = '/shopadmin/productoperation?productId=' + e.currentTarget.dataset.id;
            } else if(target.hasClass('status')){
                //如果有class status事件,则调用后台上架/下架相关商品,带上productId
                changeItemStatus(e.currentTarget.dataset.id, e.currentTarget.dataset.status);
            } else if(target.hasClass('preview')){
                //如果有class preview,则去前台展示系统,将该商品的详情展示在前台
                window.location.href = '#' + e.currentTarget.dataset.id;
            }
        });
        function changeItemStatus(id, status){
            //定义product的json对象,并添加productId和status
            var product={};
            product.productId=id;
            product.status=status;
            $.confirm('确定吗?', function(){
                //上/下架相关商品
                $.ajax({
                    url:statusUrl,
                    type:'POST',
                    data:{
                        productStr : JSON.stringify(product),
                        statusChange : true
                    },
                    dataType:'json',
                    success:function(data){
                        if(data.success){
                            $.toast('操作成功!');
                            getProductList();
                        } else{
                            $.toast('提交失败!' + data.errMsg);
                        }
                    }
                });
            })
        }
    });
    

      

  • 相关阅读:
    Codeforces Round #311 (Div. 2)
    hdu5441 并查集+克鲁斯卡尔算法
    hdu5439 二分
    hdu5422 最大表示法+KMP
    hdu3374 最大最小表示法 +kmp
    hdu2609最小表示法
    hdu4870 高斯消元
    关于并发编程是使用synchronized,lock?
    关于项目中遇到的问题-- trycatch 手动回滚事务
    关于项目中遇到的问题-- 请求接收的参数发生改变情况
  • 原文地址:https://www.cnblogs.com/SkyeAngel/p/9008944.html
Copyright © 2020-2023  润新知