This commit is contained in:
清晨
2025-04-21 17:51:04 +08:00
commit 4da99037e8
1066 changed files with 92409 additions and 0 deletions

View File

@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-modules</artifactId>
<version>${revision}</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>ruoyi-work</artifactId>
<description>
业务模块
</description>
<dependencies>
<!-- 通用工具-->
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-core</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-redis</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-idempotent</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mybatis</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-log</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-excel</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-security</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-web</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-websocket</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-system</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-mail</artifactId>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>ruoyi-common-pay</artifactId>
</dependency>
<!-- mybatis-plus-join -->
<dependency>
<groupId>com.github.yulichang</groupId>
<artifactId>mybatis-plus-join-boot-starter</artifactId>
<version>${com.github.yulichang}</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>${commons-lang}</version>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,237 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.alibaba.fastjson.JSONObject;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderBo;
import org.dromara.work.domain.vo.CustomerOrderSumVo;
import org.dromara.work.domain.vo.CustomerOrderVo;
import org.dromara.work.domain.vo.TpOrderVo;
import org.dromara.work.service.ITpOrderService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
import java.util.List;
/**
* 订单管理(客服)
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/customer/order")
public class CustomerOrderController extends BaseController {
private final ITpOrderService tpOrderService;
/**
* 查询订单管理列表
*/
@SaCheckPermission("work:customerOrder:list")
@GetMapping("/list")
public TableDataInfo<CustomerOrderVo> list(TpOrderBo bo, PageQuery pageQuery) {
return tpOrderService.queryCustomerPageList(bo, pageQuery);
}
/**
* 查询订单统计(客服)
*/
@SaCheckPermission("work:customerOrder:sum")
@GetMapping("/sum")
public R<CustomerOrderSumVo> sum(TpOrderBo bo) {
return R.ok(tpOrderService.queryCustomerSum(bo));
}
/**
* 导出客服订单
*/
@SaCheckPermission("work:customerOrder:export")
@Log(title = "导出客服订单", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderBo bo, HttpServletResponse response) {
List<TpOrderVo> list = tpOrderService.queryListKF(bo);
ExcelUtil.exportExcel(list, "导出客服订单", TpOrderVo.class, response);
}
/**
* 获取订单管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:customerOrder:query")
@GetMapping("/{id}")
public R<TpOrderVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderService.queryById(id));
}
/**
* 新增订单管理
*/
@SaCheckPermission("work:customerOrder:add")
@Log(title = "订单管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderBo bo) {
return toAjax(tpOrderService.insertByBo(bo));
}
/**
* 修改订单管理
*/
@SaCheckPermission("work:customerOrder:edit")
@Log(title = "订单管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderBo bo) {
return toAjax(tpOrderService.updateByBo(bo));
}
/**
* 删除订单管理
*
* @param ids 主键串
*/
@SaCheckPermission("work:customerOrder:remove")
@Log(title = "订单管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderService.deleteWithValidByIds(List.of(ids), true));
}
/**
* 订单指派技术
*/
@SaCheckPermission("work:customerOrder:assign")
@Log(title = "订单指派技术", businessType = BusinessType.OTHER)
// @Parameters({@Parameter(name = "orderIds", description = "订单ID", required = true),@Parameter(name = "userId", description = "用户ID", required = true)})
@PostMapping("/assign")
public R<Void> assign(@RequestBody TpOrderBo bo) {
return toAjax(tpOrderService.updateOrderAssign(bo.getOrderIds(),bo.getUserId()));
}
/**
* 订单取消指派
*/
@SaCheckPermission("work:customerOrder:cancelAssign")
@Log(title = "订单取消指派", businessType = BusinessType.OTHER)
@Parameter(name = "orderId", description = "订单ID", required = true)
@PostMapping("/cancelAssign")
public R<Void> cancelAssign(@RequestParam(value = "orderId") Long orderId) {
return toAjax(tpOrderService.orderCancelAssign(orderId));
}
/**
* 订单支付获取订单和余额信息
* @param orderId 主键
*/
@SaCheckPermission("work:customerOrder:queryOrderPay")
@GetMapping("queryOrderPay/{orderId}")
public R<TpOrderVo> queryOrderPay(@NotNull(message = "orderId主键不能为空") @PathVariable Long orderId) {
return R.ok(tpOrderService.queryOrderPay(orderId));
}
/**
* 订单支付
*/
@SaCheckPermission("work:customerOrder:pay")
@Log(title = "订单支付", businessType = BusinessType.OTHER)
@PostMapping("/pay")
@Parameters({@Parameter(name = "orderId", description = "订单ID", required = true),@Parameter(name = "type", description = "类型1客户 2客服", required = true)
,@Parameter(name = "price", description = "支付金额", required = true)
})
public R<JSONObject> pay(@RequestParam(value = "orderId") Long orderId, @RequestParam(value = "type") Integer type, @RequestParam(value = "price") BigDecimal price) throws Exception {
return R.ok(tpOrderService.orderPay(orderId,type,price));
}
/**
* 订单回退获取订单和退款金额信息
* @param orderId 主键
*/
@SaCheckPermission("work:customerOrder:orderFallback")
@GetMapping("orderFallback/{orderId}")
public R<TpOrderVo> orderFallback(@NotNull(message = "orderId主键不能为空") @PathVariable Long orderId) {
return R.ok(tpOrderService.orderFallback(orderId));
}
/**
* 订单回退
*/
@SaCheckPermission("work:customerOrder:fallback")
@Log(title = "订单回退", businessType = BusinessType.OTHER)
@PostMapping("/fallback")
@Parameters({@Parameter(name = "orderId", description = "订单ID", required = true),@Parameter(name = "type", description = "类型1客户 2客服", required = true)
,@Parameter(name = "price", description = "回退金额", required = true)
})
public R<Void> fallback(@RequestParam(value = "orderId") Long orderId,@RequestParam(value = "type") Integer type,@RequestParam(value = "price") BigDecimal price) {
return toAjax(tpOrderService.fallback(orderId,type,price));
}
/**
* 订单拆单获取订单和金额信息
* @param orderId 主键
*/
@SaCheckPermission("work:customerOrder:cdOrderInfo")
@GetMapping("cdOrderInfo/{orderId}")
public R<TpOrderVo> cdOrderInfo(@NotNull(message = "orderId主键不能为空") @PathVariable Long orderId) {
return R.ok(tpOrderService.cdOrderInfo(orderId));
}
/**
* 订单拆单
*/
@SaCheckPermission("work:customerOrder:cdOrder")
@Log(title = "订单拆单", businessType = BusinessType.OTHER)
@PostMapping("/cdOrder")
@Parameters({@Parameter(name = "orderId", description = "订单ID", required = true),@Parameter(name = "price", description = "拆单金额", required = true)})
public R<Void> cdOrder(@RequestParam(value = "orderId") Long orderId,@RequestParam(value = "price") BigDecimal price) {
return toAjax(tpOrderService.cdOrder(orderId,price));
}
/**
* 订单改价获取订单和金额信息
* @param orderId 主键
*/
@SaCheckPermission("work:customerOrder:gjOrderInfo")
@GetMapping("gjOrderInfo/{orderId}")
public R<TpOrderVo> gjOrderInfo(@NotNull(message = "orderId主键不能为空") @PathVariable Long orderId) {
return R.ok(tpOrderService.gjOrderInfo(orderId));
}
/**
* 订单改价
*/
@SaCheckPermission("work:customerOrder:gjOrder")
@Log(title = "订单改价", businessType = BusinessType.OTHER)
@PostMapping("/gjOrder")
@Parameters({@Parameter(name = "orderId", description = "订单ID", required = true),@Parameter(name = "price", description = "拆单金额", required = true)})
public R<Void> gjOrder(@RequestParam(value = "orderId") Long orderId,@RequestParam(value = "price") BigDecimal price) {
return toAjax(tpOrderService.gjOrder(orderId,price));
}
}

View File

@@ -0,0 +1,117 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderBo;
import org.dromara.work.domain.vo.SkillOrderSumVo;
import org.dromara.work.domain.vo.SkillOrderVo;
import org.dromara.work.domain.vo.TpOrderVo;
import org.dromara.work.service.ITpOrderService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 订单管理(技术)
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/skill/order")
public class SkillOrderController extends BaseController {
private final ITpOrderService tpOrderService;
/**
* 查询订单管理列表
*/
@SaCheckPermission("work:skillOrder:list")
@GetMapping("/list")
public TableDataInfo<SkillOrderVo> list(TpOrderBo bo, PageQuery pageQuery) {
return tpOrderService.querySkillPageList(bo, pageQuery);
}
/**
* 查询订单统计(技术)
*/
@SaCheckPermission("work:skillOrder:sum")
@GetMapping("/sum")
public R<SkillOrderSumVo> sum(TpOrderBo bo) {
return R.ok(tpOrderService.querySkillSum(bo));
}
/**
* 导出技术订单
*/
@SaCheckPermission("work:skillOrder:export")
@Log(title = "导出技术订单", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderBo bo, HttpServletResponse response) {
List<TpOrderVo> list = tpOrderService.queryListJS(bo);
ExcelUtil.exportExcel(list, "导出技术订单", TpOrderVo.class, response);
}
/**
* 获取订单管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:skillOrder:query")
@GetMapping("/{id}")
public R<TpOrderVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderService.queryById(id));
}
/**
* 新增订单管理
*/
@SaCheckPermission("work:skillOrder:add")
@Log(title = "订单管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderBo bo) {
return toAjax(tpOrderService.insertByBo(bo));
}
/**
* 修改订单管理
*/
@SaCheckPermission("work:skillOrder:edit")
@Log(title = "订单管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderBo bo) {
return toAjax(tpOrderService.updateByBo(bo));
}
/**
* 删除订单管理
*
* @param ids 主键串
*/
@SaCheckPermission("work:skillOrder:remove")
@Log(title = "订单管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpAppealsVo;
import org.dromara.work.domain.bo.TpAppealsBo;
import org.dromara.work.service.ITpAppealsService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 订单投诉
*
* @author Maosw
* @date 2025-04-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/appeals")
public class TpAppealsController extends BaseController {
private final ITpAppealsService tpAppealsService;
/**
* 查询订单投诉列表
*/
@SaCheckPermission("work:appeals:list")
@GetMapping("/list")
public TableDataInfo<TpAppealsVo> list(TpAppealsBo bo, PageQuery pageQuery) {
return tpAppealsService.queryPageList(bo, pageQuery);
}
/**
* 导出订单投诉列表
*/
@SaCheckPermission("work:appeals:export")
@Log(title = "订单投诉", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpAppealsBo bo, HttpServletResponse response) {
List<TpAppealsVo> list = tpAppealsService.queryList(bo);
ExcelUtil.exportExcel(list, "订单投诉", TpAppealsVo.class, response);
}
/**
* 获取订单投诉详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:appeals:query")
@GetMapping("/{id}")
public R<TpAppealsVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpAppealsService.queryById(id));
}
/**
* 新增订单投诉
*/
@SaCheckPermission("work:appeals:add")
@Log(title = "订单投诉", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpAppealsBo bo) {
return toAjax(tpAppealsService.insertByBo(bo));
}
/**
* 修改订单投诉
*/
@SaCheckPermission("work:appeals:edit")
@Log(title = "订单投诉", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpAppealsBo bo) {
return toAjax(tpAppealsService.updateByBo(bo));
}
/**
* 删除订单投诉
*
* @param ids 主键串
*/
@SaCheckPermission("work:appeals:remove")
@Log(title = "订单投诉", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpAppealsService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpBlockVo;
import org.dromara.work.domain.bo.TpBlockBo;
import org.dromara.work.service.ITpBlockService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 屏蔽拉黑
*
* @author Maosw
* @date 2025-04-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/block")
public class TpBlockController extends BaseController {
private final ITpBlockService tpBlockService;
/**
* 查询屏蔽拉黑列表
*/
@SaCheckPermission("work:block:list")
@GetMapping("/list")
public TableDataInfo<TpBlockVo> list(TpBlockBo bo, PageQuery pageQuery) {
return tpBlockService.queryPageList(bo, pageQuery);
}
/**
* 导出屏蔽拉黑列表
*/
@SaCheckPermission("work:block:export")
@Log(title = "屏蔽拉黑", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpBlockBo bo, HttpServletResponse response) {
List<TpBlockVo> list = tpBlockService.queryList(bo);
ExcelUtil.exportExcel(list, "屏蔽拉黑", TpBlockVo.class, response);
}
/**
* 获取屏蔽拉黑详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:block:query")
@GetMapping("/{id}")
public R<TpBlockVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpBlockService.queryById(id));
}
/**
* 新增屏蔽拉黑
*/
@SaCheckPermission("work:block:add")
@Log(title = "屏蔽拉黑", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpBlockBo bo) {
return toAjax(tpBlockService.insertByBo(bo));
}
/**
* 修改屏蔽拉黑
*/
@SaCheckPermission("work:block:edit")
@Log(title = "屏蔽拉黑", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpBlockBo bo) {
return toAjax(tpBlockService.updateByBo(bo));
}
/**
* 删除屏蔽拉黑
*
* @param ids 主键串
*/
@SaCheckPermission("work:block:remove")
@Log(title = "屏蔽拉黑", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpBlockService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpCategoryVo;
import org.dromara.work.domain.bo.TpCategoryBo;
import org.dromara.work.service.ITpCategoryService;
/**
* 作品类目
*
* @author Maosw
* @date 2025-04-11
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/category")
public class TpCategoryController extends BaseController {
private final ITpCategoryService tpCategoryService;
/**
* 查询作品类目列表
*/
@SaCheckPermission("work:category:list")
@GetMapping("/list")
public R<List<TpCategoryVo>> list(TpCategoryBo bo) {
List<TpCategoryVo> list = tpCategoryService.queryList(bo);
return R.ok(list);
}
/**
* 导出作品类目列表
*/
@SaCheckPermission("work:category:export")
@Log(title = "作品类目", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpCategoryBo bo, HttpServletResponse response) {
List<TpCategoryVo> list = tpCategoryService.queryList(bo);
ExcelUtil.exportExcel(list, "作品类目", TpCategoryVo.class, response);
}
/**
* 获取作品类目详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:category:query")
@GetMapping("/{id}")
public R<TpCategoryVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpCategoryService.queryById(id));
}
/**
* 新增作品类目
*/
@SaCheckPermission("work:category:add")
@Log(title = "作品类目", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpCategoryBo bo) {
return toAjax(tpCategoryService.insertByBo(bo));
}
/**
* 修改作品类目
*/
@SaCheckPermission("work:category:edit")
@Log(title = "作品类目", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpCategoryBo bo) {
return toAjax(tpCategoryService.updateByBo(bo));
}
/**
* 删除作品类目
*
* @param ids 主键串
*/
@SaCheckPermission("work:category:remove")
@Log(title = "作品类目", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpCategoryService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,116 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpClientBo;
import org.dromara.work.domain.vo.ClientSumVo;
import org.dromara.work.domain.vo.TpClientVo;
import org.dromara.work.service.ITpClientService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 客户
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/client")
public class TpClientController extends BaseController {
private final ITpClientService tpClientService;
/**
* 查询客户列表
*/
@SaCheckPermission("work:client:list")
@GetMapping("/list")
public TableDataInfo<TpClientVo> list(TpClientBo bo, PageQuery pageQuery) {
return tpClientService.queryPageList(bo, pageQuery);
}
/**
* 查询客户下单金额统计列表
*/
@SaCheckPermission("work:client:listChart")
@GetMapping("/listChart")
public TableDataInfo<ClientSumVo> listChart(TpClientBo bo, PageQuery pageQuery) {
return tpClientService.queryPageListChart(bo, pageQuery);
}
/**
* 导出客户列表
*/
@SaCheckPermission("work:client:export")
@Log(title = "导出客户列表", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpClientBo bo, HttpServletResponse response) {
List<TpClientVo> list = tpClientService.queryList(bo);
ExcelUtil.exportExcel(list, "导出客户列表", TpClientVo.class, response);
}
/**
* 获取客户详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:client:query")
@GetMapping("/{id}")
public R<TpClientVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpClientService.queryById(id));
}
/**
* 新增客户
*/
@SaCheckPermission("work:client:add")
@Log(title = "客户", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpClientBo bo) {
return toAjax(tpClientService.insertByBo(bo));
}
/**
* 修改客户
*/
@SaCheckPermission("work:client:edit")
@Log(title = "客户", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpClientBo bo) {
return toAjax(tpClientService.updateByBo(bo));
}
/**
* 删除客户
*
* @param ids 主键串
*/
@SaCheckPermission("work:client:remove")
@Log(title = "客户", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpClientService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpClientStaffBo;
import org.dromara.work.domain.vo.TpClientStaffVo;
import org.dromara.work.service.ITpClientStaffService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 客服客户管理
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/clientStaff")
public class TpClientStaffController extends BaseController {
private final ITpClientStaffService tpClientStaffService;
/**
* 查询客服客户管理列表
*/
@SaCheckPermission("work:clientStaff:list")
@GetMapping("/list")
public TableDataInfo<TpClientStaffVo> list(TpClientStaffBo bo, PageQuery pageQuery) {
return tpClientStaffService.queryPageList(bo, pageQuery);
}
/**
* 导出客服客户列表
*/
@SaCheckPermission("work:clientStaff:export")
@Log(title = "导出客服客户列表", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpClientStaffBo bo, HttpServletResponse response) {
List<TpClientStaffVo> list = tpClientStaffService.queryList(bo);
ExcelUtil.exportExcel(list, "导出客服客户列表", TpClientStaffVo.class, response);
}
/**
* 获取客服客户管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:clientStaff:query")
@GetMapping("/{id}")
public R<TpClientStaffVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpClientStaffService.queryById(id));
}
/**
* 新增客服客户管理
*/
@SaCheckPermission("work:clientStaff:add")
@Log(title = "客服客户管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpClientStaffBo bo) {
return toAjax(tpClientStaffService.insertByBo(bo));
}
/**
* 修改客服客户管理
*/
@SaCheckPermission("work:clientStaff:edit")
@Log(title = "客服客户管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpClientStaffBo bo) {
return toAjax(tpClientStaffService.updateByBo(bo));
}
/**
* 删除客服客户管理
*
* @param ids 主键串
*/
@SaCheckPermission("work:clientStaff:remove")
@Log(title = "客服客户管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpClientStaffService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpCommentsVo;
import org.dromara.work.domain.bo.TpCommentsBo;
import org.dromara.work.service.ITpCommentsService;
/**
* 评论
*
* @author Maosw
* @date 2025-04-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/comments")
public class TpCommentsController extends BaseController {
private final ITpCommentsService tpCommentsService;
/**
* 查询评论列表
*/
@SaCheckPermission("work:comments:list")
@GetMapping("/list")
public R<List<TpCommentsVo>> list(TpCommentsBo bo) {
List<TpCommentsVo> list = tpCommentsService.queryList(bo);
return R.ok(list);
}
/**
* 导出评论列表
*/
@SaCheckPermission("work:comments:export")
@Log(title = "评论", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpCommentsBo bo, HttpServletResponse response) {
List<TpCommentsVo> list = tpCommentsService.queryList(bo);
ExcelUtil.exportExcel(list, "评论", TpCommentsVo.class, response);
}
/**
* 获取评论详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:comments:query")
@GetMapping("/{id}")
public R<TpCommentsVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpCommentsService.queryById(id));
}
/**
* 新增评论
*/
@SaCheckPermission("work:comments:add")
@Log(title = "评论", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpCommentsBo bo) {
return toAjax(tpCommentsService.insertByBo(bo));
}
/**
* 修改评论
*/
@SaCheckPermission("work:comments:edit")
@Log(title = "评论", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpCommentsBo bo) {
return toAjax(tpCommentsService.updateByBo(bo));
}
/**
* 删除评论
*
* @param ids 主键串
*/
@SaCheckPermission("work:comments:remove")
@Log(title = "评论", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpCommentsService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,111 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.dromara.common.core.domain.model.LoginUser;
import org.dromara.common.satoken.utils.LoginHelper;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpDesignQuotesVo;
import org.dromara.work.domain.bo.TpDesignQuotesBo;
import org.dromara.work.service.ITpDesignQuotesService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 报价
*
* @author Maosw
* @date 2025-03-10
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/designQuotes")
public class TpDesignQuotesController extends BaseController {
private final ITpDesignQuotesService tpDesignQuotesService;
/**
* 查询报价列表
*/
@SaCheckPermission("work:designQuotes:list")
@GetMapping("/list")
public TableDataInfo<TpDesignQuotesVo> list(TpDesignQuotesBo bo, PageQuery pageQuery) {
LoginUser loginUser = LoginHelper.getLoginUser();
if(!LoginHelper.isSuperAdmin()){
bo.setSid(loginUser.getUserId());
}
return tpDesignQuotesService.queryPageList(bo, pageQuery);
}
/**
* 导出报价列表
*/
@SaCheckPermission("work:designQuotes:export")
@Log(title = "报价", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpDesignQuotesBo bo, HttpServletResponse response) {
List<TpDesignQuotesVo> list = tpDesignQuotesService.queryList(bo);
ExcelUtil.exportExcel(list, "报价", TpDesignQuotesVo.class, response);
}
/**
* 获取报价详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:designQuotes:query")
@GetMapping("/{id}")
public R<TpDesignQuotesVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpDesignQuotesService.queryById(id));
}
/**
* 新增报价
*/
@SaCheckPermission("work:designQuotes:add")
@Log(title = "报价", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpDesignQuotesBo bo) {
return toAjax(tpDesignQuotesService.insertByBo(bo));
}
/**
* 修改报价
*/
@SaCheckPermission("work:designQuotes:edit")
@Log(title = "报价", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpDesignQuotesBo bo) {
return toAjax(tpDesignQuotesService.updateByBo(bo));
}
/**
* 删除报价
*
* @param ids 主键串
*/
@SaCheckPermission("work:designQuotes:remove")
@Log(title = "报价", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpDesignQuotesService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpDynamicsNumVo;
import org.dromara.work.domain.bo.TpDynamicsNumBo;
import org.dromara.work.service.ITpDynamicsNumService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 动态点赞收藏
*
* @author Maosw
* @date 2025-04-11
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/dynamicsNum")
public class TpDynamicsNumController extends BaseController {
private final ITpDynamicsNumService tpDynamicsNumService;
/**
* 查询动态点赞收藏列表
*/
@SaCheckPermission("work:dynamicsNum:list")
@GetMapping("/list")
public TableDataInfo<TpDynamicsNumVo> list(TpDynamicsNumBo bo, PageQuery pageQuery) {
return tpDynamicsNumService.queryPageList(bo, pageQuery);
}
/**
* 导出动态点赞收藏列表
*/
@SaCheckPermission("work:dynamicsNum:export")
@Log(title = "动态点赞收藏", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpDynamicsNumBo bo, HttpServletResponse response) {
List<TpDynamicsNumVo> list = tpDynamicsNumService.queryList(bo);
ExcelUtil.exportExcel(list, "动态点赞收藏", TpDynamicsNumVo.class, response);
}
/**
* 获取动态点赞收藏详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:dynamicsNum:query")
@GetMapping("/{id}")
public R<TpDynamicsNumVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpDynamicsNumService.queryById(id));
}
/**
* 新增动态点赞收藏
*/
@SaCheckPermission("work:dynamicsNum:add")
@Log(title = "动态点赞收藏", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpDynamicsNumBo bo) {
return toAjax(tpDynamicsNumService.insertByBo(bo));
}
/**
* 修改动态点赞收藏
*/
@SaCheckPermission("work:dynamicsNum:edit")
@Log(title = "动态点赞收藏", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpDynamicsNumBo bo) {
return toAjax(tpDynamicsNumService.updateByBo(bo));
}
/**
* 删除动态点赞收藏
*
* @param ids 主键串
*/
@SaCheckPermission("work:dynamicsNum:remove")
@Log(title = "动态点赞收藏", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpDynamicsNumService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpFollowVo;
import org.dromara.work.domain.bo.TpFollowBo;
import org.dromara.work.service.ITpFollowService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 关注
*
* @author Maosw
* @date 2025-04-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/follow")
public class TpFollowController extends BaseController {
private final ITpFollowService tpFollowService;
/**
* 查询关注列表
*/
@SaCheckPermission("work:follow:list")
@GetMapping("/list")
public TableDataInfo<TpFollowVo> list(TpFollowBo bo, PageQuery pageQuery) {
return tpFollowService.queryPageList(bo, pageQuery);
}
/**
* 导出关注列表
*/
@SaCheckPermission("work:follow:export")
@Log(title = "关注", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpFollowBo bo, HttpServletResponse response) {
List<TpFollowVo> list = tpFollowService.queryList(bo);
ExcelUtil.exportExcel(list, "关注", TpFollowVo.class, response);
}
/**
* 获取关注详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:follow:query")
@GetMapping("/{id}")
public R<TpFollowVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpFollowService.queryById(id));
}
/**
* 新增关注
*/
@SaCheckPermission("work:follow:add")
@Log(title = "关注", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpFollowBo bo) {
return toAjax(tpFollowService.insertByBo(bo));
}
/**
* 修改关注
*/
@SaCheckPermission("work:follow:edit")
@Log(title = "关注", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpFollowBo bo) {
return toAjax(tpFollowService.updateByBo(bo));
}
/**
* 删除关注
*
* @param ids 主键串
*/
@SaCheckPermission("work:follow:remove")
@Log(title = "关注", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpFollowService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpMessageVo;
import org.dromara.work.domain.bo.TpMessageBo;
import org.dromara.work.service.ITpMessageService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 消息
*
* @author Maosw
* @date 2025-04-18
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/message")
public class TpMessageController extends BaseController {
private final ITpMessageService tpMessageService;
/**
* 查询消息列表
*/
@SaCheckPermission("work:message:list")
@GetMapping("/list")
public TableDataInfo<TpMessageVo> list(TpMessageBo bo, PageQuery pageQuery) {
return tpMessageService.queryPageList(bo, pageQuery);
}
/**
* 导出消息列表
*/
@SaCheckPermission("work:message:export")
@Log(title = "消息", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpMessageBo bo, HttpServletResponse response) {
List<TpMessageVo> list = tpMessageService.queryList(bo);
ExcelUtil.exportExcel(list, "消息", TpMessageVo.class, response);
}
/**
* 获取消息详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:message:query")
@GetMapping("/{id}")
public R<TpMessageVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpMessageService.queryById(id));
}
/**
* 新增消息
*/
@SaCheckPermission("work:message:add")
@Log(title = "消息", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpMessageBo bo) {
return toAjax(tpMessageService.insertByBo(bo));
}
/**
* 修改消息
*/
@SaCheckPermission("work:message:edit")
@Log(title = "消息", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpMessageBo bo) {
return toAjax(tpMessageService.updateByBo(bo));
}
/**
* 删除消息
*
* @param ids 主键串
*/
@SaCheckPermission("work:message:remove")
@Log(title = "消息", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpMessageService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpMonthBo;
import org.dromara.work.domain.vo.TpMonthVo;
import org.dromara.work.service.ITpMonthService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 月目标
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/month")
public class TpMonthController extends BaseController {
private final ITpMonthService tpMonthService;
/**
* 查询月目标列表
*/
@SaCheckPermission("work:month:list")
@GetMapping("/list")
public TableDataInfo<TpMonthVo> list(TpMonthBo bo, PageQuery pageQuery) {
return tpMonthService.queryPageList(bo, pageQuery);
}
/**
* 导出月目标列表
*/
@SaCheckPermission("work:month:export")
@Log(title = "月目标", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpMonthBo bo, HttpServletResponse response) {
List<TpMonthVo> list = tpMonthService.queryList(bo);
ExcelUtil.exportExcel(list, "月目标", TpMonthVo.class, response);
}
/**
* 获取月目标详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:month:query")
@GetMapping("/{id}")
public R<TpMonthVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpMonthService.queryById(id));
}
/**
* 新增月目标
*/
@SaCheckPermission("work:month:add")
@Log(title = "月目标", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpMonthBo bo) {
return toAjax(tpMonthService.insertByBo(bo));
}
/**
* 修改月目标
*/
@SaCheckPermission("work:month:edit")
@Log(title = "月目标", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpMonthBo bo) {
return toAjax(tpMonthService.updateByBo(bo));
}
/**
* 删除月目标
*
* @param ids 主键串
*/
@SaCheckPermission("work:month:remove")
@Log(title = "月目标", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpMonthService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpNewsVo;
import org.dromara.work.domain.bo.TpNewsBo;
import org.dromara.work.service.ITpNewsService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 新闻活动
*
* @author Maosw
* @date 2025-04-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/news")
public class TpNewsController extends BaseController {
private final ITpNewsService tpNewsService;
/**
* 查询新闻活动列表
*/
@SaCheckPermission("work:news:list")
@GetMapping("/list")
public TableDataInfo<TpNewsVo> list(TpNewsBo bo, PageQuery pageQuery) {
return tpNewsService.queryPageList(bo, pageQuery);
}
/**
* 导出新闻活动列表
*/
@SaCheckPermission("work:news:export")
@Log(title = "新闻活动", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpNewsBo bo, HttpServletResponse response) {
List<TpNewsVo> list = tpNewsService.queryList(bo);
ExcelUtil.exportExcel(list, "新闻活动", TpNewsVo.class, response);
}
/**
* 获取新闻活动详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:news:query")
@GetMapping("/{id}")
public R<TpNewsVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpNewsService.queryById(id));
}
/**
* 新增新闻活动
*/
@SaCheckPermission("work:news:add")
@Log(title = "新闻活动", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpNewsBo bo) {
return toAjax(tpNewsService.insertByBo(bo));
}
/**
* 修改新闻活动
*/
@SaCheckPermission("work:news:edit")
@Log(title = "新闻活动", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpNewsBo bo) {
return toAjax(tpNewsService.updateByBo(bo));
}
/**
* 删除新闻活动
*
* @param ids 主键串
*/
@SaCheckPermission("work:news:remove")
@Log(title = "新闻活动", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpNewsService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderBigBo;
import org.dromara.work.domain.vo.TpOrderBigVo;
import org.dromara.work.service.ITpOrderBigService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 订单大图
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/orderBig")
public class TpOrderBigController extends BaseController {
private final ITpOrderBigService tpOrderBigService;
/**
* 查询订单大图列表
*/
@SaCheckPermission("work:orderBig:list")
@GetMapping("/list")
public TableDataInfo<TpOrderBigVo> list(TpOrderBigBo bo, PageQuery pageQuery) {
return tpOrderBigService.queryPageList(bo, pageQuery);
}
/**
* 导出订单大图列表
*/
@SaCheckPermission("work:orderBig:export")
@Log(title = "订单大图", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderBigBo bo, HttpServletResponse response) {
List<TpOrderBigVo> list = tpOrderBigService.queryList(bo);
ExcelUtil.exportExcel(list, "订单大图", TpOrderBigVo.class, response);
}
/**
* 获取订单大图详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:orderBig:query")
@GetMapping("/{id}")
public R<TpOrderBigVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderBigService.queryById(id));
}
/**
* 新增订单大图
*/
@SaCheckPermission("work:orderBig:add")
@Log(title = "订单大图", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderBigBo bo) {
return toAjax(tpOrderBigService.insertByBo(bo));
}
/**
* 修改订单大图
*/
@SaCheckPermission("work:orderBig:edit")
@Log(title = "订单大图", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderBigBo bo) {
return toAjax(tpOrderBigService.updateByBo(bo));
}
/**
* 删除订单大图
*
* @param ids 主键串
*/
@SaCheckPermission("work:orderBig:remove")
@Log(title = "订单大图", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderBigService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderCdBo;
import org.dromara.work.domain.vo.TpOrderCdVo;
import org.dromara.work.service.ITpOrderCdService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 拆单记录
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/orderCd")
public class TpOrderCdController extends BaseController {
private final ITpOrderCdService tpOrderCdService;
/**
* 查询拆单记录列表
*/
@SaCheckPermission("work:orderCd:list")
@GetMapping("/list")
public TableDataInfo<TpOrderCdVo> list(TpOrderCdBo bo, PageQuery pageQuery) {
return tpOrderCdService.queryPageList(bo, pageQuery);
}
/**
* 导出拆单记录列表
*/
@SaCheckPermission("work:orderCd:export")
@Log(title = "拆单记录", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderCdBo bo, HttpServletResponse response) {
List<TpOrderCdVo> list = tpOrderCdService.queryList(bo);
ExcelUtil.exportExcel(list, "拆单记录", TpOrderCdVo.class, response);
}
/**
* 获取拆单记录详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:orderCd:query")
@GetMapping("/{id}")
public R<TpOrderCdVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderCdService.queryById(id));
}
/**
* 新增拆单记录
*/
@SaCheckPermission("work:orderCd:add")
@Log(title = "拆单记录", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderCdBo bo) {
return toAjax(tpOrderCdService.insertByBo(bo));
}
/**
* 修改拆单记录
*/
@SaCheckPermission("work:orderCd:edit")
@Log(title = "拆单记录", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderCdBo bo) {
return toAjax(tpOrderCdService.updateByBo(bo));
}
/**
* 删除拆单记录
*
* @param ids 主键串
*/
@SaCheckPermission("work:orderCd:remove")
@Log(title = "拆单记录", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderCdService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderCommentBo;
import org.dromara.work.domain.vo.TpOrderCommentVo;
import org.dromara.work.service.ITpOrderCommentService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 订单评论
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/orderComment")
public class TpOrderCommentController extends BaseController {
private final ITpOrderCommentService tpOrderCommentService;
/**
* 查询订单评论列表
*/
@SaCheckPermission("work:orderComment:list")
@GetMapping("/list")
public TableDataInfo<TpOrderCommentVo> list(TpOrderCommentBo bo, PageQuery pageQuery) {
return tpOrderCommentService.queryPageList(bo, pageQuery);
}
/**
* 导出订单评论列表
*/
@SaCheckPermission("work:orderComment:export")
@Log(title = "订单评论", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderCommentBo bo, HttpServletResponse response) {
List<TpOrderCommentVo> list = tpOrderCommentService.queryList(bo);
ExcelUtil.exportExcel(list, "订单评论", TpOrderCommentVo.class, response);
}
/**
* 获取订单评论详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:orderComment:query")
@GetMapping("/{id}")
public R<TpOrderCommentVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderCommentService.queryById(id));
}
/**
* 新增订单评论
*/
@SaCheckPermission("work:orderComment:add")
@Log(title = "订单评论", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderCommentBo bo) {
return toAjax(tpOrderCommentService.insertByBo(bo));
}
/**
* 修改订单评论
*/
@SaCheckPermission("work:orderComment:edit")
@Log(title = "订单评论", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderCommentBo bo) {
return toAjax(tpOrderCommentService.updateByBo(bo));
}
/**
* 删除订单评论
*
* @param ids 主键串
*/
@SaCheckPermission("work:orderComment:remove")
@Log(title = "订单评论", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderCommentService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,107 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderBo;
import org.dromara.work.domain.vo.TpOrderVo;
import org.dromara.work.service.ITpOrderService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.concurrent.TimeUnit;
/**
* 订单回收站
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/order")
public class TpOrderController extends BaseController {
private final ITpOrderService tpOrderService;
/**
* 查询订单管理列表
*/
@SaCheckPermission("work:order:list")
@GetMapping("/list")
public TableDataInfo<TpOrderVo> list(TpOrderBo bo, PageQuery pageQuery) {
return tpOrderService.queryPageList(bo, pageQuery);
}
/**
* 回收站订单导出
*/
@SaCheckPermission("work:order:export")
@Log(title = "回收站订单导出", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderBo bo, HttpServletResponse response) {
List<TpOrderVo> list = tpOrderService.queryList(bo);
ExcelUtil.exportExcel(list, "回收站订单导出", TpOrderVo.class, response);
}
/**
* 获取订单管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:order:query")
@GetMapping("/{id}")
public R<TpOrderVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderService.queryById(id));
}
/**
* 新增订单管理
*/
@SaCheckPermission("work:order:add")
@Log(title = "订单管理", businessType = BusinessType.INSERT)
@RepeatSubmit(interval = 3,timeUnit = TimeUnit.SECONDS,message = "不允许重复提交")
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderBo bo) {
return toAjax(tpOrderService.insertByBo(bo));
}
/**
* 修改订单管理
*/
@SaCheckPermission("work:order:edit")
@Log(title = "订单管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderBo bo) {
return toAjax(tpOrderService.updateByBo(bo));
}
/**
* 删除订单管理
*
* @param ids 主键串
*/
@SaCheckPermission("work:order:remove")
@Log(title = "订单管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderModelBo;
import org.dromara.work.domain.vo.TpOrderModelVo;
import org.dromara.work.service.ITpOrderModelService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 订单模型
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/orderModel")
public class TpOrderModelController extends BaseController {
private final ITpOrderModelService tpOrderModelService;
/**
* 查询订单模型列表
*/
@SaCheckPermission("work:orderModel:list")
@GetMapping("/list")
public TableDataInfo<TpOrderModelVo> list(TpOrderModelBo bo, PageQuery pageQuery) {
return tpOrderModelService.queryPageList(bo, pageQuery);
}
/**
* 导出订单模型列表
*/
@SaCheckPermission("work:orderModel:export")
@Log(title = "订单模型", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderModelBo bo, HttpServletResponse response) {
List<TpOrderModelVo> list = tpOrderModelService.queryList(bo);
ExcelUtil.exportExcel(list, "订单模型", TpOrderModelVo.class, response);
}
/**
* 获取订单模型详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:orderModel:query")
@GetMapping("/{id}")
public R<TpOrderModelVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderModelService.queryById(id));
}
/**
* 新增订单模型
*/
@SaCheckPermission("work:orderModel:add")
@Log(title = "订单模型", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderModelBo bo) {
return toAjax(tpOrderModelService.insertByBo(bo));
}
/**
* 修改订单模型
*/
@SaCheckPermission("work:orderModel:edit")
@Log(title = "订单模型", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderModelBo bo) {
return toAjax(tpOrderModelService.updateByBo(bo));
}
/**
* 删除订单模型
*
* @param ids 主键串
*/
@SaCheckPermission("work:orderModel:remove")
@Log(title = "订单模型", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderModelService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpOrderPayVo;
import org.dromara.work.domain.bo.TpOrderPayBo;
import org.dromara.work.service.ITpOrderPayService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 订单支付记录
*
* @author Maosw
* @date 2025-04-14
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/orderPay")
public class TpOrderPayController extends BaseController {
private final ITpOrderPayService tpOrderPayService;
/**
* 查询订单支付记录列表
*/
@SaCheckPermission("work:orderPay:list")
@GetMapping("/list")
public TableDataInfo<TpOrderPayVo> list(TpOrderPayBo bo, PageQuery pageQuery) {
return tpOrderPayService.queryPageList(bo, pageQuery);
}
/**
* 导出订单支付记录列表
*/
@SaCheckPermission("work:orderPay:export")
@Log(title = "订单支付记录", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderPayBo bo, HttpServletResponse response) {
List<TpOrderPayVo> list = tpOrderPayService.queryList(bo);
ExcelUtil.exportExcel(list, "订单支付记录", TpOrderPayVo.class, response);
}
/**
* 获取订单支付记录详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:orderPay:query")
@GetMapping("/{id}")
public R<TpOrderPayVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderPayService.queryById(id));
}
/**
* 新增订单支付记录
*/
@SaCheckPermission("work:orderPay:add")
@Log(title = "订单支付记录", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderPayBo bo) {
return toAjax(tpOrderPayService.insertByBo(bo));
}
/**
* 修改订单支付记录
*/
@SaCheckPermission("work:orderPay:edit")
@Log(title = "订单支付记录", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderPayBo bo) {
return toAjax(tpOrderPayService.updateByBo(bo));
}
/**
* 删除订单支付记录
*
* @param ids 主键串
*/
@SaCheckPermission("work:orderPay:remove")
@Log(title = "订单支付记录", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderPayService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderRecordBo;
import org.dromara.work.domain.vo.TpOrderRecordVo;
import org.dromara.work.service.ITpOrderRecordService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 操作历史
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/orderRecord")
public class TpOrderRecordController extends BaseController {
private final ITpOrderRecordService tpOrderRecordService;
/**
* 查询操作历史列表
*/
@SaCheckPermission("work:orderRecord:list")
@GetMapping("/list")
public TableDataInfo<TpOrderRecordVo> list(TpOrderRecordBo bo, PageQuery pageQuery) {
return tpOrderRecordService.queryPageList(bo, pageQuery);
}
/**
* 导出操作历史列表
*/
@SaCheckPermission("work:orderRecord:export")
@Log(title = "操作历史", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderRecordBo bo, HttpServletResponse response) {
List<TpOrderRecordVo> list = tpOrderRecordService.queryList(bo);
ExcelUtil.exportExcel(list, "操作历史", TpOrderRecordVo.class, response);
}
/**
* 获取操作历史详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:orderRecord:query")
@GetMapping("/{id}")
public R<TpOrderRecordVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderRecordService.queryById(id));
}
/**
* 新增操作历史
*/
@SaCheckPermission("work:orderRecord:add")
@Log(title = "操作历史", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderRecordBo bo) {
return toAjax(tpOrderRecordService.insertByBo(bo));
}
/**
* 修改操作历史
*/
@SaCheckPermission("work:orderRecord:edit")
@Log(title = "操作历史", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderRecordBo bo) {
return toAjax(tpOrderRecordService.updateByBo(bo));
}
/**
* 删除操作历史
*
* @param ids 主键串
*/
@SaCheckPermission("work:orderRecord:remove")
@Log(title = "操作历史", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderRecordService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpOrderSmallBo;
import org.dromara.work.domain.vo.TpOrderSmallVo;
import org.dromara.work.service.ITpOrderSmallService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 订单小图
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/orderSmall")
public class TpOrderSmallController extends BaseController {
private final ITpOrderSmallService tpOrderSmallService;
/**
* 查询订单小图列表
*/
@SaCheckPermission("work:orderSmall:list")
@GetMapping("/list")
public TableDataInfo<TpOrderSmallVo> list(TpOrderSmallBo bo, PageQuery pageQuery) {
return tpOrderSmallService.queryPageList(bo, pageQuery);
}
/**
* 导出订单小图列表
*/
@SaCheckPermission("work:orderSmall:export")
@Log(title = "订单小图", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpOrderSmallBo bo, HttpServletResponse response) {
List<TpOrderSmallVo> list = tpOrderSmallService.queryList(bo);
ExcelUtil.exportExcel(list, "订单小图", TpOrderSmallVo.class, response);
}
/**
* 获取订单小图详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:orderSmall:query")
@GetMapping("/{id}")
public R<TpOrderSmallVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpOrderSmallService.queryById(id));
}
/**
* 新增订单小图
*/
@SaCheckPermission("work:orderSmall:add")
@Log(title = "订单小图", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpOrderSmallBo bo) {
return toAjax(tpOrderSmallService.insertByBo(bo));
}
/**
* 修改订单小图
*/
@SaCheckPermission("work:orderSmall:edit")
@Log(title = "订单小图", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpOrderSmallBo bo) {
return toAjax(tpOrderSmallService.updateByBo(bo));
}
/**
* 删除订单小图
*
* @param ids 主键串
*/
@SaCheckPermission("work:orderSmall:remove")
@Log(title = "订单小图", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpOrderSmallService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,113 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpPanoramaVo;
import org.dromara.work.domain.bo.TpPanoramaBo;
import org.dromara.work.service.ITpPanoramaService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 全景
*
* @author Maosw
* @date 2025-03-26
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/panorama")
public class TpPanoramaController extends BaseController {
private final ITpPanoramaService tpPanoramaService;
/**
* 查询全景列表
*/
@SaCheckPermission("work:panorama:list")
@GetMapping("/list")
public TableDataInfo<TpPanoramaVo> list(TpPanoramaBo bo, PageQuery pageQuery) {
return tpPanoramaService.queryPageList(bo, pageQuery);
}
/**
* 根据订单ID查询全景列表
*/
@GetMapping("/listByOrderId")
public R<List<TpPanoramaVo>> listByOrderId(TpPanoramaBo bo) {
return R.ok(tpPanoramaService.queryList(bo));
}
/**
* 导出全景列表
*/
@SaCheckPermission("work:panorama:export")
@Log(title = "全景", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpPanoramaBo bo, HttpServletResponse response) {
List<TpPanoramaVo> list = tpPanoramaService.queryList(bo);
ExcelUtil.exportExcel(list, "全景", TpPanoramaVo.class, response);
}
/**
* 获取全景详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:panorama:query")
@GetMapping("/{id}")
public R<TpPanoramaVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpPanoramaService.queryById(id));
}
/**
* 新增全景
*/
@SaCheckPermission("work:panorama:add")
@Log(title = "全景", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpPanoramaBo bo) {
return toAjax(tpPanoramaService.insertByBo(bo));
}
/**
* 修改全景
*/
@SaCheckPermission("work:panorama:edit")
@Log(title = "全景", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpPanoramaBo bo) {
return toAjax(tpPanoramaService.updateByBo(bo));
}
/**
* 删除全景
*
* @param ids 主键串
*/
@SaCheckPermission("work:panorama:remove")
@Log(title = "全景", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpPanoramaService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpPictureBo;
import org.dromara.work.domain.vo.TpPictureVo;
import org.dromara.work.service.ITpPictureService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 轮播/作品/动态
*
* @author Maosw
* @date 2025-02-26
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/picture")
public class TpPictureController extends BaseController {
private final ITpPictureService TpPictureService;
/**
* 查询 轮播/作品/动态列表
*/
@SaCheckPermission("work:picture:list")
@GetMapping("/list")
public TableDataInfo<TpPictureVo> list(TpPictureBo bo, PageQuery pageQuery) {
return TpPictureService.queryPageList(bo, pageQuery);
}
/**
* 导出 轮播/作品/动态列表
*/
@SaCheckPermission("work:picture:export")
@Log(title = "轮播/作品/动态", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpPictureBo bo, HttpServletResponse response) {
List<TpPictureVo> list = TpPictureService.queryList(bo);
ExcelUtil.exportExcel(list, "轮播/作品/动态", TpPictureVo.class, response);
}
/**
* 获取 轮播/作品/动态详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:picture:query")
@GetMapping("/{id}")
public R<TpPictureVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(TpPictureService.queryById(id));
}
/**
* 新增 轮播/作品/动态
*/
@SaCheckPermission("work:picture:add")
@Log(title = "轮播/作品/动态", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Long> add(@Validated(AddGroup.class) @RequestBody TpPictureBo bo) {
return R.ok(TpPictureService.insertByBo(bo));
}
/**
* 修改 轮播/作品/动态
*/
@SaCheckPermission("work:picture:edit")
@Log(title = "轮播/作品/动态", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpPictureBo bo) {
return toAjax(TpPictureService.updateByBo(bo));
}
/**
* 删除 轮播/作品/动态
*
* @param ids 主键串
*/
@SaCheckPermission("work:picture:remove")
@Log(title = "轮播/作品/动态", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(TpPictureService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpProdBo;
import org.dromara.work.domain.vo.TpProdVo;
import org.dromara.work.service.ITpProdService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 商品
*
* @author Maosw
* @date 2025-03-15
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/prod")
public class TpProdController extends BaseController {
private final ITpProdService tpProdService;
/**
* 查询商品列表
*/
@SaCheckPermission("work:prod:list")
@GetMapping("/list")
public TableDataInfo<TpProdVo> list(TpProdBo bo, PageQuery pageQuery) {
return tpProdService.queryPageList(bo, pageQuery);
}
/**
* 导出商品列表
*/
@SaCheckPermission("work:prod:export")
@Log(title = "商品", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpProdBo bo, HttpServletResponse response) {
List<TpProdVo> list = tpProdService.queryList(bo);
ExcelUtil.exportExcel(list, "商品", TpProdVo.class, response);
}
/**
* 获取商品详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:prod:query")
@GetMapping("/{id}")
public R<TpProdVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpProdService.queryById(id));
}
/**
* 新增商品
*/
@SaCheckPermission("work:prod:add")
@Log(title = "商品", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpProdBo bo) {
return toAjax(tpProdService.insertByBo(bo));
}
/**
* 修改商品
*/
@SaCheckPermission("work:prod:edit")
@Log(title = "商品", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpProdBo bo) {
return toAjax(tpProdService.updateByBo(bo));
}
/**
* 删除商品
*
* @param ids 主键串
*/
@SaCheckPermission("work:prod:remove")
@Log(title = "商品", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpProdService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,178 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.util.ObjectUtil;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.domain.dto.RoleDTO;
import org.dromara.common.core.domain.model.LoginUser;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpReceiptBo;
import org.dromara.work.domain.vo.ReceiptSumVo;
import org.dromara.work.domain.vo.TpReceiptVo;
import org.dromara.work.service.ITpReceiptService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.concurrent.TimeUnit;
/**
* 收款管理
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/receipt")
public class TpReceiptController extends BaseController {
private final ITpReceiptService tpReceiptService;
/**
* 查询收款管理列表
*/
@SaCheckPermission("work:receipt:list")
@GetMapping("/list")
public TableDataInfo<TpReceiptVo> list(TpReceiptBo bo, PageQuery pageQuery) {
LoginUser loginUser = LoginHelper.getLoginUser();
if(loginUser.getIdentity() == 2){
throw new ServiceException("您无权限查看汇款信息");
}
return tpReceiptService.queryPageList(bo, pageQuery);
}
/**
* 查询收款统计信息
*/
@SaCheckPermission("work:receiptSum:list")
@GetMapping("/receiptSum")
public R<ReceiptSumVo> receiptSum(TpReceiptBo bo) {
LoginUser loginUser = LoginHelper.getLoginUser();
if(loginUser.getIdentity() == 2){
throw new ServiceException("您无权限查看汇款信息");
}
return R.ok(tpReceiptService.queryListSum(bo));
}
/**
* 导出收款管理列表
*/
@SaCheckPermission("work:receipt:export")
@Log(title = "收款管理", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpReceiptBo bo, HttpServletResponse response) {
LoginUser loginUser = LoginHelper.getLoginUser();
if(loginUser.getIdentity() == 2){
throw new ServiceException("您无权限查看汇款信息");
}
List<TpReceiptVo> list = tpReceiptService.queryList(bo);
ExcelUtil.exportExcel(list, "收款管理", TpReceiptVo.class, response);
}
/**
* 获取收款管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:receipt:query")
@GetMapping("/{id}")
public R<TpReceiptVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpReceiptService.queryById(id));
}
/**
* 新增收款管理
*/
@SaCheckPermission("work:receipt:add")
@Log(title = "收款管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpReceiptBo bo) {
return toAjax(tpReceiptService.insertByBo(bo));
}
/**
* 修改收款管理
*/
/*@SaCheckPermission("work:receipt:edit")
@Log(title = "收款管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpReceiptBo bo) {
return toAjax(tpReceiptService.updateByBo(bo));
}*/
/**
* 认领汇款
*/
@SaCheckPermission("work:receipt:claim")
@Log(title = "认领汇款", businessType = BusinessType.UPDATE)
@PostMapping("/claim")
@RepeatSubmit(interval = 5,timeUnit = TimeUnit.SECONDS,message = "不允许重复提交")
public R<Void> claim(@RequestBody TpReceiptBo bo) {
if(ObjectUtil.isNull(bo.getCid())){
return R.fail("客户ID不能为空");
}
LoginUser loginUser = LoginHelper.getLoginUser();
List<RoleDTO> list1 = loginUser.getRoles();
boolean isRole = list1.stream().anyMatch(role -> role.getRoleId() == 1 || role.getRoleId() == 2);
if(!isRole){
if(loginUser.getIdentity() == 2){
throw new ServiceException("您无认领汇款权限");
}
}
return toAjax(tpReceiptService.updateClaimByBo(bo));
}
/**
* 回退汇款
*/
@SaCheckPermission("work:receipt:back")
@Log(title = "回退汇款", businessType = BusinessType.UPDATE)
@PostMapping("/back")
@RepeatSubmit(interval = 5,timeUnit = TimeUnit.SECONDS,message = "不允许重复提交")
public R<Void> back(@RequestBody TpReceiptBo bo) {
/*LoginUser loginUser = LoginHelper.getLoginUser();
List<RoleDTO> list1 = loginUser.getRoles();
boolean isRole = list1.stream().anyMatch(role -> role.getRoleId() == 1 || role.getRoleId() == 2);
if(!isRole){
if(loginUser.getIdentity() == 2 || loginUser.getIdentity() == 3 || loginUser.getIdentity() == 4){
throw new ServiceException("您无回退汇款权限");
}
}*/
return toAjax(tpReceiptService.updateBackByBo(bo));
}
/**
* 作废汇款
*
* @param ids 主键串
*/
@SaCheckPermission("work:receipt:remove")
@Log(title = "作废汇款", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpReceiptService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpUserAuthVo;
import org.dromara.work.domain.bo.TpUserAuthBo;
import org.dromara.work.service.ITpUserAuthService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 用户认证
*
* @author Maosw
* @date 2025-04-11
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/userAuth")
public class TpUserAuthController extends BaseController {
private final ITpUserAuthService tpUserAuthService;
/**
* 查询用户认证列表
*/
@SaCheckPermission("work:userAuth:list")
@GetMapping("/list")
public TableDataInfo<TpUserAuthVo> list(TpUserAuthBo bo, PageQuery pageQuery) {
return tpUserAuthService.queryPageList(bo, pageQuery);
}
/**
* 导出用户认证列表
*/
@SaCheckPermission("work:userAuth:export")
@Log(title = "用户认证", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpUserAuthBo bo, HttpServletResponse response) {
List<TpUserAuthVo> list = tpUserAuthService.queryList(bo);
ExcelUtil.exportExcel(list, "用户认证", TpUserAuthVo.class, response);
}
/**
* 获取用户认证详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:userAuth:query")
@GetMapping("/{id}")
public R<TpUserAuthVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpUserAuthService.queryById(id));
}
/**
* 新增用户认证
*/
@SaCheckPermission("work:userAuth:add")
@Log(title = "用户认证", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpUserAuthBo bo) {
return toAjax(tpUserAuthService.insertByBo(bo));
}
/**
* 修改用户认证
*/
@SaCheckPermission("work:userAuth:edit")
@Log(title = "用户认证", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpUserAuthBo bo) {
return toAjax(tpUserAuthService.updateByBo(bo));
}
/**
* 删除用户认证
*
* @param ids 主键串
*/
@SaCheckPermission("work:userAuth:remove")
@Log(title = "用户认证", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpUserAuthService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpUserRecordVo;
import org.dromara.work.domain.bo.TpUserRecordBo;
import org.dromara.work.service.ITpUserRecordService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 用户自己记录
*
* @author Maosw
* @date 2025-04-14
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/userRecord")
public class TpUserRecordController extends BaseController {
private final ITpUserRecordService tpUserRecordService;
/**
* 查询用户自己记录列表
*/
@SaCheckPermission("work:userRecord:list")
@GetMapping("/list")
public TableDataInfo<TpUserRecordVo> list(TpUserRecordBo bo, PageQuery pageQuery) {
return tpUserRecordService.queryPageList(bo, pageQuery);
}
/**
* 导出用户自己记录列表
*/
@SaCheckPermission("work:userRecord:export")
@Log(title = "用户自己记录", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpUserRecordBo bo, HttpServletResponse response) {
List<TpUserRecordVo> list = tpUserRecordService.queryList(bo);
ExcelUtil.exportExcel(list, "用户自己记录", TpUserRecordVo.class, response);
}
/**
* 获取用户自己记录详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:userRecord:query")
@GetMapping("/{id}")
public R<TpUserRecordVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpUserRecordService.queryById(id));
}
/**
* 新增用户自己记录
*/
@SaCheckPermission("work:userRecord:add")
@Log(title = "用户自己记录", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpUserRecordBo bo) {
return toAjax(tpUserRecordService.insertByBo(bo));
}
/**
* 修改用户自己记录
*/
@SaCheckPermission("work:userRecord:edit")
@Log(title = "用户自己记录", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpUserRecordBo bo) {
return toAjax(tpUserRecordService.updateByBo(bo));
}
/**
* 删除用户自己记录
*
* @param ids 主键串
*/
@SaCheckPermission("work:userRecord:remove")
@Log(title = "用户自己记录", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpUserRecordService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,146 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.domain.model.LoginUser;
import org.dromara.common.core.exception.ServiceException;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpWechatBo;
import org.dromara.work.domain.vo.TpWechatVo;
import org.dromara.work.domain.vo.WechatSumVo;
import org.dromara.work.service.ITpWechatService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 微信管理
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/wechat")
public class TpWechatController extends BaseController {
private final ITpWechatService tpWechatService;
/**
* 查询微信管理列表
*/
@SaCheckPermission("work:wechat:list")
@GetMapping("/list")
public TableDataInfo<TpWechatVo> list(TpWechatBo bo, PageQuery pageQuery) {
return tpWechatService.queryPageList(bo, pageQuery);
}
/**
* 查询微信统计
*/
@SaCheckPermission("work:wechat:sum")
@GetMapping("/wechatSum")
public R<WechatSumVo> wechatSum(TpWechatBo bo) {
/*LoginUser loginUser = LoginHelper.getLoginUser();
if(!LoginHelper.isSuperAdmin()){
if(loginUser.getIdentity() == 2){
throw new ServiceException("您无权限查看微信信息");
} else if (loginUser.getIdentity() == 3) {
bo.setUid(loginUser.getUserId());
}
}*/
return R.ok(tpWechatService.queryListSum(bo));
}
/**
* 导出客户微信
*/
@SaCheckPermission("work:wechat:export")
@Log(title = "导出客户微信", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpWechatBo bo, HttpServletResponse response) {
LoginUser loginUser = LoginHelper.getLoginUser();
if(!LoginHelper.isSuperAdmin()){
bo.setUid(loginUser.getUserId());
}
List<TpWechatVo> list = tpWechatService.queryList(bo);
ExcelUtil.exportExcel(list, "客户微信导出", TpWechatVo.class, response);
}
/**
* 获取微信管理详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:wechat:query")
@GetMapping("/{id}")
public R<TpWechatVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpWechatService.queryById(id));
}
/**
* 新增微信管理
*/
@SaCheckPermission("work:wechat:add")
@Log(title = "微信管理", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpWechatBo bo) {
return toAjax(tpWechatService.insertByBo(bo));
}
/**
* 修改微信管理
*/
@SaCheckPermission("work:wechat:edit")
@Log(title = "微信管理", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpWechatBo bo) {
return toAjax(tpWechatService.updateByBo(bo));
}
/**
* 修改使用人
*/
@SaCheckPermission("work:wechat:editUser")
@Log(title = "修改使用人", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PostMapping("/editUser")
public R<Void> editUser(@Validated(EditGroup.class) @RequestBody TpWechatBo bo) {
return toAjax(tpWechatService.updateUserByBo(bo));
}
/**
* 删除微信管理
*
* @param ids 主键串
*/
@SaCheckPermission("work:wechat:remove")
@Log(title = "微信管理", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpWechatService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpWechatNumBo;
import org.dromara.work.domain.vo.TpWechatNumVo;
import org.dromara.work.service.ITpWechatNumService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 更新好友数记录
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/wechatNum")
public class TpWechatNumController extends BaseController {
private final ITpWechatNumService tpWechatNumService;
/**
* 查询更新好友数记录列表
*/
@SaCheckPermission("work:wechatNum:list")
@GetMapping("/list")
public TableDataInfo<TpWechatNumVo> list(TpWechatNumBo bo, PageQuery pageQuery) {
return tpWechatNumService.queryPageList(bo, pageQuery);
}
/**
* 导出更新好友数记录列表
*/
@SaCheckPermission("work:wechatNum:export")
@Log(title = "更新好友数记录", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpWechatNumBo bo, HttpServletResponse response) {
List<TpWechatNumVo> list = tpWechatNumService.queryList(bo);
ExcelUtil.exportExcel(list, "更新好友数记录", TpWechatNumVo.class, response);
}
/**
* 获取更新好友数记录详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:wechatNum:query")
@GetMapping("/{id}")
public R<TpWechatNumVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpWechatNumService.queryById(id));
}
/**
* 新增更新好友数记录
*/
@SaCheckPermission("work:wechatNum:add")
@Log(title = "更新好友数记录", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpWechatNumBo bo) {
return toAjax(tpWechatNumService.insertByBo(bo));
}
/**
* 修改更新好友数记录
*/
@SaCheckPermission("work:wechatNum:edit")
@Log(title = "更新好友数记录", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpWechatNumBo bo) {
return toAjax(tpWechatNumService.updateByBo(bo));
}
/**
* 删除更新好友数记录
*
* @param ids 主键串
*/
@SaCheckPermission("work:wechatNum:remove")
@Log(title = "更新好友数记录", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpWechatNumService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpWechatUserBo;
import org.dromara.work.domain.vo.TpWechatUserVo;
import org.dromara.work.service.ITpWechatUserService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 微信使用人修改历史
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/wechatUser")
public class TpWechatUserController extends BaseController {
private final ITpWechatUserService tpWechatUserService;
/**
* 查询微信使用人修改历史列表
*/
@SaCheckPermission("work:wechatUser:list")
@GetMapping("/list")
public TableDataInfo<TpWechatUserVo> list(TpWechatUserBo bo, PageQuery pageQuery) {
return tpWechatUserService.queryPageList(bo, pageQuery);
}
/**
* 导出微信使用人修改历史列表
*/
@SaCheckPermission("work:wechatUser:export")
@Log(title = "微信使用人修改历史", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpWechatUserBo bo, HttpServletResponse response) {
List<TpWechatUserVo> list = tpWechatUserService.queryList(bo);
ExcelUtil.exportExcel(list, "微信使用人修改历史", TpWechatUserVo.class, response);
}
/**
* 获取微信使用人修改历史详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:wechatUser:query")
@GetMapping("/{id}")
public R<TpWechatUserVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpWechatUserService.queryById(id));
}
/**
* 新增微信使用人修改历史
*/
@SaCheckPermission("work:wechatUser:add")
@Log(title = "微信使用人修改历史", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpWechatUserBo bo) {
return toAjax(tpWechatUserService.insertByBo(bo));
}
/**
* 修改微信使用人修改历史
*/
@SaCheckPermission("work:wechatUser:edit")
@Log(title = "微信使用人修改历史", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpWechatUserBo bo) {
return toAjax(tpWechatUserService.updateByBo(bo));
}
/**
* 删除微信使用人修改历史
*
* @param ids 主键串
*/
@SaCheckPermission("work:wechatUser:remove")
@Log(title = "微信使用人修改历史", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpWechatUserService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.controller;
import java.util.List;
import lombok.RequiredArgsConstructor;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.*;
import cn.dev33.satoken.annotation.SaCheckPermission;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.web.core.BaseController;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.work.domain.vo.TpWorksNumVo;
import org.dromara.work.domain.bo.TpWorksNumBo;
import org.dromara.work.service.ITpWorksNumService;
import org.dromara.common.mybatis.core.page.TableDataInfo;
/**
* 作品点赞收藏
*
* @author Maosw
* @date 2025-04-11
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/worksNum")
public class TpWorksNumController extends BaseController {
private final ITpWorksNumService tpWorksNumService;
/**
* 查询作品点赞收藏列表
*/
@SaCheckPermission("work:worksNum:list")
@GetMapping("/list")
public TableDataInfo<TpWorksNumVo> list(TpWorksNumBo bo, PageQuery pageQuery) {
return tpWorksNumService.queryPageList(bo, pageQuery);
}
/**
* 导出作品点赞收藏列表
*/
@SaCheckPermission("work:worksNum:export")
@Log(title = "作品点赞收藏", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpWorksNumBo bo, HttpServletResponse response) {
List<TpWorksNumVo> list = tpWorksNumService.queryList(bo);
ExcelUtil.exportExcel(list, "作品点赞收藏", TpWorksNumVo.class, response);
}
/**
* 获取作品点赞收藏详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:worksNum:query")
@GetMapping("/{id}")
public R<TpWorksNumVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpWorksNumService.queryById(id));
}
/**
* 新增作品点赞收藏
*/
@SaCheckPermission("work:worksNum:add")
@Log(title = "作品点赞收藏", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpWorksNumBo bo) {
return toAjax(tpWorksNumService.insertByBo(bo));
}
/**
* 修改作品点赞收藏
*/
@SaCheckPermission("work:worksNum:edit")
@Log(title = "作品点赞收藏", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpWorksNumBo bo) {
return toAjax(tpWorksNumService.updateByBo(bo));
}
/**
* 删除作品点赞收藏
*
* @param ids 主键串
*/
@SaCheckPermission("work:worksNum:remove")
@Log(title = "作品点赞收藏", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpWorksNumService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,106 @@
package org.dromara.work.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import jakarta.servlet.http.HttpServletResponse;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.RequiredArgsConstructor;
import org.dromara.common.core.domain.R;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.excel.utils.ExcelUtil;
import org.dromara.common.idempotent.annotation.RepeatSubmit;
import org.dromara.common.log.annotation.Log;
import org.dromara.common.log.enums.BusinessType;
import org.dromara.common.mybatis.core.page.PageQuery;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.web.core.BaseController;
import org.dromara.work.domain.bo.TpYearBo;
import org.dromara.work.domain.vo.TpYearVo;
import org.dromara.work.service.ITpYearService;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 年目标
*
* @author Maosw
* @date 2024-08-12
*/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/work/year")
public class TpYearController extends BaseController {
private final ITpYearService tpYearService;
/**
* 查询年目标列表
*/
@SaCheckPermission("work:year:list")
@GetMapping("/list")
public TableDataInfo<TpYearVo> list(TpYearBo bo, PageQuery pageQuery) {
return tpYearService.queryPageList(bo, pageQuery);
}
/**
* 导出年目标列表
*/
@SaCheckPermission("work:year:export")
@Log(title = "年目标", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(TpYearBo bo, HttpServletResponse response) {
List<TpYearVo> list = tpYearService.queryList(bo);
ExcelUtil.exportExcel(list, "年目标", TpYearVo.class, response);
}
/**
* 获取年目标详细信息
*
* @param id 主键
*/
@SaCheckPermission("work:year:query")
@GetMapping("/{id}")
public R<TpYearVo> getInfo(@NotNull(message = "主键不能为空")
@PathVariable Long id) {
return R.ok(tpYearService.queryById(id));
}
/**
* 新增年目标
*/
@SaCheckPermission("work:year:add")
@Log(title = "年目标", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody TpYearBo bo) {
return toAjax(tpYearService.insertByBo(bo));
}
/**
* 修改年目标
*/
@SaCheckPermission("work:year:edit")
@Log(title = "年目标", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody TpYearBo bo) {
return toAjax(tpYearService.updateByBo(bo));
}
/**
* 删除年目标
*
* @param ids 主键串
*/
@SaCheckPermission("work:year:remove")
@Log(title = "年目标", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public R<Void> remove(@NotEmpty(message = "主键不能为空")
@PathVariable Long[] ids) {
return toAjax(tpYearService.deleteWithValidByIds(List.of(ids), true));
}
}

View File

@@ -0,0 +1,93 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 订单投诉对象 tp_appeals
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_appeals")
public class TpAppeals extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private Long id;
/**
* 订单ID
*/
private Long orderId;
/**
* 申诉发起人用户ID
*/
private Long userId;
/**
* 被申诉人用户ID
*/
private Long toUserId;
/**
* 申诉类型1-订单问题2-服务问题3-其他
*/
private Integer type;
/**
* 申诉原因简述
*/
private String reason;
/**
* 申诉详细说明
*/
private String description;
/**
* 申诉证据图片URL列表JSON数组格式
*/
private String imgs;
/**
* 申诉处理状态0-待处理1-处理中2-已处理3-已拒绝
*/
private Integer status;
/**
* 处理结果说明,客服处理后的反馈
*/
private String result;
/**
* 处理申诉的管理员ID
*/
private Long handlerId;
/**
* 申诉处理完成时间
*/
private Date handledTime;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,46 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 屏蔽拉黑对象 tp_block
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_block")
public class TpBlock {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id")
private Long id;
/**
* 用户ID
*/
private Long userId;
/**
* 被关注用户ID
*/
private Long toUserId;
/**
* 类型 1-屏蔽 2-拉黑
*/
private Integer type;
}

View File

@@ -0,0 +1,66 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 作品类目对象 tp_category
*
* @author Maosw
* @date 2025-04-11
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_category")
public class TpCategory extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "id")
private Long id;
/**
* 父节点
*/
private Long parentId;
/**
* 类目名称
*/
private String name;
/**
* 类目图标
*/
private String icon;
/**
* 类目的显示图片
*/
private String pic;
/**
* 状态1正常 0关闭
*/
private Integer status;
/**
* 排序
*/
private Integer sort;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,176 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;
/**
* 客户对象 tp_client
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_client")
public class TpClient {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属用户
*/
private Long uid;
/**
* 客服编号
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private String sname;
/**
* 客户编号
*/
private String code;
/**
* 客户姓名
*/
private String name;
/**
* 电话号码
*/
private String phone;
/**
* 性别
*/
private String sex;
/**
* 客户类型
*/
private Long type;
/**
* 主营业务类型
*/
private Long ywtype;
/**
* 状态1=正常2=禁用)
*/
private Long state;
/**
* 备注
*/
private String remark;
/**
* 录入时间
*/
private Date addTime;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
/**
* 会员到期时间
*/
private Long vipEnd;
/**
* 操作人
*/
private String addUser;
/**
* 会员等级
*/
private Long vip;
/**
* 余额
*/
private BigDecimal yue;
/**
* 总消费
*/
private BigDecimal allPrice;
/**
* 改图会员
*/
private Long gtVip;
/**
* 健康状态
*/
private Integer health;
/**
* 省
*/
private String province;
/**
* 市
*/
private String city;
/**
* 地区
*/
private String area;
/**
* 积分
*/
private Long integral;
/**
* 订单数量
*/
// private Long count;
/**
* 下单总额
*/
private BigDecimal price;
/**
* 实付余额
*/
private BigDecimal payPrice;
/**
* 未付余额
*/
private BigDecimal noPrice;
/**
* 到款率
*/
private Long lv;
}

View File

@@ -0,0 +1,73 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;
/**
* 客户+客服对象 tp_client_staff
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_client_staff")
public class TpClientStaff {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属客服
*/
private Long sid;
/**
* 客服名称
*/
private String sname;
/**
* 所属客户
*/
private Long kid;
/**
* 客户姓名
*/
private String name;
/**
* 备注
*/
private String remark;
/**
* 余额
*/
private BigDecimal yue;
/**
* 录入时间
*/
private Date addTime;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
}

View File

@@ -0,0 +1,79 @@
package org.dromara.work.domain;
import jakarta.validation.constraints.NotNull;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 评论对象 tp_comments
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_comments")
public class TpComments extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "id")
private Long id;
/**
* 作品动态ID
*/
private Long pictureId;
/**
* 用户ID
*/
private Long userId;
/**
* 被回复用户
*/
private Long toUserId;
/**
* 父评论 ID
*/
private Long parentId;
/**
* 评论内容
*/
private String content;
/**
* 点赞数
*/
private Integer num;
/**
* 子评论数量
*/
private Integer subset;
/**
* 类型 1-作品 2-动态
*/
private Integer type;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,82 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.io.Serial;
/**
* 报价对象 tp_design_quotes
*
* @author Maosw
* @date 2025-03-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_design_quotes")
public class TpDesignQuotes extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键
*/
@TableId(value = "id")
private Long id;
/**
* 客服ID
*/
private Long sid;
/**
* 客服名称
*/
private String sName;
/**
* 项目名称
*/
private String projectName;
/**
* 客户名称
*/
private String clientName;
/**
* 订单JSON详细
*/
private String orderInfo;
/**
* 总计图数
*/
private Integer totalImages;
/**
* 总计金额
*/
private BigDecimal totalAmount;
/**
* 定金
*/
private BigDecimal deposit;
/**
* 备注
*/
private String remark;
/**
* 租户 1-设计甄选 2-制图工厂 3-室内联盟
*/
private Integer tenant;
}

View File

@@ -0,0 +1,46 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 动态点赞收藏对象 tp_dynamics_num
*
* @author Maosw
* @date 2025-04-11
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_dynamics_num")
public class TpDynamicsNum {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id")
private Long id;
/**
* 用户ID
*/
private Long userId;
/**
* 动态ID
*/
private Long pictureId;
/**
* 类型 1-点赞 2-收藏
*/
private Integer type;
}

View File

@@ -0,0 +1,41 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 关注对象 tp_follow
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_follow")
public class TpFollow {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id")
private Long id;
/**
* 用户ID
*/
private Long userId;
/**
* 被关注用户ID
*/
private Long toUserId;
}

View File

@@ -0,0 +1,76 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 消息对象 tp_message
*
* @author Maosw
* @date 2025-04-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_message")
public class TpMessage extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 消息ID
*/
@TableId(value = "id")
private Long id;
/**
* 发送者ID
*/
private Long userId;
/**
* 接收者ID
*/
private Long toUserId;
/**
* 订单ID
*/
private Long orderId;
/**
* 订单编号
*/
private String orderNum;
/**
* 作品ID
*/
private Long pictureId;
/**
* 消息内容
*/
private String content;
/**
* 消息类型 1-订单消息 2-互动消息
*/
private Integer type;
/**
* 消息状态1-已发送2-已读)
*/
private Integer status;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,60 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.util.Date;
/**
* 月目标对象 tp_month
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_month")
public class TpMonth {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 人员
*/
private Long sid;
/**
* 月
*/
private String month;
/**
* 个人目标
*/
private Long geren;
/**
* 公司目标
*/
private Long gongsi;
/**
* 创建时间
*/
private Date addTime;
private Long deptId;
private String ancestors;
}

View File

@@ -0,0 +1,81 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 新闻活动对象 tp_news
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_news")
public class TpNews extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "id")
private Long id;
/**
* 分类 1-新闻 2-活动
*/
private Integer type;
/**
* 标题
*/
private String title;
/**
* 封面图片
*/
private String icon;
/**
* 图片集JSON
*/
private String imgs;
/**
* 内容
*/
private String content;
/**
* 跳转地址
*/
private String url;
/**
* 状态1正常 0关闭
*/
private Integer status;
/**
* 排序
*/
private Long sort;
/**
* 浏览量
*/
private Long num;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,294 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;
/**
* 订单管理对象 tp_order
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_order")
public class TpOrder {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 订单编号
*/
private String orderId;
/**
* 订单客户
*/
private Long kid;
/**
* 订单微信
*/
private Long wid;
/**
* 订单风格
*/
private Long style;
/**
* 订单空间
*/
private String space;
/**
* 订单品质
*/
private Long quality;
/**
* 备注
*/
private String remark;
/**
* 订单类型
*/
private Long type;
/**
* 状态(1-默认 2-退款待确认 3-已退款 4-已拒绝)
*/
private Integer state;
/**
* 图纸数量
*/
private Long num;
/**
* 接待客服
*/
private Long sid;
/**
* 分图人员
*/
private Long fid;
/**
* 表现师编号
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Long bid;
/**
* 订单价格
*/
private BigDecimal price;
/**
* 定金
*/
private BigDecimal djPrice;
/**
* 技术备注
*/
private String jsRemark;
/**
* 支付状态1=待支付2=尾款待支付3=已支付)
*/
private Integer payState;
/**
* 订单状态1-待支付 2-待接单 3-待确认 4-进行中 5-待评价 6-已完成 7-已取消)
*/
private Integer status;
/**
* 已付款
*/
private BigDecimal payPrice;
/**
* 尾款
*/
private BigDecimal endPrice;
/**
* 改价价格
*/
private BigDecimal gjPrice;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
/**
* 下单时间
*/
private Date addTime;
/**
* 对图时间
*/
private Date dtTime;
/**
* 定金支付时间
*/
private Date djpTime;
/**
* 尾款支付时间
*/
private Date endpTime;
/**
* 完成时间
*/
private Date finishTime;
/**
* 拆单价格
*/
private BigDecimal cdPrice;
/**
* 技术订单价格
*/
private BigDecimal jsPrice;
/**
* 技术已付款
*/
private BigDecimal jsPayPrice;
/**
* 是否自动改价1=否2=是)
*/
private Integer isC;
/**
* 自动改价价格
*/
private BigDecimal zGjPrice;
/**
* 客户已付款
*/
private BigDecimal khpay;
/**
* 改价已付款
*/
private BigDecimal gpay;
/**
* 是否拆单1=否2=是)
*/
private Integer isCd;
/**
* 客服已付款
*/
private BigDecimal kfpay;
private Long deptId;
private String ancestors;
private Long deptIdJs;
private String ancestorsJs;
/**
* 客户客服ID
*/
private Long skid;
/**
* 分类ID
*/
private Long categoryId;
/**
* 分类名称
*/
private String categoryName;
/**
* 标记 1-普通 2-高端 3-酷家乐
*/
private Integer flag;
/**
* 图片素材
*/
private String imgs;
/**
* 订单内容
*/
private String content;
/**
* 评价评分
*/
private Double score;
/**
* 评价内容
*/
private String scoreContent;
/**
* 接待客服名称
*/
// private String sname;
/**
* 分图员名称
*/
// private String fname;
/**
* 表现师名称
*/
// private String bname;
/**
* 客户名称
*/
// private String cname;
/**
* 微信昵称
*/
// private String wname;
/**
* 已付比例
*/
// private String bili;
}

View File

@@ -0,0 +1,67 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.util.Date;
/**
* 订单大图对象 tp_order_big
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_order_big")
public class TpOrderBig {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属订单
*/
private Long oid;
/**
* 图片类型1=平面大图2全景大图
*/
private Long type;
/**
* 图片名称
*/
private String name;
/**
* 图片地址
*/
private String pic;
/**
* 全景地址
*/
private String link;
/**
* 上传时间
*/
private Date addTime;
/**
* 操作人
*/
private Long addUser;
}

View File

@@ -0,0 +1,53 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import java.io.Serial;
import java.math.BigDecimal;
/**
* 拆单记录对象 tp_order_cd
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_order_cd")
public class TpOrderCd extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属订单
*/
private Long oid;
/**
* 订单价格
*/
private BigDecimal price;
/**
* 下单时间
*/
private Long addTime;
/**
* 操作人
*/
private Long addUser;
}

View File

@@ -0,0 +1,78 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import java.io.Serial;
import java.util.Date;
/**
* 订单评论对象 tp_order_comment
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_order_comment")
public class TpOrderComment extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属订单
*/
private Long oid;
/**
* 评论人
*/
private Long uid;
/**
* 评价等级1=差评2=中评3=好评)
*/
private Long grade;
/**
* 速度
*/
private Long speed;
/**
* 质量、
*/
private Long quality;
/**
* 服务
*/
private Long serve;
/**
* 评论内容
*/
private String content;
/**
* 评论时间
*/
private Date addTime;
/**
* 提交人类型1=用户2=客服)
*/
private Long type;
}

View File

@@ -0,0 +1,57 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.util.Date;
/**
* 订单模型对象 tp_order_model
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_order_model")
public class TpOrderModel {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属订单
*/
private Long oid;
/**
* 模型名称
*/
private String name;
/**
* 模型地址
*/
private String pic;
/**
* 上传时间
*/
private Date addTime;
/**
* 操作人
*/
private Long addUser;
}

View File

@@ -0,0 +1,105 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 订单支付记录对象 tp_order_pay
*
* @author Maosw
* @date 2025-04-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_order_pay")
public class TpOrderPay extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "id")
private Long id;
/**
* 订单ID
*/
private Long orderId;
/**
* 订单编号
*/
private String orderNum;
/**
* 用户ID
*/
private Long userId;
/**
* 用户姓名
*/
private String userName;
/**
* 用户手机号码
*/
private String userPhone;
/**
* 支付方式 1-拉卡拉 2-余额
*/
private Integer method;
/**
* 支付金额
*/
private BigDecimal amount;
/**
* 支付状态 1-待支付 2-已支付 3-已失效 4-支付失败
*/
private Integer status;
/**
* 支付订单号
*/
private String orderNo;
/**
* 第三方支付流水号
*/
private String transactionId;
/**
* 第三方支付原始数据
*/
private String payerInfo;
/**
* 支付有效期
*/
private Date expireTime;
/**
* 类型 1-订单支付 2-余额充值
*/
private Integer type;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,67 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.util.Date;
/**
* 操作历史对象 tp_order_record
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_order_record")
public class TpOrderRecord {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属订单
*/
private Long oid;
/**
* 操作类型
*/
private String type;
/**
* 操作内容
*/
private String content;
/**
* 操作人
*/
private Long addUser;
/**
* 操作时间
*/
private Date addTime;
/**
* 操作状态1=记录2=节点)
*/
private Integer state;
/**
* json记录
*/
private String record;
}

View File

@@ -0,0 +1,57 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.util.Date;
/**
* 订单小图对象 tp_order_small
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_order_small")
public class TpOrderSmall {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属订单
*/
private Long oid;
/**
* 图片名称
*/
private String name;
/**
* 图片地址
*/
private String pic;
/**
* 上传时间
*/
private Date addTime;
/**
* 操作人
*/
private Long addUser;
}

View File

@@ -0,0 +1,76 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 全景对象 tp_panorama
*
* @author Maosw
* @date 2025-03-26
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_panorama")
public class TpPanorama extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "id")
private Long id;
/**
* 订单ID
*/
private Long orderId;
/**
* 标题
*/
private String title;
/**
* 背景链接
*/
private String url;
/**
* 热点
*/
private String point;
/**
* 样式
*/
private String style;
/**
* 图片
*/
private String imgs;
/**
* 宽度
*/
private Long width;
/**
* 排序
*/
private Integer sort;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,121 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import java.io.Serial;
/**
* 轮播/作品/动态对象 tp_picture
*
* @author Maosw
* @date 2025-02-26
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_picture")
public class TpPicture extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* ID
*/
@TableId(value = "id")
private Long id;
/**
* 用户ID
*/
private Long userId;
/**
* 分类ID
*/
private Long categoryId;
/**
* 分类名称
*/
private String categoryName;
/**
* 是否全景1是 0否
*/
private Integer isPano;
/**
* 分类 1-轮播 2-作品 3-动态
*/
private Long type;
/**
* 标题
*/
private String title;
/**
* 封面图片
*/
private String icon;
/**
* 图片集JSON
*/
private String imgs;
/**
* 跳转地址
*/
private String url;
/**
* 状态1正常 0关闭
*/
private Long status;
/**
* 排序
*/
private Long sort;
/**
* 备注
*/
private String remark;
/**
* 标记 1-普通 2-高端 3-酷家乐
*/
private Integer flag;
/**
* 浏览量
*/
private Long num;
/**
* 租户 1-室内设计 2-制图工厂
*/
private Integer tenant;
/**
* 点赞量
*/
private Integer likeNum;
/**
* 收藏量
*/
private Integer collecNum;
/**
* 评论量
*/
private Integer comNum;
}

View File

@@ -0,0 +1,87 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import java.io.Serial;
/**
* 商品对象 tp_prod
*
* @author Maosw
* @date 2025-03-15
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_prod")
public class TpProd extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 商品ID
*/
@TableId(value = "id")
private Long id;
/**
* 商品标题
*/
private String title;
/**
* 商品主图
*/
private String pic;
/**
* 商品图片,以,分割
*/
private String imgs;
/**
* 视频地址
*/
private String video;
/**
* 详细描述
*/
private String content;
/**
* 商品参数json
*/
private String parame;
/**
* 展示价
*/
private Long price;
/**
* 成本价
*/
private Long oriPrice;
/**
* 状态1-上架2-下架
*/
private Long status;
/**
* 库存
*/
private Long stocks;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,118 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;
/**
* 收款管理对象 tp_receipt
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_receipt")
public class TpReceipt {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 收款渠道
*/
private Long qid;
/**
* 收款金额
*/
private BigDecimal price;
/**
* 汇款时间
*/
private Date hkTime;
/**
* 状态1=待认领2=已认领)
*/
private Integer state;
/**
* 客户ID
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Long cid;
/**
* 客户姓名
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private String kname;
/**
* 认领时间
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date rlTime;
/**
* 认领人
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Long rid;
/**
* 备注
*/
private String remark;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
/**
* 创建时间
*/
private Date addTime;
/**
* 操作人
*/
private Long addUser;
/**
* 退款金额
*/
private Integer returnMoney;
/**
* 退款备注
*/
private String returnRemark;
/**
* 外部交易号
*/
private String outTradeNo;
/**
* 交易流水号
*/
private String tradeNo;
}

View File

@@ -0,0 +1,58 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;
/**
* 客服支出记录对象 tp_staff_pay
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_staff_pay")
public class TpStaffPay {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属订单
*/
private Long oid;
/**
* 支出金额
*/
private BigDecimal price;
/**
* 操作内容
*/
private String content;
/**
* 操作人
*/
private Long addUser;
/**
* 操作时间
*/
private Date addTime;
}

View File

@@ -0,0 +1,93 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.io.Serial;
/**
* 用户认证对象 tp_user_auth
*
* @author Maosw
* @date 2025-04-11
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_user_auth")
public class TpUserAuth extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@TableId(value = "id")
private Long id;
/**
* 用户ID
*/
private Long userId;
/**
* 姓名
*/
private String realName;
/**
* 身份证号
*/
private String idCard;
/**
* 性别 1-男 0-女
*/
private Integer sex;
/**
* 从业时间
*/
private Date professionStartYear;
/**
* 从业类型 1-家装 2-工装
*/
private Integer workType;
/**
* 区域
*/
private String region;
/**
* 身份证正面图URL
*/
private String idCardFront;
/**
* 身份证反面图URL
*/
private String idCardBack;
/**
* 认证类型 1-普通认证 2-酷家乐
*/
private Integer type;
/**
* 认证状态 1-待审核 2-审核通过 3-审核拒绝
*/
private Integer status;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,83 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
/**
* 用户自己记录对象 tp_user_record
*
* @author Maosw
* @date 2025-04-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("tp_user_record")
public class TpUserRecord extends BaseEntity {
@Serial
private static final long serialVersionUID = 1L;
/**
* 记录ID
*/
@TableId(value = "id")
private Long id;
/**
* 用户ID
*/
private Long userId;
/**
* 用户姓名
*/
private String userName;
/**
* 用户手机号码
*/
private String userPhone;
/**
* 变动金额(正数增加,负数减少)
*/
private BigDecimal amount;
/**
* 变动后余额
*/
private BigDecimal balance;
/**
* 变动类型: 1-增加, 2-扣除, 3-提现, 4-其他
*/
private Integer type;
/**
* 订单ID
*/
private Long orderId;
/**
* 订单编号
*/
private String orderNum;
/**
* 删除标志: 1-存在, 2-删除
*/
@TableLogic
private Integer delFlag;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,149 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;
/**
* 基本信息对象 tp_wechat
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_wechat")
public class TpWechat {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 唯一编号
*/
private String code;
/**
* 微信昵称
*/
private String nikename;
/**
* 使用人
*/
private Long uid;
/**
* 使用人
*/
private String user;
/**
* 手机号
*/
private String phone;
/**
* 投入使用时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date userTime;
/**
* 实名制人
*/
private String name;
/**
* 身份证号
*/
private String cardId;
/**
* 绑定银行
*/
private String bank;
/**
* 绑定银行卡号
*/
private String number;
/**
* 初始好友数
*/
private Long num;
/**
* 总好友数
*/
private Long allnum;
/**
* 当前客服时间
*/
private Date nowTime;
/**
* 创建人
*/
private Long addUser;
/**
* 创建人
*/
private String addname;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
/**
* 创建时间
*/
private Date addTime;
/**
* 当前客服总业绩
*/
private BigDecimal nowPrice;
/**
* 成交客户数
*/
private Long dealNum;
/**
* 成交业绩总额
*/
private BigDecimal totalSum;
/**
* 成交单数
*/
private Long dealOrderNum;
/**
* 成交比例
*/
private String dealRatio;
/**
* 月均业绩
*/
private BigDecimal monthAmount;
}

View File

@@ -0,0 +1,71 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.util.Date;
/**
* 更新好友数记录对象 tp_wechat_num
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_wechat_num")
public class TpWechatNum {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属微信
*/
private Long wid;
/**
* 数量
*/
private Long num;
/**
* 备注
*/
private String remark;
/**
* 创建人
*/
private Long addUser;
/**
* 创建人
*/
private String addname;
/**
* 创建时间
*/
private Date addTime;
/**
* 好友数量
*/
private Long total;
/**
* 初始值
*/
private Long initial;
}

View File

@@ -0,0 +1,78 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.math.BigDecimal;
import java.util.Date;
/**
* 微信使用人修改历史对象 tp_wechat_user
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_wechat_user")
public class TpWechatUser {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 所属微信
*/
private Long wid;
/**
* 使用人
*/
private Long uid;
/**
* 使用人
*/
private String user;
/**
* 当前客服时间
*/
private Date nowTime;
/**
* 当前客服总业绩
*/
private BigDecimal nowPrice;
/**
* 结束时间
*/
private Date endTime;
/**
* 创建人
*/
private Long addUser;
/**
* 创建人
*/
private String addname;
/**
* 创建时间
*/
private Date addTime;
}

View File

@@ -0,0 +1,46 @@
package org.dromara.work.domain;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
/**
* 作品点赞收藏对象 tp_works_num
*
* @author Maosw
* @date 2025-04-11
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_works_num")
public class TpWorksNum {
@Serial
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableId(value = "id")
private Long id;
/**
* 用户ID
*/
private Long userId;
/**
* 作品ID
*/
private Long pictureId;
/**
* 类型 1-点赞 2-收藏
*/
private Integer type;
}

View File

@@ -0,0 +1,61 @@
package org.dromara.work.domain;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serial;
import java.util.Date;
/**
* 年目标对象 tp_year
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tp_year")
public class TpYear {
@Serial
private static final long serialVersionUID = 1L;
/**
*
*/
@TableId(value = "id")
private Long id;
/**
* 人员
*/
private Long sid;
/**
* 年
*/
private String year;
/**
* 个人目标
*/
private Long geren;
/**
* 公司目标
*/
private Long gongsi;
/**
* 创建时间
*/
private Date addTime;
private Long deptId;
private String ancestors;
}

View File

@@ -0,0 +1,71 @@
package org.dromara.work.domain.bo;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.List;
/**
* 排行榜查询对象
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class OrderRankingBo {
/**
*用户编号
*/
private String userName;
/**
* 用户姓名
*/
private String realName;
/**
* 部门ID
*/
private Long deptId;
/**
* 部门ID集合
*/
private List<Long> deptIds;
/**
* 年份(格式:2023 按照月份统计时才传
*/
private String year;
/**
* 月份(格式:2023-03 按天统计时才传
*/
private String month;
/**
* 开始时间(不要传)
*/
private String startTime;
/**
* 结束时间(不要传)
*/
private String endTime;
/**
* 类型 1客服列表 2技术列表
*/
private Integer type;
/**
* 1:数量 2总业绩 3已到款 4未到款 5目标比例 6死单率
*/
private Integer sort;
/**
* isAsc一个布尔值表示排序方向。true 表示升序ASCfalse 表示降序DESC
*/
private Boolean isAsc;
}

View File

@@ -0,0 +1,19 @@
package org.dromara.work.domain.bo;
import lombok.Data;
import java.math.BigDecimal;
/**
* 充值业务对象
* @Author: Maosw
* @Date: $ {DATE} $ {TIME}
*/
@Data
public class RechargeBo {
/**
* 充值金额
*/
private BigDecimal price;
}

View File

@@ -0,0 +1,97 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpAppeals;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 订单投诉业务对象 tp_appeals
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpAppeals.class, reverseConvertGenerate = false)
public class TpAppealsBo extends BaseEntity {
/**
* 主键ID
*/
@NotNull(message = "主键ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 订单ID
*/
@NotNull(message = "订单ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long orderId;
/**
* 申诉发起人用户ID
*/
@NotNull(message = "申诉发起人用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 被申诉人用户ID
*/
@NotNull(message = "被申诉人用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long toUserId;
/**
* 申诉类型1-订单问题2-服务问题3-其他
*/
@NotNull(message = "申诉类型1-订单问题2-服务问题3-其他不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer type;
/**
* 申诉原因简述
*/
@NotBlank(message = "申诉原因简述不能为空", groups = { AddGroup.class, EditGroup.class })
private String reason;
/**
* 申诉详细说明
*/
private String description;
/**
* 申诉证据图片URL列表JSON数组格式
*/
private String imgs;
/**
* 申诉处理状态0-待处理1-处理中2-已处理3-已拒绝
*/
private Integer status;
/**
* 处理结果说明,客服处理后的反馈
*/
private String result;
/**
* 处理申诉的管理员ID
*/
private Long handlerId;
/**
* 申诉处理完成时间
*/
private Date handledTime;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,48 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpBlock;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 屏蔽拉黑业务对象 tp_block
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpBlock.class, reverseConvertGenerate = false)
public class TpBlockBo {
/**
* id
*/
@NotNull(message = "id不能为空", groups = { EditGroup.class })
private Long id;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 被关注用户ID
*/
@NotNull(message = "被关注用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long toUserId;
/**
* 类型 1-屏蔽 2-拉黑
*/
@NotNull(message = "类型 1-屏蔽 2-拉黑不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer type;
}

View File

@@ -0,0 +1,68 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpCategory;
/**
* 作品类目业务对象 tp_category
*
* @author Maosw
* @date 2025-04-11
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpCategory.class, reverseConvertGenerate = false)
public class TpCategoryBo extends BaseEntity {
/**
* ID
*/
@NotNull(message = "ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 父节点
*/
@NotNull(message = "父节点不能为空", groups = { AddGroup.class, EditGroup.class })
private Long parentId;
/**
* 类目名称
*/
@NotBlank(message = "类目名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String name;
/**
* 类目图标
*/
private String icon;
/**
* 类目的显示图片
*/
private String pic;
/**
* 状态1正常 0关闭
*/
private Integer status;
/**
* 排序
*/
private Integer sort;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,144 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpClient;
import java.util.Date;
import java.util.List;
/**
* 客户业务对象 tp_client
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpClient.class, reverseConvertGenerate = false)
public class TpClientBo extends BaseEntity {
/**
* id
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属客服
*/
private Long sid;
/**
* 所属用户
*/
private Long uid;
/**
* 客户编号
*/
private String code;
/**
* 客服编号
*/
private String sname;
/**
* 客户姓名
*/
private String name;
/**
* 电话号码
*/
@NotBlank(message = "电话号码不能为空", groups = { AddGroup.class, EditGroup.class })
private String phone;
/**
* 性别
*/
private String sex;
/**
* 客户类型
*/
private Long type;
/**
* 主营业务类型
*/
private Long ywtype;
/**
* 状态1=正常2=禁用)
*/
private Long state;
/**
* 备注
*/
private String remark;
/**
* 录入时间
*/
private Date addTime;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
/**
* 操作人
*/
private String addUser;
/**
* 会员等级
*/
private Long vip;
/**
* 改图会员
*/
private Long gtVip;
/**
* 健康状态 1:健康 2:流失中 3:已流失
*/
private Integer health;
/**
* 多客服 1:多客服 2:多客服有余额
*/
private Integer multi;
/**
* 省
*/
private String province;
/**
* 市
*/
private String city;
/**
* 地区
*/
private String area;
/**
* 客户ID集合
*/
private List<Long> ids;
}

View File

@@ -0,0 +1,67 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpClientStaff;
import java.math.BigDecimal;
import java.util.Date;
/**
* 客户+客服业务对象 tp_client_staff
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpClientStaff.class, reverseConvertGenerate = false)
public class TpClientStaffBo extends BaseEntity {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属客服
*/
private Long sid;
/**
* 所属客户
*/
private Long kid;
/**
* 客户姓名
*/
private String name;
/**
* 备注
*/
private String remark;
/**
* 余额
*/
@NotNull(message = "余额不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal yue;
/**
* 录入时间
*/
private Date addTime;
private String phone;
private String code;
}

View File

@@ -0,0 +1,87 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpComments;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 评论业务对象 tp_comments
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpComments.class, reverseConvertGenerate = false)
public class TpCommentsBo extends BaseEntity {
/**
* ID
*/
@NotNull(message = "ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 作品动态ID
*/
@NotNull(message = "作品动态ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long pictureId;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 被回复用户
*/
@NotNull(message = "被回复用户不能为空", groups = { AddGroup.class, EditGroup.class })
private Long toUserId;
/**
* 父评论 ID
*/
private Long parentId;
/**
* 评论内容
*/
@NotBlank(message = "评论内容不能为空", groups = { AddGroup.class, EditGroup.class })
private String content;
/**
* 点赞数
*/
private Integer num;
/**
* 子评论数量
*/
private Integer subset;
/**
* 类型 1-作品 2-动态
*/
@NotNull(message = "类型 1-作品 2-动态不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer type;
/**
* 备注
*/
private String remark;
/**
* 排序 1-降序 2-升序
*/
private Integer orderBy;
}

View File

@@ -0,0 +1,87 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpDesignQuotes;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.math.BigDecimal;
/**
* 报价业务对象 tp_design_quotes
*
* @author Maosw
* @date 2025-03-10
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpDesignQuotes.class, reverseConvertGenerate = false)
public class TpDesignQuotesBo extends BaseEntity {
/**
* 主键
*/
@NotNull(message = "主键不能为空", groups = { EditGroup.class })
private Long id;
/**
* 客服ID
*/
@NotNull(message = "客服ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long sid;
/**
* 客服名称
*/
private String sName;
/**
* 项目名称
*/
@NotBlank(message = "项目名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String projectName;
/**
* 客户名称
*/
@NotBlank(message = "客户名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String clientName;
/**
* 订单JSON详细
*/
@NotBlank(message = "订单JSON详细不能为空", groups = { AddGroup.class, EditGroup.class })
private String orderInfo;
/**
* 总计图数
*/
@NotNull(message = "总计图数不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer totalImages;
/**
* 总计金额
*/
@NotNull(message = "总计金额不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal totalAmount;
/**
* 定金
*/
private BigDecimal deposit;
/**
* 备注
*/
private String remark;
/**
* 租户 1-设计甄选 2-制图工厂 3-室内联盟
*/
private Integer tenant;
}

View File

@@ -0,0 +1,48 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpDynamicsNum;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 动态点赞收藏业务对象 tp_dynamics_num
*
* @author Maosw
* @date 2025-04-11
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpDynamicsNum.class, reverseConvertGenerate = false)
public class TpDynamicsNumBo {
/**
* id
*/
@NotNull(message = "id不能为空", groups = { EditGroup.class })
private Long id;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 动态ID
*/
@NotNull(message = "动态ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long pictureId;
/**
* 类型 1-点赞 2-收藏
*/
@NotNull(message = "类型 1-点赞 2-收藏不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer type;
}

View File

@@ -0,0 +1,42 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpFollow;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 关注业务对象 tp_follow
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpFollow.class, reverseConvertGenerate = false)
public class TpFollowBo {
/**
* id
*/
@NotNull(message = "id不能为空", groups = { EditGroup.class })
private Long id;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 被关注用户ID
*/
@NotNull(message = "被关注用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long toUserId;
}

View File

@@ -0,0 +1,78 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpMessage;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 消息业务对象 tp_message
*
* @author Maosw
* @date 2025-04-18
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpMessage.class, reverseConvertGenerate = false)
public class TpMessageBo extends BaseEntity {
/**
* 消息ID
*/
@NotNull(message = "消息ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 发送者ID
*/
@NotNull(message = "发送者ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 接收者ID
*/
@NotNull(message = "接收者ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long toUserId;
/**
* 订单ID
*/
private Long orderId;
/**
* 订单编号
*/
private String orderNum;
/**
* 作品ID
*/
private Long pictureId;
/**
* 消息内容
*/
@NotBlank(message = "消息内容不能为空", groups = { AddGroup.class, EditGroup.class })
private String content;
/**
* 消息类型 1-订单消息 2-互动消息
*/
private Integer type;
/**
* 消息状态1-已发送2-已读)
*/
private Integer status;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,74 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.work.domain.TpMonth;
import java.util.Date;
import java.util.List;
/**
* 月目标业务对象 tp_month
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpMonth.class, reverseConvertGenerate = false)
public class TpMonthBo {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 人员
*/
@NotNull(message = "人员不能为空", groups = { AddGroup.class, EditGroup.class })
private Long sid;
/**
* 月
*/
@NotBlank(message = "月不能为空", groups = { AddGroup.class, EditGroup.class })
private String month;
/**
* 个人目标
*/
private Long geren;
/**
* 公司目标
*/
private Long gongsi;
/**
* 创建时间
*/
private Date addTime;
/**
* 编号
*/
private String nickName;
/**
* 部门ID
*/
private Long deptId;
private String ancestors;
private List<Long> userIds;
}

View File

@@ -0,0 +1,82 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpNews;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 新闻活动业务对象 tp_news
*
* @author Maosw
* @date 2025-04-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpNews.class, reverseConvertGenerate = false)
public class TpNewsBo extends BaseEntity {
/**
* ID
*/
@NotNull(message = "ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 分类 1-新闻 2-活动
*/
private Integer type;
/**
* 标题
*/
@NotBlank(message = "标题不能为空", groups = { AddGroup.class, EditGroup.class })
private String title;
/**
* 封面图片
*/
private String icon;
/**
* 图片集JSON
*/
private String imgs;
/**
* 内容
*/
@NotBlank(message = "内容不能为空", groups = { AddGroup.class, EditGroup.class })
private String content;
/**
* 跳转地址
*/
private String url;
/**
* 状态1正常 0关闭
*/
private Integer status;
/**
* 排序
*/
private Long sort;
/**
* 浏览量
*/
private Long num;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,82 @@
package org.dromara.work.domain.bo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.work.domain.TpOrderBig;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 订单大图业务对象 tp_order_big
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpOrderBig.class, reverseConvertGenerate = false)
public class TpOrderBigBo {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属订单
*/
@NotNull(message = "所属订单不能为空", groups = { AddGroup.class, EditGroup.class })
private Long oid;
/**
* 图片类型1=平面大图2全景大图
*/
@NotNull(message = "图片类型1=平面大图2全景大图不能为空", groups = { AddGroup.class, EditGroup.class })
private Long type;
/**
* 图片名称
*/
@NotBlank(message = "图片名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String name;
/**
* 图片地址
*/
@NotBlank(message = "图片地址不能为空", groups = { AddGroup.class, EditGroup.class })
private String pic;
/**
* 全景地址
*/
@NotBlank(message = "全景地址不能为空", groups = { AddGroup.class, EditGroup.class })
private String link;
/**
* 上传时间
*/
private Date addTime;
/**
* 操作人
*/
private Long addUser;
/**
* 请求参数
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@TableField(exist = false)
private Map<String, Object> params = new HashMap<>();
}

View File

@@ -0,0 +1,351 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpOrder;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* 订单管理业务对象 tp_order
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpOrder.class, reverseConvertGenerate = false)
public class TpOrderBo extends BaseEntity {
/**
*ID
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 订单编号
*/
private String orderId;
/**
* 订单客户
*/
private Long kid;
/**
* 订单微信
*/
private Long wid;
/**
* 订单风格
*/
private Long style;
/**
* 订单空间
*/
private String space;
/**
* 订单品质
*/
private Long quality;
/**
* 备注
*/
private String remark;
/**
* 订单类型
*/
private Long type;
/**
* 状态(1-默认 2-退款待确认 3-已退款 4-已拒绝)
*/
private Integer state;
/**
* 图纸数量
*/
@NotNull(message = "图纸数量不能为空", groups = { AddGroup.class, EditGroup.class })
private Long num;
/**
* 客服ID
*/
private Long sid;
/**
* 客服编号
*/
private String scode;
/**
* 分图人员
*/
private Long fid;
/**
* 分图员编号
*/
private String fcode;
/**
* 表现师ID
*/
private String bid;
/**
* 表现是编号
*/
private String bcode;
/**
* 分配状态 1未分配 2已分配
*/
private Integer assignState;
/**
* 订单价格
*/
@NotNull(message = "订单价格不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal price;
/**
* 定金
*/
private BigDecimal djPrice;
/**
* 技术备注
*/
private String jsRemark;
/**
* 支付状态1=待支付2=尾款待支付3=已支付)
*/
private Integer payState;
/**
* 订单状态1-待支付 2-待接单 3-待确认 4-进行中 5-待评价 6-已完成 7-已取消)
*/
private Integer status;
/**
* 已付款
*/
private BigDecimal payPrice;
/**
* 尾款
*/
private BigDecimal endPrice;
/**
* 改价价格
*/
private BigDecimal gjPrice;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
/**
* 下单时间
*/
private Date addTime;
/**
* 对图时间
*/
private Date dtTime;
/**
* 定金支付时间
*/
private Date djpTime;
/**
* 尾款支付时间
*/
private Date endpTime;
/**
* 完成时间
*/
private Date finishTime;
/**
* 拆单价格
*/
private BigDecimal cdPrice;
/**
* 技术订单价格
*/
private BigDecimal jsPrice;
/**
* 技术已付款
*/
private BigDecimal jsPayPrice;
/**
* 是否自动改价1=否2=是)
*/
private Integer isC;
/**
* 自动改价价格
*/
private BigDecimal zGjPrice;
/**
* 客户已付款
*/
private BigDecimal khpay;
/**
* 改价已付款
*/
private BigDecimal gpay;
/**
* 是否拆单1=否2=是)
*/
private Integer isCd;
/**
* 客服已付款
*/
private BigDecimal kfpay;
/**
* 接待客服名称
*/
private String sname;
/**
* 分图员名称
*/
private String fname;
/**
* 表现师名称
*/
private String bname;
/**
* 客户名称
*/
private String cname;
/**
* 微信编号
*/
private String wcode;
/**
* 微信昵称
*/
private String wname;
private Long deptId;
private String ancestors;
private Long deptIdJs;
private String ancestorsJs;
/**
* 客户手机号码
*/
private String phone;
/**
* 客户客服ID
*/
private Long skid;
/**
* json记录
*/
private String record;
/**
* 部门id集合
*/
private List<Long> deptIds;
/**
* 用户id
*/
private Long userId;
/**
* 订单id集合
*/
private List<Long> orderIds;
/**
* 1客服2技术
*/
private int kfOrjs;
/**
* 分类ID
*/
private Long categoryId;
/**
* 分类名称
*/
private String categoryName;
/**
* 标记 1-普通 2-高端 3-酷家乐
*/
private Integer flag;
/**
* 图片素材
*/
private String imgs;
/**
* 订单内容
*/
private String content;
/**
* 评价评分
*/
private Double score;
/**
* 评价内容
*/
private String scoreContent;
/**
* 排序 1-最新 2-价格降序 3-价格升序
*/
private Integer orderBy;
}

View File

@@ -0,0 +1,56 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpOrderCd;
import java.math.BigDecimal;
/**
* 拆单记录业务对象 tp_order_cd
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpOrderCd.class, reverseConvertGenerate = false)
public class TpOrderCdBo extends BaseEntity {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属订单
*/
@NotNull(message = "所属订单不能为空", groups = { AddGroup.class, EditGroup.class })
private Long oid;
/**
* 订单价格
*/
@NotNull(message = "订单价格不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal price;
/**
* 下单时间
*/
@NotNull(message = "下单时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Long addTime;
/**
* 操作人
*/
@NotNull(message = "操作人不能为空", groups = { AddGroup.class, EditGroup.class })
private Long addUser;
}

View File

@@ -0,0 +1,87 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpOrderComment;
import java.util.Date;
/**
* 订单评论业务对象 tp_order_comment
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpOrderComment.class, reverseConvertGenerate = false)
public class TpOrderCommentBo extends BaseEntity {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属订单
*/
@NotNull(message = "所属订单不能为空", groups = { AddGroup.class, EditGroup.class })
private Long oid;
/**
* 评论人
*/
@NotNull(message = "评论人不能为空", groups = { AddGroup.class, EditGroup.class })
private Long uid;
/**
* 评价等级1=差评2=中评3=好评)
*/
@NotNull(message = "评价等级1=差评2=中评3=好评)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long grade;
/**
* 速度
*/
@NotNull(message = "速度不能为空", groups = { AddGroup.class, EditGroup.class })
private Long speed;
/**
* 质量、
*/
@NotNull(message = "质量、不能为空", groups = { AddGroup.class, EditGroup.class })
private Long quality;
/**
* 服务
*/
@NotNull(message = "服务不能为空", groups = { AddGroup.class, EditGroup.class })
private Long serve;
/**
* 评论内容
*/
@NotBlank(message = "评论内容不能为空", groups = { AddGroup.class, EditGroup.class })
private String content;
/**
* 评论时间
*/
@NotNull(message = "评论时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date addTime;
/**
* 提交人类型1=用户2=客服)
*/
@NotNull(message = "提交人类型1=用户2=客服)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long type;
}

View File

@@ -0,0 +1,70 @@
package org.dromara.work.domain.bo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.work.domain.TpOrderModel;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 订单模型业务对象 tp_order_model
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpOrderModel.class, reverseConvertGenerate = false)
public class TpOrderModelBo {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属订单
*/
@NotNull(message = "所属订单不能为空", groups = { AddGroup.class, EditGroup.class })
private Long oid;
/**
* 模型名称
*/
@NotBlank(message = "模型名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String name;
/**
* 模型地址
*/
@NotBlank(message = "模型地址不能为空", groups = { AddGroup.class, EditGroup.class })
private String pic;
/**
* 上传时间
*/
private Date addTime;
/**
* 操作人
*/
private Long addUser;
/**
* 请求参数
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@TableField(exist = false)
private Map<String, Object> params = new HashMap<>();
}

View File

@@ -0,0 +1,111 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpOrderPay;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 订单支付记录业务对象 tp_order_pay
*
* @author Maosw
* @date 2025-04-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpOrderPay.class, reverseConvertGenerate = false)
public class TpOrderPayBo extends BaseEntity {
/**
* ID
*/
@NotNull(message = "ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 订单ID
*/
@NotNull(message = "订单ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long orderId;
/**
* 订单编号
*/
private String orderNum;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 用户姓名
*/
private String userName;
/**
* 用户手机号码
*/
private String userPhone;
/**
* 支付方式 1-拉卡拉 2-余额
*/
@NotNull(message = "支付方式 1-拉卡拉 2-余额不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer method;
/**
* 支付金额
*/
@NotNull(message = "支付金额不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal amount;
/**
* 支付状态 1-待支付 2-已支付 3-已失效 4-支付失败
*/
@NotNull(message = "支付状态 1-待支付 2-已支付 3-已失效 4-支付失败不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer status;
/**
* 支付订单号
*/
@NotBlank(message = "支付订单号不能为空", groups = { AddGroup.class, EditGroup.class })
private String orderNo;
/**
* 第三方支付流水号
*/
@NotBlank(message = "第三方支付流水号不能为空", groups = { AddGroup.class, EditGroup.class })
private String transactionId;
/**
* 第三方支付原始数据
*/
private String payerInfo;
/**
* 支付有效期
*/
private Date expireTime;
/**
* 类型 1-订单支付 2-余额充值
*/
private Integer type;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,78 @@
package org.dromara.work.domain.bo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.work.domain.TpOrderRecord;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 操作历史业务对象 tp_order_record
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpOrderRecord.class, reverseConvertGenerate = false)
public class TpOrderRecordBo {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属订单
*/
@NotNull(message = "所属订单不能为空", groups = { AddGroup.class, EditGroup.class })
private Long oid;
/**
* 操作类型
*/
@NotBlank(message = "操作类型不能为空", groups = { AddGroup.class, EditGroup.class })
private String type;
/**
* 操作内容
*/
@NotBlank(message = "操作内容不能为空", groups = { AddGroup.class, EditGroup.class })
private String content;
/**
* 操作人
*/
@NotNull(message = "操作人不能为空", groups = { AddGroup.class, EditGroup.class })
private Long addUser;
/**
* 操作时间
*/
@NotNull(message = "操作时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date addTime;
/**
* 操作状态1=记录2=节点)
*/
@NotNull(message = "操作状态1=记录2=节点)不能为空", groups = { AddGroup.class, EditGroup.class })
private Long state;
/**
* 请求参数
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@TableField(exist = false)
private Map<String, Object> params = new HashMap<>();
}

View File

@@ -0,0 +1,70 @@
package org.dromara.work.domain.bo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.work.domain.TpOrderSmall;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 订单小图业务对象 tp_order_small
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpOrderSmall.class, reverseConvertGenerate = false)
public class TpOrderSmallBo {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属订单
*/
@NotNull(message = "所属订单不能为空", groups = { AddGroup.class, EditGroup.class })
private Long oid;
/**
* 图片名称
*/
@NotBlank(message = "图片名称不能为空", groups = { AddGroup.class, EditGroup.class })
private String name;
/**
* 图片地址
*/
@NotBlank(message = "图片地址不能为空", groups = { AddGroup.class, EditGroup.class })
private String pic;
/**
* 上传时间
*/
private Date addTime;
/**
* 操作人
*/
private Long addUser;
/**
* 请求参数
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@TableField(exist = false)
private Map<String, Object> params = new HashMap<>();
}

View File

@@ -0,0 +1,75 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpPanorama;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 全景业务对象 tp_panorama
*
* @author Maosw
* @date 2025-03-26
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpPanorama.class, reverseConvertGenerate = false)
public class TpPanoramaBo extends BaseEntity {
/**
* ID
*/
@NotNull(message = "ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 订单ID
*/
private Long orderId;
/**
* 标题
*/
private String title;
/**
* 背景链接
*/
private String url;
/**
* 热点
*/
private String point;
/**
* 样式
*/
private String style;
/**
* 图片
*/
private String imgs;
/**
* 宽度
*/
private Long width;
/**
* 排序
*/
private Integer sort;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,117 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpPicture;
/**
* 轮播/作品/动态业务对象 tp_picture
*
* @author Maosw
* @date 2025-02-26
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpPicture.class, reverseConvertGenerate = false)
public class TpPictureBo extends BaseEntity {
/**
* ID
*/
@NotNull(message = "ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 被查询的用户ID
*/
private Long toUserId;
/**
* 分类ID
*/
private Long categoryId;
/**
* 分类名称
*/
private String categoryName;
/**
* 是否全景1是 0否
*/
private Integer isPano;
/**
* 分类 1-轮播 2-作品 3-动态
*/
@NotNull(message = "分类 1-轮播 2-作品 3-动态不能为空", groups = { AddGroup.class, EditGroup.class })
private Long type;
/**
* 标题
*/
private String title;
/**
* 封面图片
*/
private String icon;
/**
* 图片集JSON
*/
private String imgs;
/**
* 跳转地址
*/
private String url;
/**
* 状态1正常 0关闭
*/
private Integer status;
/**
* 排序
*/
private Long sort;
/**
* 备注
*/
private String remark;
/**
* 标记 1-普通 2-高端 3-酷家乐
*/
private Integer flag;
/**
* 浏览量
*/
private Long num;
/**
* 租户 1-设计甄选 2-制图工厂 3-室内联盟
*/
private Integer tenant;
/**
* 排序 1-最新 2-点赞最多 3-评论最多
*/
private Integer orderBy;
}

View File

@@ -0,0 +1,90 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpProd;
/**
* 商品业务对象 tp_prod
*
* @author Maosw
* @date 2025-03-15
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpProd.class, reverseConvertGenerate = false)
public class TpProdBo extends BaseEntity {
/**
* 商品ID
*/
@NotNull(message = "商品ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 商品标题
*/
@NotBlank(message = "商品标题不能为空", groups = { AddGroup.class, EditGroup.class })
private String title;
/**
* 商品主图
*/
@NotBlank(message = "商品主图不能为空", groups = { AddGroup.class, EditGroup.class })
private String pic;
/**
* 商品图片,以,分割
*/
private String imgs;
/**
* 视频地址
*/
private String video;
/**
* 详细描述
*/
private String content;
/**
* 商品参数json
*/
private String parame;
/**
* 展示价
*/
@NotNull(message = "展示价不能为空", groups = { AddGroup.class, EditGroup.class })
private Long price;
/**
* 成本价
*/
private Long oriPrice;
/**
* 状态1-上架2-下架
*/
@NotNull(message = "状态1-上架2-下架不能为空", groups = { AddGroup.class, EditGroup.class })
private Long status;
/**
* 库存
*/
private Long stocks;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,140 @@
package org.dromara.work.domain.bo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.work.domain.TpReceipt;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
/**
* 收款管理业务对象 tp_receipt
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpReceipt.class, reverseConvertGenerate = false)
public class TpReceiptBo {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 收款渠道
*/
@NotNull(message = "收款渠道不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer qid;
/**
* 收款金额
*/
@NotNull(message = "收款金额不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal price;
/**
* 汇款时间
*/
private Date hkTime;
/**
* 状态1=待认领2=已认领)
*/
private Integer state;
/**
* 客户姓名
*/
private Long cid;
/**
* 认领时间
*/
private Date rlTime;
/**
* 认领人
*/
private Long rid;
/**
* 备注
*/
private String remark;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
/**
* 创建时间
*/
private Date addTime;
/**
* 操作人
*/
private Long addUser;
/**
* 退款金额
*/
private Integer returnMoney;
/**
* 退款备注
*/
private String returnRemark;
/**
* 外部交易号
*/
private String outTradeNo;
/**
* 交易流水号
*/
private String tradeNo;
/**
* 客户编号
*/
private String kcode;
/**
* 客户姓名
*/
private String cname;
/**
* 认领人姓名
*/
private String rname;
/**
* 操作人姓名
*/
private String addname;
/**
* 请求参数
*/
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@TableField(exist = false)
private Map<String, Object> params = new HashMap<>();
}

View File

@@ -0,0 +1,63 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.work.domain.TpStaffPay;
import java.math.BigDecimal;
import java.util.Date;
/**
* 客服支出记录业务对象 tp_staff_pay
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpStaffPay.class, reverseConvertGenerate = false)
public class TpStaffPayBo {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属订单
*/
@NotNull(message = "所属订单不能为空", groups = { AddGroup.class, EditGroup.class })
private Long oid;
/**
* 支出金额
*/
@NotNull(message = "支出金额不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal price;
/**
* 操作内容
*/
@NotBlank(message = "操作内容不能为空", groups = { AddGroup.class, EditGroup.class })
private String content;
/**
* 操作人
*/
@NotNull(message = "操作人不能为空", groups = { AddGroup.class, EditGroup.class })
private Long addUser;
/**
* 操作时间
*/
@NotNull(message = "操作时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date addTime;
}

View File

@@ -0,0 +1,94 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpUserAuth;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
/**
* 用户认证业务对象 tp_user_auth
*
* @author Maosw
* @date 2025-04-11
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpUserAuth.class, reverseConvertGenerate = false)
public class TpUserAuthBo extends BaseEntity {
/**
* 主键ID
*/
@NotNull(message = "主键ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 姓名
*/
@NotBlank(message = "姓名不能为空", groups = { AddGroup.class, EditGroup.class })
private String realName;
/**
* 身份证号
*/
@NotBlank(message = "身份证号不能为空", groups = { AddGroup.class, EditGroup.class })
private String idCard;
/**
* 性别 1-男 0-女
*/
private Integer sex;
/**
* 从业时间
*/
private Date professionStartYear;
/**
* 从业类型 1-家装 2-工装
*/
private Integer workType;
/**
* 区域
*/
private String region;
/**
* 身份证正面图URL
*/
private String idCardFront;
/**
* 身份证反面图URL
*/
private String idCardBack;
/**
* 认证类型 1-普通认证 2-酷家乐
*/
private Integer type;
/**
* 备注
*/
private String remark;
/**
* 认证状态 1-待审核 2-审核通过 3-审核拒绝
*/
private Integer status;
}

View File

@@ -0,0 +1,86 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpUserRecord;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
import java.math.BigDecimal;
/**
* 用户自己记录业务对象 tp_user_record
*
* @author Maosw
* @date 2025-04-14
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpUserRecord.class, reverseConvertGenerate = false)
public class TpUserRecordBo extends BaseEntity {
/**
* 记录ID
*/
@NotNull(message = "记录ID不能为空", groups = { EditGroup.class })
private Long id;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 用户姓名
*/
private String userName;
/**
* 用户手机号码
*/
private String userPhone;
/**
* 变动金额(正数增加,负数减少)
*/
@NotNull(message = "变动金额(正数增加,负数减少)不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal amount;
/**
* 变动后余额
*/
@NotNull(message = "变动后余额不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal balance;
/**
* 变动类型: 1-增加, 2-扣除, 3-提现, 4-其他
*/
@NotNull(message = "变动类型: 1-增加, 2-扣除, 3-提现, 4-其他不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer type;
/**
* 订单ID
*/
private Long orderId;
/**
* 订单编号
*/
private String orderNum;
/**
* 删除标志: 1-存在, 2-删除
*/
private Integer delFlag;
/**
* 备注
*/
private String remark;
}

View File

@@ -0,0 +1,139 @@
package org.dromara.work.domain.bo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpWechat;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* 基本信息业务对象 tp_wechat
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpWechat.class, reverseConvertGenerate = false)
public class TpWechatBo extends BaseEntity {
/**
*id
*/
@NotNull(message = "id不能为空", groups = { EditGroup.class })
private Long id;
/**
* 唯一编号
*/
@NotBlank(message = "唯一编号不能为空", groups = { AddGroup.class, EditGroup.class })
private String code;
/**
* 微信昵称
*/
private String nikename;
/**
* 使用人
*/
private Long uid;
/**
* 使用人
*/
private String user;
/**
* 手机号
*/
@NotBlank(message = "手机号不能为空", groups = { AddGroup.class, EditGroup.class })
private String phone;
/**
* 投入使用时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date userTime;
/**
* 实名制人
*/
private String name;
/**
* 身份证号
*/
private String cardId;
/**
* 绑定银行
*/
private String bank;
/**
* 绑定银行卡号
*/
private String number;
/**
* 初始好友数
*/
private Long num;
/**
* 总好友数
*/
private Long allnum;
/**
* 当前客服时间
*/
private Date nowTime;
/**
* 创建人
*/
private Long addUser;
/**
* 创建人
*/
private String addname;
/**
* 是否删除1=未删除2=已删除)
*/
private Integer isDel;
/**
* 创建时间
*/
private Date addTime;
/**
* 当前客服总业绩
*/
private BigDecimal nowPrice;
/**
* 开始时间
*/
private String beginUserTime;
/**
* 结束时间
*/
private String endUserTime;
private List<Long> deptIds;
}

View File

@@ -0,0 +1,71 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpWechatNum;
import java.util.Date;
/**
* 更新好友数记录业务对象 tp_wechat_num
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpWechatNum.class, reverseConvertGenerate = false)
public class TpWechatNumBo extends BaseEntity {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属微信
*/
private Long wid;
/**
* 数量
*/
private Long num;
/**
* 备注
*/
private String remark;
/**
* 创建人
*/
private Long addUser;
/**
* 创建人
*/
private String addname;
/**
* 创建时间
*/
private Date addTime;
/**
* 好友数量
*/
private Long total;
/**
* 初始值
*/
private Long initial;
}

View File

@@ -0,0 +1,88 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.work.domain.TpWechatUser;
import java.math.BigDecimal;
import java.util.Date;
/**
* 微信使用人修改历史业务对象 tp_wechat_user
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = true)
@AutoMapper(target = TpWechatUser.class, reverseConvertGenerate = false)
public class TpWechatUserBo extends BaseEntity {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 所属微信
*/
@NotNull(message = "所属微信不能为空", groups = { AddGroup.class, EditGroup.class })
private Long wid;
/**
* 使用人
*/
@NotNull(message = "使用人不能为空", groups = { AddGroup.class, EditGroup.class })
private Long uid;
/**
* 使用人
*/
@NotBlank(message = "使用人不能为空", groups = { AddGroup.class, EditGroup.class })
private String user;
/**
* 当前客服时间
*/
@NotNull(message = "当前客服时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date nowTime;
/**
* 当前客服总业绩
*/
@NotNull(message = "当前客服总业绩不能为空", groups = { AddGroup.class, EditGroup.class })
private BigDecimal nowPrice;
/**
* 结束时间
*/
@NotNull(message = "结束时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date endTime;
/**
* 创建人
*/
@NotNull(message = "创建人不能为空", groups = { AddGroup.class, EditGroup.class })
private Long addUser;
/**
* 创建人
*/
@NotBlank(message = "创建人不能为空", groups = { AddGroup.class, EditGroup.class })
private String addname;
/**
* 创建时间
*/
@NotNull(message = "创建时间不能为空", groups = { AddGroup.class, EditGroup.class })
private Date addTime;
}

View File

@@ -0,0 +1,53 @@
package org.dromara.work.domain.bo;
import org.dromara.work.domain.TpWorksNum;
import org.dromara.common.mybatis.core.domain.BaseEntity;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import lombok.EqualsAndHashCode;
import jakarta.validation.constraints.*;
/**
* 作品点赞收藏业务对象 tp_works_num
*
* @author Maosw
* @date 2025-04-11
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpWorksNum.class, reverseConvertGenerate = false)
public class TpWorksNumBo {
/**
* id
*/
@NotNull(message = "id不能为空", groups = { EditGroup.class })
private Long id;
/**
* 用户ID
*/
@NotNull(message = "用户ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long userId;
/**
* 作品ID
*/
@NotNull(message = "作品ID不能为空", groups = { AddGroup.class, EditGroup.class })
private Long pictureId;
/**
* 类型 1-点赞 2-收藏
*/
@NotNull(message = "类型 1-点赞 2-收藏不能为空", groups = { AddGroup.class, EditGroup.class })
private Integer type;
/**
* 分类ID
*/
private Long categoryId;
}

View File

@@ -0,0 +1,73 @@
package org.dromara.work.domain.bo;
import io.github.linpeilie.annotations.AutoMapper;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.dromara.common.core.validate.AddGroup;
import org.dromara.common.core.validate.EditGroup;
import org.dromara.work.domain.TpYear;
import java.util.Date;
import java.util.List;
/**
* 年目标业务对象 tp_year
*
* @author Maosw
* @date 2024-08-12
*/
@Data
@EqualsAndHashCode(callSuper = false)
@AutoMapper(target = TpYear.class, reverseConvertGenerate = false)
public class TpYearBo {
/**
*
*/
@NotNull(message = "不能为空", groups = { EditGroup.class })
private Long id;
/**
* 人员
*/
@NotNull(message = "人员不能为空", groups = { AddGroup.class, EditGroup.class })
private Long sid;
/**
* 年
*/
@NotBlank(message = "年不能为空", groups = { AddGroup.class, EditGroup.class })
private String year;
/**
* 个人目标
*/
private Long geren;
/**
* 公司目标
*/
private Long gongsi;
/**
* 创建时间
*/
private Date addTime;
/**
* 编号
*/
private String nickName;
/**
* 部门ID
*/
private Long deptId;
private String ancestors;
private List<Long> userIds;
}

Some files were not shown because too many files have changed in this diff Show More