主单/子单流程轨迹
This commit is contained in:
parent
cc5f528bf7
commit
8c805e710a
|
|
@ -17,6 +17,13 @@
|
|||
|
||||
<dependencies>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.tencentcloudapi.cls</groupId>
|
||||
<artifactId>tencentcloud-cls-logback-appender</artifactId>
|
||||
<version>1.0.3</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
<!-- SpringBoot集成thymeleaf模板 -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
|
|
|
|||
|
|
@ -369,7 +369,7 @@ public class OrderDetailController extends BaseController {
|
|||
orderStandard.setWaitServerNum(orderStandard.getStandardNum() - orderStandard.getServerNum());
|
||||
standardList.add(orderStandard);
|
||||
}
|
||||
if (this.checkIsOnlyServer(orderMaster.getId(), detail.getWorkerId())) {
|
||||
if (this.checkIsOnlyServer(orderMaster.getId(), orderMaster.getWorkerId())) {
|
||||
BigDecimal workerFee = financialMaster.getPayMoney();
|
||||
List<FinancialDetail> financialDetailList = financialDetailService.selectByFinancialMasterId(financialMaster.getId());
|
||||
for (FinancialDetail param : financialDetailList) {
|
||||
|
|
|
|||
|
|
@ -215,9 +215,14 @@ public class OrderMasterController extends BaseController {
|
|||
{
|
||||
ExcelUtil<SysOrderRequest> util = new ExcelUtil<SysOrderRequest>(SysOrderRequest.class);
|
||||
List<SysOrderRequest> jsonObjects = util.importExcel(file.getInputStream());
|
||||
boolean flag = false;
|
||||
for (SysOrderRequest model : jsonObjects) {
|
||||
if(NumberUtil.isNumber(model.getSeq())){
|
||||
this.sysOrder(format(model));
|
||||
if("序号".equals(model.getSeq())){
|
||||
flag = true;
|
||||
continue;
|
||||
}
|
||||
if(flag){
|
||||
sysOrder(format(model));
|
||||
}
|
||||
}
|
||||
return AjaxResult.success(jsonObjects);
|
||||
|
|
@ -231,6 +236,25 @@ public class OrderMasterController extends BaseController {
|
|||
if(StringUtils.isEmpty(orderRequest.getName())){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",姓名不能为空!");
|
||||
}
|
||||
if(StringUtils.isEmpty(orderRequest.getPrice())){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",I列,发布价格填写不能为空!");
|
||||
}
|
||||
try {
|
||||
Integer.parseInt(orderRequest.getPrice());
|
||||
}catch (Exception e){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",I列,发布价格不能有小数点!");
|
||||
}
|
||||
if(StringUtils.isEmpty(orderRequest.getNum())){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",H列,数量填写不能为空!");
|
||||
}
|
||||
try {
|
||||
Integer.parseInt(orderRequest.getNum());
|
||||
}catch (Exception e){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",H列,数量不能含小数点。");
|
||||
}
|
||||
if(StringUtils.isEmpty(orderRequest.getLastCategory())){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",C列,四级类目不能为空!");
|
||||
}
|
||||
request.setCustomerName(orderRequest.getName());
|
||||
if(StringUtils.isEmpty(orderRequest.getPhone())){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",导入手机号不能为空!");
|
||||
|
|
@ -241,7 +265,7 @@ public class OrderMasterController extends BaseController {
|
|||
request.setGoodsBrand(orderRequest.getBrand());
|
||||
request.setRemark(orderRequest.getRemark());
|
||||
if(StringUtils.isEmpty(orderRequest.getMode())){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",下单模式不能为空!");
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",G列,下单模式名称有误/或带有其它字符!");
|
||||
}else {
|
||||
if(orderRequest.getMode().contains("-")){
|
||||
String orderModel = orderRequest.getMode().split("-")[0];
|
||||
|
|
@ -251,12 +275,12 @@ public class OrderMasterController extends BaseController {
|
|||
}else if("一票价".equals(orderModel)){
|
||||
request.setOrderMode("01");
|
||||
}else {
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",下单模式填写错误!");
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",G列,下单模式名称有误/或带有其它字符!");
|
||||
}
|
||||
if("到付".equals(payType)){
|
||||
request.setPayMode("02");
|
||||
}else {
|
||||
request.setPayMode("01");
|
||||
}else {
|
||||
request.setPayMode("02");
|
||||
}
|
||||
}else {
|
||||
if("带价下单".equals(orderRequest.getMode())){
|
||||
|
|
@ -266,14 +290,14 @@ public class OrderMasterController extends BaseController {
|
|||
request.setOrderMode("01");
|
||||
request.setPayMode("02");
|
||||
}else {
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",下单模式填写错误!");
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",G列,下单模式名称有误/或带有其它字符!");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if(StringUtils.isEmpty(orderRequest.getPrice())){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",价格不能为空!");
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",I列,发布价格填写不能为空!\n");
|
||||
}
|
||||
request.setPrice(new BigDecimal(orderRequest.getPrice()));
|
||||
request.setVideoUrl(orderRequest.getUrl());
|
||||
|
|
@ -281,10 +305,10 @@ public class OrderMasterController extends BaseController {
|
|||
List<SysOrderGoodsStandards> goodsStandards = new ArrayList<>();
|
||||
String [] categoryNames = orderRequest.getCategory().split("-");
|
||||
if(categoryNames.length != 3){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",三级类目数据格式错误");
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",B列,三级类目名称有误/或格式有误!");
|
||||
}else {
|
||||
if(StringUtils.isEmpty(categoryNames[0])||StringUtils.isEmpty(categoryNames[1])||StringUtils.isEmpty(orderRequest.getLastCategory())){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",前三级类目不能为空,请参照系统填写");
|
||||
if(StringUtils.isEmpty(categoryNames[0])||StringUtils.isEmpty(categoryNames[1])||StringUtils.isEmpty(categoryNames[2])){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",B列,三级类目名称有误/或格式有误!");
|
||||
}
|
||||
try {
|
||||
// 第一层
|
||||
|
|
@ -323,7 +347,7 @@ public class OrderMasterController extends BaseController {
|
|||
standards.setGoodsStandardName(orderRequest.getLastCategory());
|
||||
goodsStandards.add(standards);
|
||||
}catch (Exception e){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",前三级类目有错误,请参照系统填写");
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",B列,三级类目名称有误/或格式有误!");
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -338,7 +362,7 @@ public class OrderMasterController extends BaseController {
|
|||
}
|
||||
}
|
||||
if(addressName.length < 4){
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",地址数据格式错误");
|
||||
throw new Exception("导入表格序号" + orderRequest.getSeq() + ",L列,服务地址不能为空或分隔符不能少于3个!");
|
||||
}else {
|
||||
// 省
|
||||
SysArea param1 = new SysArea();
|
||||
|
|
@ -371,7 +395,7 @@ public class OrderMasterController extends BaseController {
|
|||
return request;
|
||||
}
|
||||
|
||||
public void sysOrder(@RequestBody SysOrderAssignRequest request) throws Exception {
|
||||
public synchronized void sysOrder(@RequestBody SysOrderAssignRequest request) throws Exception {
|
||||
|
||||
// 判断传递价格是否有小数
|
||||
if (new BigDecimal(request.getPrice().intValue()).compareTo(request.getPrice())!=0){
|
||||
|
|
@ -394,20 +418,17 @@ public class OrderMasterController extends BaseController {
|
|||
if (request.getProvinceId() == null || request.getCityId() == null || request.getDistrictId() == null || org.apache.commons.lang3.StringUtils.isBlank(request.getFullAddress())) {
|
||||
throw new Exception("请填写地址");
|
||||
}
|
||||
CustomerAddress customerAddress = customerAddressService.selectByCustomerAndAddress(customer.getCustomerId(),
|
||||
request.getProvinceId(), request.getCityId(), request.getDistrictId(), request.getFullAddress());
|
||||
if (customerAddress == null) {
|
||||
customerAddress = new CustomerAddress();
|
||||
customerAddress.setCustomerId(customer.getCustomerId());
|
||||
customerAddress.setProvinceId(request.getProvinceId());
|
||||
customerAddress.setCityId(request.getCityId());
|
||||
customerAddress.setCountryId(request.getDistrictId());
|
||||
customerAddress.setAddress(request.getFullAddress());
|
||||
customerAddress.setIsDefault(0);
|
||||
customerAddress.setPhone(request.getCustomerPhone());
|
||||
customerAddress.setName(request.getCustomerName());
|
||||
customerAddressService.insertCustomerAddress(customerAddress);
|
||||
}
|
||||
|
||||
CustomerAddress customerAddress = new CustomerAddress();
|
||||
customerAddress.setCustomerId(customer.getCustomerId());
|
||||
customerAddress.setProvinceId(request.getProvinceId());
|
||||
customerAddress.setCityId(request.getCityId());
|
||||
customerAddress.setCountryId(request.getDistrictId());
|
||||
customerAddress.setAddress(request.getFullAddress());
|
||||
customerAddress.setIsDefault(0);
|
||||
customerAddress.setPhone(request.getCustomerPhone());
|
||||
customerAddress.setName(request.getCustomerName());
|
||||
customerAddressService.insertCustomerAddress(customerAddress);
|
||||
|
||||
// 订单总价 不能小于0
|
||||
BigDecimal orderPrice = request.getPrice().max(BigDecimal.ZERO);
|
||||
|
|
|
|||
|
|
@ -0,0 +1,152 @@
|
|||
package com.ghy.web.controller.order;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
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 com.ghy.common.annotation.Log;
|
||||
import com.ghy.common.enums.BusinessType;
|
||||
import com.ghy.order.domain.OrderOperationRecord;
|
||||
import com.ghy.order.service.IOrderOperationRecordService;
|
||||
import com.ghy.common.core.controller.BaseController;
|
||||
import com.ghy.common.core.domain.AjaxResult;
|
||||
import com.ghy.common.utils.poi.ExcelUtil;
|
||||
import com.ghy.common.core.page.TableDataInfo;
|
||||
|
||||
/**
|
||||
* 订单操作记录Controller
|
||||
*
|
||||
* @author clunt
|
||||
* @date 2024-02-17
|
||||
*/
|
||||
@Api
|
||||
@Controller
|
||||
@RequestMapping("/order/operate")
|
||||
public class OrderOperationRecordController extends BaseController
|
||||
{
|
||||
private String prefix = "order/operate";
|
||||
|
||||
@Autowired
|
||||
private IOrderOperationRecordService orderOperationRecordService;
|
||||
|
||||
@RequiresPermissions("order:operate:view")
|
||||
@GetMapping()
|
||||
public String record()
|
||||
{
|
||||
return prefix + "/operate";
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询订单操作记录列表
|
||||
*/
|
||||
@RequiresPermissions("order:operate:list")
|
||||
@PostMapping("/list")
|
||||
@ResponseBody
|
||||
public TableDataInfo list(OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
startPage();
|
||||
List<OrderOperationRecord> list = orderOperationRecordService.selectOrderOperationRecordList(orderOperationRecord);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* App查询订单操作记录列表
|
||||
*/
|
||||
@ApiOperation("订单操作记录列表")
|
||||
@PostMapping("/app/list")
|
||||
@ResponseBody
|
||||
public TableDataInfo appList(@RequestBody OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
startPage();
|
||||
List<OrderOperationRecord> list = orderOperationRecordService.selectOrderOperationRecordList(orderOperationRecord);
|
||||
return getDataTable(list);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增保存订单操作记录
|
||||
*/
|
||||
@ApiOperation("新增订单操作记录")
|
||||
@PostMapping("/app/add")
|
||||
@ResponseBody
|
||||
public AjaxResult appAdd(OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
return toAjax(orderOperationRecordService.insertOrderOperationRecord(orderOperationRecord));
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 导出订单操作记录列表
|
||||
*/
|
||||
@RequiresPermissions("order:operate:export")
|
||||
@Log(title = "订单操作记录", businessType = BusinessType.EXPORT)
|
||||
@PostMapping("/export")
|
||||
@ResponseBody
|
||||
public AjaxResult export(OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
List<OrderOperationRecord> list = orderOperationRecordService.selectOrderOperationRecordList(orderOperationRecord);
|
||||
ExcelUtil<OrderOperationRecord> util = new ExcelUtil<OrderOperationRecord>(OrderOperationRecord.class);
|
||||
return util.exportExcel(list, "订单操作记录数据");
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增订单操作记录
|
||||
*/
|
||||
@GetMapping("/add")
|
||||
public String add()
|
||||
{
|
||||
return prefix + "/add";
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增保存订单操作记录
|
||||
*/
|
||||
@RequiresPermissions("order:operate:add")
|
||||
@Log(title = "订单操作记录", businessType = BusinessType.INSERT)
|
||||
@PostMapping("/add")
|
||||
@ResponseBody
|
||||
public AjaxResult addSave(OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
return toAjax(orderOperationRecordService.insertOrderOperationRecord(orderOperationRecord));
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改订单操作记录
|
||||
*/
|
||||
@RequiresPermissions("order:operate:edit")
|
||||
@GetMapping("/edit/{id}")
|
||||
public String edit(@PathVariable("id") Long id, ModelMap mmap)
|
||||
{
|
||||
OrderOperationRecord orderOperationRecord = orderOperationRecordService.selectOrderOperationRecordById(id);
|
||||
mmap.put("orderOperationRecord", orderOperationRecord);
|
||||
return prefix + "/edit";
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改保存订单操作记录
|
||||
*/
|
||||
@RequiresPermissions("order:operate:edit")
|
||||
@Log(title = "订单操作记录", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/edit")
|
||||
@ResponseBody
|
||||
public AjaxResult editSave(OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
return toAjax(orderOperationRecordService.updateOrderOperationRecord(orderOperationRecord));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除订单操作记录
|
||||
*/
|
||||
@RequiresPermissions("order:operate:remove")
|
||||
@Log(title = "订单操作记录", businessType = BusinessType.DELETE)
|
||||
@PostMapping( "/remove")
|
||||
@ResponseBody
|
||||
public AjaxResult remove(String ids)
|
||||
{
|
||||
return toAjax(orderOperationRecordService.deleteOrderOperationRecordByIds(ids));
|
||||
}
|
||||
}
|
||||
|
|
@ -41,7 +41,7 @@ public class SwaggerConfig
|
|||
// 扫描所有有注解的api,用这种方式更灵活
|
||||
.apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
|
||||
// 扫描指定包中的swagger注解
|
||||
.apis(RequestHandlerSelectors.basePackage("com.ghy.web.controller.tool"))
|
||||
.apis(RequestHandlerSelectors.basePackage("com.ghy.web.controller.order"))
|
||||
// 扫描所有 .apis(RequestHandlerSelectors.any())
|
||||
.paths(PathSelectors.any())
|
||||
.build();
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ ruoyi:
|
|||
# 开发环境配置
|
||||
server:
|
||||
# 服务器的HTTP端口,默认为80
|
||||
port: 80
|
||||
port: 19001
|
||||
servlet:
|
||||
# 应用的访问路径
|
||||
context-path: /
|
||||
|
|
@ -121,7 +121,7 @@ qiniu:
|
|||
adapay:
|
||||
debug: true
|
||||
prod-mode: true
|
||||
notifyUrl: 'https://www.opsoul.com:8881/adapay/callback'
|
||||
notifyUrl: 'https://gmhl.opsoul.com/adapay/callback'
|
||||
|
||||
jim:
|
||||
appKey: '110e8830290152d76e2f1d97'
|
||||
|
|
|
|||
|
|
@ -249,7 +249,7 @@
|
|||
</div>
|
||||
<div class="flex-board-no-wrap m-t">
|
||||
<label class="form-control-label">订单查询:</label>
|
||||
<input id="keyWords" type="text" class="form-control long-input m-r" placeholder="请输入订单号、姓名、电话或地址、品牌、规格">
|
||||
<input id="keywords" type="text" class="form-control long-input m-r" placeholder="请输入订单号、姓名、电话">
|
||||
</div>
|
||||
<div class="m-t">
|
||||
<a class="btn btn-primary btn-rounded btn-sm" onclick="searchByForm()"><i
|
||||
|
|
@ -921,7 +921,7 @@
|
|||
storePhone: $('#storePhone').val(),
|
||||
workerName: $('#workerName').val(),
|
||||
workerPhone: $('#workerPhone').val(),
|
||||
keyWords: $('#keyWords').val()
|
||||
keywords: $('#keywords').val()
|
||||
}
|
||||
|
||||
customParams = Object.assign(customParams, params);
|
||||
|
|
|
|||
|
|
@ -290,6 +290,7 @@ public class ShiroConfig
|
|||
filterChainDefinitionMap.put("/system/dept/list", "anon");
|
||||
filterChainDefinitionMap.put("/customer/address/**", "anon");
|
||||
filterChainDefinitionMap.put("/customer/place/app/**", "anon");
|
||||
filterChainDefinitionMap.put("/order/operate/app/**", "anon");
|
||||
filterChainDefinitionMap.put("/customer/selection/app/**", "anon");
|
||||
filterChainDefinitionMap.put("/jim/**", "anon");
|
||||
filterChainDefinitionMap.put("/MP_verify_bRFuvYpyQ4WLr0on.txt", "anon");
|
||||
|
|
|
|||
|
|
@ -43,6 +43,19 @@
|
|||
<artifactId>ghy-payment</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- swagger3-->
|
||||
<dependency>
|
||||
<groupId>io.springfox</groupId>
|
||||
<artifactId>springfox-boot-starter</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!-- 防止进入swagger页面报类型转换错误,排除3.0.0中的引用,手动增加1.6.2版本 -->
|
||||
<dependency>
|
||||
<groupId>io.swagger</groupId>
|
||||
<artifactId>swagger-models</artifactId>
|
||||
<version>1.6.2</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
|
|
|
|||
|
|
@ -197,4 +197,19 @@ public class OrderMaster extends BaseEntity {
|
|||
// 商品规格 -- 后台发单才有
|
||||
private String goodsSpecification;
|
||||
|
||||
/**
|
||||
* 后台关键字搜索
|
||||
* */
|
||||
private String keywords;
|
||||
|
||||
private String workerPhone;
|
||||
|
||||
private String workerName;
|
||||
|
||||
private String province;
|
||||
|
||||
private String city;
|
||||
|
||||
private String district;
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,54 @@
|
|||
package com.ghy.order.domain;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
import com.ghy.common.annotation.Excel;
|
||||
import com.ghy.common.core.domain.BaseEntity;
|
||||
|
||||
/**
|
||||
* 订单操作记录对象 order_operation_record
|
||||
*
|
||||
* @author clunt
|
||||
* @date 2024-02-17
|
||||
*/
|
||||
@Data
|
||||
@ApiModel(value = "订单操作记录")
|
||||
public class OrderOperationRecord extends BaseEntity
|
||||
{
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/** 主键 */
|
||||
private Long id;
|
||||
|
||||
/** 订单id */
|
||||
@Excel(name = "订单id")
|
||||
@ApiModelProperty(value = "订单id")
|
||||
private Long orderId;
|
||||
|
||||
/** 订单类型 01.主单 02.子单 */
|
||||
@Excel(name = "订单类型 01.主单 02.子单")
|
||||
@ApiModelProperty(value = "订单类型 01.主单 02.子单")
|
||||
private String orderType;
|
||||
|
||||
/** 操作内容 */
|
||||
@Excel(name = "操作内容")
|
||||
@ApiModelProperty(value = "操作内容")
|
||||
private String content;
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
|
||||
.append("id", getId())
|
||||
.append("orderId", getOrderId())
|
||||
.append("orderType", getOrderType())
|
||||
.append("content", getContent())
|
||||
.append("createTime", getCreateTime())
|
||||
.append("updateTime", getUpdateTime())
|
||||
.append("createBy", getCreateBy())
|
||||
.append("updateBy", getUpdateBy())
|
||||
.append("remark", getRemark())
|
||||
.toString();
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
package com.ghy.order.mapper;
|
||||
|
||||
import com.ghy.order.domain.OrderOperationRecord;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 订单操作记录Mapper接口
|
||||
*
|
||||
* @author clunt
|
||||
* @date 2024-02-17
|
||||
*/
|
||||
public interface OrderOperationRecordMapper
|
||||
{
|
||||
/**
|
||||
* 查询订单操作记录
|
||||
*
|
||||
* @param id 订单操作记录主键
|
||||
* @return 订单操作记录
|
||||
*/
|
||||
public OrderOperationRecord selectOrderOperationRecordById(Long id);
|
||||
|
||||
/**
|
||||
* 查询订单操作记录列表
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 订单操作记录集合
|
||||
*/
|
||||
public List<OrderOperationRecord> selectOrderOperationRecordList(OrderOperationRecord orderOperationRecord);
|
||||
|
||||
/**
|
||||
* 新增订单操作记录
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertOrderOperationRecord(OrderOperationRecord orderOperationRecord);
|
||||
|
||||
/**
|
||||
* 修改订单操作记录
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateOrderOperationRecord(OrderOperationRecord orderOperationRecord);
|
||||
|
||||
/**
|
||||
* 删除订单操作记录
|
||||
*
|
||||
* @param id 订单操作记录主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteOrderOperationRecordById(Long id);
|
||||
|
||||
/**
|
||||
* 批量删除订单操作记录
|
||||
*
|
||||
* @param ids 需要删除的数据主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteOrderOperationRecordByIds(String[] ids);
|
||||
}
|
||||
|
|
@ -0,0 +1,60 @@
|
|||
package com.ghy.order.service;
|
||||
import java.util.List;
|
||||
import com.ghy.order.domain.OrderOperationRecord;
|
||||
|
||||
/**
|
||||
* 订单操作记录Service接口
|
||||
*
|
||||
* @author clunt
|
||||
* @date 2024-02-17
|
||||
*/
|
||||
public interface IOrderOperationRecordService
|
||||
{
|
||||
/**
|
||||
* 查询订单操作记录
|
||||
*
|
||||
* @param id 订单操作记录主键
|
||||
* @return 订单操作记录
|
||||
*/
|
||||
public OrderOperationRecord selectOrderOperationRecordById(Long id);
|
||||
|
||||
/**
|
||||
* 查询订单操作记录列表
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 订单操作记录集合
|
||||
*/
|
||||
public List<OrderOperationRecord> selectOrderOperationRecordList(OrderOperationRecord orderOperationRecord);
|
||||
|
||||
/**
|
||||
* 新增订单操作记录
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 结果
|
||||
*/
|
||||
public int insertOrderOperationRecord(OrderOperationRecord orderOperationRecord);
|
||||
|
||||
/**
|
||||
* 修改订单操作记录
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 结果
|
||||
*/
|
||||
public int updateOrderOperationRecord(OrderOperationRecord orderOperationRecord);
|
||||
|
||||
/**
|
||||
* 批量删除订单操作记录
|
||||
*
|
||||
* @param ids 需要删除的订单操作记录主键集合
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteOrderOperationRecordByIds(String ids);
|
||||
|
||||
/**
|
||||
* 删除订单操作记录信息
|
||||
*
|
||||
* @param id 订单操作记录主键
|
||||
* @return 结果
|
||||
*/
|
||||
public int deleteOrderOperationRecordById(Long id);
|
||||
}
|
||||
|
|
@ -0,0 +1,97 @@
|
|||
package com.ghy.order.service.impl;
|
||||
|
||||
import java.util.List;
|
||||
import com.ghy.common.utils.DateUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.ghy.order.mapper.OrderOperationRecordMapper;
|
||||
import com.ghy.order.domain.OrderOperationRecord;
|
||||
import com.ghy.order.service.IOrderOperationRecordService;
|
||||
import com.ghy.common.core.text.Convert;
|
||||
|
||||
/**
|
||||
* 订单操作记录Service业务层处理
|
||||
*
|
||||
* @author clunt
|
||||
* @date 2024-02-17
|
||||
*/
|
||||
@Service
|
||||
public class OrderOperationRecordServiceImpl implements IOrderOperationRecordService
|
||||
{
|
||||
@Autowired
|
||||
private OrderOperationRecordMapper orderOperationRecordMapper;
|
||||
|
||||
/**
|
||||
* 查询订单操作记录
|
||||
*
|
||||
* @param id 订单操作记录主键
|
||||
* @return 订单操作记录
|
||||
*/
|
||||
@Override
|
||||
public OrderOperationRecord selectOrderOperationRecordById(Long id)
|
||||
{
|
||||
return orderOperationRecordMapper.selectOrderOperationRecordById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询订单操作记录列表
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 订单操作记录
|
||||
*/
|
||||
@Override
|
||||
public List<OrderOperationRecord> selectOrderOperationRecordList(OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
return orderOperationRecordMapper.selectOrderOperationRecordList(orderOperationRecord);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新增订单操作记录
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int insertOrderOperationRecord(OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
orderOperationRecord.setCreateTime(DateUtils.getNowDate());
|
||||
return orderOperationRecordMapper.insertOrderOperationRecord(orderOperationRecord);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改订单操作记录
|
||||
*
|
||||
* @param orderOperationRecord 订单操作记录
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int updateOrderOperationRecord(OrderOperationRecord orderOperationRecord)
|
||||
{
|
||||
orderOperationRecord.setUpdateTime(DateUtils.getNowDate());
|
||||
return orderOperationRecordMapper.updateOrderOperationRecord(orderOperationRecord);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除订单操作记录
|
||||
*
|
||||
* @param ids 需要删除的订单操作记录主键
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int deleteOrderOperationRecordByIds(String ids)
|
||||
{
|
||||
return orderOperationRecordMapper.deleteOrderOperationRecordByIds(Convert.toStrArray(ids));
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除订单操作记录信息
|
||||
*
|
||||
* @param id 订单操作记录主键
|
||||
* @return 结果
|
||||
*/
|
||||
@Override
|
||||
public int deleteOrderOperationRecordById(Long id)
|
||||
{
|
||||
return orderOperationRecordMapper.deleteOrderOperationRecordById(id);
|
||||
}
|
||||
}
|
||||
|
|
@ -107,11 +107,35 @@
|
|||
LEFT JOIN customer_address ca ON ca.customer_address_id = om.address_id
|
||||
LEFT JOIN goods g ON g.goods_id = om.goods_id
|
||||
LEFT JOIN financial_master fm ON om.id = fm.order_master_id
|
||||
left join worker w on om.worker_id = w.worker_id
|
||||
</sql>
|
||||
|
||||
<select id="selectOrderMasterList" parameterType="com.ghy.order.domain.OrderMaster" resultMap="OrderMasterResult">
|
||||
<include refid="selectOrderMasterMoreInfo"></include>
|
||||
<where>
|
||||
<if test="keywords != null and keywords != ''">
|
||||
AND
|
||||
(
|
||||
om.code LIKE concat('%', #{keywords}, '%')
|
||||
or ca.name LIKE concat('%', #{keywords}, '%')
|
||||
or ca.phone LIKE concat('%', #{keywords}, '%')
|
||||
)
|
||||
</if>
|
||||
<if test="workerName != null and workerName != ''">
|
||||
AND w.name LIKE concat('%', #{workerName}, '%')
|
||||
</if>
|
||||
<if test="workerPhone != null and workerPhone != ''">
|
||||
AND w.phone LIKE concat('%', #{workerPhone}, '%')
|
||||
</if>
|
||||
<if test="province != null and province != ''">
|
||||
AND ca.province_id = #{province}
|
||||
</if>
|
||||
<if test="city != null and city != ''">
|
||||
AND ca.city_id = #{city}
|
||||
</if>
|
||||
<if test="district != null and district != ''">
|
||||
AND ca.country_id = #{district}
|
||||
</if>
|
||||
<if test="isMonitoredOrder">
|
||||
AND (om.all_self_assigned = 0 or om.all_self_assigned is null) AND om.order_status in (1,2,3,4)
|
||||
</if>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,87 @@
|
|||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper
|
||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.ghy.order.mapper.OrderOperationRecordMapper">
|
||||
|
||||
<resultMap type="OrderOperationRecord" id="OrderOperationRecordResult">
|
||||
<result property="id" column="id" />
|
||||
<result property="orderId" column="order_id" />
|
||||
<result property="orderType" column="order_type" />
|
||||
<result property="content" column="content" />
|
||||
<result property="createTime" column="create_time" />
|
||||
<result property="updateTime" column="update_time" />
|
||||
<result property="createBy" column="create_by" />
|
||||
<result property="updateBy" column="update_by" />
|
||||
<result property="remark" column="remark" />
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectOrderOperationRecordVo">
|
||||
select id, order_id, order_type, content, create_time, update_time, create_by, update_by, remark from order_operation_record
|
||||
</sql>
|
||||
|
||||
<select id="selectOrderOperationRecordList" parameterType="OrderOperationRecord" resultMap="OrderOperationRecordResult">
|
||||
<include refid="selectOrderOperationRecordVo"/>
|
||||
<where>
|
||||
<if test="orderId != null "> and order_id = #{orderId}</if>
|
||||
<if test="orderType != null and orderType != ''"> and order_type = #{orderType}</if>
|
||||
<if test="content != null and content != ''"> and content = #{content}</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="selectOrderOperationRecordById" parameterType="Long" resultMap="OrderOperationRecordResult">
|
||||
<include refid="selectOrderOperationRecordVo"/>
|
||||
where id = #{id}
|
||||
</select>
|
||||
|
||||
<insert id="insertOrderOperationRecord" parameterType="OrderOperationRecord" useGeneratedKeys="true" keyProperty="id">
|
||||
insert into order_operation_record
|
||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||
<if test="orderId != null">order_id,</if>
|
||||
<if test="orderType != null">order_type,</if>
|
||||
<if test="content != null">content,</if>
|
||||
<if test="createTime != null">create_time,</if>
|
||||
<if test="updateTime != null">update_time,</if>
|
||||
<if test="createBy != null">create_by,</if>
|
||||
<if test="updateBy != null">update_by,</if>
|
||||
<if test="remark != null">remark,</if>
|
||||
</trim>
|
||||
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
||||
<if test="orderId != null">#{orderId},</if>
|
||||
<if test="orderType != null">#{orderType},</if>
|
||||
<if test="content != null">#{content},</if>
|
||||
<if test="createTime != null">#{createTime},</if>
|
||||
<if test="updateTime != null">#{updateTime},</if>
|
||||
<if test="createBy != null">#{createBy},</if>
|
||||
<if test="updateBy != null">#{updateBy},</if>
|
||||
<if test="remark != null">#{remark},</if>
|
||||
</trim>
|
||||
</insert>
|
||||
|
||||
<update id="updateOrderOperationRecord" parameterType="OrderOperationRecord">
|
||||
update order_operation_record
|
||||
<trim prefix="SET" suffixOverrides=",">
|
||||
<if test="orderId != null">order_id = #{orderId},</if>
|
||||
<if test="orderType != null">order_type = #{orderType},</if>
|
||||
<if test="content != null">content = #{content},</if>
|
||||
<if test="createTime != null">create_time = #{createTime},</if>
|
||||
<if test="updateTime != null">update_time = #{updateTime},</if>
|
||||
<if test="createBy != null">create_by = #{createBy},</if>
|
||||
<if test="updateBy != null">update_by = #{updateBy},</if>
|
||||
<if test="remark != null">remark = #{remark},</if>
|
||||
</trim>
|
||||
where id = #{id}
|
||||
</update>
|
||||
|
||||
<delete id="deleteOrderOperationRecordById" parameterType="Long">
|
||||
delete from order_operation_record where id = #{id}
|
||||
</delete>
|
||||
|
||||
<delete id="deleteOrderOperationRecordByIds" parameterType="String">
|
||||
delete from order_operation_record where id in
|
||||
<foreach item="id" collection="array" open="(" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</delete>
|
||||
|
||||
</mapper>
|
||||
|
|
@ -76,11 +76,11 @@ public class OrderServiceImpl implements OrderService {
|
|||
}
|
||||
|
||||
// 查询符合超时的子单
|
||||
List<OrderDetail> orders = orderDetailService.selectByStatus(timeoutOrderStatus);
|
||||
log.info("扫描到{}条未完成的子订单", orders.size());
|
||||
for (OrderDetail order : orders) {
|
||||
executor.execute(() -> checkTimeout(order));
|
||||
}
|
||||
// List<OrderDetail> orders = orderDetailService.selectByStatus(timeoutOrderStatus);
|
||||
// log.info("扫描到{}条未完成的子订单", orders.size());
|
||||
// for (OrderDetail order : orders) {
|
||||
// executor.execute(() -> checkTimeout(order));
|
||||
// }
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
|
|
|
|||
Loading…
Reference in New Issue