diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderAssessLabelController.java b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderAssessLabelController.java new file mode 100644 index 00000000..6901c346 --- /dev/null +++ b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderAssessLabelController.java @@ -0,0 +1,136 @@ +package com.ghy.web.controller.order; + +import com.ghy.common.annotation.Log; +import com.ghy.common.core.controller.BaseController; +import com.ghy.common.core.domain.AjaxResult; +import com.ghy.common.core.page.TableDataInfo; +import com.ghy.common.enums.BusinessType; +import com.ghy.common.utils.poi.ExcelUtil; +import com.ghy.order.domain.OrderAssessLabel; +import com.ghy.order.service.IOrderAssessLabelService; +import org.apache.shiro.authz.annotation.RequiresPermissions; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +import org.springframework.web.bind.annotation.*; +import java.util.List; + +/** + * 订单与评价标签关联关系Controller + * + * @author ydq + * @date : 2022-10-08 22:11 + */ +@Controller +@RequestMapping("/worker/label") +public class OrderAssessLabelController extends BaseController +{ + private String prefix = "worker/label"; + + @Autowired + private IOrderAssessLabelService orderAssessLabelService; + + @RequiresPermissions("worker:label:view") + @GetMapping() + public String label() + { + return prefix + "/label"; + } + + /** + * 查询订单与评价标签关联关系列表 + */ + @RequiresPermissions("worker:label:list") + @PostMapping("/list") + @ResponseBody + public TableDataInfo list(OrderAssessLabel orderAssessLabel) + { + startPage(); + List list = orderAssessLabelService.selectOrderAssessLabelList(orderAssessLabel); + return getDataTable(list); + } + + /** + * App查询订单与评价标签关联关系列表 + */ + @PostMapping("/app/list") + @ResponseBody + public TableDataInfo appList(@RequestBody OrderAssessLabel orderAssessLabel) + { + startPage(); + List list = orderAssessLabelService.selectOrderAssessLabelList(orderAssessLabel); + return getDataTable(list); + } + + + /** + * 导出订单与评价标签关联关系列表 + */ + @RequiresPermissions("worker:label:export") + @Log(title = "订单与评价标签关联关系", businessType = BusinessType.EXPORT) + @PostMapping("/export") + @ResponseBody + public AjaxResult export(OrderAssessLabel orderAssessLabel) + { + List list = orderAssessLabelService.selectOrderAssessLabelList(orderAssessLabel); + ExcelUtil util = new ExcelUtil(OrderAssessLabel.class); + return util.exportExcel(list, "订单与评价标签关联关系数据"); + } + + /** + * 新增订单与评价标签关联关系 + */ + @GetMapping("/add") + public String add() + { + return prefix + "/add"; + } + + /** + * 新增保存订单与评价标签关联关系 + */ + @RequiresPermissions("worker:label:add") + @Log(title = "订单与评价标签关联关系", businessType = BusinessType.INSERT) + @PostMapping("/add") + @ResponseBody + public AjaxResult addSave(OrderAssessLabel orderAssessLabel) + { + return toAjax(orderAssessLabelService.insertOrderAssessLabel(orderAssessLabel)); + } + + /** + * 修改订单与评价标签关联关系 + */ + @RequiresPermissions("worker:label:edit") + @GetMapping("/edit/{id}") + public String edit(@PathVariable("id") Long id, ModelMap mmap) + { + OrderAssessLabel orderAssessLabel = orderAssessLabelService.selectOrderAssessLabelById(id); + mmap.put("orderAssessLabel", orderAssessLabel); + return prefix + "/edit"; + } + + /** + * 修改保存订单与评价标签关联关系 + */ + @RequiresPermissions("worker:label:edit") + @Log(title = "订单与评价标签关联关系", businessType = BusinessType.UPDATE) + @PostMapping("/edit") + @ResponseBody + public AjaxResult editSave(OrderAssessLabel orderAssessLabel) + { + return toAjax(orderAssessLabelService.updateOrderAssessLabel(orderAssessLabel)); + } + + /** + * 删除订单与评价标签关联关系 + */ + @RequiresPermissions("worker:label:remove") + @Log(title = "订单与评价标签关联关系", businessType = BusinessType.DELETE) + @PostMapping( "/remove") + @ResponseBody + public AjaxResult remove(String ids) + { + return toAjax(orderAssessLabelService.deleteOrderAssessLabelByIds(ids)); + } +} diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderDetailController.java b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderDetailController.java index e3781a58..cbc28fd8 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderDetailController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderDetailController.java @@ -21,15 +21,9 @@ import com.ghy.goods.domain.GoodsStandard; import com.ghy.goods.service.GoodsImgsService; import com.ghy.goods.service.GoodsService; import com.ghy.goods.service.GoodsStandardService; -import com.ghy.order.domain.AfterServiceRecord; -import com.ghy.order.domain.OrderDetail; -import com.ghy.order.domain.OrderGoods; -import com.ghy.order.domain.OrderMaster; +import com.ghy.order.domain.*; import com.ghy.order.request.OrderProcessRequest; -import com.ghy.order.service.IAfterServiceRecordService; -import com.ghy.order.service.OrderDetailService; -import com.ghy.order.service.OrderGoodsService; -import com.ghy.order.service.OrderMasterService; +import com.ghy.order.service.*; import com.ghy.payment.domain.FinancialChangeRecord; import com.ghy.payment.domain.FinancialDetail; import com.ghy.payment.domain.OrderTimeoutRecord; @@ -103,6 +97,8 @@ public class OrderDetailController extends BaseController { private FinancialChangeRecordService financialChangeRecordService; @Autowired private IWorkerCertificationService workerCertificationService; + @Autowired + private IOrderAssessLabelService orderAssessLabelService; @RequiresPermissions("order:detail:view") @GetMapping() @@ -589,6 +585,17 @@ public class OrderDetailController extends BaseController { int insertedRows = goodsImgsService.batchInsert(finishImgObjList); Assert.isTrue(insertedRows > 0, "完单图入库失败,request=" + request); + // 存储评价标签 + if (CollectionUtils.isNotEmpty(request.getAssessLabels())) { + request.getAssessLabels().forEach(label -> { + OrderAssessLabel orderAssessLabel = new OrderAssessLabel(); + orderAssessLabel.setLabelId(label); + orderAssessLabel.setOrderId(request.getOrderDetailId()); + int insertLabelRow = orderAssessLabelService.insertOrderAssessLabel(orderAssessLabel); + Assert.isTrue(insertLabelRow > 0, ",labelId=" + label); + }); + } + // 修改子单状态为完单待确认状态,更新完单时间 OrderDetail updateOrderDetail = new OrderDetail(); updateOrderDetail.setId(request.getOrderDetailId()); diff --git a/ghy-order/src/main/java/com/ghy/order/domain/OrderAssessLabel.java b/ghy-order/src/main/java/com/ghy/order/domain/OrderAssessLabel.java new file mode 100644 index 00000000..9cacf61d --- /dev/null +++ b/ghy-order/src/main/java/com/ghy/order/domain/OrderAssessLabel.java @@ -0,0 +1,63 @@ +package com.ghy.order.domain; + +import com.ghy.common.annotation.Excel; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 订单与评价标签关联关系对象 order_assess_label + * + * @author ydq + * @date : 2022-10-08 22:03 + */ +public class OrderAssessLabel { + private static final long serialVersionUID = 1L; + + /** ID */ + private Long id; + + /** 订单ID */ + @Excel(name = "订单ID") + private Long orderId; + + /** 标签ID */ + @Excel(name = "标签ID") + private String labelId; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setOrderId(Long orderId) + { + this.orderId = orderId; + } + + public Long getOrderId() + { + return orderId; + } + public void setLabelId(String labelId) + { + this.labelId = labelId; + } + + public String getLabelId() + { + return labelId; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("orderId", getOrderId()) + .append("labelId", getLabelId()) + .toString(); + } +} diff --git a/ghy-order/src/main/java/com/ghy/order/mapper/OrderAssessLabelMapper.java b/ghy-order/src/main/java/com/ghy/order/mapper/OrderAssessLabelMapper.java new file mode 100644 index 00000000..c4cd5cd3 --- /dev/null +++ b/ghy-order/src/main/java/com/ghy/order/mapper/OrderAssessLabelMapper.java @@ -0,0 +1,61 @@ +package com.ghy.order.mapper; + +import com.ghy.order.domain.OrderAssessLabel; + +import java.util.List; + +/** + * 订单与评价标签关联关系Mapper接口 + * + * @author ydq + * @date : 2022-10-08 22:05 + */ +public interface OrderAssessLabelMapper { + /** + * 查询订单与评价标签关联关系 + * + * @param id 订单与评价标签关联关系主键 + * @return 订单与评价标签关联关系 + */ + public OrderAssessLabel selectOrderAssessLabelById(Long id); + + /** + * 查询订单与评价标签关联关系列表 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 订单与评价标签关联关系集合 + */ + public List selectOrderAssessLabelList(OrderAssessLabel orderAssessLabel); + + /** + * 新增订单与评价标签关联关系 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 结果 + */ + public int insertOrderAssessLabel(OrderAssessLabel orderAssessLabel); + + /** + * 修改订单与评价标签关联关系 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 结果 + */ + public int updateOrderAssessLabel(OrderAssessLabel orderAssessLabel); + + /** + * 删除订单与评价标签关联关系 + * + * @param id 订单与评价标签关联关系主键 + * @return 结果 + */ + public int deleteOrderAssessLabelById(Long id); + + /** + * 批量删除订单与评价标签关联关系 + * + * @param ids 需要删除的数据主键集合 + * @return 结果 + */ + public int deleteOrderAssessLabelByIds(String[] ids); +} diff --git a/ghy-order/src/main/java/com/ghy/order/request/OrderProcessRequest.java b/ghy-order/src/main/java/com/ghy/order/request/OrderProcessRequest.java index 715a1134..751ea55b 100644 --- a/ghy-order/src/main/java/com/ghy/order/request/OrderProcessRequest.java +++ b/ghy-order/src/main/java/com/ghy/order/request/OrderProcessRequest.java @@ -18,4 +18,6 @@ public class OrderProcessRequest { private List finishImgList; // 备注 private String remark; + // 评价标签 + private List assessLabels; } diff --git a/ghy-order/src/main/java/com/ghy/order/service/IOrderAssessLabelService.java b/ghy-order/src/main/java/com/ghy/order/service/IOrderAssessLabelService.java new file mode 100644 index 00000000..dd77b3fb --- /dev/null +++ b/ghy-order/src/main/java/com/ghy/order/service/IOrderAssessLabelService.java @@ -0,0 +1,61 @@ +package com.ghy.order.service; + +import com.ghy.order.domain.OrderAssessLabel; + +import java.util.List; + +/** + * 订单与评价标签关联关系Service接口 + * + * @author ydq + * @date : 2022-10-08 22:08 + */ +public interface IOrderAssessLabelService { + /** + * 查询订单与评价标签关联关系 + * + * @param id 订单与评价标签关联关系主键 + * @return 订单与评价标签关联关系 + */ + public OrderAssessLabel selectOrderAssessLabelById(Long id); + + /** + * 查询订单与评价标签关联关系列表 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 订单与评价标签关联关系集合 + */ + public List selectOrderAssessLabelList(OrderAssessLabel orderAssessLabel); + + /** + * 新增订单与评价标签关联关系 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 结果 + */ + public int insertOrderAssessLabel(OrderAssessLabel orderAssessLabel); + + /** + * 修改订单与评价标签关联关系 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 结果 + */ + public int updateOrderAssessLabel(OrderAssessLabel orderAssessLabel); + + /** + * 批量删除订单与评价标签关联关系 + * + * @param ids 需要删除的订单与评价标签关联关系主键集合 + * @return 结果 + */ + public int deleteOrderAssessLabelByIds(String ids); + + /** + * 删除订单与评价标签关联关系信息 + * + * @param id 订单与评价标签关联关系主键 + * @return 结果 + */ + public int deleteOrderAssessLabelById(Long id); +} diff --git a/ghy-order/src/main/java/com/ghy/order/service/impl/OrderAssessLabelServiceImpl.java b/ghy-order/src/main/java/com/ghy/order/service/impl/OrderAssessLabelServiceImpl.java new file mode 100644 index 00000000..1277d014 --- /dev/null +++ b/ghy-order/src/main/java/com/ghy/order/service/impl/OrderAssessLabelServiceImpl.java @@ -0,0 +1,95 @@ +package com.ghy.order.service.impl; + +import com.ghy.common.core.text.Convert; +import com.ghy.order.domain.OrderAssessLabel; +import com.ghy.order.mapper.OrderAssessLabelMapper; +import com.ghy.order.service.IOrderAssessLabelService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 订单与评价标签关联关系Service业务层处理 + * + * @author ydq + * @date : 2022-10-08 22:08 + */ +@Service +public class OrderAssessLabelServiceImpl implements IOrderAssessLabelService +{ + @Resource + private OrderAssessLabelMapper orderAssessLabelMapper; + + /** + * 查询订单与评价标签关联关系 + * + * @param id 订单与评价标签关联关系主键 + * @return 订单与评价标签关联关系 + */ + @Override + public OrderAssessLabel selectOrderAssessLabelById(Long id) + { + return orderAssessLabelMapper.selectOrderAssessLabelById(id); + } + + /** + * 查询订单与评价标签关联关系列表 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 订单与评价标签关联关系 + */ + @Override + public List selectOrderAssessLabelList(OrderAssessLabel orderAssessLabel) + { + return orderAssessLabelMapper.selectOrderAssessLabelList(orderAssessLabel); + } + + /** + * 新增订单与评价标签关联关系 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 结果 + */ + @Override + public int insertOrderAssessLabel(OrderAssessLabel orderAssessLabel) + { + return orderAssessLabelMapper.insertOrderAssessLabel(orderAssessLabel); + } + + /** + * 修改订单与评价标签关联关系 + * + * @param orderAssessLabel 订单与评价标签关联关系 + * @return 结果 + */ + @Override + public int updateOrderAssessLabel(OrderAssessLabel orderAssessLabel) + { + return orderAssessLabelMapper.updateOrderAssessLabel(orderAssessLabel); + } + + /** + * 批量删除订单与评价标签关联关系 + * + * @param ids 需要删除的订单与评价标签关联关系主键 + * @return 结果 + */ + @Override + public int deleteOrderAssessLabelByIds(String ids) + { + return orderAssessLabelMapper.deleteOrderAssessLabelByIds(Convert.toStrArray(ids)); + } + + /** + * 删除订单与评价标签关联关系信息 + * + * @param id 订单与评价标签关联关系主键 + * @return 结果 + */ + @Override + public int deleteOrderAssessLabelById(Long id) + { + return orderAssessLabelMapper.deleteOrderAssessLabelById(id); + } +} diff --git a/ghy-order/src/main/resources/mapper/order/OrderAssessLabelMapper.xml b/ghy-order/src/main/resources/mapper/order/OrderAssessLabelMapper.xml new file mode 100644 index 00000000..af0019dc --- /dev/null +++ b/ghy-order/src/main/resources/mapper/order/OrderAssessLabelMapper.xml @@ -0,0 +1,64 @@ + + + + + + + + + + + + select id, order_id, label_id from order_assess_label + + + + + + + + insert into order_assess_label + + id, + order_id, + label_id, + + + #{id}, + #{orderId}, + #{labelId}, + + + + + update order_assess_label + + order_id = #{orderId}, + label_id = #{labelId}, + + where id = #{id} + + + + delete from order_assess_label where id = #{id} + + + + delete from order_assess_label where id in + + #{id} + + + +