promotion:完善优惠劵模板的单元测试、禁用功能
parent
e3a700b2d2
commit
8ae8a4a652
|
@ -2,10 +2,7 @@ package cn.iocoder.yudao.module.promotion.controller.admin.coupon;
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateCreateReqVO;
|
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.*;
|
||||||
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplatePageReqVO;
|
|
||||||
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateRespVO;
|
|
||||||
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateUpdateReqVO;
|
|
||||||
import cn.iocoder.yudao.module.promotion.convert.coupon.CouponTemplateConvert;
|
import cn.iocoder.yudao.module.promotion.convert.coupon.CouponTemplateConvert;
|
||||||
import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
|
import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
|
||||||
import cn.iocoder.yudao.module.promotion.service.coupon.CouponTemplateService;
|
import cn.iocoder.yudao.module.promotion.service.coupon.CouponTemplateService;
|
||||||
|
@ -45,6 +42,14 @@ public class CouponTemplateController {
|
||||||
return success(true);
|
return success(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update-status")
|
||||||
|
@ApiOperation("更新优惠劵模板状态")
|
||||||
|
@PreAuthorize("@ss.hasPermission('promotion:coupon-template:update')")
|
||||||
|
public CommonResult<Boolean> updateCouponTemplateStatus(@Valid @RequestBody CouponTemplateUpdateStatusReqVO reqVO) {
|
||||||
|
couponTemplateService.updateCouponTemplateStatus(reqVO.getId(), reqVO.getStatus());
|
||||||
|
return success(true);
|
||||||
|
}
|
||||||
|
|
||||||
@DeleteMapping("/delete")
|
@DeleteMapping("/delete")
|
||||||
@ApiOperation("删除优惠劵模板")
|
@ApiOperation("删除优惠劵模板")
|
||||||
@ApiImplicitParam(name = "id", value = "编号", required = true, dataTypeClass = Long.class)
|
@ApiImplicitParam(name = "id", value = "编号", required = true, dataTypeClass = Long.class)
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
package cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||||
|
import cn.iocoder.yudao.framework.common.validation.InEnum;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
@ApiModel("管理后台 - 优惠劵模板更新状态 Request VO")
|
||||||
|
@Data
|
||||||
|
public class CouponTemplateUpdateStatusReqVO {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "优惠劵模板编号", required = true, example = "1024")
|
||||||
|
@NotNull(message = "优惠劵模板编号不能为空")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "见 CommonStatusEnum 枚举")
|
||||||
|
@NotNull(message = "状态不能为空")
|
||||||
|
@InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
}
|
|
@ -30,6 +30,14 @@ public interface CouponTemplateService {
|
||||||
*/
|
*/
|
||||||
void updateCouponTemplate(@Valid CouponTemplateUpdateReqVO updateReqVO);
|
void updateCouponTemplate(@Valid CouponTemplateUpdateReqVO updateReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新优惠劵模板的状态
|
||||||
|
*
|
||||||
|
* @param id 编号
|
||||||
|
* @param status 状态
|
||||||
|
*/
|
||||||
|
void updateCouponTemplateStatus(Long id, Integer status);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 删除优惠劵模板
|
* 删除优惠劵模板
|
||||||
*
|
*
|
||||||
|
|
|
@ -52,6 +52,14 @@ public class CouponTemplateServiceImpl implements CouponTemplateService {
|
||||||
couponTemplateMapper.updateById(updateObj);
|
couponTemplateMapper.updateById(updateObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateCouponTemplateStatus(Long id, Integer status) {
|
||||||
|
// 校验存在
|
||||||
|
validateCouponTemplateExists(id);
|
||||||
|
// 更新
|
||||||
|
couponTemplateMapper.updateById(new CouponTemplateDO().setId(id).setStatus(status));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void deleteCouponTemplate(Long id) {
|
public void deleteCouponTemplate(Long id) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
package cn.iocoder.yudao.module.promotion.service.coupon;
|
package cn.iocoder.yudao.module.promotion.service.coupon;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||||
import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
|
import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
|
||||||
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateCreateReqVO;
|
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateCreateReqVO;
|
||||||
|
@ -7,13 +8,17 @@ import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTempla
|
||||||
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateUpdateReqVO;
|
import cn.iocoder.yudao.module.promotion.controller.admin.coupon.vo.CouponTemplateUpdateReqVO;
|
||||||
import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
|
import cn.iocoder.yudao.module.promotion.dal.dataobject.coupon.CouponTemplateDO;
|
||||||
import cn.iocoder.yudao.module.promotion.dal.mysql.coupon.CouponTemplateMapper;
|
import cn.iocoder.yudao.module.promotion.dal.mysql.coupon.CouponTemplateMapper;
|
||||||
import org.junit.jupiter.api.Disabled;
|
import cn.iocoder.yudao.module.promotion.enums.common.PromotionDiscountTypeEnum;
|
||||||
|
import cn.iocoder.yudao.module.promotion.enums.common.PromotionProductScopeEnum;
|
||||||
|
import cn.iocoder.yudao.module.promotion.enums.coupon.CouponTemplateValidityTypeEnum;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.springframework.context.annotation.Import;
|
import org.springframework.context.annotation.Import;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
|
import static cn.hutool.core.util.RandomUtil.randomEle;
|
||||||
|
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.buildTime;
|
||||||
import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.cloneIgnoreId;
|
import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.cloneIgnoreId;
|
||||||
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEquals;
|
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEquals;
|
||||||
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException;
|
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException;
|
||||||
|
@ -39,7 +44,10 @@ public class CouponTemplateServiceImplTest extends BaseDbUnitTest {
|
||||||
@Test
|
@Test
|
||||||
public void testCreateCouponTemplate_success() {
|
public void testCreateCouponTemplate_success() {
|
||||||
// 准备参数
|
// 准备参数
|
||||||
CouponTemplateCreateReqVO reqVO = randomPojo(CouponTemplateCreateReqVO.class);
|
CouponTemplateCreateReqVO reqVO = randomPojo(CouponTemplateCreateReqVO.class,
|
||||||
|
o -> o.setProductScope(randomEle(PromotionProductScopeEnum.values()).getScope())
|
||||||
|
.setValidityType(randomEle(CouponTemplateValidityTypeEnum.values()).getType())
|
||||||
|
.setDiscountType(randomEle(PromotionDiscountTypeEnum.values()).getType()));
|
||||||
|
|
||||||
// 调用
|
// 调用
|
||||||
Long couponTemplateId = couponTemplateService.createCouponTemplate(reqVO);
|
Long couponTemplateId = couponTemplateService.createCouponTemplate(reqVO);
|
||||||
|
@ -58,6 +66,10 @@ public class CouponTemplateServiceImplTest extends BaseDbUnitTest {
|
||||||
// 准备参数
|
// 准备参数
|
||||||
CouponTemplateUpdateReqVO reqVO = randomPojo(CouponTemplateUpdateReqVO.class, o -> {
|
CouponTemplateUpdateReqVO reqVO = randomPojo(CouponTemplateUpdateReqVO.class, o -> {
|
||||||
o.setId(dbCouponTemplate.getId()); // 设置更新的 ID
|
o.setId(dbCouponTemplate.getId()); // 设置更新的 ID
|
||||||
|
// 其它通用字段
|
||||||
|
o.setProductScope(randomEle(PromotionProductScopeEnum.values()).getScope())
|
||||||
|
.setValidityType(randomEle(CouponTemplateValidityTypeEnum.values()).getType())
|
||||||
|
.setDiscountType(randomEle(PromotionDiscountTypeEnum.values()).getType());
|
||||||
});
|
});
|
||||||
|
|
||||||
// 调用
|
// 调用
|
||||||
|
@ -100,30 +112,29 @@ public class CouponTemplateServiceImplTest extends BaseDbUnitTest {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
|
|
||||||
public void testGetCouponTemplatePage() {
|
public void testGetCouponTemplatePage() {
|
||||||
// mock 数据
|
// mock 数据
|
||||||
CouponTemplateDO dbCouponTemplate = randomPojo(CouponTemplateDO.class, o -> { // 等会查询到
|
CouponTemplateDO dbCouponTemplate = randomPojo(CouponTemplateDO.class, o -> { // 等会查询到
|
||||||
o.setName(null);
|
o.setName("芋艿");
|
||||||
o.setStatus(null);
|
o.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||||
o.setDiscountType(null);
|
o.setDiscountType(PromotionDiscountTypeEnum.PERCENT.getType());
|
||||||
o.setCreateTime(null);
|
o.setCreateTime(buildTime(2022, 2, 2));
|
||||||
});
|
});
|
||||||
couponTemplateMapper.insert(dbCouponTemplate);
|
couponTemplateMapper.insert(dbCouponTemplate);
|
||||||
// 测试 name 不匹配
|
// 测试 name 不匹配
|
||||||
couponTemplateMapper.insert(cloneIgnoreId(dbCouponTemplate, o -> o.setName(null)));
|
couponTemplateMapper.insert(cloneIgnoreId(dbCouponTemplate, o -> o.setName("土豆")));
|
||||||
// 测试 status 不匹配
|
// 测试 status 不匹配
|
||||||
couponTemplateMapper.insert(cloneIgnoreId(dbCouponTemplate, o -> o.setStatus(null)));
|
couponTemplateMapper.insert(cloneIgnoreId(dbCouponTemplate, o -> o.setStatus(CommonStatusEnum.DISABLE.getStatus())));
|
||||||
// 测试 type 不匹配
|
// 测试 type 不匹配
|
||||||
couponTemplateMapper.insert(cloneIgnoreId(dbCouponTemplate, o -> o.setDiscountType(null)));
|
couponTemplateMapper.insert(cloneIgnoreId(dbCouponTemplate, o -> o.setDiscountType(PromotionDiscountTypeEnum.PRICE.getType())));
|
||||||
// 测试 createTime 不匹配
|
// 测试 createTime 不匹配
|
||||||
couponTemplateMapper.insert(cloneIgnoreId(dbCouponTemplate, o -> o.setCreateTime(null)));
|
couponTemplateMapper.insert(cloneIgnoreId(dbCouponTemplate, o -> o.setCreateTime(buildTime(2022, 1, 1))));
|
||||||
// 准备参数
|
// 准备参数
|
||||||
CouponTemplatePageReqVO reqVO = new CouponTemplatePageReqVO();
|
CouponTemplatePageReqVO reqVO = new CouponTemplatePageReqVO();
|
||||||
reqVO.setName(null);
|
reqVO.setName("芋艿");
|
||||||
reqVO.setStatus(null);
|
reqVO.setStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||||
reqVO.setDiscountType(null);
|
reqVO.setDiscountType(PromotionDiscountTypeEnum.PERCENT.getType());
|
||||||
reqVO.setCreateTime((new Date[]{}));
|
reqVO.setCreateTime((new Date[]{buildTime(2022, 2, 1), buildTime(2022, 2, 3)}));
|
||||||
|
|
||||||
// 调用
|
// 调用
|
||||||
PageResult<CouponTemplateDO> pageResult = couponTemplateService.getCouponTemplatePage(reqVO);
|
PageResult<CouponTemplateDO> pageResult = couponTemplateService.getCouponTemplatePage(reqVO);
|
||||||
|
|
|
@ -1 +1,2 @@
|
||||||
DELETE FROM "market_activity";
|
DELETE FROM "market_activity";
|
||||||
|
DELETE FROM "promotion_coupon_template";
|
||||||
|
|
|
@ -17,3 +17,32 @@ CREATE TABLE IF NOT EXISTS "market_activity" (
|
||||||
"tenant_id" bigint(20) NOT NULL,
|
"tenant_id" bigint(20) NOT NULL,
|
||||||
PRIMARY KEY ("id")
|
PRIMARY KEY ("id")
|
||||||
) COMMENT '促销活动';
|
) COMMENT '促销活动';
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS "promotion_coupon_template" (
|
||||||
|
"id" bigint NOT NULL GENERATED BY DEFAULT AS IDENTITY,
|
||||||
|
"name" varchar NOT NULL,
|
||||||
|
"status" int NOT NULL,
|
||||||
|
"total_count" int NOT NULL,
|
||||||
|
"take_limit_count" int NOT NULL,
|
||||||
|
"take_type" int NOT NULL,
|
||||||
|
"use_price" int NOT NULL,
|
||||||
|
"product_scope" int NOT NULL,
|
||||||
|
"product_spu_ids" varchar,
|
||||||
|
"validity_type" int NOT NULL,
|
||||||
|
"valid_start_time" datetime,
|
||||||
|
"valid_end_time" datetime,
|
||||||
|
"fixed_start_term" int,
|
||||||
|
"fixed_end_term" int,
|
||||||
|
"discount_type" int NOT NULL,
|
||||||
|
"discount_percent" int,
|
||||||
|
"discount_price" int,
|
||||||
|
"discount_limit_price" int,
|
||||||
|
"take_count" int NOT NULL DEFAULT 0,
|
||||||
|
"use_count" int NOT NULL DEFAULT 0,
|
||||||
|
"creator" varchar DEFAULT '',
|
||||||
|
"create_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
"updater" varchar DEFAULT '',
|
||||||
|
"update_time" datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||||
|
"deleted" bit NOT NULL DEFAULT FALSE,
|
||||||
|
PRIMARY KEY ("id")
|
||||||
|
) COMMENT '优惠劵模板';
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
package cn.iocoder.yudao.module.system.controller.admin.permission.vo.role;
|
package cn.iocoder.yudao.module.system.controller.admin.permission.vo.role;
|
||||||
|
|
||||||
|
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||||
|
import cn.iocoder.yudao.framework.common.validation.InEnum;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
@ -16,7 +18,7 @@ public class RoleUpdateStatusReqVO {
|
||||||
|
|
||||||
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "见 CommonStatusEnum 枚举")
|
@ApiModelProperty(value = "状态", required = true, example = "1", notes = "见 CommonStatusEnum 枚举")
|
||||||
@NotNull(message = "状态不能为空")
|
@NotNull(message = "状态不能为空")
|
||||||
// @InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
|
@InEnum(value = CommonStatusEnum.class, message = "修改状态必须是 {value}")
|
||||||
private Integer status;
|
private Integer status;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,6 +18,19 @@ export function updateCouponTemplate(data) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 更新优惠劵模板的状态
|
||||||
|
export function updateCouponTemplateStatus(id, status) {
|
||||||
|
const data = {
|
||||||
|
id,
|
||||||
|
status
|
||||||
|
}
|
||||||
|
return request({
|
||||||
|
url: '/promotion/coupon-template/update-status',
|
||||||
|
method: 'put',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
// 删除优惠劵模板
|
// 删除优惠劵模板
|
||||||
export function deleteCouponTemplate(id) {
|
export function deleteCouponTemplate(id) {
|
||||||
return request({
|
return request({
|
||||||
|
|
|
@ -52,7 +52,7 @@
|
||||||
<el-table-column label="有效期限" align="center" prop="validityType" width="180" :formatter="validityTypeFormat" />
|
<el-table-column label="有效期限" align="center" prop="validityType" width="180" :formatter="validityTypeFormat" />
|
||||||
<el-table-column label="状态" align="center" prop="status">
|
<el-table-column label="状态" align="center" prop="status">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<dict-tag :type="DICT_TYPE.COMMON_STATUS" :value="scope.row.status" />
|
<el-switch v-model="scope.row.status" :active-value="0" :inactive-value="1" @change="handleStatusChange(scope.row)"/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
||||||
|
@ -156,10 +156,23 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { createCouponTemplate, updateCouponTemplate, deleteCouponTemplate, getCouponTemplate, getCouponTemplatePage } from "@/api/mall/promotion/couponTemplate";
|
import {
|
||||||
import { CouponTemplateValidityTypeEnum, PromotionDiscountTypeEnum, PromotionProductScopeEnum} from "@/utils/constants";
|
createCouponTemplate,
|
||||||
|
updateCouponTemplate,
|
||||||
|
deleteCouponTemplate,
|
||||||
|
getCouponTemplate,
|
||||||
|
getCouponTemplatePage,
|
||||||
|
updateCouponTemplateStatus
|
||||||
|
} from "@/api/mall/promotion/couponTemplate";
|
||||||
|
import {
|
||||||
|
CommonStatusEnum,
|
||||||
|
CouponTemplateValidityTypeEnum,
|
||||||
|
PromotionDiscountTypeEnum,
|
||||||
|
PromotionProductScopeEnum
|
||||||
|
} from "@/utils/constants";
|
||||||
import { getSpuSimpleList } from "@/api/mall/product/spu";
|
import { getSpuSimpleList } from "@/api/mall/product/spu";
|
||||||
import { parseTime } from "@/utils/ruoyi";
|
import { parseTime } from "@/utils/ruoyi";
|
||||||
|
import {changeRoleStatus} from "@/api/system/role";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "CouponTemplate",
|
name: "CouponTemplate",
|
||||||
|
@ -331,6 +344,20 @@ export default {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
/** 优惠劵模板状态修改 */
|
||||||
|
handleStatusChange(row) {
|
||||||
|
// 此时,row 已经变成目标状态了,所以可以直接提交请求和提示
|
||||||
|
let text = row.status === CommonStatusEnum.ENABLE ? "启用" : "停用";
|
||||||
|
this.$modal.confirm('确认要"' + text + '""' + row.name + '"优惠劵吗?').then(function() {
|
||||||
|
return updateCouponTemplateStatus(row.id, row.status);
|
||||||
|
}).then(() => {
|
||||||
|
this.$modal.msgSuccess(text + "成功");
|
||||||
|
}).catch(function() {
|
||||||
|
// 异常时,需要将 row.status 状态重置回之前的
|
||||||
|
row.status = row.status === CommonStatusEnum.ENABLE ? CommonStatusEnum.DISABLE
|
||||||
|
: CommonStatusEnum.ENABLE;
|
||||||
|
});
|
||||||
|
},
|
||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
handleDelete(row) {
|
handleDelete(row) {
|
||||||
const id = row.id;
|
const id = row.id;
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
<el-table-column label="显示顺序" prop="sort" width="100" />
|
<el-table-column label="显示顺序" prop="sort" width="100" />
|
||||||
<el-table-column label="状态" align="center" width="100">
|
<el-table-column label="状态" align="center" width="100">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-switch v-model="scope.row.status" :active-value="0" :inactive-value="1" @change="handleStatusChange(scope.row)"></el-switch>
|
<el-switch v-model="scope.row.status" :active-value="0" :inactive-value="1" @change="handleStatusChange(scope.row)"/>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
<el-table-column label="创建时间" align="center" prop="createTime" width="180">
|
||||||
|
@ -167,7 +167,6 @@
|
||||||
import {
|
import {
|
||||||
addRole,
|
addRole,
|
||||||
changeRoleStatus,
|
changeRoleStatus,
|
||||||
dataScope,
|
|
||||||
delRole,
|
delRole,
|
||||||
exportRole,
|
exportRole,
|
||||||
getRole,
|
getRole,
|
||||||
|
|
Loading…
Reference in New Issue