提交 21efcedf 作者: 张小凤

FlowDictionaryDTO(update)

上级 001f0993
package com.mmc.csf.infomation.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @Author small
* @Date 2023/8/22 13:26
* @Version 1.0
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public class FlowDictionaryDTO {
private Integer id;
@ApiModelProperty(value = "等待状态", example = "等待状态")
private String waiting;
@ApiModelProperty(value = "状态码", example = "状态码")
private String orderStatus;
@ApiModelProperty(value = "用户当前流程状态", example = "用户当前流程状态")
private String userPort;
@ApiModelProperty(value = "当前状态", example = "当前状态")
private String doing;
@ApiModelProperty(value = "飞手当前状态", example = "飞手当前状态")
private String flyerPort;
}
package com.mmc.csf.infomation.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
/**
* @Author small
* @Date 2023/8/22 10:43
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class RequirementsAmountVO {
private static final long serialVersionUID = -447951390213113317L;
@ApiModelProperty(value = "id", hidden = true)
private Integer id;
@ApiModelProperty(value = "修改任务佣金", example = "900")
private BigDecimal updateOrderAmount;
@ApiModelProperty(value = "需求id", example = "需求id")
private Integer requirementsInfoId;
@ApiModelProperty(value = "用户id", example = "用户id")
private Integer userAccountId;
@ApiModelProperty(value = "原因", example = "原因")
private String reason;
@ApiModelProperty(value = "图片地址", example = "http://")
private String url;
}
......@@ -151,4 +151,19 @@ public class RequirementsInfoVO implements Serializable {
@ApiModelProperty(value = "抢单者已支付的总金额", example = "抢单者已支付的总金额")
private BigDecimal preemptTotalAmount;
@ApiModelProperty(value = "任务佣金", example = "任务佣金")
private BigDecimal orderAmount;
@ApiModelProperty(value = "订单级别 REGULAR_ORDER,RUSH_ORDER,TOP_ORDER", example = "订单级别 REGULAR_ORDER,RUSH_ORDER,TOP_ORDER")
private BigDecimal orderLevel;
@ApiModelProperty(value = "修格后的任务佣金")
private BigDecimal updateOrderAmount;
@ApiModelProperty(value = "原因")
private String reason;
@ApiModelProperty(value = "原因url")
private String url;
}
......@@ -103,5 +103,8 @@ public class ServiceRequirementsVO implements Serializable {
@ApiModelProperty(value = "微信金额", example = "10", hidden = true)
private BigDecimal weChat;
@ApiModelProperty(value = "地区编码", example = "307013")
private String adcode;
}
......@@ -415,7 +415,10 @@ public enum ResultEnum implements BaseErrorInfoInterface {
PLEASE_SELECT_PAYMENT("60007", "请选择支付方式,发布失败"),
CASH_IS_ENOUGH("60008", "云享金额已足够,无需微信支付"),
SALARY_IS_ENOUGH("60009", "佣金剩余金额已足够,无需微信支付"),
;
YOU_CANNOT_CANCEL_THE_ORDER_AT_THIS_TIME("70000", "当前不能取消订单流程"),
PAYMENT_SUCCESS("70001", "你支付的保证金全额扣除成功"),
THE_AMOUNT_OF_THE_MISSION_WILL_BE_RETURNED("70002", "任务佣金原路退回成功"),
REFUND_PERCENTAGE("7003", "任务佣金百分之七十原路退回成功");
/**
* 错误码
......
/*
package com.mmc.csf.release.config;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
*/
/**
* @Author small
* @Date 2023/8/22 10:56
* @Version 1.0
* <p>
* 倒计时
* @param arg
* @throws ParseException
*//*
public class CountDownConfig {
public static int time = 60 * 60 * 60;
public static Calendar c;
public static long endTime;
public static Date date;
public static long startTime;
public static long midTime;
*/
/**
* 倒计时
*
* @param arg
* @throws ParseException
*//*
public static void main(String[] arg) throws ParseException {
Long beforTime = System.currentTimeMillis();
Long afterTime = beforTime + 3600 * 1000;
midTime = (afterTime - beforTime) / 1000;
time2();
}
*/
/*
* 方法二:设定时间戳,倒计时
*//*
private static void time2() {
while (midTime > 0) {
midTime--;
long h = midTime / 60 / 60 % 60;
long m = midTime / 60 % 60;
long s = midTime % 60;
System.out.println("还剩" + h + "小时" + m + "分钟" + s + "秒");
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
*/
......@@ -35,6 +35,14 @@ public class RequirementsController extends BaseController {
return requirementsService.listType(id);
}
@ApiOperation(value = "流程字典")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = RequirementsTypeVO.class)})
@GetMapping("flowDictionary")
public ResultBody<FlowDictionaryDTO> flowDictionary() {
return requirementsService.flowDictionary();
}
@ApiOperation(value = "小程序——发布需求信息")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("publish")
......@@ -43,6 +51,15 @@ public class RequirementsController extends BaseController {
return requirementsService.publish(requirementsInfoVO, request);
}
@ApiOperation(value = "小程序——发布服务需求")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("publishService")
public ResultBody publishService(@RequestBody @Validated(value = {Insert.class}) ServiceRequirementsVO serviceRequirementsVO, HttpServletRequest request) {
serviceRequirementsVO.setUserAccountId(this.getUserLoginInfoFromRedis(request).getUserAccountId());
return requirementsService.publishService(serviceRequirementsVO, request);
}
@ApiOperation(value = "new——小程序发布服务-——抢单")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@NotRepeatSubmit(value = 3000L)
......@@ -53,13 +70,6 @@ public class RequirementsController extends BaseController {
return requirementsService.grabTheOrder(grabTheOrderVO, request);
}
@ApiOperation(value = "小程序——发布服务需求")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("publishService")
public ResultBody publishService(@RequestBody @Validated(value = {Insert.class}) ServiceRequirementsVO serviceRequirementsVO, HttpServletRequest request) {
serviceRequirementsVO.setUserAccountId(this.getUserLoginInfoFromRedis(request).getUserAccountId());
return requirementsService.publishService(serviceRequirementsVO, request);
}
@ApiOperation(value = "小程序——发布服务需求订单编号单独接口")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
......@@ -162,6 +172,14 @@ public class RequirementsController extends BaseController {
}
@ApiModelProperty(value = "new--小程序————飞手端确认结算")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("confirmSettlement")
public ResultBody confirmSettlement(HttpServletRequest request) {
Integer userAccountId = this.getUserLoginInfoFromRedis(request).getUserAccountId();
return requirementsService.confirmSettlement(userAccountId);
}
@ApiOperation(value = "new——小程序-—发布者--订单结算详情")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("settleAccountsDetails")
......@@ -188,6 +206,41 @@ public class RequirementsController extends BaseController {
return requirementsService.evaluateDetails(requirementsInfoId, userAccountId);
}
@ApiOperation(value = "new——小程序-—飞手单方便取消订单")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("droneFlyerCancel")
public ResultBody droneFlyerCancel(HttpServletRequest request, @ApiParam(value = "发布服务需求id", required = true) @RequestParam Integer requirementsInfoId) {
Integer userAccountId = this.getUserLoginInfoFromRedis(request).getUserAccountId();
return requirementsService.droneFlyerCancel(requirementsInfoId, userAccountId);
}
@ApiOperation(value = "new——小程序-—发布者单方便取消订单")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("publisherCancel")
public ResultBody publisherCancel(HttpServletRequest request, @ApiParam(value = "发布服务需求id", required = true) @RequestParam Integer requirementsInfoId) {
Integer userAccountId = this.getUserLoginInfoFromRedis(request).getUserAccountId();
return requirementsService.publisherCancel(requirementsInfoId, userAccountId);
}
@ApiOperation(value = "new——小程序-—结算:发布者修改任务佣金")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("updatePublisherCancel")
public ResultBody updatePublisherCancel(HttpServletRequest request, @RequestBody RequirementsAmountVO amountVO) {
Integer userAccountId = this.getUserLoginInfoFromRedis(request).getUserAccountId();
amountVO.setUserAccountId(userAccountId);
return requirementsService.updatePublisherCancel(amountVO, request);
}
@ApiOperation(value = "new——后台管理取消订单(取消发布者与飞手共同建立的订单)")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("cancelAll")
public ResultBody cancelAll(HttpServletRequest request, @ApiParam(value = "发布服务需求id", required = true) @RequestParam Integer requirementsInfoId) {
Integer userAccountId = this.getUserLoginInfoFromRedis(request).getUserAccountId();
return requirementsService.cancelAll(requirementsInfoId, userAccountId);
}
@ApiOperation(value = "后台管理-详情——需求发布")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("backDetailPublish")
......@@ -218,4 +271,5 @@ public class RequirementsController extends BaseController {
return requirementsService.deleteRequire(requirementsInfoId, this.getUserLoginInfoFromRedis(request).getUserAccountId());
}
}
......@@ -112,4 +112,12 @@ public interface RequirementsDao {
List<RequirementsInfoDO> myPublish(Integer userAccountId);
List<RequirementsInfoDO> myPreempt(Integer userAccountId);
RequirementsServiceDO droneFlyerCancel(Integer requirementsInfoId, Integer userAccountId);
RequirementsInfoDO publisherCancel(Integer requirementsInfoId, Integer userAccountId);
List<FlowDictionaryDO> flowDictionary();
void addAmount(RequirementsAmountDO requirementsAmountDO);
}
package com.mmc.csf.release.entity.requirements;
import com.mmc.csf.infomation.dto.FlowDictionaryDTO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Author small
* @Date 2023/8/22 13:22
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FlowDictionaryDO implements Serializable {
private static final long serialVersionUID = -1811974173256250060L;
private Integer id;
@ApiModelProperty(value = "等待状态", example = "等待状态")
private String waiting;
@ApiModelProperty(value = "状态码", example = "状态码")
private String orderStatus;
@ApiModelProperty(value = "用户当前流程状态", example = "用户当前流程状态")
private String userPort;
@ApiModelProperty(value = "当前状态", example = "当前状态")
private String doing;
@ApiModelProperty(value = "飞手当前状态", example = "飞手当前状态")
private String flyerPort;
public FlowDictionaryDTO buildFlowDictionaryDTO() {
return FlowDictionaryDTO.builder()
.waiting(this.waiting)
.orderStatus(this.orderStatus)
.userPort(this.userPort)
.doing(this.doing)
.flyerPort(this.flyerPort)
.build();
}
}
package com.mmc.csf.release.entity.requirements;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @Author small
* @Date 2023/8/22 13:54
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class RequirementsAmountDO implements Serializable {
private static final long serialVersionUID = -1811974173256250060L;
private Integer id;
@ApiModelProperty(value = "发布需求id", example = "1")
private Integer requirementsInfoId;
@ApiModelProperty(value = "发布者订单金额", example = "1")
private BigDecimal orderAmount;
@ApiModelProperty(value = "发布者支付总金额", example = "1")
private BigDecimal totalAmount;
@ApiModelProperty(value = "级别金额", example = "1")
private BigDecimal orderLevelAmount;
@ApiModelProperty(value = "订单级别 REGULAR_ORDER,RUSH_ORDER,TOP_ORDER", example = "订单级别 REGULAR_ORDER,RUSH_ORDER,TOP_ORDER")
private String orderLevel;
@ApiModelProperty(value = "发布者支付微信金额", example = "1")
private BigDecimal weChat;
@ApiModelProperty(value = "发布者支付佣金金额", example = "1")
private BigDecimal salaryAmount;
@ApiModelProperty(value = "发布者微信支付订单", example = "1")
private String wechatPayOrderNumber;
@ApiModelProperty(value = "修改任务后的佣金", example = "1")
private BigDecimal updateOrderAmount;
@ApiModelProperty(value = "原因", example = "原因")
private String reason;
@ApiModelProperty(value = "原因", example = "原因")
private String url;
@ApiModelProperty(value = "后台获取token里面的用户id", hidden = true)
private Integer userAccountId;
@ApiModelProperty(value = "云享金", example = "10")
private BigDecimal cashAmount;
public RequirementsAmountDO(ServiceRequirementsDO requirementsInfoDO) {
this.requirementsInfoId = requirementsInfoDO.getId();
this.orderAmount = requirementsInfoDO.getOrderAmount();
this.totalAmount = requirementsInfoDO.getTotalAmount();
this.orderLevelAmount = requirementsInfoDO.getOrderLevelAmount();
this.orderLevel = requirementsInfoDO.getOrderLevel();
this.weChat = requirementsInfoDO.getWeChat();
this.salaryAmount = requirementsInfoDO.getSalaryAmount();
this.wechatPayOrderNumber = requirementsInfoDO.getWechatPayOrderNumber();
this.userAccountId = requirementsInfoDO.getUserAccountId();
this.cashAmount = requirementsInfoDO.getCashAmount();
}
}
......@@ -106,6 +106,19 @@ public class RequirementsInfoDO implements Serializable {
private BigDecimal preemptTotalAmount;
private BigDecimal orderAmount;
private Integer serviceFlowId;
@ApiModelProperty(value = "修格后的任务佣金")
private BigDecimal updateOrderAmount;
@ApiModelProperty(value = "原因")
private String reason;
@ApiModelProperty(value = "原因url")
private String url;
public RequirementsInfoVO buildRequirementsInfoVO() {
return RequirementsInfoVO.builder().id(this.id).requirementTypeId(this.requirementTypeId).userAccountId(this.userAccountId).publishName(this.publishName)
......@@ -129,6 +142,10 @@ public class RequirementsInfoDO implements Serializable {
.orderStatus(this.orderStatus)
.publish(this.publish)
.preemptTotalAmount(this.preemptTotalAmount)
.orderAmount(this.orderAmount)
.updateOrderAmount(this.updateOrderAmount)
.reason(this.reason)
.url(this.url)
.build();
}
......
......@@ -24,7 +24,7 @@ public class RequirementsServiceDO implements Serializable {
private Integer id;
@ApiModelProperty(value = "服务需求id")
private Integer requirementsInfoId;
@ApiModelProperty(value = "字典id")
@ApiModelProperty(value = "字典id暂时无用")
private Integer serviceDictionaryId;
@ApiModelProperty(value = "抢单飞手id")
......@@ -51,6 +51,8 @@ public class RequirementsServiceDO implements Serializable {
@ApiModelProperty(value = "抢单支付的总金额", example = "抢单支付的总金额")
private BigDecimal preemptTotalAmount;
@ApiModelProperty(value = "任务流程id", example = "任务流程id")
private Integer serviceFlowId;
public RequirementsServiceDO(PilotCertificationInteriorDTO pilot, ServiceRequirementsDO requirementsInfoDO) {
......
......@@ -116,6 +116,8 @@ public class ServiceRequirementsDO {
@ApiModelProperty(value = "支付方式,云享金:1,佣金:2,微信支付:3", example = "1,2,3")
private String paymentType;
@ApiModelProperty(value = "地区编码")
private String adcode;
public ServiceRequirementsDO(ServiceRequirementsVO serviceRequirementsVO) {
this.id = serviceRequirementsVO.getId();
......@@ -139,5 +141,6 @@ public class ServiceRequirementsDO {
this.wechatPayOrderNumber = serviceRequirementsVO.getWechatPayOrderNumber();
this.weChat = serviceRequirementsVO.getWeChat();
this.paymentType = serviceRequirementsVO.getPaymentType();
this.adcode = serviceRequirementsVO.getAdcode();
}
}
package com.mmc.csf.release.service;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.dto.ServiceArriveSceneDTO;
import com.mmc.csf.infomation.dto.ServiceEvaluateDTO;
import com.mmc.csf.infomation.dto.ServiceFulfilATaskDTO;
import com.mmc.csf.infomation.dto.ServiceSettleAccountsDTO;
import com.mmc.csf.infomation.dto.*;
import com.mmc.csf.infomation.qo.IndustryCaseQO;
import com.mmc.csf.infomation.vo.*;
......@@ -94,4 +91,17 @@ public interface RequirementsService {
ResultBody publisherNumber(GetOrderNumberVO getOrderNumberVO, HttpServletRequest request);
ResultBody<RequirementsInfoVO> myPreempt(Integer userAccountId);
ResultBody droneFlyerCancel(Integer requirementsInfoId, Integer userAccountId);
ResultBody publisherCancel(Integer requirementsInfoId, Integer userAccountId);
ResultBody cancelAll(Integer requirementsInfoId, Integer userAccountId);
ResultBody updatePublisherCancel(RequirementsAmountVO amountVO, HttpServletRequest request);
ResultBody<FlowDictionaryDTO> flowDictionary();
ResultBody confirmSettlement(Integer userAccountId);
}
......@@ -177,7 +177,8 @@ public class RequirementsServiceImpl implements RequirementsService {
requirementsInfoVO.setOrderNumber(randomOrderCode());
requirementsInfoVO.setPublishAccountId(requirementsInfoDO.getUserAccountId());
requirementsInfoVO.setRequirementsInfoId(requirementsInfoDO.getId());
IndustryTypeDTO industryTypeDTO = pmsAppApi.feignQquerygetIndustryTypeById(requirementsInfoVO.getServiceId());
//IndustryTypeDTO industryTypeDTO = pmsAppApi.feignQquerygetIndustryTypeById(requirementsInfoVO.getServiceId());
IndustryTypeDTO industryTypeDTO = getIndustryTypeById(requirementsInfoVO.getServiceId());
requirementsInfoVO.setServiceName(industryTypeDTO.getTypeName());
//已经支付
String s = stringRedisTemplate.opsForValue().get(requirementsInfoDO.getId().toString());
......@@ -551,6 +552,75 @@ public class RequirementsServiceImpl implements RequirementsService {
}
@Override
public ResultBody droneFlyerCancel(Integer requirementsInfoId, Integer userAccountId) {
RequirementsServiceDO requirementsServiceDO = requirementsDao.droneFlyerCancel(requirementsInfoId, userAccountId);
Integer serviceFlowId = requirementsServiceDO.getServiceFlowId();
if (serviceFlowId != 2) {
return ResultBody.error(ResultEnum.YOU_CANNOT_CANCEL_THE_ORDER_AT_THIS_TIME.getResultMsg());
}
return ResultBody.success(ResultEnum.PAYMENT_SUCCESS.getResultMsg());
}
@Override
public ResultBody publisherCancel(Integer requirementsInfoId, Integer userAccountId) {
RequirementsInfoDO requirementsInfoDO = requirementsDao.publisherCancel(requirementsInfoId, userAccountId);
Integer serviceFlowId = requirementsInfoDO.getServiceFlowId();
if (serviceFlowId == 1) {
return ResultBody.success(ResultEnum.THE_AMOUNT_OF_THE_MISSION_WILL_BE_RETURNED.getResultMsg());
}
if (serviceFlowId != 2 && serviceFlowId != 1) {
return ResultBody.error(ResultEnum.YOU_CANNOT_CANCEL_THE_ORDER_AT_THIS_TIME.getResultMsg());
}
//单方面取消订单并且飞手已经抢单
if (serviceFlowId == 2) {
return ResultBody.success(ResultEnum.REFUND_PERCENTAGE.getResultMsg());
}
return ResultBody.success();
}
/**
* 全额退回
*
* @param requirementsInfoId
* @param userAccountId
* @return
*/
@Override
public ResultBody cancelAll(Integer requirementsInfoId, Integer userAccountId) {
RequirementsServiceDO requirementsServiceDO = requirementsDao.droneFlyerCancel(requirementsInfoId, userAccountId);
RequirementsInfoDO requirementsInfoDO = requirementsDao.publisherCancel(requirementsInfoId, userAccountId);
return ResultBody.success();
}
/**
* 修改任务佣金
*
* @param amountVO
* @param request
* @return
*/
@Override
public ResultBody updatePublisherCancel(RequirementsAmountVO amountVO, HttpServletRequest request) {
//requirementsDao.updatePublisherCancel();
return null;
}
@Override
public ResultBody<FlowDictionaryDTO> flowDictionary() {
List<FlowDictionaryDO> flowDictionaryDOS = requirementsDao.flowDictionary();
List<FlowDictionaryDTO> collect = flowDictionaryDOS.stream().map(FlowDictionaryDO::buildFlowDictionaryDTO).collect(Collectors.toList());
return ResultBody.success(collect);
}
@Override
public ResultBody confirmSettlement(Integer userAccountId) {
return ResultBody.success();
}
@Override
public ResultBody publishService(ServiceRequirementsVO serviceRequirementsVO, HttpServletRequest request) {
//需要冻结的金额
......@@ -630,6 +700,8 @@ public class RequirementsServiceImpl implements RequirementsService {
requirementsInfoDO.setWechatPayOrderNumber(null);
}
requirementsDao.addPublishService(requirementsInfoDO);
RequirementsAmountDO requirementsAmountDO = new RequirementsAmountDO(requirementsInfoDO);
requirementsDao.addAmount(requirementsAmountDO);
return ResultBody.success();
} else {
//云享金和佣金扣除完成,但是还不足支付订单金额,并且没有选择微信支付,所以支付不合法
......@@ -812,8 +884,8 @@ public class RequirementsServiceImpl implements RequirementsService {
BigDecimal salaryAmt = payWalletDTO.getSalaryAmt();
//用户云享金加上佣金的总金额
BigDecimal cashAndSalary = cashAmt.add(salaryAmt);
//需要支付的总金额
BigDecimal totalAmount = requirementsInfoDO.getTotalAmount();
//需要支付的总金额(任务佣金)
BigDecimal totalAmount = requirementsInfoDO.getOrderAmount();
BigDecimal bigDecimal = new BigDecimal(0.3);
totalAmount = totalAmount.multiply(bigDecimal).setScale(2, BigDecimal.ROUND_HALF_UP);
String json = stringRedisTemplate.opsForValue().get(requirementsInfoDO.getWechatPayOrderNumber() + requirementsInfoDO.getUserAccountId());
......@@ -1117,6 +1189,17 @@ public class RequirementsServiceImpl implements RequirementsService {
return list;
}
public IndustryTypeDTO getIndustryTypeById(Integer serviceId) {
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<String> entity = new HttpEntity<>(null, headers);
ResponseEntity<String> exchange = restTemplate.exchange(pmsApp + "/pms/industry/getIndustryTypeById?id=+" + serviceId, HttpMethod.GET, entity, String.class);
String body = exchange.getBody();
IndustryTypeDTO industryTypeDTO = JSONObject.parseObject(body, IndustryTypeDTO.class);
return industryTypeDTO;
}
public String randomOrderCode() {
SimpleDateFormat dmDate = new SimpleDateFormat("yyyyMMddHHmmss");
String ranData = getRandom(6);
......
......@@ -235,9 +235,13 @@
ri.user_account_id,
ri.order_level,
ri.service_id,
ri.total_amount,
ra.total_amount,
ra.order_amount,
ra.update_order_amount,
ri.insurance
FROM requirements_info ri
left join requirements_amount ra
on ra.requirements_info_id = ri.id and ri.user_account_id = ra.user_account_id
WHERE NOT EXISTS(
SELECT rs.requirements_info_id FROM requirements_service rs WHERE ri.id = rs.requirements_info_id)
ORDER BY ri.order_level_amount DESC,
......@@ -260,18 +264,23 @@
ri.publish_phone,
ri.publisher_number,
ri.service_id,
ri.total_amount,
ra.total_amount,
ri.insurance,
sf.doing,
sf.waiting,
sf.user_port,
sf.flyer_port,
sf.order_status,
ri.publish
ri.publish,
ra.order_amount,
ra.update_order_amount,
ra.reason,
ra.url
FROM requirements_info ri
LEFT JOIN requirements_type rt
ON rt.id = ri.requirement_type_id
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
LEFT JOIN service_flow sf ON sf.order_status = ri.service_flow_id
LEFT JOIN requirements_amount ra ON ra.requirements_info_id = ri.id
AND ra.user_account_id = ri.user_account_id
WHERE ri.id = #{id}
</select>
......@@ -280,15 +289,22 @@
INSERT INTO requirements_info(service_id, user_account_id, publish_name, publish_phone,
require_description, create_time,
update_time, task_start_time, task_end_time, task_address, longitude,
latitude, publisher_number, order_amount, insurance, total_amount, publish,
order_level_amount, order_level, cash_amount, we_chat, salary_amount,
wechat_pay_order_number, service_flow_id)
latitude, publisher_number, insurance, publish,
service_flow_id, adcode)
VALUES (#{serviceId}, #{userAccountId}, #{publishName}, #{publishPhone},
#{requireDescription}, NOW(),
NOW(), #{taskStartTime}, #{taskEndTime}, #{taskAddress}, #{longitude},
#{latitude}, #{publisherNumber}, #{orderAmount}, #{insurance}, #{totalAmount}, 1,
#{orderLevelAmount}, #{orderLevel}, #{cashAmount}, #{weChat}, #{salaryAmount}, #{wechatPayOrderNumber},
100);
#{latitude}, #{publisherNumber}, #{insurance}, 1, 1, #{adcode});
</insert>
<insert id="addAmount" parameterType="com.mmc.csf.release.entity.requirements.RequirementsAmountDO"
keyProperty="id" useGeneratedKeys="true">
INSERT INTO requirements_amount(requirements_info_id, user_account_id, create_time, update_time, order_amount,
total_amount, order_level_amount, order_level, cash_amount, we_chat,
salary_amount, wechat_pay_order_number)
VALUES (#{requirementsInfoId}, #{userAccountId}, NOW(), NOW(), #{orderAmount},
#{totalAmount}, #{orderLevelAmount}, #{orderLevel}, #{cashAmount}, #{weChat},
#{salaryAmount}, #{wechatPayOrderNumber});
</insert>
<select id="grabTheOrder" resultType="com.mmc.csf.release.entity.requirements.ServiceRequirementsDO">
......@@ -454,6 +470,8 @@
ri.service_id,
ri.total_amount,
ri.insurance,
ri.order_level,
ri.order_amount,
sf.doing,
sf.waiting,
sf.user_port,
......@@ -493,7 +511,9 @@
sf.flyer_port,
sf.order_status,
ri.publish,
rs.preempt_total_amount
rs.preempt_total_amount,
ri.order_level,
ri.order_amount,
FROM requirements_info ri
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
LEFT JOIN service_flow sf ON sf.order_status = ri.service_flow_id
......@@ -502,4 +522,86 @@
ORDER BY ri.order_level_amount desc,
rs.id desc
</select>
<select id="droneFlyerCancel" resultType="com.mmc.csf.release.entity.requirements.RequirementsServiceDO">
SELECT ri.id,
ri.task_title,
ri.task_start_time,
ri.task_end_time,
ri.task_address,
ri.longitude,
ri.latitude,
ri.require_url,
ri.require_description,
ri.requirement_type_id,
ri.user_account_id,
rt.type_name AS requirementTypeName,
ri.publish_phone,
ri.publisher_number,
ri.service_id,
ri.total_amount,
ri.insurance,
sf.doing,
sf.waiting,
sf.user_port,
sf.flyer_port,
sf.order_status,
ri.publish,
rs.preempt_total_amount,
rs.cash_amount,
rs.we_chat,
rs.salary_amount,
rs.wechat_pay_order_number,
rs.preempt_total_amount,
rs.service_flow_id
FROM requirements_info ri
LEFT JOIN requirements_type rt
ON rt.id = ri.requirement_type_id
LEFT JOIN service_flow sf ON sf.order_status = ri.service_flow_id
INNER JOIN requirements_service rs ON ri.id = rs.requirements_info_id
WHERE rs.pilot_certification_user_id = #{userAccountId}
and rs.requirements_info_id = #{requirementsInfoId}
</select>
<select id="publisherCancel" resultType="com.mmc.csf.release.entity.requirements.RequirementsInfoDO">
SELECT ri.id,
ri.task_title,
ri.task_start_time,
ri.task_end_time,
ri.task_address,
ri.longitude,
ri.latitude,
ri.require_url,
ri.require_description,
ri.requirement_type_id,
ri.user_account_id,
rt.type_name AS requirementTypeName,
ri.publish_phone,
ri.publisher_number,
ri.service_id,
ri.total_amount,
ri.insurance,
ri.order_level,
ri.order_amount,
sf.doing,
sf.waiting,
sf.user_port,
sf.flyer_port,
sf.order_status,
ri.publish
FROM requirements_info ri
LEFT JOIN requirements_type rt ON rt.id = ri.requirement_type_id
LEFT JOIN service_flow sf ON sf.order_status = ri.service_flow_id
WHERE ri.user_account_id = #{userAccountId}
AND ri.id = #{requirementsInfoId}
</select>
<select id="flowDictionary" resultType="com.mmc.csf.release.entity.requirements.FlowDictionaryDO">
SELECT id,
waiting,
order_status,
user_port,
flyer_port,
doing
FROM service_flow
</select>
</mapper>
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论