xiaoyong931011
2021-09-23 eda28374083dbb6cf58c4d1fb6794e6d261c2a45
20210923
3 files added
11 files modified
520 ■■■■ changed files
src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java 2 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java 17 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java 21 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/dto/DeliverGoodsDto.java 16 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/mapper/MallExpressInfoMapper.java 1 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java 7 ●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/IAdminMallOrderService.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java 71 ●●●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/vo/AdminOrderDetailVo.java 67 ●●●●● patch | view | raw | blame | history
src/main/resources/mapper/modules/MallOrderInfoMapper.xml 9 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/order/deliverGoods.html 113 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/order/orderDetail.html 111 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/order/orderList.html 74 ●●●●● patch | view | raw | blame | history
src/main/resources/templates/febs/views/modules/product/categoryList.html 2 ●●● patch | view | raw | blame | history
src/main/java/cc/mrbird/febs/mall/controller/AdminMallGoodsCategoryController.java
@@ -5,9 +5,7 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.entity.MallGoodsCategory;
import cc.mrbird.febs.mall.entity.MallMember;
import cc.mrbird.febs.mall.service.IAdminMallGoodsCategoryService;
import cc.mrbird.febs.system.entity.Role;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
src/main/java/cc/mrbird/febs/mall/controller/AdminMallOrderController.java
@@ -1,20 +1,26 @@
package cc.mrbird.febs.mall.controller;
import cc.mrbird.febs.common.annotation.ControllerEndpoint;
import cc.mrbird.febs.common.controller.BaseController;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.dto.DeliverGoodsDto;
import cc.mrbird.febs.mall.dto.MallOrderInfoDto;
import cc.mrbird.febs.mall.entity.MallGoods;
import cc.mrbird.febs.mall.entity.MallGoodsCategory;
import cc.mrbird.febs.mall.entity.MallOrderInfo;
import cc.mrbird.febs.mall.entity.MallOrderItem;
import cc.mrbird.febs.mall.service.IAdminMallGoodsService;
import cc.mrbird.febs.mall.service.IAdminMallOrderService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
import java.util.Map;
@Slf4j
@@ -27,7 +33,7 @@
    private final IAdminMallOrderService adminMallOrderService;
    /**
     * 商品列表
     * 订单列表
     * @param mallOrderInfo
     * @param request
     * @return
@@ -38,6 +44,15 @@
        return new FebsResponse().success().data(data);
    }
    /**
     * 订单列表-发货
     */
    @PostMapping("deliverGoods")
    @ControllerEndpoint(operation = "订单列表-发货", exceptionMessage = "操作失败")
    public FebsResponse deliverGoods(@Valid DeliverGoodsDto deliverGoodsDto) {
        return adminMallOrderService.deliverGoods(deliverGoodsDto);
    }
src/main/java/cc/mrbird/febs/mall/controller/ViewMallOrderController.java
@@ -4,8 +4,10 @@
import cc.mrbird.febs.common.entity.FebsConstant;
import cc.mrbird.febs.common.utils.FebsUtil;
import cc.mrbird.febs.mall.service.IAdminMallOrderService;
import cc.mrbird.febs.mall.vo.AdminMailGoodsDetailVo;
import cc.mrbird.febs.mall.vo.AdminMallGoodsCategoryVo;
import cc.mrbird.febs.mall.vo.AdminMallOrderVo;
import cc.mrbird.febs.mall.vo.AdminOrderDetailVo;
import lombok.RequiredArgsConstructor;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.stereotype.Controller;
@@ -20,6 +22,8 @@
public class ViewMallOrderController extends BaseController {
    private final IAdminMallOrderService adminMallOrderService;
    public static long idFromMember;
    /**
     * 订单列表
@@ -41,8 +45,23 @@
    @RequiresPermissions("deliverGoods:update")
    public String deliverGoods(@PathVariable long id, Model model) {
        AdminMallOrderVo data = adminMallOrderService.getMallOrderInfoById(id);
        model.addAttribute("orderInfo", data);
        model.addAttribute("deliverInfo", data);
        return FebsUtil.view("modules/order/deliverGoods");
    }
    /**
     * 订单-详情
     * @param id
     * @param model
     * @return
     */
    @GetMapping("orderDetail/{id}")
    @RequiresPermissions("orderDetail:view")
    public String orderDetail(@PathVariable long id, Model model) {
        idFromMember = id;
        AdminOrderDetailVo data = adminMallOrderService.getMallOrderDetailById(id);
        model.addAttribute("orderDetail", data);
        return FebsUtil.view("modules/order/orderDetail");
    }
}
src/main/java/cc/mrbird/febs/mall/dto/DeliverGoodsDto.java
New file
@@ -0,0 +1,16 @@
package cc.mrbird.febs.mall.dto;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel(value = "DeliverGoodsDto", description = "接收参数类")
public class DeliverGoodsDto {
    private Long id;
    private String expressNo;
    private String expressCom;
}
src/main/java/cc/mrbird/febs/mall/mapper/MallExpressInfoMapper.java
@@ -7,4 +7,5 @@
public interface MallExpressInfoMapper extends BaseMapper<MallExpressInfo> {
    MallExpressInfo selectByOrderId(@Param("orderId") Long orderId);
}
src/main/java/cc/mrbird/febs/mall/mapper/MallOrderInfoMapper.java
@@ -3,12 +3,13 @@
import cc.mrbird.febs.mall.dto.MallOrderInfoDto;
import cc.mrbird.febs.mall.dto.OrderListDto;
import cc.mrbird.febs.mall.entity.MallOrderInfo;
import cc.mrbird.febs.mall.entity.MallOrderItem;
import cc.mrbird.febs.mall.vo.AdminMallOrderInfoVo;
import cc.mrbird.febs.mall.vo.AdminMallOrderVo;
import cc.mrbird.febs.mall.vo.AdminOrderDetailVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@@ -31,4 +32,8 @@
    MallOrderInfo selectOrderDetailsById(@Param("id") Long id);
    List<Map<String, Integer>> selectMemberOrderStatusCnt(@Param("memberId") Long memberId);
    AdminOrderDetailVo getMallOrderDetailById(@Param("id")long id);
    List<MallOrderItem> getMallOrderItemByOrderId(@Param("id")long id);
}
src/main/java/cc/mrbird/febs/mall/service/IAdminMallOrderService.java
@@ -1,10 +1,14 @@
package cc.mrbird.febs.mall.service;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.dto.DeliverGoodsDto;
import cc.mrbird.febs.mall.dto.MallOrderInfoDto;
import cc.mrbird.febs.mall.entity.MallOrderInfo;
import cc.mrbird.febs.mall.entity.MallOrderItem;
import cc.mrbird.febs.mall.vo.AdminMallOrderInfoVo;
import cc.mrbird.febs.mall.vo.AdminMallOrderVo;
import cc.mrbird.febs.mall.vo.AdminOrderDetailVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -13,4 +17,9 @@
    IPage<AdminMallOrderInfoVo> getOrderListInPage(MallOrderInfoDto mallOrderInfo, QueryRequest request);
    AdminMallOrderVo getMallOrderInfoById(long id);
    FebsResponse deliverGoods(DeliverGoodsDto deliverGoodsDto);
    AdminOrderDetailVo getMallOrderDetailById(long id);
}
src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallOrderService.java
@@ -1,12 +1,22 @@
package cc.mrbird.febs.mall.service.impl;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.dto.DeliverGoodsDto;
import cc.mrbird.febs.mall.dto.MallOrderInfoDto;
import cc.mrbird.febs.mall.entity.MallExpressInfo;
import cc.mrbird.febs.mall.entity.MallOrderInfo;
import cc.mrbird.febs.mall.entity.MallOrderItem;
import cc.mrbird.febs.mall.mapper.MallExpressInfoMapper;
import cc.mrbird.febs.mall.mapper.MallOrderInfoMapper;
import cc.mrbird.febs.mall.mapper.MallOrderItemMapper;
import cc.mrbird.febs.mall.service.IAdminMallOrderService;
import cc.mrbird.febs.mall.vo.AdminMallOrderInfoVo;
import cc.mrbird.febs.mall.vo.AdminMallOrderVo;
import cc.mrbird.febs.mall.vo.AdminOrderDetailVo;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -14,13 +24,19 @@
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
@Slf4j
@Service
@RequiredArgsConstructor
public class AdminMallOrderService extends ServiceImpl<MallOrderInfoMapper, MallOrderInfo> implements IAdminMallOrderService {
    private final MallOrderInfoMapper mallOrderInfoMapper;
    private final MallExpressInfoMapper mallExpressInfoMapper;
    private final MallOrderItemMapper mallOrderItemMapper;
    @Override
    public IPage<AdminMallOrderInfoVo> getOrderListInPage(MallOrderInfoDto mallOrderInfo, QueryRequest request) {
        Page<AdminMallOrderInfoVo> page = new Page<>(request.getPageNum(), request.getPageSize());
@@ -32,4 +48,57 @@
    public AdminMallOrderVo getMallOrderInfoById(long id) {
        return this.baseMapper.getMallOrderInfoById(id);
    }
    @Override
    public FebsResponse deliverGoods(DeliverGoodsDto deliverGoodsDto) {
        MallOrderInfo mallOrderInfo = mallOrderInfoMapper.selectById(deliverGoodsDto.getId());
        if(ObjectUtil.isEmpty(mallOrderInfo)){
            return new FebsResponse().fail().message("订单不存在,刷新后重试");
        }
        Integer status = mallOrderInfo.getStatus();
        if(2 != status){
            return new FebsResponse().fail().message("订单不是待发货状态");
        }
        String expressNo = deliverGoodsDto.getExpressNo();
        if(StrUtil.isEmpty(expressNo)){
            return new FebsResponse().fail().message("请输入物流单号");
        }
        String expressCom = deliverGoodsDto.getExpressCom();
        if(StrUtil.isEmpty(expressCom)){
            return new FebsResponse().fail().message("请输入物流公司");
        }
        MallExpressInfo mallExpressInfo = new MallExpressInfo();
        mallExpressInfo.setMemberId(mallExpressInfo.getMemberId());
        mallExpressInfo.setExpressNo(expressNo);
        mallExpressInfo.setExpressCom(expressCom);
        mallExpressInfoMapper.insert(mallExpressInfo);
        mallOrderInfo.setStatus(3);
        mallOrderInfoMapper.updateById(mallOrderInfo);
        return new FebsResponse().success();
    }
    @Override
    public AdminOrderDetailVo getMallOrderDetailById(long id) {
        AdminOrderDetailVo adminOrderDetailVo = mallOrderInfoMapper.getMallOrderDetailById(id);
        MallExpressInfo mallExpressInfo = mallExpressInfoMapper.selectByOrderId(id);
        if(ObjectUtil.isNotEmpty(mallExpressInfo)){
            adminOrderDetailVo.setExpressNo(mallExpressInfo.getExpressNo());
            adminOrderDetailVo.setExpressCom(mallExpressInfo.getExpressCom());
        }
        List<MallOrderItem> mallOrderItems = mallOrderInfoMapper.getMallOrderItemByOrderId(id);
        if(CollUtil.isNotEmpty(mallOrderItems)){
            StringBuffer orderItems = new StringBuffer();
            for (MallOrderItem item : mallOrderItems){
                StringBuffer orderItem = new StringBuffer();
                orderItems.append(item.getGoodsName()+"-"+item.getCnt()+"*"+item.getPrice()+"-合计"+item.getAmount()+"; \n ");
                orderItems.append(orderItem);
            }
            adminOrderDetailVo.setOrderItems(orderItems.toString());
        }
        return adminOrderDetailVo;
    }
}
src/main/java/cc/mrbird/febs/mall/vo/AdminOrderDetailVo.java
New file
@@ -0,0 +1,67 @@
package cc.mrbird.febs.mall.vo;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
@ApiModel(value = "AdminOrderDetailVo", description = "信息返回类")
public class AdminOrderDetailVo {
    private String orderNo;
    private Date orderTime;
    private Date payTime;
    private BigDecimal amount;
    private String payMethod;
    private String payOrderNo;
    private String payResult;
    /**
     * 状态 1-待支付2-待发货3-待收货4-已完成5-退款中6-已退款7-已取消
     */
    private Integer status;
    /**
     * 取消类型 1-超时未支付2-主动取消
     */
    private Integer cancelType;
    public static final Integer CANCEL_OVERTIME_NO_PAY = 1;
    public static final Integer CANCEL_BY_SELF = 2;
    private String name;
    private String phone;
    private String address;
    private String longitude;
    private String latitude;
    private String remark;
    /**
     * 是否删除 1-是 2-否
     */
    private Integer delFlag;
    /**
     * 确认收货时间
     */
    private Date receivingTime;
    private String expressNo;
    private String expressCom;
    private String orderItems;
}
src/main/resources/mapper/modules/MallOrderInfoMapper.xml
@@ -126,4 +126,13 @@
        where del_flag=2 and member_id=#{memberId}
        group by status
    </select>
    <select id="getMallOrderDetailById" resultType="cc.mrbird.febs.mall.vo.AdminOrderDetailVo">
        select * from mall_order_info a where a.id = #{id}
    </select>
    <select id="getMallOrderItemByOrderId" resultType="cc.mrbird.febs.mall.entity.MallOrderItem">
        select * from mall_order_item where order_id = #{id}
    </select>
</mapper>
src/main/resources/templates/febs/views/modules/order/deliverGoods.html
@@ -1,10 +1,105 @@
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<style>
    #deliver-update {
        padding: 20px 25px 25px 0;
    }
</body>
</html>
    #deliver-update .layui-treeSelect .ztree li a, .ztree li span {
        margin: 0 0 2px 3px !important;
    }
    #deliver-update #data-permission-tree-block {
        border: 1px solid #eee;
        border-radius: 2px;
        padding: 3px 0;
    }
    #deliver-update .layui-treeSelect .ztree li span.button.switch {
        top: 1px;
        left: 3px;
    }
</style>
<div class="layui-fluid" id="deliver-update">
    <form class="layui-form" action="" lay-filter="deliver-update-form">
       <div class="layui-form-item febs-hide">
            <label class="layui-form-label febs-form-item-require">id:</label>
            <div class="layui-input-block">
                <input type="text" name="id">
            </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="name"
                       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">
                <input type="text" name="phone"
                       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">
                <input type="text" name="address"
                       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">
                <input type="text" name="expressNo"
                       autocomplete="off" class="layui-input" >
            </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="expressCom"
                       autocomplete="off" class="layui-input" >
            </div>
        </div>
        <div class="layui-form-item febs-hide">
            <button class="layui-btn" lay-submit="" lay-filter="deliver-update-form-submit" id="submit"></button>
        </div>
    </form>
</div>
<script data-th-inline="javascript">
    layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree'], function () {
        var $ = layui.$,
            febs = layui.febs,
            layer = layui.layer,
            formSelects = layui.formSelects,
            treeSelect = layui.treeSelect,
            form = layui.form,
            eleTree = layui.eleTree,
            deliverInfo = [[${deliverInfo}]],
            $view = $('#deliver-update'),
            validate = layui.validate,
            _deptTree;
        form.render();
        initUserValue();
        function initUserValue() {
            form.val("deliver-update-form", {
                "id": deliverInfo.id,
                "name": deliverInfo.name,
                "phone": deliverInfo.phone,
                "address": deliverInfo.address
            });
        }
        form.on('submit(deliver-update-form-submit)', function (data) {
            febs.post(ctx + 'admin/order/deliverGoods', data.field, function () {
                layer.closeAll();
                febs.alert.success('操作成功');
                $('#febs-order').find('#reset').click();
            });
            return false;
        });
    });
</script>
src/main/resources/templates/febs/views/modules/order/orderDetail.html
New file
@@ -0,0 +1,111 @@
<style>
    #orderDetail-info {
        padding: 20px 25px 25px 0;
    }
    #orderDetail-info .layui-treeSelect .ztree li a, .ztree li span {
        margin: 0 0 2px 3px !important;
    }
    #orderDetail-info #data-permission-tree-block {
        border: 1px solid #eee;
        border-radius: 2px;
        padding: 3px 0;
    }
    #orderDetail-info .layui-treeSelect .ztree li span.button.switch {
        top: 1px;
        left: 3px;
    }
</style>
<div class="layui-fluid" id="orderDetail-info">
    <form class="layui-form" action="" lay-filter="orderDetail-info-form">
        <div class="layui-form-item febs-hide">
            <label class="layui-form-label febs-form-item-require">id:</label>
            <div class="layui-input-block">
                <input type="text" name="id">
            </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="name" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly>
                </div>
            </div>
            <div class="layui-col-lg6">
                <label class="layui-form-label">联系方式:</label>
                <div class="layui-input-block">
                    <input type="text" name="phone" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly>
                </div>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">地址:</label>
            <div class="layui-input-block">
                <input type="text" name="address"
                       autocomplete="off" class="layui-input" readonly>
            </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="amount" lay-verify="required" placeholder="" autocomplete="off" class="layui-input" readonly>
                </div>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">订单明细:</label>
            <div class="layui-input-block">
                <textarea id="lay_edit" lay-verify="orderItems" name = "orderItems" class="layui-textarea" readonly></textarea>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">物流单号:</label>
            <div class="layui-input-block">
                <input type="text" name="expressNo"
                       autocomplete="off" class="layui-input"  readonly>
            </div>
        </div>
        <div class="layui-form-item">
            <label class="layui-form-label">物流公司:</label>
            <div class="layui-input-block">
                <input type="text" name="expressCom"
                       autocomplete="off" class="layui-input" readonly >
            </div>
        </div>
    </form>
</div>
<script data-th-inline="javascript">
    layui.use(['febs', 'form', 'formSelects', 'validate', 'treeSelect', 'eleTree'], function () {
        var $ = layui.$,
            febs = layui.febs,
            layer = layui.layer,
            formSelects = layui.formSelects,
            treeSelect = layui.treeSelect,
            form = layui.form,
            eleTree = layui.eleTree,
            orderDetail = [[${orderDetail}]],
            $view = $('#orderDetail-info'),
            validate = layui.validate,
            _deptTree;
        form.render();
        initUserValue();
        function initUserValue() {
            form.val("orderDetail-info-form", {
                "id": orderDetail.id,
                "name": orderDetail.name,
                "phone": orderDetail.phone,
                "amount": orderDetail.amount,
                "orderItems": orderDetail.orderItems,
                "address": orderDetail.address
            });
        }
    });
</script>
src/main/resources/templates/febs/views/modules/order/orderList.html
@@ -92,51 +92,23 @@
        table.on('tool(orderTable)', function (obj) {
            var data = obj.data,
                layEvent = obj.event;
            if (layEvent === 'downGoods') {
                febs.modal.confirm('下架', '确认下架该商品?', function () {
                    downGoods(data.id);
                });
            }
            if (layEvent === 'upGoods') {
                febs.modal.confirm('上架', '确认上架该商品?', function () {
                    upGoods(data.id);
                });
            }
            if (layEvent === 'delGoods') {
                febs.modal.confirm('删除', '确认删除该商品?', function () {
                    delGoods(data.id);
                });
            }
            if (layEvent === 'deliverGoods') {
                febs.modal.open('发货', 'modules/order/deliverGoods/' + data.id, {
                    btn: ['确认', '取消'],
                    yes: function (index, layero) {
                        $('#user-update').find('#submit').trigger('click');
                        $('#deliver-update').find('#submit').trigger('click');
                    },
                    btn2: function () {
                        layer.closeAll();
                    }
                });
            }
        });
        function downGoods(id) {
            febs.get(ctx + 'admin/goods/downMallGoods/' + id, null, function () {
                febs.alert.success('下架成功');
                $query.click();
            if (layEvent === 'seeOrder') {
                febs.modal.open( '订单详情', 'modules/order/orderDetail/' + data.id, {
                    maxmin: true,
            });
        }
        function delGoods(id) {
            febs.get(ctx + 'admin/goods/delMallGoods/' + id, null, function () {
                febs.alert.success('删除成功');
                $query.click();
            });
        }
        function upGoods(id) {
            febs.get(ctx + 'admin/goods/upMallGoods/' + id, null, function () {
                febs.alert.success('上架成功');
                $query.click();
            });
        }
        // 查询按钮
        $query.on('click', function () {
@@ -162,16 +134,26 @@
                url: ctx + 'admin/order/orderList',
                cols: [[
                    {field: 'orderNo', title: '商品名称', minWidth: 150,align:'left'},
                    //     {field: 'accountType', title: '账号类型',
                    //         templet: function (d) {
                    //             if (d.accountType === 2) {
                    //                 return '<span style="color:red;">测试账号</span>'
                    //             } else if (d.accountType === 1) {
                    //                 return '<span style="color:green;">正常账号</span>'
                    //             }else{
                    //                 return ''
                    //             }
                    //         }, minWidth: 80,align:'center'},
                        {field: 'status', title: '状态',
                            templet: function (d) {
                                if (d.status === 1) {
                                    return '<span style="color:red;">待支付</span>'
                                } else if (d.status === 2) {
                                    return '<span style="color:green;">待发货</span>'
                                }else if (d.status === 3) {
                                    return '<span style="color:green;">待收货</span>'
                                }else if (d.status === 4) {
                                    return '<span style="color:green;">已完成</span>'
                                }else if (d.status === 5) {
                                    return '<span style="color:green;">退款中</span>'
                                }else if (d.status === 6) {
                                    return '<span style="color:green;">已退款</span>'
                                }else if (d.status === 7) {
                                    return '<span style="color:green;">已取消</span>'
                                }else{
                                    return ''
                                }
                            }, minWidth: 80,align:'center'},
                    //     {field: 'accountStatus', title: '账号状态',
                    //         templet: function (d) {
                    //             if (d.accountStatus === 1) {
@@ -187,13 +169,9 @@
                        templet: function (d) {
                            if (d.status === 2) {
                                return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="deliverGoods" shiro:hasPermission="user:update">发货</button>'
                             }else{
                                 return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="seeOrder" shiro:hasPermission="user:update">详情</button>'
                            }
                            // else{
                            //     return '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="upGoods" shiro:hasPermission="user:update">上架</button>'
                            //         + '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="delGoods" shiro:hasPermission="user:update">删除</button>'
                            //         + '<button class="layui-btn layui-btn-normal layui-btn-xs" lay-event="updateGoods" shiro:hasPermission="user:update">编辑</button>'
                            //
                            // }
                        },minWidth: 300,align:'center'}
                ]]
            });
src/main/resources/templates/febs/views/modules/product/categoryList.html
@@ -81,7 +81,7 @@
                febs.modal.open('编辑', 'modules/product/categoryUpdate/' + data.id, {
                    btn: ['提交', '取消'],
                    yes: function (index, layero) {
                        $('#user-update').find('#submit').trigger('click');
                        $('#user-add').find('#submit').trigger('click');
                    },
                    btn2: function () {
                        layer.closeAll();