提交 c6bd7240 作者: 恶龙咆哮

Merge remote-tracking branch 'origin/develop' into develop

流水线 #8136 已通过 于阶段
in 3 分 2 秒
stages:
- clean
- dockerbuild
- kustomize_tag_push
variables:
REGION_id: cn-shenzhen
REGISTRY: mmc-registry.cn-shenzhen.cr.aliyuncs.com
IMAGE: ims
TAG: $CI_COMMIT_SHA
ACR_EE_USERNAME: QD--KeBiTeHangKong@1354706964800968
ACR_EE_PASSWORD: MMC@2023&ACR
ACR_EE_REGISTRY: mmc-registry.cn-shenzhen.cr.aliyuncs.com
ACR_EE_INSTANCE_ID: cri-yhk5zgfc2v1sia6l
ACR_EE_IMAGE: ims
ACR_EE_TAG: $CI_COMMIT_SHA
JAVA_VERSION: '8'
GITLAB_URL: https://oauth2:MjVJKxB7m4tCy7symBzn@git.mmcuav.cn/iuav/ims.git
mvn_clean:
stage: clean
script:
- echo "情理中..."
- mvn clean -B -Dmaven.test.skip=true --settings /usr/local/maven/conf/settings.xml
docker_build_dev:
stage: dockerbuild
variables:
NAMESPACE: sharefly-dev
ACR_EE_NAMESPACE: sharefly-dev
only:
- develop
script:
- echo "dev docker build"
- echo $ACR_EE_USERNAME
- echo $ACR_EE_REGISTRY
- mvn package -Dmaven.test.skip=true --settings /usr/local/maven/conf/settings.xml
- docker login -u $ACR_EE_USERNAME -p 'MMC@2023&ACR' $ACR_EE_REGISTRY
- docker build -t ${ACR_EE_REGISTRY}/${ACR_EE_NAMESPACE}/${ACR_EE_IMAGE}:${TAG} .
- docker push "${ACR_EE_REGISTRY}/${ACR_EE_NAMESPACE}/${ACR_EE_IMAGE}:${TAG}"
- docker logout
docker_build_prod:
stage: dockerbuild
variables:
NAMESPACE: sharefly
ACR_EE_NAMESPACE: sharefly
only:
- master
script:
- echo "prod docker build"
- echo $ACR_EE_USERNAME
- echo $ACR_EE_REGISTRY
- mvn package -Dmaven.test.skip=true --settings /usr/local/maven/conf/settings.xml
- docker login -u $ACR_EE_USERNAME -p 'MMC@2023&ACR' $ACR_EE_REGISTRY
- docker build -t ${ACR_EE_REGISTRY}/${ACR_EE_NAMESPACE}/${ACR_EE_IMAGE}:${TAG} .
- docker push "${ACR_EE_REGISTRY}/${ACR_EE_NAMESPACE}/${ACR_EE_IMAGE}:${TAG}"
- docker logout
kustomize_set_image_dev:
stage: kustomize_tag_push
variables:
NAMESPACE: sharefly-dev
ACR_EE_NAMESPACE: sharefly-dev
only:
- develop
before_script:
- echo "dev set image"
- git config --global user.name "bax" #配置本地仓库用户名信息
- git config --global user.email "baoaxin1999@163.com" #配置本地仓库邮箱信息
script:
- git remote -v
- git checkout -B develop
- cd kustomization/overlays/dev
- kustomize edit set image REGISTRY/NAMESPACE/IMAGE:TAG=$REGISTRY/$NAMESPACE/$IMAGE:$TAG
- cat kustomization.yaml
- git remote set-url origin "$GITLAB_URL"
- git commit -am '[skip ci] DEV image update' #git 本地提交,注意“skip ci”为gitlab流水线文件内置关键字,作用为跳过ci流水线操作,未设置可能导致流水线进入死循环
- git push --set-upstream origin develop #重新提交修改镜像版本后的代码
kustomize_set_image_prod:
stage: kustomize_tag_push
variables:
NAMESPACE: sharefly
ACR_EE_NAMESPACE: sharefly
only:
- master
before_script:
- echo "prod set image"
- echo "master"
- git config --global user.name "bax" #配置本地仓库用户名信息
- git config --global user.email "baoaxin1999@163.com" #配置本地仓库邮箱信息
script:
- git remote -v
- git checkout -B master
- cd kustomization/overlays/prod
- kustomize edit set image REGISTRY/NAMESPACE/IMAGE:TAG=$REGISTRY/$NAMESPACE/$IMAGE:$TAG
- cat kustomization.yaml
- git remote set-url origin "$GITLAB_URL"
- git commit -am '[skip ci] DEV image update' #git 本地提交,注意“skip ci”为gitlab流水线文件内置关键字,作用为跳过ci流水线操作,未设置可能导致流水线进入死循环
- git push --set-upstream origin master #重新提交修改镜像版本后的代码
......@@ -41,7 +41,11 @@
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>
<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
<version>2.0.29</version>
</dependency>
<dependency>
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
......
......@@ -32,4 +32,8 @@ public class RequirementsAmountUpdateDTO {
@ApiModelProperty(value = "服务需求id", required = true)
private Integer requirementsInfoId;
@ApiModelProperty(value = "图片地址", example = "http://")
private String url;
}
......@@ -11,6 +11,7 @@ import lombok.NoArgsConstructor;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.List;
/**
* @Author small
......@@ -65,4 +66,19 @@ public class ServiceOrderFormDTO {
@ApiModelProperty(value = "等待状态", example = "等待状态")
private String waiting;
@ApiModelProperty(value = "父订单id")
private Integer fatherRequireId;
@ApiModelProperty(value = "子订单详情")
private List<ServiceOrderFormDTO> childrenRequire;
@ApiModelProperty(value = "发布者基本信息")
private UserBaseInfoDTO orderRelease;
@ApiModelProperty(value = "接单人基本信息")
private UserBaseInfoDTO orderReceive;
@ApiModelProperty(value = "订单项目号")
private String projectCode;
}
......@@ -116,4 +116,13 @@ public class ServiceOrderFormDetailsDTO {
@ApiModelProperty(value = "1:双方无责 2:发布者责任 3:飞手责任")
private Integer duty;
@ApiModelProperty(value = "订单对应的项目号")
private String projectCode;
@ApiModelProperty(value = "二级服务id")
private Integer inspectionId;
@ApiModelProperty(value = "二级服务名称")
private String inspectionName;
}
package com.mmc.csf.infomation.dto;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author han
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class TeamMessageDO{
/**
* 飞手ID
*/
private Integer pilotId;
/**
* 飞手的用户ID
*/
private Integer pilotUserId;
/**
* 飞手的团队管理员ID
*/
private Integer pilotMessageId;
}
package com.mmc.csf.infomation.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author Admin
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class UserBaseInfoDTO implements Serializable {
private Integer userAccountId;
private String userName;
private String phoneNum;
private String nickName;
}
package com.mmc.csf.infomation.qo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotNull;
/**
* @author 张培
*/
......@@ -16,9 +17,10 @@ public class AgreeOrRefusePilotQO {
@ApiModelProperty(value = "订单id")
private Integer requireInfoId;
@ApiModelProperty(value = "同意传2 进入飞手到达现场 拒绝传 11")
@ApiModelProperty(value = "同意传2 进入飞手到达现场 拒绝传 1")
private Integer serviceFlowId;
@ApiModelProperty(value = "接单飞手的user_id")
@ApiModelProperty(value = "接单飞手的user_id",required = true)
@NotNull(message = "飞手id不能为空")
private Integer pilotCertificationUserId;
}
......@@ -54,6 +54,10 @@ public class IndustryCaseQO implements Serializable {
@Min(value = 1, groups = Page.class)
private Integer pageSize;
@ApiModelProperty(value = "是否是热点新闻")
private Integer isHot;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
......
......@@ -40,6 +40,9 @@ public class IndustryNewsQO implements Serializable {
@Min(value = 1, groups = Page.class)
private Integer pageSize;
@ApiModelProperty(value = "是否是热点新闻")
private Integer isHot;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
......
package com.mmc.csf.infomation.qo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.mmc.csf.release.model.group.Freeze;
import com.mmc.csf.release.model.group.Page;
import io.swagger.annotations.ApiModelProperty;
......@@ -40,6 +41,8 @@ public class MyPublishQO {
@ApiModelProperty(value = "描述",example = "hh")
private String requireDescription;
@JsonIgnore
private int type;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
......
package com.mmc.csf.infomation.qo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author Admin
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class RequirementsInfoQO {
@ApiModelProperty(value = "是否按时间排序",example = "true")
private Boolean isNewRequirements;
@ApiModelProperty(value = "是否按金额排序",example = "true")
private Boolean isHighCommission;
@ApiModelProperty(value = "省份编码",example = "802323")
private Integer provinceCode;
@ApiModelProperty(value = "市编码", example = "802323")
private Integer cityCode;
@ApiModelProperty(value = "区编码", example = "802323")
private Integer districtCode;
}
package com.mmc.csf.infomation.qo;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.mmc.csf.release.model.group.Freeze;
import com.mmc.csf.release.model.group.Page;
import io.swagger.annotations.ApiModelProperty;
......@@ -9,6 +10,7 @@ import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* @Author small
......@@ -30,6 +32,9 @@ public class ServiceOrderQO {
@ApiModelProperty(value = "1:正常 2:争议订单", required = false, example = "1")
private Integer orderAttribute;
@ApiModelProperty(value = "订单状态")
private Integer orderStatus;
@ApiModelProperty(value = "页码", required = true, example = "1")
@NotNull(message = "页码不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
......@@ -39,6 +44,15 @@ public class ServiceOrderQO {
@Min(value = 1, groups = Page.class)
private Integer pageSize;
@ApiModelProperty(value = "0 查看飞手团队中飞手发的单子,1 查找的是飞手团队中飞手接的订单")
private int isPilotOrder;
@ApiModelProperty(value = "查询指定飞手列表中飞手的订单")
@JsonIgnore
private List<Integer> pilotUserIdList = null;
@ApiModelProperty(value = "发布者订单编号", example = "R3123132132132131")
private String publisherNumber;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
......
package com.mmc.csf.infomation.vo;
import java.io.Serializable;
import java.util.Date;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import com.mmc.csf.release.model.group.Create;
import com.mmc.csf.release.model.group.Others;
import com.mmc.csf.release.model.group.Update;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.Date;
/**
* @Author small
* @Date 2023/5/23 14:23
......
......@@ -37,4 +37,6 @@ public class IndustryNewsDTO implements Serializable {
private Date createTime;
@ApiModelProperty(value = "最新修改时间")
private Date updateTime;
@ApiModelProperty(value = "是否是热点新闻")
private Integer isHot;
}
......@@ -44,4 +44,7 @@ public class IndustryNewsVO implements Serializable {
@ApiModelProperty(value = "来源",example = "来源")
private String origin;
@ApiModelProperty(value = "是否是热点新闻 1是 0不是")
private Integer isHot;
}
package com.mmc.csf.infomation.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @author han
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class PersonSendOrderVO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "服务需求订单id")
@NotNull(message = "id不能为空")
private Integer requirementsInfoId;
@ApiModelProperty(value = "派单飞手id")
private Integer pilotCertificationId;
@ApiModelProperty(value = "派单飞手用户id")
private Integer pilotCertificationUserId;
@ApiModelProperty(value = "是否是管理员派单")
private int isAdminSend;
}
package com.mmc.csf.infomation.vo;
import com.mmc.csf.infomation.dto.*;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author Admin
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class RequireEveryStatusVO {
//抵达现场地址
// service_arrive_scene
@ApiModelProperty(value = "抵达现场", example = "抵达现场")
private ServiceArriveSceneDTO serviceArriveSceneDTO;
//完成任务
// service_fulfil_a_task
@ApiModelProperty(value = "完成任务", example = "完成任务")
private ServiceFulfilATaskDTO serviceFulfilATaskDTO;
//评价
// service_evaluate
@ApiModelProperty(value = "评价", example = "评价")
private ServiceEvaluateDTO serviceEvaluateDTO;
@ApiModelProperty(value = "修改任务佣金", example = "修改任务佣金")
private RequirementsAmountUpdateDTO amountUpdate;
private ServiceOrderFormDetailsDTO serviceOrderFormDetailsDTO;
@ApiModelProperty(value = "发布者基本信息")
private UserBaseInfoDTO orderRelease;
@ApiModelProperty(value = "接单人基本信息")
private UserBaseInfoDTO orderReceive;
}
......@@ -31,6 +31,8 @@ public class RequirementsInfoVO implements Serializable {
@NotNull(message = "id不能为空", groups = {Update.class})
private Integer id;
private Integer tempId;
@ApiModelProperty(value = "需求发布id", hidden = true)
private Integer requirementsInfoId;
......@@ -64,6 +66,10 @@ public class RequirementsInfoVO implements Serializable {
@ApiModelProperty(value = "任务纬度", example = "44.344324")
private Double latitude;
@ApiModelProperty(value = "当前订单状态")
private Integer serviceFlowId;
@ApiModelProperty(value = "订单的父订单id")
private Integer fatherRequireId;
......@@ -75,7 +81,6 @@ public class RequirementsInfoVO implements Serializable {
@ApiModelProperty(value = "描述图片", example = "http://,http://", required = false)
private String requireUrl;
@ApiModelProperty(value = "发布者姓名", example = "张三")
// @NotNull(message = "发布者姓名不能为空", groups = {Insert.class})
private String publishName;
......@@ -191,4 +196,18 @@ public class RequirementsInfoVO implements Serializable {
@ApiModelProperty(value = "订单共需多少人")
private Integer requireNum;
@ApiModelProperty(value = "后台修改后的金额")
private BigDecimal changedOrderAmount;
@ApiModelProperty(value = "管理员操作")
private int teamStatus;
@ApiModelProperty(value = "二级分类id")
private int inspectionId;
@ApiModelProperty(value = "项目号")
private String projectCode;
@ApiModelProperty(value = "二级分类名称")
private String inspectionName;
}
......@@ -115,5 +115,9 @@ public class ServiceRequirementsVO implements Serializable {
@ApiModelProperty(value = "订单总共需要多少人")
private Integer requireNum;
@ApiModelProperty(value = "订单项目号")
private String projectCode;
@ApiModelProperty(value = "二级服务分类")
private String inspectionId;
}
package com.mmc.csf.infomation.vo;
import java.io.Serializable;
import javax.validation.constraints.NotNull;
import com.mmc.csf.release.model.group.Update;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* author:zhenjie
* Date:2022/5/21
......
package com.mmc.csf.infomation.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author Admin
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class UpdateTaskUrlVO {
private Integer id;
@ApiModelProperty(value = "完成任务图片", example = "http://")
private String taskUrl;
@ApiModelProperty(value = "需求id", example = "83")
private Integer requirementsInfoId;
}
......@@ -46,6 +46,9 @@ public class LicenseOrganizationsQO {
@ApiModelProperty(value = "地域region", example = "110000", required = false)
private String region;
@ApiModelProperty(value = "后台id")
private Integer backUserId;
@ApiModelProperty(value = "当前页", required = true, example = "1")
@NotNull(message = "当前页不能为空", groups = {Page.class, Freeze.class})
@Min(value = 1, groups = Page.class)
......
package com.mmc.csf.licence.vo;
import com.mmc.csf.release.model.group.Create;
import com.mmc.csf.release.model.group.Page;
import com.mmc.csf.release.model.group.Update;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.Value;
import org.springframework.validation.annotation.Validated;
import javax.validation.Valid;
import javax.validation.constraints.*;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.util.List;
/**
......@@ -41,7 +41,7 @@ public class LicenseOrganizationsVO {
private String name;
@ApiModelProperty(value = "机构地区编号", example = "110000,130100", required = true)
@NotBlank(message = "机构地区不能为空", groups = {Create.class, Update.class})
// @NotBlank(message = "机构地区不能为空", groups = {Create.class, Update.class})
private String region;
@ApiModelProperty(value = "机构地区名称", example = "河北省,石家庄市", required = false)
......@@ -82,5 +82,7 @@ public class LicenseOrganizationsVO {
@Valid
private List<LicenseTrainingProgramsVO> trainingProgramsVOS;
@ApiModelProperty(value = "后台id")
private Integer backUserId;
}
package com.mmc.csf.release.auth.qo;
import java.io.Serializable;
import java.util.List;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import com.mmc.csf.release.model.group.Page;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;
/**
* @author: zj
* @Date: 2023/6/6 20:41
......
......@@ -23,14 +23,14 @@ public class CurriculumQo implements Serializable {
private static final long serialVersionUID = 3124398495152234751L;
@ApiModelProperty(value = "课程名称")
private String curriculumName;
@ApiModelProperty(value = "省份编码")
private Integer provinceCode;
@ApiModelProperty(value = "执照id")
private Integer licenseId;
@ApiModelProperty(value = "技能id")
private Integer flightSkillsId;
@ApiModelProperty(value = "课程类型id")
private Integer categoriesId;
@ApiModelProperty(value = "1级课程分类")
private Integer oneCourseId;
@ApiModelProperty(value = "2级课程分类")
private Integer twoCourseId;
@ApiModelProperty(value = "课程属性: 0:免费 1:积分兑换 2:付费 ")
private Integer courseAttribute;
@ApiModelProperty(value = "是否热门: 0:否 1:是 ")
private Integer isHot;
@ApiModelProperty(value = "页码", required = true)
@NotNull(message = "页码不能为空", groups = { Page.class })
@Min(value = 1, groups = Page.class)
......
package com.mmc.csf.release.flyer.vo;
import com.alibaba.fastjson.annotation.JSONField;
import com.mmc.csf.release.model.group.Insert;
import com.mmc.csf.release.model.group.Update;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* @Author han
* 概要:课程分类
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class CurriculumClassifyVO implements Serializable {
private static final long serialVersionUID = -7343885960160805850L;
@ApiModelProperty(value = "课程分类id")
private Integer id;
@ApiModelProperty(value = "分类名字")
@NotNull(message = "分类名字不能为空" ,groups = {Update.class})
private String name;
@ApiModelProperty(value = "1级课程分类")
private Integer oneCourseId;
@ApiModelProperty(value = "2级课程分类")
private Integer twoCourseId;
@ApiModelProperty(value = "分类图标")
private String classifyUrl;
@ApiModelProperty(value = "分类描述")
private String classifyDesc;
@ApiModelProperty(value = "创建时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty(value = "更新时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
}
package com.mmc.csf.release.flyer.vo;
import com.alibaba.fastjson.annotation.JSONField;
import com.mmc.csf.release.model.group.Insert;
import com.mmc.csf.release.model.group.Update;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
......@@ -12,6 +12,7 @@ import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* @Author LW
......@@ -25,35 +26,19 @@ import java.math.BigDecimal;
public class CurriculumInfoVO implements Serializable {
private static final long serialVersionUID = -7343885960160805850L;
@ApiModelProperty(value = "课程id")
@NotNull(message = "课程id不能为空" ,groups = {Update.class})
private Integer id;
@ApiModelProperty(value = "价格")
private BigDecimal price;
@ApiModelProperty(value = "1级课程分类ID")
@NotNull(message = "1级课程分类ID不能为空" ,groups = {Insert.class})
private Integer oneCourseId;
@ApiModelProperty(value = "供应商名称")
private String supplierName;
@ApiModelProperty(value = "2级课程分类ID")
private Integer twoCourseId;
@ApiModelProperty(value = "课程名称,长度30")
@Length(max = 30)
private String curriculumName;
@ApiModelProperty(value = "课程是否免费 0:免费 1:付费")
private Integer free;
@ApiModelProperty(value = "课程类型,二级id")
@NotNull(message = "课程类型id不能为空" ,groups = {Insert.class})
private Integer categoriesId;
@ApiModelProperty(value = "目录名称", example = "技能")
private String directoryName;
@ApiModelProperty(value = "课程类型名称", example = "通用巡检")
private String categoriesName;
@ApiModelProperty(value = "课程技能类型,二级id")
private Integer flightSkills;
@ApiModelProperty(value = "课程介绍(简介), 长度255")
@Length(max = 255)
private String curriculumDesc;
......@@ -64,6 +49,30 @@ public class CurriculumInfoVO implements Serializable {
@ApiModelProperty(value = "课程视频")
private String videoUrl;
@ApiModelProperty(value = "课程属性: 0:免费 1:积分兑换 2:付费 ")
private Integer courseAttribute;
@ApiModelProperty(value = "价格")
private BigDecimal requireAmout;
@ApiModelProperty(value = "积分")
private Integer requireIntegral;
@ApiModelProperty(value = "课程是否热门 0:否 1:是")
private Integer isHot;
@ApiModelProperty(value = "课程详情")
private String detailContent;
@ApiModelProperty(value = "创建时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@ApiModelProperty(value = "更新时间")
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
@ApiModelProperty(value = "用户是否购买过")
private boolean buy;
}
package com.mmc.csf.release.flyer.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.math.BigDecimal;
/**
* @author Admin
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CurriculumOrderLogVO {
private Integer userAccountId;
@ApiModelProperty(value = "云享金消耗金额")
private BigDecimal cashAmtPaid;
@ApiModelProperty(value = "佣金消耗金额")
private BigDecimal salaryAmtPaid;
@ApiModelProperty(value = "订单编号")
private String orderNo;
}
package com.mmc.csf.release.flyer.vo;
import com.alibaba.fastjson.annotation.JSONField;
import com.mmc.csf.release.model.group.Insert;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* @Author LW
* @date 2023/5/17 14:28
* 概要:课程信息
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class CurriculumPayVO implements Serializable {
private static final long serialVersionUID = -7343885960160805850L;
@ApiModelProperty(value = "课程ID")
private Integer id;
@ApiModelProperty(value = "支付类型")
private String paymentType;
@ApiModelProperty(value = "微信支付订单编号")
private String paymentOrderNumber;
}
package com.mmc.csf.release.forum.dto;
import java.util.List;
import com.mmc.csf.release.forum.vo.MediaVO;
import com.mmc.csf.release.forum.vo.UserBaseInfoVO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
......@@ -9,8 +12,6 @@ import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
import java.util.List;
/**
* @Author LW
* @date 2023/6/19 14:25 概要:
......
package com.mmc.csf.release.forum.qo;
import java.io.Serializable;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import com.mmc.csf.release.model.group.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @Author LW
*
......
package com.mmc.csf.release.forum.vo;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @Author LW
*
......
......@@ -35,4 +35,6 @@ public class IndustryTypeDTO implements Serializable {
private Date createTime;
@ApiModelProperty(value = "服务列表")
private List<InspectionDTO> inspectionDTOS;
@ApiModelProperty(value = "二级分类名称")
private String inspectionName;
}
package com.mmc.csf.user.vo;
import com.alibaba.fastjson2.JSONObject;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang.StringUtils;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @author: zj
* @Date: 2023/5/23 19:24
*/
@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
public class WxMsgVO implements Serializable {
private static final long serialVersionUID = 107288179600606045L;
@ApiModelProperty(value = "用户id-仅适用云享飞客户端")
private Integer userAccountId;
@ApiModelProperty(value = "公众号的openId")
private String touser;
@ApiModelProperty(value = "unionId-全局通用")
private String unionId;
@ApiModelProperty(value = "模板id")
@NotNull(message = "模板id不能为空")
private String templateId;
@ApiModelProperty(value = "网页跳转连接")
private String url;
@ApiModelProperty(value = "小程序APPID")
private String wxAppletAppId;
@ApiModelProperty(value = "小程序跳转连接")
private String appletPath;
@ApiModelProperty(value = "按照接口文档传数据")
private JSONObject dataObject;
public String buildTemplateMsg() {
JSONObject msg = new JSONObject();
msg.put("touser", this.touser);
msg.put("template_id", this.templateId);
// 跳转页面
if (!StringUtils.isBlank(this.url)) {
msg.put("url", this.url);
}
// 跳转小程序页面设置
if (!StringUtils.isBlank(this.wxAppletAppId) && !StringUtils.isBlank(this.appletPath)) {
JSONObject mini = new JSONObject();
mini.put("appid", this.wxAppletAppId);
mini.put("pagepath", this.appletPath);
msg.put("miniprogram", mini);
}
msg.put("data", this.dataObject);
return msg.toString();
}
}
......@@ -18,4 +18,4 @@ patches:
images:
- name: REGISTRY/NAMESPACE/IMAGE:TAG
newName: mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/ims
newTag: 9eadf1ce66d61172f23ea2378598f6b69ca317ae
newTag: edc811d126d2121519b4c1b79231ab57f2a93028
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ../../base
- ../../base
namespace: prod
#namePrefix: prod-
commonLabels:
......@@ -9,13 +9,13 @@ commonLabels:
commonAnnotations:
note: This is prod!
patches:
- path: increase_replicas.yaml
- path: configMap.yaml
- path: increase_replicas.yaml
- path: configMap.yaml
#- path: service-patch.yaml
# target:
# kind: Service
# name: ims-svc
images:
- name: REGISTRY/NAMESPACE/IMAGE:TAG
newName: mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly/ims
newTag: 095806d2d1f1f2e75eeca46c07103fb86ece1262
- name: REGISTRY/NAMESPACE/IMAGE:TAG
newName: mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly/ims
newTag: 790432ad136f19e1bfaa4f1a1586ddcfbcce6384
......@@ -2,8 +2,9 @@ package com.mmc.csf.release.controller;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.dto.ServiceOrderFormDTO;
import com.mmc.csf.infomation.dto.ServiceOrderFormDetailsDTO;
import com.mmc.csf.infomation.qo.ServiceOrderQO;
import com.mmc.csf.infomation.vo.RequireEveryStatusVO;
import com.mmc.csf.release.entity.requirements.OrderAmountDetailDO;
import com.mmc.csf.release.model.group.Page;
import com.mmc.csf.release.service.BackRequirementsService;
import io.swagger.annotations.*;
......@@ -12,6 +13,7 @@ import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* @Author small
......@@ -22,7 +24,6 @@ import javax.servlet.http.HttpServletRequest;
@RestController
@RequestMapping("/backRequirements/")
public class BackRequirementsController extends BaseController {
@Autowired
private BackRequirementsService backRequirementsService;
......@@ -36,11 +37,31 @@ public class BackRequirementsController extends BaseController {
@ApiOperation(value = "后台管理——服务订单详情")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ServiceOrderFormDTO.class)})
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = RequireEveryStatusVO.class)})
@GetMapping("serviceOrderFormDetails")
public ResultBody<ServiceOrderFormDetailsDTO> serviceOrderFormDetails(HttpServletRequest request, @ApiParam(value = "需求发布id", required = true) @RequestParam Integer requirementsInfoId) {
public ResultBody<RequireEveryStatusVO> serviceOrderFormDetails(HttpServletRequest request, @ApiParam(value = "需求发布id", required = true) @RequestParam Integer requirementsInfoId) {
return backRequirementsService.serviceOrderFormDetails(requirementsInfoId, this.getUserLoginInfoFromRedis(request));
}
@ApiOperation(value = "后台管理——订单金额明细")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("getOrderAmountDetails")
public ResultBody getOrderAmountDetails( @ApiParam(value = "需求发布id", required = true) @RequestParam Integer requirementsInfoId) {
return backRequirementsService.getOrderAmountDetails(requirementsInfoId);
}
@ApiOperation(value = "后台订单——修改金额明细")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("updateOrderAmountDetails")
public ResultBody updateOrderAmountDetails(@RequestBody List<OrderAmountDetailDO> list) {
return backRequirementsService.updateOrderAmountDetails(list);
}
@ApiOperation(value = "后台订单——新增金额明细")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("insertOrderAmountDetails")
public ResultBody insertOrderAmountDetails(@RequestBody List<OrderAmountDetailDO> list) {
return backRequirementsService.insertOrderAmountDetails(list);
}
}
......@@ -42,7 +42,13 @@ public class BackstageForumController extends BaseController{
return backstageForumService.getDynamicAuditSum();
}
@ApiOperation(value = "后台-统计未审核总数")
@GetMapping("/getNotCheckDynamicSum")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = DynamicAuditSumDTO.class)})
public ResultBody getNotCheckDynamicSum() {
return backstageForumService.getNotCheckDynamicSum();
}
@ApiOperation(value = "动态删除")
@GetMapping("/deleteDynamic")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
......
......@@ -88,7 +88,7 @@ public class DynamicController extends BaseController {
return dynamicService.dynamicDetails(dynamicId, userAccountId, request);
}
@ApiOperation(value = "动态列表")
@ApiOperation(value = "动态 列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = DynamicVO.class)})
@GetMapping("/dynamicList")
public ResultBody<DynamicVO> dynamicList(
......@@ -99,9 +99,22 @@ public class DynamicController extends BaseController {
@RequestParam(required = false) List<String> gambitName) {
return ResultBody.success(
dynamicService.dynamicList(
pageNo, pageSize, this.getUserLoginInfoFromRedis(request).getUserAccountId(), request,gambitId,id,userAccountId,description,gambitName));
pageNo, pageSize, this.getUserLoginInfoFromRedis(request).getUserAccountId(),gambitId,id,userAccountId,description,gambitName));
}
@ApiOperation(value = "动态 列表(未登录)")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = DynamicVO.class)})
@GetMapping("/dynamicList1")
public ResultBody<DynamicVO> dynamicList1(
@RequestParam Integer pageNo, @RequestParam Integer pageSize,
@RequestParam(required = false) Integer gambitId, @RequestParam(required = false) Integer id,
@RequestParam(required = false) Integer userAccountId,
@RequestParam(required = false) String description,
@RequestParam(required = false) List<String> gambitName) {
return ResultBody.success(
dynamicService.dynamicList(
pageNo, pageSize, 0,gambitId,id,userAccountId,description,gambitName));
}
@ApiOperation(value = "new-小程序-返回最新5条带动态的图片")
@GetMapping("/recentNews")
......
package com.mmc.csf.release.controller;
import com.mmc.csf.common.util.date.TDateUtil;
import com.mmc.csf.common.util.math.CodeUtil;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.release.auth.dto.LoginSuccessDTO;
import com.mmc.csf.release.entity.curriculum.CurriculumInfoDO;
import com.mmc.csf.release.entity.curriculum.CurriculumOrderDO;
import com.mmc.csf.release.entity.curriculum.CurriculumOrderQO;
import com.mmc.csf.release.feign.PmsAppApi;
import com.mmc.csf.release.feign.UserAppApi;
import com.mmc.csf.release.flyer.qo.CurriculumQo;
import com.mmc.csf.release.flyer.vo.CurriculumInfoVO;
import com.mmc.csf.release.flyer.vo.DronePilotLicenseVO;
import com.mmc.csf.release.flyer.vo.FlightSkillsVO;
import com.mmc.csf.release.flyer.vo.RegistrationVO;
import com.mmc.csf.release.flyer.vo.*;
import com.mmc.csf.release.model.group.Insert;
import com.mmc.csf.release.model.group.Page;
import com.mmc.csf.release.model.group.Update;
import com.mmc.csf.release.service.FlyerTrainingService;
import io.swagger.annotations.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Date;
import java.util.List;
......@@ -34,6 +41,10 @@ public class FlyerTrainingController extends BaseController {
@Resource
private FlyerTrainingService flyerTrainingService;
@Qualifier("com.mmc.csf.release.feign.UserAppApi")
@Autowired
private UserAppApi userAppApi;
@ApiOperation(value = "飞手报名")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("/pilotRegistration")
......@@ -94,8 +105,11 @@ public class FlyerTrainingController extends BaseController {
@ApiOperation(value = "V1.0.1课程视频详情")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumInfoVO.class)})
@GetMapping("/curriculumDetails")
public ResultBody curriculumDetails(@ApiParam(value = "课程id") @RequestParam(value = "id") Integer id) {
return flyerTrainingService.curriculumDetails(id);
public ResultBody curriculumDetails(HttpServletRequest request, @ApiParam(value = "课程id") @RequestParam(value = "id") Integer id) {
LoginSuccessDTO userLoginInfoFromRedis = this.getUserLoginInfoFromRedis(request);
//没带token访问课程视频详情中的buy就是false, userId = 0 会使buy为false
Integer userId = userLoginInfoFromRedis == null ? 0 : userLoginInfoFromRedis.getUserAccountId();
return flyerTrainingService.curriculumDetails(id, userId);
}
@ApiOperation(value = "V1.0.1新增课程")
......@@ -136,4 +150,81 @@ public class FlyerTrainingController extends BaseController {
public Integer getCurriculumCount() {
return flyerTrainingService.getCurriculumCount();
}
@ApiOperation(value = "后台——获取课程订单列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumOrderDO.class)})
@PostMapping("getCurriculumOrderList")
public ResultBody<List<CurriculumOrderDO>> getCurriculumOrderList(@ApiParam(value = "订单查询QO", required = true) @Validated(Page.class) @RequestBody CurriculumOrderQO param) {
return flyerTrainingService.getCurriculumOrderList(param);
}
@ApiOperation(value = "小程序——获取我的课程列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumOrderDO.class)})
@PostMapping("getCurriculumOrderListByMini")
public ResultBody<List<CurriculumOrderDO>> selectCurriculumOrderList(HttpServletRequest request, @ApiParam(value = "订单查询QO", required = true) @Validated(Page.class) @RequestBody CurriculumOrderQO param) {
param.setUserAccountId(this.getUserLoginInfoFromRedis(request).getUserAccountId());
return flyerTrainingService.getCurriculumOrderList(param);
}
@ApiOperation(value = "后台——删除课程订单详情")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumOrderDO.class)})
@GetMapping("deleteCurriculumOrderInfo")
public ResultBody<CurriculumOrderDO> deleteCurriculumOrderInfo(@ApiParam(value = "删除订单id", required = true) @Validated(Page.class) @RequestParam(value = "id") Integer id) {
return flyerTrainingService.deleteCurriculumOrderInfo(id);
}
@ApiOperation(value = "新增课程分类")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumClassifyVO.class)})
@PostMapping("addCurriculumClassify")
public ResultBody addCurriculumClassify(@Validated(Insert.class) @RequestBody CurriculumClassifyVO curriculumClassifyVO) {
return ResultBody.success(flyerTrainingService.addCurriculumClassify(curriculumClassifyVO));
}
@ApiOperation(value = "修改课程分类")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumClassifyVO.class)})
@PostMapping("updateCurriculumClassify")
public ResultBody updateCurriculumClassify(@Validated(Update.class) @RequestBody CurriculumClassifyVO curriculumClassifyVO) {
return ResultBody.success(flyerTrainingService.updateCurriculumClassify(curriculumClassifyVO));
}
@ApiOperation(value = "删除课程分类")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumClassifyVO.class)})
@GetMapping("removeCurriculumClassify")
public ResultBody removeCurriculumClassify(@RequestParam Integer id) {
return flyerTrainingService.removeCurriculumClassify(id);
}
@ApiOperation(value = "所有课程分类列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = CurriculumClassifyVO.class)})
@GetMapping("/selectCurriculumClassify")
public ResultBody selectCurriculumClassify() {
return flyerTrainingService.selectCurriculumClassify();
}
@ApiOperation(value = "购买课程-使用积分-去支付")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("/curriculumPayByIntegral")
public ResultBody curriculumPayByIntegral(HttpServletRequest request, @RequestParam Integer id) {
CurriculumInfoDO curriculumInfo = flyerTrainingService.selectCurriculumInfoById(id);
ResultBody resultBody = userAppApi.feignChangeUserPoints(request.getHeader("token"),request, - curriculumInfo.getRequireIntegral(), "购买课程");
if("200".equals(resultBody.getCode())){
CurriculumOrderDO curriculumOrderDO = new CurriculumOrderDO();
curriculumOrderDO.setUserAccountId(this.getUserLoginInfoFromRedis(request).getUserAccountId());
curriculumOrderDO.setCurriculumInfoId(id);
curriculumOrderDO.setJifenConsume(curriculumInfo.getRequireIntegral());
// 生成支付流水号(规则"CO" + 时间戳 + 用户id + 随机数4位)
curriculumOrderDO.setOrderNo("CO" + TDateUtil.getDateStr(new Date(), "yyyyMMddHHmmss") + this.getUserLoginInfoFromRedis(request).getUserAccountId() + CodeUtil.getRandomNum(4));
return ResultBody.success(flyerTrainingService.curriculumPayByIntegral(curriculumOrderDO));
} else {
return ResultBody.error("积分不足,购买失败");
}
}
@ApiOperation(value = "购买课程-使用金额-去支付")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("/curriculumPayByMoney")
public ResultBody curriculumPayByMoney(HttpServletRequest request,@RequestBody CurriculumPayVO curriculumPayVO) {
return flyerTrainingService.curriculumPayByMoney(request,curriculumPayVO,this.getUserLoginInfoFromRedis(request).getUserAccountId());
}
}
package com.mmc.csf.release.controller;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.qo.IndustryCaseQO;
import com.mmc.csf.infomation.qo.IndustryNewsQO;
......@@ -9,14 +15,11 @@ import com.mmc.csf.release.model.group.Create;
import com.mmc.csf.release.model.group.Page;
import com.mmc.csf.release.model.group.Update;
import com.mmc.csf.release.service.IndustryNewsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
/**
* @author: zj
......
......@@ -2,20 +2,23 @@ package com.mmc.csf.release.controller;
import com.mmc.csf.common.util.group.Create;
import com.mmc.csf.common.util.group.Page;
import com.mmc.csf.infomation.vo.TenderApplyQO;
import com.mmc.csf.release.entity.tender.TenderInfoDO;
import com.mmc.csf.release.model.group.Update;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.dto.AppTenderInfoDTO;
import com.mmc.csf.infomation.dto.TenderApplyDTO;
import com.mmc.csf.infomation.dto.TenderInfoDTO;
import com.mmc.csf.infomation.dto.TenderNewsDTO;
import com.mmc.csf.infomation.qo.IndustryCaseQO;
import com.mmc.csf.infomation.vo.TenderApplyQO;
import com.mmc.csf.infomation.vo.TenderApplyVO;
import com.mmc.csf.infomation.vo.TenderInfoVO;
import com.mmc.csf.infomation.vo.TenderNewsVO;
import com.mmc.csf.release.entity.tender.TenderInfoDO;
import com.mmc.csf.release.model.group.Update;
import com.mmc.csf.release.service.TenderService;
import io.swagger.annotations.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
......@@ -59,9 +62,9 @@ public class TenderController extends BaseController{
@ApiOperation(value = "修改-招标快讯列表")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PutMapping(value = "news")
@PostMapping(value = "updateTenderNews")
public ResultBody updateTenderNews(@RequestParam(value = "file", required = false) MultipartFile file,
@Validated(value = {Update.class}) @RequestPart TenderNewsVO tenderNewsVO) throws IOException {
@Validated(value = {Update.class}) @RequestBody TenderNewsVO tenderNewsVO) throws IOException {
return tenderService.updateTenderNews(file, tenderNewsVO);
}
......
......@@ -36,6 +36,13 @@ public class LicenceBackgroundController extends BaseController {
return licenceBackgroundService.insertOrganizations(organizations, this.getUserLoginInfoFromRedis(request));
}
@ApiOperation(value = "机构-根据后台id查询")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("/selectOrg")
public ResultBody<LicenseOrganizationsDTO> selectOrganizations(@ApiParam(value = "机构id", required = true) @RequestParam Integer backUserId) {
return licenceBackgroundService.selectOrganizations(backUserId);
}
@ApiOperation(value = "机构-修改")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@PostMapping("/updateOrg")
......
......@@ -16,6 +16,7 @@ import java.util.List;
public interface BackRequirementsDao {
List<ServiceOrderFormDO> serviceOrderFormList(ServiceOrderQO param);
List<ServiceOrderFormDO> getSonFromFatherRequireId(Integer id);
int countService(ServiceOrderQO param);
ServiceOrderFormDetailsDO serviceOrderFormDetails(Integer requirementsInfoId);
......
package com.mmc.csf.release.dao;
import com.mmc.csf.release.entity.curriculum.CurriculumOrder;
import com.mmc.csf.release.entity.curriculum.CurriculumOrderDO;
import com.mmc.csf.release.entity.curriculum.CurriculumOrderQO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author Admin
* @description 针对表【curriculum_order】的数据库操作Mapper
* @createDate 2023-12-11 10:36:21
* @Entity com.mmc.csf.release.entity.curriculum.CurriculumOrder
*/
@Mapper
public interface CurriculumOrderDao {
int deleteByPrimaryKey(Integer id);
int insert(CurriculumOrder record);
int insertSelective(CurriculumOrder record);
CurriculumOrderDO selectByPrimaryKey(Integer id);
int updateByPrimaryKeySelective(CurriculumOrder record);
int updateByPrimaryKey(CurriculumOrder record);
int getCountCurriculumOrder(CurriculumOrderQO param);
List<CurriculumOrderDO> selectOrderList(CurriculumOrderQO param);
}
package com.mmc.csf.release.dao;
import java.util.List;
import com.mmc.csf.release.entity.forum.*;
import com.mmc.csf.release.entity.gambit.ForumAttentionDO;
import com.mmc.csf.release.entity.gambit.ForumGambitDO;
......@@ -10,7 +12,9 @@ import com.mmc.csf.release.gambit.qo.PostingLeaderboardQO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import com.mmc.csf.release.entity.forum.ForumDynamicDO;
import com.mmc.csf.release.entity.forum.ForumResourceDO;
import com.mmc.csf.release.entity.forum.ForumVideoDO;
/**
* @Author LW
......
package com.mmc.csf.release.dao;
import com.mmc.csf.release.entity.curriculum.CurriculumInfoDO;
import com.mmc.csf.release.entity.curriculum.FlightSkillsDO;
import com.mmc.csf.release.entity.curriculum.PilotRegistrationDO;
import com.mmc.csf.release.entity.curriculum.*;
import com.mmc.csf.release.flyer.qo.CurriculumQo;
import com.mmc.csf.release.flyer.vo.DronePilotLicenseVO;
import org.apache.ibatis.annotations.Mapper;
......@@ -91,4 +89,55 @@ public interface FlyerTrainingDao {
int countCurriculumInfo(Integer categoriesId);
Integer getCurriculumCount();
/**
* 添加课程分类
*
* @param curriculumClassifyDO
*/
Integer addCurriculumClassify(CurriculumClassifyDO curriculumClassifyDO);
/**
* 修改课程分类
*
* @param curriculumClassify
*/
Integer updateCurriculumClassify(CurriculumClassifyDO curriculumClassify);
/**
* 删除课程分类
*
* @param id 课程分类id
*/
Integer removeCurriculumClassify(Integer id);
/**
* 查询一级分类的数量
* @return
*/
Integer countOneCourseClassify();
/**
* 查询当前一级分类下的二级分类的数量
* @param twoCourseId 2级课程分类
*/
Integer countTwoCourseClassify(Integer twoCourseId);
/**
* 查询所有的课程分类
* @return
*/
List<CurriculumClassifyDO> selectCurriculumClassify();
CurriculumClassifyDO selectCurriculumClassifyById(Integer id);
/**
* 根据课程ID查询课程信息
* @return
*/
CurriculumInfoDO selectCurriculumInfoById(Integer id);
int selectCountCurriculumOrder(Integer id,Integer userId);
int insertCurriculumOrder(CurriculumOrderDO record);
}
package com.mmc.csf.release.dao;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import com.mmc.csf.infomation.qo.IndustryCaseQO;
import com.mmc.csf.infomation.qo.IndustryNewsQO;
import com.mmc.csf.release.entity.information.IndustryNewsDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author: zj
......
package com.mmc.csf.release.dao;
import com.mmc.csf.release.entity.forum.ForumDynamicDO;
import com.mmc.csf.release.entity.forum.ForumLikeDO;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import com.mmc.csf.release.entity.forum.ForumDynamicDO;
import com.mmc.csf.release.entity.forum.ForumLikeDO;
/**
* @Author LW
......
package com.mmc.csf.release.dao;
import com.mmc.csf.release.entity.requirements.OrderAmountDetailDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author Admin
* @description 针对表【order_amount_detail】的数据库操作Mapper
* @createDate 2023-11-27 18:55:19
* @Entity com.mmc.csf.release.entity.requirements.OrderAmountDetailDO
*/
@Mapper
public interface OrderAmountDetailDao {
int deleteByPrimaryKey(Integer requirementsInfoId);
/**
* 新增
* @param record
* @return int
*/
int insert(OrderAmountDetailDO record);
/**
* 选择性新增
* @param record 新增实体类
* @return int
*/
int insertSelective(OrderAmountDetailDO record);
/**
* 批量新增
* @param list 新增列表
*/
void batchInsert(List<OrderAmountDetailDO> list);
/**
* 根据订单id查询该订单金额明细
* @param requirementsInfoId 订单id
* @return {@link List}<{@link OrderAmountDetailDO}>
*/
List<OrderAmountDetailDO> selectByPrimaryKey(Integer requirementsInfoId);
int updateByPrimaryKeySelective(OrderAmountDetailDO record);
int updateByPrimaryKey(OrderAmountDetailDO record);
}
package com.mmc.csf.release.dao;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.dto.*;
import com.mmc.csf.infomation.qo.AgreeOrRefusePilotQO;
import com.mmc.csf.infomation.qo.IndustryCaseQO;
import com.mmc.csf.infomation.qo.MyPreemptQO;
import com.mmc.csf.infomation.qo.MyPublishQO;
import com.mmc.csf.infomation.qo.*;
import com.mmc.csf.infomation.vo.LiabilityProblemVO;
import com.mmc.csf.infomation.vo.ServiceSettleAccountsVO;
import com.mmc.csf.release.entity.information.PersonSendOrderDO;
import com.mmc.csf.release.entity.requirements.*;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
import java.util.List;
......@@ -81,17 +80,32 @@ public interface RequirementsDao {
void requirementsDao(Integer id);
List<RequirementsInfoDO> appPublishList();
/**
* 取消的订单或者被抢完的订单就不展示
* @param requirementsInfoQO 排序条件
* @return {@link List}<{@link RequirementsInfoDO}>
*/
List<RequirementsInfoDO> appPublishList(RequirementsInfoQO requirementsInfoQO);
/**
* 所有的订单全部查出来展示到小程序上,后续运营起来请用上面的
* @param requirementsInfoQO 排序条件
* @return {@link List}<{@link RequirementsInfoDO}>
*/
List<RequirementsInfoDO> appPublishList1(RequirementsInfoQO requirementsInfoQO);
RequirementsInfoDO detailPublish(Integer id);
RequirementsInfoDO detailSendPublish(Integer id);
/**
* 获取被拒绝飞手具体订单信息
* @param id 订单id
* @return {@link RequirementsInfoDO}
*/
RequirementsInfoDO selectDetailRefusePilotInfo(Integer id);
void addPublishService(ServiceRequirementsDO requirementsInfoDO);
int addPublishService(ServiceRequirementsDO requirementsInfoDO);
void addPublishServiceSon(ServiceRequirementsSonDO serviceRequirementsSonDO);
......@@ -110,7 +124,9 @@ public interface RequirementsDao {
void fulfilATask(ServiceFulfilATaskDO serviceFulfilATaskDO);
void updateTaskUrl(@Param("taskUrl") String taskUrl,@Param("requirementsInfoId") Integer requirementsInfoId);
String getTaskUrl(Integer requirementsInfoId);
ServiceFulfilATaskDO fulfilATaskDetails(Integer requirementsInfoId, Integer userAccountId);
void settleAccounts(ServiceSettleAccountsDO settleAccountsDO);
......@@ -126,6 +142,15 @@ public interface RequirementsDao {
List<RequirementsInfoDO> myPublish(MyPublishQO param);
int mySendPublishCount(MyPublishQO param);
/**
* 获取需要管理员(飞手团队后台账号对应的小程序用户id) 同意或者指派的订单
* @param param 条件
* @return {@link List}<{@link RequirementsInfoDO}>
*/
List<RequirementsInfoDO> mySendPublish(MyPublishQO param);
List<RequirementsInfoDO> myPreempt(MyPreemptQO param);
RequirementsServiceDO droneFlyerCancel(Integer requirementsInfoId, Integer userAccountId);
......@@ -134,6 +159,13 @@ public interface RequirementsDao {
RequirementsInfoDO publisherCancel(Integer requirementsInfoId, Integer userAccountId);
/**
* 取消订单
* @param requirementsInfoId
* @param userAccountId
* @return {@link RequirementsInfoDO}
*/
RequirementsInfoDO publisherCancel1(Integer requirementsInfoId, Integer userAccountId);
RequirementsInfoDO publisherCancelFlyers(Integer requirementsInfoId);
RequirementsInfoDO customerPublisherCancel(Integer requirementsInfoId, Integer userAccountId);
......@@ -309,7 +341,7 @@ public interface RequirementsDao {
* @param requirementsId 订单id
* @return {@link Integer}
*/
Integer selectRequirementsNum(Integer requirementsId);
int selectRequirementsNum(Integer requirementsId);
/**
* 根据父订单id查询不满足状态条件的子订单数量
......@@ -342,4 +374,152 @@ public interface RequirementsDao {
*/
Integer selectServiceFlowIdFromAgreePilot(Integer requireId,Integer userAccountId);
RequirementsServicePilotInfoDO selectPilotInfoByRequireId(Integer requireId);
/**
* 获取临时表对应的订单信息
* @param requireId
* @return {@link RequirementsServicePilotInfoDO}
*/
RequirementsServicePilotInfoDO selectTempPilotInfoByRequireId(Integer requireId);
/**
* 根据流程id查询订单所处状态
* @param serviceFlowId
* @return {@link String}
*/
String selectOrderStatusByServiceFlowId(Integer serviceFlowId);
/**
* 查询订单所处的状态
* @param requireId 订单id
* @return {@link Integer}
*/
Integer selectServiceIdByRequireId(Integer requireId);
/**
* 获取后台修改后的金额
* @param requireId 订单id
* @return {@link Integer}
*/
BigDecimal getChangedOrderAmount(Integer requireId);
/**
* 获取用户是否确认后台修改的金额
* @param requireId
* @return {@link Integer}
*/
Integer selectUserSureChangeAmount(Integer requireId);
/**
* 给飞手接的单子设置默认的工作时间
* @param requireId 订单id
*/
void setWorkTimeByPilot(Integer requireId);
/**
* 根据订单id获取发单用户id
* @param requireId 订单id
* @return {@link Integer}
*/
Integer getUserIdByRequireId(Integer requireId);
/**
* 根据订单id获取接单飞手id
* @param requireId 订单id
* @return {@link Integer}
*/
Integer getPilotUserIdByRequireId(Integer requireId);
/**
* 根据飞手进行派单操作
*/
Integer personSendOrder(PersonSendOrderDO personSendOrderDO);
/**
* 查询父订单下面的所有子订单id
*/
List<Integer> selectAllSuborder(Integer fatherRequireId);
/**
* 修改info表中的状态
*/
Integer updateInfoStatus(@Param("id") Integer requireId,@Param("status")Integer status);
/**
* 查询飞手是否重复派单
*/
Integer isReSendOrder(Integer requireId);
Integer reSendOrder(@Param("requireId") Integer requireId,@Param("userAccountId")Integer userAccountId);
/**
* 查询飞手订单是否被抢
*/
Integer isLootedByPilot(Integer requireId);
/**
* 查询团队订单是否被抢
*/
Integer isLootedByTeam(Integer requireId);
/**
* 查询是否是团队派单
*/
Integer isTeamSendOrder(@Param("requireId") Integer requireId);
/**
* 查询派单信息
*/
PersonSendOrderDO selectSendOrderById(Integer id);
/**
* 飞手是否确认接单
*/
Integer orderConfirmationByPilot(@Param("id") Integer id,@Param("status") Integer status);
/**
* 查询飞手是否重复确认
*/
Integer isReConfirm(Integer id);
void updateSendOrder(PersonSendOrderDO personSendOrderDO);
void deleteSendOrder(Integer requirementsInfoId);
/**
* 管理员确认接单
*/
Integer orderConfirmationByTeam(@Param("id") Integer id,@Param("status") Integer status);
/**
* 飞手拒绝后订单发往抢单大厅
*/
Integer updateCount(Integer id);
/**
* 根据飞手ID查询派单的列表数量
*/
Integer mySendOderListCount(MyPreemptQO param);
/**
* 根据飞手ID查询派单的列表
*/
List<RequirementsInfoDO> mySendOderList(MyPreemptQO param);
/**
* 根据订单id查询发单用户的id
*/
Integer selectSenderId(Integer id);
/**
* 修改
* @param requireId
* @param num
*/
void updateOrderRequireNum(Integer requireId,int num);
/**
* 在requirements_service表中查找这个订单是否有人接单
* @param requirementsInfoId 订单id
* @return int
*/
int countRequireServiceNum(Integer requirementsInfoId);
}
......@@ -36,6 +36,9 @@ public interface LicenceBackgroundDao {
List<LicenseOrganizationsDO> listOrgPage(LicenseOrganizationsQO organizationsQO);
LicenseOrganizationsDO selectOrganizations(Integer backUserId);
List<LicenseProgramsDO> selectPrograms(Integer orgId);
List<LicenseProgramsDO> trainingProgram(LicenseOrganizationsQO organizationsQO);
......
package com.mmc.csf.release.entity.curriculum;
import com.mmc.csf.release.flyer.vo.CurriculumClassifyVO;
import com.mmc.csf.release.flyer.vo.CurriculumInfoVO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* 课程基本信息(CurriculumClassifyDO)实体类
*
* @author han
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CurriculumClassifyDO implements Serializable {
private static final long serialVersionUID = 140348746605431718L;
private Integer id;
/**
* 课程类别名称
*/
private String name;
/**
* 1级课程分类
*/
private Integer oneCourseId;
/**
* 2级课程分类
*/
private Integer twoCourseId;
/**
* 分类图标
*/
private String classifyUrl;
/**
* 分类描述
*/
private String classifyDesc;
/**
* 创建时间
*/
private Date createTime;
/**
* 修改时间
*/
private Date updateTime;
/**
* 是否删除 0:否 1:是
*/
private Integer deleted;
public CurriculumClassifyDO(CurriculumClassifyVO curriculumClassifyVO) {
this.id = curriculumClassifyVO.getId();
this.name = curriculumClassifyVO.getName();
this.oneCourseId = curriculumClassifyVO.getOneCourseId();
this.twoCourseId = curriculumClassifyVO.getTwoCourseId();
this.classifyUrl = curriculumClassifyVO.getClassifyUrl();
this.classifyDesc = curriculumClassifyVO.getClassifyDesc();
}
public CurriculumClassifyVO buildCurriculumClassifyVO(){
return CurriculumClassifyVO.builder().id(id).name(name)
.oneCourseId(oneCourseId).twoCourseId(twoCourseId)
.classifyUrl(classifyUrl).classifyDesc(classifyDesc)
.createTime(createTime).updateTime(updateTime).build();
}
}
package com.mmc.csf.release.entity.curriculum;
import com.mmc.csf.release.flyer.vo.CurriculumInfoVO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
......@@ -22,23 +23,51 @@ public class CurriculumInfoDO implements Serializable {
private static final long serialVersionUID = 140348746605431718L;
private Integer id;
/**
* 课程名称
* 1级课程分类ID
*/
private String curriculumName;
private Integer oneCourseId;
/**
* 课程供应商(id),用户id
* 2级课程分类ID
*/
private Integer supplierId;
private Integer twoCourseId;
/**
* 课程价格
* 课程名称
*/
private BigDecimal curriculumPrice;
private String curriculumName;
/**
* 课程简介
*/
private String curriculumDesc;
/**
* 课程封面
*/
private String surfaceUrl;
/**
* 课程视频
*/
private String videoUrl;
/**
* 课程属性
*/
private Integer courseAttribute;
/**
* 课程所需金额
*/
private BigDecimal requireAmout;
/**
* 课程所需积分
*/
private Integer requireIntegral;
/**
* 课程是否热门 0:否 1:是
*/
private Integer isHot;
/**
* 课程详情
*/
private String detailContent;
/**
* 创建时间
*/
......@@ -52,32 +81,30 @@ public class CurriculumInfoDO implements Serializable {
*/
private Integer deleted;
private String videoUrl;
private String surfaceUrl;
private String detailContent;
/**
* 课程类型id
*/
private Integer categoriesId;
public CurriculumInfoDO(CurriculumInfoVO curriculumInfoVO) {
this.id = curriculumInfoVO.getId();
this.oneCourseId = curriculumInfoVO.getOneCourseId();
this.twoCourseId = curriculumInfoVO.getTwoCourseId();
this.curriculumName = curriculumInfoVO.getCurriculumName();
this.curriculumDesc = curriculumInfoVO.getCurriculumDesc();
this.surfaceUrl = curriculumInfoVO.getSurfaceUrl();
this.detailContent = curriculumInfoVO.getDetailContent();
this.videoUrl = curriculumInfoVO.getVideoUrl();
this.categoriesId = curriculumInfoVO.getCategoriesId();
this.courseAttribute = curriculumInfoVO.getCourseAttribute();
this.requireAmout = curriculumInfoVO.getRequireAmout();
this.requireIntegral = curriculumInfoVO.getRequireIntegral();
this.isHot = curriculumInfoVO.getIsHot();
this.detailContent = curriculumInfoVO.getDetailContent();
}
public CurriculumInfoVO buildCurriculumInfoVO(){
return CurriculumInfoVO.builder().id(id).curriculumDesc(curriculumDesc).price(curriculumPrice)
.supplierName("浙江科比特创新科技有限公司").curriculumName(curriculumName)
return CurriculumInfoVO.builder().id(id).curriculumDesc(curriculumDesc)
.curriculumName(curriculumName)
.videoUrl(videoUrl).surfaceUrl(this.surfaceUrl).detailContent(this.detailContent)
.categoriesId(this.categoriesId).build();
.requireAmout(this.requireAmout).courseAttribute(courseAttribute)
.requireIntegral(this.requireIntegral).isHot(this.isHot)
.oneCourseId(this.oneCourseId).twoCourseId(this.twoCourseId)
.createTime(createTime).updateTime(updateTime).build();
}
}
......
package com.mmc.csf.release.entity.curriculum;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
*
* @TableName curriculum_order
*/
@Data
public class CurriculumOrder implements Serializable {
/**
*
*/
private Integer id;
/**
* 订单编号
*/
private String orderNo;
/**
* 下单用户id
*/
private Integer userAccountId;
/**
* 订单总金额
*/
private BigDecimal orderTotalAmount;
/**
* 抵扣佣金金额
*/
private BigDecimal salaryAmount;
/**
* 抵扣云享金金额
*/
private BigDecimal cashAmount;
/**
* 微信支付
*/
private BigDecimal weChat;
/**
* 发布者微信支付订单
*/
private String wechatPayOrderNumber;
/**
* 生成订单时间(下单时间)
*/
private Date createTime;
/**
* 最近修改时间
*/
private Date updateTime;
/**
* 课程id
*/
private Integer curriculumInfoId;
/**
* 消耗多少积分
*/
private Integer jifenConsume;
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.mmc.csf.release.entity.curriculum;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* @author Admin
* @TableName curriculum_order
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class CurriculumOrderDO implements Serializable {
/**
*
*/
@ApiModelProperty(value = "课程订单id")
private Integer id;
/**
* 订单编号
*/
@ApiModelProperty(value = "课程订单编号")
private String orderNo;
/**
* 下单用户id
*/
@ApiModelProperty(value = "购买用户的id")
private Integer userAccountId;
/**
* 订单总金额
*/
@ApiModelProperty(value = "订单总金额")
private BigDecimal orderTotalAmount;
/**
* 抵扣佣金金额
*/
@ApiModelProperty(value = "抵扣佣金金额")
private BigDecimal salaryAmount;
/**
* 抵扣云享金金额
*/
@ApiModelProperty(value = "抵扣云享金金额")
private BigDecimal cashAmount;
/**
* 微信支付金额
*/
@ApiModelProperty(value = "微信支付金额")
private BigDecimal weChat;
/**
* 发布者微信支付订单
*/
@ApiModelProperty(value = "发布者微信支付订单")
private String wechatPayOrderNumber;
/**
* 课程ID
*/
@ApiModelProperty(value = "课程ID")
private Integer curriculumInfoId;
/**
* 所需积分
*/
@ApiModelProperty(value = "所需积分")
private int jifenConsume;
private String curriculumName;
/**
* 课程简介
*/
private String curriculumDesc;
/**
* 课程封面
*/
private String surfaceUrl;
/**
* 课程视频
*/
private String videoUrl;
/**
* 课程所需金额
*/
private BigDecimal requireAmout;
/**
* 课程所需积分
*/
private Integer requireIntegral;
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.mmc.csf.release.entity.curriculum;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.mmc.csf.release.model.group.Page;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
/**
* @author Admin
* @date 2023/12/07
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class CurriculumOrderQO implements Serializable {
private final static long serialVersionUID = 1L;
@ApiModelProperty(value = "页码", required = true,example = "1")
@NotNull(message = "页码不能为空", groups = Page.class)
@Min(value = 1, groups = Page.class)
private Integer pageNo;
@ApiModelProperty(value = "每页显示数", required = true,example = "10")
@NotNull(message = "每页显示数不能为空", groups = Page.class)
@Min(value = 1, groups = Page.class)
private Integer pageSize;
@ApiModelProperty(value = "订单编号")
private String orderNo;
@ApiModelProperty(value = "课程id")
private Integer curriculumInfoId;
@ApiModelProperty(value = "用户id")
@JsonIgnore
private Integer userAccountId;
private Integer courseAttribute;
public void buildCurrentPage() {
this.pageNo = (pageNo - 1) * pageSize;
}
}
package com.mmc.csf.release.entity.forum;
import java.io.Serializable;
import com.mmc.csf.release.entity.common.BaseDO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
/**
* 评论表(ForumCommentDO)实体类
*
......
package com.mmc.csf.release.entity.forum;
import java.io.Serializable;
import java.math.BigDecimal;
import com.mmc.csf.release.entity.common.BaseDO;
import com.mmc.csf.release.forum.dto.DynamicInfoDTO;
import com.mmc.csf.release.forum.vo.DynamicVO;
......@@ -12,12 +15,8 @@ import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
/**
* 动态信息表(ForumDynamicDO)实体类
*
......@@ -30,8 +29,6 @@ import java.util.List;
@Accessors(chain = true)
public class ForumDynamicDO extends BaseDO implements Serializable {
private static final long serialVersionUID = 570379773690905364L;
/**
* 版本字段
*/
......@@ -94,12 +91,6 @@ public class ForumDynamicDO extends BaseDO implements Serializable {
@ApiModelProperty("")
private Integer transpond;
public ForumDynamicDO(DynamicVO dynamicVO) {
this.gambitIcon=dynamicVO.getGambitIcon();
this.gambitCover=dynamicVO.getGambitCover();
......
package com.mmc.csf.release.entity.forum;
import java.io.Serializable;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
* 点赞表(ForumLikeDO)实体类
*
......
......@@ -2,6 +2,7 @@ package com.mmc.csf.release.entity.information;
import com.mmc.csf.infomation.vo.IndustryNewsDTO;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
......@@ -32,13 +33,13 @@ public class IndustryNewsDO implements Serializable {
@ApiModelProperty(value = "来源")
private String origin;
private Integer isDeleted;
private Integer isHot;
public IndustryNewsDTO buildIndustryNewsDTO(){
return IndustryNewsDTO.builder().id(id).newsTitle(newsTitle).newsAuthor(newsAuthor).userAccountId(userAccountId).surfaceImg(surfaceImg).
newsContents(newsContents).createTime(createTime).updateTime(updateTime).origin(origin).build();
newsContents(newsContents).isHot(isHot).createTime(createTime).updateTime(updateTime).origin(origin).build();
}
public IndustryNewsDO(Integer id, String newsTitle, String newsAuthor, Integer userAccountId, String surfaceImg, String newsContents, String origin) {
public IndustryNewsDO(Integer id, String newsTitle, String newsAuthor, Integer userAccountId, String surfaceImg, String newsContents, String origin, Integer isHot) {
this.id = id;
this.newsTitle = newsTitle;
this.newsAuthor = newsAuthor;
......@@ -46,5 +47,6 @@ public class IndustryNewsDO implements Serializable {
this.surfaceImg = surfaceImg;
this.newsContents = newsContents;
this.origin = origin;
this.isHot = isHot;
}
}
package com.mmc.csf.release.entity.information;
import com.mmc.csf.infomation.vo.IndustryCaseVO;
import com.mmc.csf.infomation.vo.PersonSendOrderVO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
/**
* @author han
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class PersonSendOrderDO implements Serializable {
private static final long serialVersionUID = 1L;
private Integer id;
/**
* 服务需求订单id
*/
private Integer requirementsInfoId;
/**
* 派单飞手id
*/
private Integer pilotCertificationId;
/**
* 派单飞手用户id
*/
private Integer pilotCertificationUserId;
/**
* 派单飞手用户id
*/
private Integer teamId;
/**
* 派单飞手用户id
*/
private Integer teamUserId;
/**
* 创建时间
*/
private Date createTime;
public PersonSendOrderDO(PersonSendOrderVO personSendOrderVO){
this.requirementsInfoId = personSendOrderVO.getRequirementsInfoId();
this.pilotCertificationId = personSendOrderVO.getPilotCertificationId();
this.pilotCertificationUserId = personSendOrderVO.getPilotCertificationUserId();
}
}
......@@ -93,6 +93,9 @@ public class LicenseOrganizationsDO {
@ApiModelProperty(value = "更新时间", example = "2023-07-14", required = true)
private Date updateTime;
@ApiModelProperty(value = "后台账号id")
private Integer backUserId;
/**
* VO类转换
*/
......@@ -111,6 +114,7 @@ public class LicenseOrganizationsDO {
this.regionName = organizationsVO.getRegionName();
this.longitude = organizationsVO.getLongitude();
this.latitude = organizationsVO.getLatitude();
this.backUserId = organizationsVO.getBackUserId();
}
......
package com.mmc.csf.release.entity.module;
import java.io.Serializable;
import java.util.Date;
import com.mmc.csf.infomation.dto.BannerInfoDTO;
import com.mmc.csf.infomation.vo.BannerInfoVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* @Author small
* @Date 2023/5/23 14:28
......@@ -45,7 +46,6 @@ public class BannerInfoDO implements Serializable {
*/
private String detailInfo;
private Integer sort;
/**
* 有效开始时间
*/
......
package com.mmc.csf.release.entity.requirements;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
*
* @TableName order_amount_detail
*/
@Data
public class OrderAmountDetailDO implements Serializable {
/**
*
*/
private Integer id;
/**
* 订单id
*/
@ApiModelProperty(value = "订单id",required = true)
@NotNull(message = "订单id不能为空")
private Integer requirementsInfoId;
/**
* 每天的工资
*/
@ApiModelProperty(value = "每天的工资")
private BigDecimal dailyWage;
/**
* 节日补贴
*/
@ApiModelProperty(value = "节日补贴")
private BigDecimal subsidyFestival;
/**
* 租房补贴
*/
@ApiModelProperty(value = "租房补贴")
private BigDecimal rentalSubsidy;
/**
* 交通补贴
*/
@ApiModelProperty(value = "交通补贴")
private BigDecimal trafficSubsidy;
/**
* 高温补贴
*/
@ApiModelProperty(value = "高温补贴")
private BigDecimal highTemperatureSubsidy;
/**
* 结算比例
*/
@ApiModelProperty(value = "结算比例")
private BigDecimal settleAccountsProportion;
/**
* 实际工资 上边加一起乘以结算比例
*/
@ApiModelProperty(value = "实际工资")
private BigDecimal realWages;
/**
* 工作的时间
*/
@ApiModelProperty(value = "工作时间")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date workDate;
@ApiModelProperty(value = "其他")
private BigDecimal otherSubsidy;
@ApiModelProperty(value = "备注,解释为什么有其他费用")
private String remark;
private static final long serialVersionUID = 1L;
/**
*
*/
public Integer getId() {
return id;
}
/**
*
*/
public void setId(Integer id) {
this.id = id;
}
/**
*
*/
public Integer getRequirementsInfoId() {
return requirementsInfoId;
}
/**
*
*/
public void setRequirementsInfoId(Integer requirementsInfoId) {
this.requirementsInfoId = requirementsInfoId;
}
/**
* 每天的工资
*/
public BigDecimal getDailyWage() {
return dailyWage;
}
/**
* 每天的工资
*/
public void setDailyWage(BigDecimal dailyWage) {
this.dailyWage = dailyWage;
}
/**
* 节日补贴
*/
public BigDecimal getSubsidyFestival() {
return subsidyFestival;
}
/**
* 节日补贴
*/
public void setSubsidyFestival(BigDecimal subsidyFestival) {
this.subsidyFestival = subsidyFestival;
}
/**
* 租房补贴
*/
public BigDecimal getRentalSubsidy() {
return rentalSubsidy;
}
/**
* 租房补贴
*/
public void setRentalSubsidy(BigDecimal rentalSubsidy) {
this.rentalSubsidy = rentalSubsidy;
}
/**
* 交通补贴
*/
public BigDecimal getTrafficSubsidy() {
return trafficSubsidy;
}
/**
* 交通补贴
*/
public void setTrafficSubsidy(BigDecimal trafficSubsidy) {
this.trafficSubsidy = trafficSubsidy;
}
/**
* 高温补贴
*/
public BigDecimal getHighTemperatureSubsidy() {
return highTemperatureSubsidy;
}
/**
* 高温补贴
*/
public void setHighTemperatureSubsidy(BigDecimal highTemperatureSubsidy) {
this.highTemperatureSubsidy = highTemperatureSubsidy;
}
/**
* 结算比例
*/
public BigDecimal getSettleAccountsProportion() {
return settleAccountsProportion;
}
/**
* 结算比例
*/
public void setSettleAccountsProportion(BigDecimal settleAccountsProportion) {
this.settleAccountsProportion = settleAccountsProportion;
}
/**
* 实际工资 上边加一起乘以结算比例
*/
public BigDecimal getRealWages() {
return realWages;
}
/**
* 实际工资 上边加一起乘以结算比例
*/
public void setRealWages(BigDecimal realWages) {
this.realWages = realWages;
}
/**
* 工作的时间
*/
public Date getWorkDate() {
return workDate;
}
/**
* 工作的时间
*/
public void setWorkDate(Date workDate) {
this.workDate = workDate;
}
@Override
public boolean equals(Object that) {
if (this == that) {
return true;
}
if (that == null) {
return false;
}
if (getClass() != that.getClass()) {
return false;
}
OrderAmountDetailDO other = (OrderAmountDetailDO) that;
return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
&& (this.getRequirementsInfoId() == null ? other.getRequirementsInfoId() == null : this.getRequirementsInfoId().equals(other.getRequirementsInfoId()))
&& (this.getDailyWage() == null ? other.getDailyWage() == null : this.getDailyWage().equals(other.getDailyWage()))
&& (this.getSubsidyFestival() == null ? other.getSubsidyFestival() == null : this.getSubsidyFestival().equals(other.getSubsidyFestival()))
&& (this.getRentalSubsidy() == null ? other.getRentalSubsidy() == null : this.getRentalSubsidy().equals(other.getRentalSubsidy()))
&& (this.getTrafficSubsidy() == null ? other.getTrafficSubsidy() == null : this.getTrafficSubsidy().equals(other.getTrafficSubsidy()))
&& (this.getHighTemperatureSubsidy() == null ? other.getHighTemperatureSubsidy() == null : this.getHighTemperatureSubsidy().equals(other.getHighTemperatureSubsidy()))
&& (this.getSettleAccountsProportion() == null ? other.getSettleAccountsProportion() == null : this.getSettleAccountsProportion().equals(other.getSettleAccountsProportion()))
&& (this.getRealWages() == null ? other.getRealWages() == null : this.getRealWages().equals(other.getRealWages()))
&& (this.getWorkDate() == null ? other.getWorkDate() == null : this.getWorkDate().equals(other.getWorkDate()));
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
result = prime * result + ((getRequirementsInfoId() == null) ? 0 : getRequirementsInfoId().hashCode());
result = prime * result + ((getDailyWage() == null) ? 0 : getDailyWage().hashCode());
result = prime * result + ((getSubsidyFestival() == null) ? 0 : getSubsidyFestival().hashCode());
result = prime * result + ((getRentalSubsidy() == null) ? 0 : getRentalSubsidy().hashCode());
result = prime * result + ((getTrafficSubsidy() == null) ? 0 : getTrafficSubsidy().hashCode());
result = prime * result + ((getHighTemperatureSubsidy() == null) ? 0 : getHighTemperatureSubsidy().hashCode());
result = prime * result + ((getSettleAccountsProportion() == null) ? 0 : getSettleAccountsProportion().hashCode());
result = prime * result + ((getRealWages() == null) ? 0 : getRealWages().hashCode());
result = prime * result + ((getWorkDate() == null) ? 0 : getWorkDate().hashCode());
return result;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", requirementsInfoId=").append(requirementsInfoId);
sb.append(", dailyWage=").append(dailyWage);
sb.append(", subsidyFestival=").append(subsidyFestival);
sb.append(", rentalSubsidy=").append(rentalSubsidy);
sb.append(", trafficSubsidy=").append(trafficSubsidy);
sb.append(", highTemperatureSubsidy=").append(highTemperatureSubsidy);
sb.append(", settleAccountsProportion=").append(settleAccountsProportion);
sb.append(", realWages=").append(realWages);
sb.append(", workDate=").append(workDate);
sb.append(", serialVersionUID=").append(serialVersionUID);
sb.append("]");
return sb.toString();
}
}
\ No newline at end of file
package com.mmc.csf.release.entity.requirements;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.mmc.csf.config.IsNullConvertZero;
import com.mmc.csf.infomation.vo.RequirementsAmountVO;
import io.swagger.annotations.ApiModelProperty;
......@@ -27,7 +28,7 @@ public class RequirementsAmountUpdateDO {
@IsNullConvertZero
private BigDecimal orderAmount;
@ApiModelProperty(value = "发布者修改订单金额", example = "100")
@ApiModelProperty(value = "发布者修改订单金额", example = "100")
@IsNullConvertZero
private BigDecimal updateOrderAmount;
......@@ -67,6 +68,10 @@ public class RequirementsAmountUpdateDO {
@IsNullConvertZero
private BigDecimal returnSalaryAmount;
@ApiModelProperty(value = "小程序是否支付修改后金额 1,支付了 0,后台修改未支付")
@JsonIgnore
private Integer userSureChange;
public RequirementsAmountUpdateDO(RequirementsAmountVO amountVO, RequirementsInfoDO requirementsInfoDO) {
this.updateOrderAmount = amountVO.getUpdateOrderAmount();
this.reason = amountVO.getReason();
......
......@@ -28,6 +28,9 @@ import java.util.Date;
public class RequirementsInfoDO implements Serializable {
private static final long serialVersionUID = -1811974173256250060L;
private Integer id;
private Integer tempId;
private Integer requirementTypeId;
private Integer userAccountId;
private Integer provinceCode;
......@@ -183,6 +186,14 @@ public class RequirementsInfoDO implements Serializable {
@ApiModelProperty(value = "订单的父订单id")
private Integer fatherRequireId;
@ApiModelProperty(value = "管理员操作")
private int teamStatus;
@ApiModelProperty(value = "二级分类id")
private int inspectionId;
@ApiModelProperty(value = "项目号")
private String projectCode;
public RequirementsInfoVO buildRequirementsInfoVO() {
return RequirementsInfoVO.builder().id(this.id).requirementTypeId(this.requirementTypeId).userAccountId(this.userAccountId).publishName(this.publishName)
......@@ -211,6 +222,7 @@ public class RequirementsInfoDO implements Serializable {
.updateOrderAmount(this.updateOrderAmount)
.reason(this.reason)
.url(this.url)
.orderStatus(this.orderStatus)
.afterModificationReason(this.afterModificationReason)
.afterModificationUrl(this.afterModificationUrl)
.pilotCertificationUserId(this.pilotCertificationUserId)
......@@ -219,6 +231,11 @@ public class RequirementsInfoDO implements Serializable {
.createTime(this.createTime)
.repertory(this.repertory)
.requireNum(this.requireNum)
.serviceFlowId(this.serviceFlowId)
.teamStatus(this.teamStatus)
.tempId(this.tempId)
.inspectionId(this.inspectionId)
.projectCode(this.projectCode)
.build();
}
......
......@@ -3,6 +3,7 @@ package com.mmc.csf.release.entity.requirements;
import com.alibaba.fastjson.annotation.JSONField;
import com.mmc.csf.config.IsNullConvertZero;
import com.mmc.csf.infomation.dto.PilotCertificationInteriorDTO;
import com.mmc.csf.release.entity.information.PersonSendOrderDO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
......@@ -89,5 +90,15 @@ public class RequirementsServiceDO implements Serializable {
this.requirementsInfoId = requirementsInfoDO.getId();
}
/**
* 派单信息同步
*/
public RequirementsServiceDO(PersonSendOrderDO personSendOrderDO){
this.requirementsInfoId = personSendOrderDO.getRequirementsInfoId();
this.pilotCertificationId = personSendOrderDO.getPilotCertificationId();
this.pilotCertificationUserId = personSendOrderDO.getPilotCertificationUserId();
this.teamUserId = personSendOrderDO.getTeamUserId();
this.teamId = personSendOrderDO.getTeamId();
this.serviceFlowId = 2;
}
}
package com.mmc.csf.release.entity.requirements;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @author Admin
* @date 2023/11/11
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class RequirementsServicePilotInfoDO {
@ApiModelProperty(value = "抢单飞手id")
Integer pilotCertificationId;
@ApiModelProperty(value ="抢单飞手用户id")
Integer pilotCertificationUserId;
}
......@@ -69,6 +69,12 @@ public class ServiceOrderFormDO {
@ApiModelProperty(value = "等待状态", example = "100")
private String waiting;
@ApiModelProperty(value = "父订单id")
private Integer fatherRequireId;
@ApiModelProperty(value = "订单对应项目号")
private String projectCode;
public ServiceOrderFormDTO buildServiceOrderForm() {
return ServiceOrderFormDTO.builder()
.id(this.id)
......@@ -85,6 +91,8 @@ public class ServiceOrderFormDO {
.updateTime(this.updateTime)
.orderStatus(this.orderStatus)
.waiting(this.waiting)
.fatherRequireId(this.fatherRequireId)
.projectCode(this.projectCode)
.build();
}
......
......@@ -113,6 +113,13 @@ public class ServiceOrderFormDetailsDO {
private Integer duty;
@ApiModelProperty(value = "订单对应的项目号")
private String projectCode;
@ApiModelProperty(value = "二级服务id")
private Integer inspectionId;
public ServiceOrderFormDetailsDTO buildOrderFormDetails() {
return ServiceOrderFormDetailsDTO.builder()
.id(this.id)
......@@ -141,6 +148,8 @@ public class ServiceOrderFormDetailsDO {
.orderEarnings(this.orderEarnings)
.duty(this.duty)
.decisionContent(this.decisionContent)
.projectCode(this.projectCode)
.inspectionId(this.inspectionId)
.build();
}
}
......@@ -148,6 +148,11 @@ public class ServiceRequirementsDO {
@ApiModelProperty(value = "订单总共所需多少人")
private Integer requireNum;
@ApiModelProperty(value = "订单项目号")
private String projectCode;
@ApiModelProperty(value = "二级服务分类")
private String inspectionId;
public ServiceRequirementsDO(ServiceRequirementsVO serviceRequirementsVO) {
this.id = serviceRequirementsVO.getId();
this.userAccountId = serviceRequirementsVO.getUserAccountId();
......@@ -175,6 +180,8 @@ public class ServiceRequirementsDO {
this.cityCode = serviceRequirementsVO.getCityCode();
this.districtCode = serviceRequirementsVO.getDistrictCode();
this.requireNum = serviceRequirementsVO.getRequireNum();
this.projectCode = serviceRequirementsVO.getProjectCode();
this.inspectionId = serviceRequirementsVO.getInspectionId();
}
......
......@@ -148,6 +148,11 @@ public class ServiceRequirementsSonDO {
@ApiModelProperty(value = "上级订单id")
private Integer fatherRequireId;
@ApiModelProperty(value = "订单项目号")
private String projectCode;
@ApiModelProperty(value = "二级服务分类")
private String inspectionId;
public ServiceRequirementsSonDO(ServiceRequirementsDO serviceRequirementsDO) {
BigDecimal decimalSum = new BigDecimal(serviceRequirementsDO.getRequireNum());
this.serviceId = serviceRequirementsDO.getServiceId();
......@@ -184,5 +189,7 @@ public class ServiceRequirementsSonDO {
this.serviceName = serviceRequirementsDO.getServiceName();
this.requireNum = 1;
this.fatherRequireId = serviceRequirementsDO.getId();
this.projectCode = serviceRequirementsDO.getProjectCode();
this.inspectionId = serviceRequirementsDO.getInspectionId();
}
}
package com.mmc.csf.release.entity.tender;
import java.io.Serializable;
import java.math.BigDecimal;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelTarget;
import lombok.AllArgsConstructor;
......@@ -7,11 +13,6 @@ import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* author:zhenjie
* Date:2022/5/23
......
package com.mmc.csf.release.entity.tender;
import java.io.Serializable;
import java.util.Date;
import com.mmc.csf.infomation.dto.TenderApplyDTO;
import com.mmc.csf.infomation.vo.TenderApplyVO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.util.Date;
/**
* author:zhenjie
* Date:2022/5/21
......
package com.mmc.csf.release.entity.tender;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import com.mmc.csf.infomation.dto.AppTenderInfoDTO;
import com.mmc.csf.infomation.dto.TenderInfoDTO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
/**
* author:zhenjie
* Date:2022/5/21
......
package com.mmc.csf.release.enums;
/**
* 对应ims service_flow中的字段
* @author Admin
* @date 2023/11/29
*/
public enum ServiceIdEnum {
WAIT_CHANGE_AMOUNT(12,"等待修改金额"),
DETAIL_COMPLETE(4,"任务已完成"),
SENDING_OUT_ORDERS(13,"派单中");
private Integer code;
private String name;
ServiceIdEnum(Integer code, String name) {
this.code = code;
this.name = name;
}
public void setCode(Integer code) {
this.code = code;
}
public Integer getCode() {
return this.code;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return this.name;
}
}
......@@ -3,15 +3,20 @@ package com.mmc.csf.release.feign;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.dto.PilotCertificationInteriorDTO;
import com.mmc.csf.infomation.dto.TeamMessageDO;
import com.mmc.csf.infomation.dto.UserAccountSimpleDTO;
import com.mmc.csf.infomation.dto.UserBaseInfoDTO;
import com.mmc.csf.release.auth.qo.BUserAccountQO;
import com.mmc.csf.release.auth.qo.UserAccountQO;
import com.mmc.csf.release.feign.hystrix.UserAppApiHystrix;
import com.mmc.csf.release.flyer.vo.CurriculumOrderLogVO;
import com.mmc.csf.user.vo.ChangeUserPointVO;
import com.mmc.csf.user.vo.WxMsgVO;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
......@@ -62,6 +67,9 @@ public interface UserAppApi {
@PostMapping("/userapp/user-account/feignListAppUserAccount")
List<UserAccountSimpleDTO> feignListAppUserAccount(@ApiParam(value = "账号查询QO", required = true) @RequestBody UserAccountQO userAccountQO, @RequestHeader("token") String token);
@PostMapping("/userapp/user-account/feignListAppUserAccount1")
List<UserAccountSimpleDTO> feignListAppUserAccount1(@ApiParam(value = "账号查询QO", required = true) @RequestBody UserAccountQO userAccountQO);
/**
* 根据用户id获取基本信息
......@@ -74,4 +82,25 @@ public interface UserAppApi {
@PostMapping("/userapp/userPoint/change")
public ResultBody changeUserPoint(@RequestBody ChangeUserPointVO changePoint, @RequestHeader("token") String token);
@GetMapping("/userapp/pilot/selectPilotIdList")
List<Integer> feignGetPilotIdList(@RequestHeader("token") String token);
@GetMapping("/userapp/user-account/feignGetUserBaseInfo")
UserBaseInfoDTO feignGetUserBaseInfo(@RequestParam Integer userAccountId);
@GetMapping("/userapp/userPoint/feignChangeUserPoints")
ResultBody feignChangeUserPoints(@RequestHeader("token") String token,@RequestHeader HttpServletRequest request, @RequestParam("id") int changePoint,@RequestParam("reason") String reason);
@PostMapping("/userapp/pay/feignCurriculumOrderLog")
ResultBody feignCurriculumOrderLog(@RequestHeader("token") String token,@RequestHeader HttpServletRequest request,@RequestBody CurriculumOrderLogVO curriculumOrderLogVO);
@PostMapping("/userapp/wx/send")
ResultBody feignSendWxMsg(@RequestHeader("token") String token,@RequestBody WxMsgVO ws);
@GetMapping("/userapp/pilot/selectPilotTeamManagerId")
Integer selectPilotTeamManagerId(@RequestHeader("token") String token,@RequestParam Integer pilotUserId);
@GetMapping("/userapp/pilot/getPilotApplyPhone")
String getPilotApplyPhone(@RequestHeader("token") String token,@RequestParam Integer userAccountId);
}
......@@ -4,13 +4,18 @@ import com.alibaba.fastjson.JSONObject;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.common.util.web.ResultEnum;
import com.mmc.csf.infomation.dto.PilotCertificationInteriorDTO;
import com.mmc.csf.infomation.dto.TeamMessageDO;
import com.mmc.csf.infomation.dto.UserAccountSimpleDTO;
import com.mmc.csf.infomation.dto.UserBaseInfoDTO;
import com.mmc.csf.release.auth.qo.BUserAccountQO;
import com.mmc.csf.release.auth.qo.UserAccountQO;
import com.mmc.csf.release.feign.UserAppApi;
import com.mmc.csf.release.flyer.vo.CurriculumOrderLogVO;
import com.mmc.csf.user.vo.ChangeUserPointVO;
import com.mmc.csf.user.vo.WxMsgVO;
import lombok.extern.slf4j.Slf4j;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
......@@ -42,6 +47,11 @@ public class UserAppApiHystrix implements UserAppApi {
log.error("熔断:feignListAppUserAccount:{}", userAccountQO);
return null;
}
@Override
public List<UserAccountSimpleDTO> feignListAppUserAccount1(UserAccountQO userAccountQO) {
log.error("熔断:feignListAppUserAccount:{}", userAccountQO);
return null;
}
@Override
public PilotCertificationInteriorDTO feignInteriorDetailPilot(Integer userAccountId) {
......@@ -54,4 +64,46 @@ public class UserAppApiHystrix implements UserAppApi {
log.error("发放积分 熔断:changeUserPoint:{}", JSONObject.toJSON(changePoint));
return ResultBody.error(ResultEnum.OPERATION_SYS_ERROR);
}
@Override
public List<Integer> feignGetPilotIdList(String token) {
log.error("熔断:feignGetUserSimpleInfo");
return null;
}
@Override
public UserBaseInfoDTO feignGetUserBaseInfo(Integer userAccountId) {
log.error("获取用户基本信息 熔断:feignGetUserBaseInfo:{}", userAccountId);
return null;
}
@Override
public ResultBody feignChangeUserPoints(String token,HttpServletRequest request, int changePoint, String reason) {
log.error("获取积分日志 熔断:feignChangeUserPoints:{}", changePoint, reason);
return null;
}
@Override
public ResultBody feignCurriculumOrderLog(String token,HttpServletRequest request,CurriculumOrderLogVO curriculumOrderLogVO) {
return null;
}
@Override
public ResultBody feignSendWxMsg(String token, WxMsgVO ws) {
log.error("发送消息 熔断:feignCurriculumOrderLog:{}", ws);
return null;
}
@Override
public Integer selectPilotTeamManagerId(String token, Integer pilotUserId) {
return null;
}
@Override
public String getPilotApplyPhone(String token, Integer userAccountId) {
return null;
}
}
......@@ -4,6 +4,9 @@ import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.qo.ServiceOrderQO;
import com.mmc.csf.release.auth.dto.LoginSuccessDTO;
import com.mmc.csf.release.entity.requirements.OrderAmountDetailDO;
import java.util.List;
/**
* @Author small
......@@ -14,4 +17,26 @@ public interface BackRequirementsService {
PageResult serviceOrderFormList(ServiceOrderQO param, LoginSuccessDTO userLoginInfoFromRedis);
ResultBody serviceOrderFormDetails(Integer requirementsInfoId, LoginSuccessDTO userLoginInfoFromRedis);
/**
* 根据订单id获取到这个订单的金额具体明细
* @param requirementsInfoId 订单id
* @return {@link ResultBody}
*/
ResultBody getOrderAmountDetails(Integer requirementsInfoId);
/**
* 先删除之前的默认数据 再新增
* @param list
* @return {@link ResultBody}
*/
ResultBody updateOrderAmountDetails(List<OrderAmountDetailDO> list);
/**
* 批量添加
* @param list 列表
* @return {@link ResultBody}
*/
ResultBody insertOrderAmountDetails(List<OrderAmountDetailDO> list);
}
......@@ -11,7 +11,7 @@ import javax.servlet.http.HttpServletRequest;
* @date 2023/6/19 10:47 概要:
*/
public interface BackstageForumService {
PageResult listDynamic(DynamicQO dynamic, HttpServletRequest request);
PageResult listDynamic (DynamicQO dynamic, HttpServletRequest request);
ResultBody getDynamicAuditSum();
ResultBody deleteDynamic(Integer dynamicId);
......@@ -22,4 +22,9 @@ public interface BackstageForumService {
ResultBody checkDynamic(Integer dynamicId, Boolean status, String token);
/**
* 获取未审核的帖子的总数
* @return {@link ResultBody}
*/
ResultBody getNotCheckDynamicSum();
}
package com.mmc.csf.release.service;
import javax.servlet.http.HttpServletRequest;
import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.release.entity.gambit.ForumAttentionDO;
import com.mmc.csf.release.forum.vo.CommentVO;
import com.mmc.csf.release.forum.vo.DynamicVO;
import com.mmc.csf.release.forum.vo.ReplyToAReviewVO;
import com.mmc.csf.release.gambit.qo.ForumGambitQO;
import com.mmc.csf.release.gambit.qo.PostingLeaderboardQO;
import com.mmc.csf.release.gambit.vo.ForumGambitVO;
import io.swagger.models.auth.In;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
* @Author LW 测试合并
* @date 2023/5/15 10:29 概要:动态信息service层
......@@ -62,7 +58,7 @@ public interface DynamicService {
ResultBody dynamicDetails(Integer dynamicId, Integer userId, HttpServletRequest request);
PageResult dynamicList(
Integer pageNo, Integer pageSize, Integer userAccountId, HttpServletRequest request, Integer gambitId, Integer id, Integer userId, String description, List<String> gambitName);
Integer pageNo, Integer pageSize, Integer userAccountId, Integer gambitId, Integer id, Integer userId, String description, List<String> gambitName);
ResultBody recentNewsList(Integer userAccountId);
......
......@@ -2,10 +2,16 @@ package com.mmc.csf.release.service;
import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.release.entity.curriculum.CurriculumInfoDO;
import com.mmc.csf.release.entity.curriculum.CurriculumOrderDO;
import com.mmc.csf.release.entity.curriculum.CurriculumOrderQO;
import com.mmc.csf.release.flyer.qo.CurriculumQo;
import com.mmc.csf.release.flyer.vo.CurriculumClassifyVO;
import com.mmc.csf.release.flyer.vo.CurriculumInfoVO;
import com.mmc.csf.release.flyer.vo.CurriculumPayVO;
import com.mmc.csf.release.flyer.vo.RegistrationVO;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
/**
......@@ -52,7 +58,7 @@ public interface FlyerTrainingService {
*/
ResultBody licenseOrSkillQueryCurriculum(Integer type);
ResultBody curriculumDetails(Integer id);
ResultBody curriculumDetails(Integer id,Integer userId);
/**
* 添加课程
......@@ -93,4 +99,68 @@ public interface FlyerTrainingService {
int feignCountCurriculumInfo(Integer categoriesId);
Integer getCurriculumCount();
/**
* 添加课程分类
*
* @param curriculumClassify
*/
Integer addCurriculumClassify(CurriculumClassifyVO curriculumClassify);
/**
* 修改课程分类
*
* @param curriculumClassify
*/
Integer updateCurriculumClassify(CurriculumClassifyVO curriculumClassify);
/**
* 删除课程分类
*
* @param oneCourseId 1级课程分类
* @param twoCourseId 2级课程分类
*/
ResultBody removeCurriculumClassify(Integer id);
/**
* 查询所有的课程分类
* @return
*/
ResultBody selectCurriculumClassify();
/**
* 根据课程ID查询课程信息
* @param id
* @return
*/
CurriculumInfoDO selectCurriculumInfoById(Integer id);
/**
* 购买课程——积分支付
* @param curriculumOrderDO
* @return
*/
Integer curriculumPayByIntegral(CurriculumOrderDO curriculumOrderDO);
/**
* 购买课程——金钱支付
* @param curriculumPayVO
* @return
*/
ResultBody curriculumPayByMoney(HttpServletRequest request, CurriculumPayVO curriculumPayVO, Integer accountId);
/**
* 分页查询订单列表
* @param param
* @return {@link List}<{@link CurriculumOrderDO}>
*/
ResultBody getCurriculumOrderList(CurriculumOrderQO param);
/**
* 删除订单
* @param id 删除对应订单的id
* @return {@link ResultBody}
*/
ResultBody deleteCurriculumOrderInfo(Integer id);
}
package com.mmc.csf.release.service;
import javax.servlet.http.HttpServletRequest;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.qo.IndustryCaseQO;
import com.mmc.csf.infomation.qo.IndustryNewsQO;
import com.mmc.csf.infomation.vo.IndustryNewsDTO;
import com.mmc.csf.infomation.vo.IndustryNewsVO;
import javax.servlet.http.HttpServletRequest;
/**
* @author: zj
......
......@@ -3,11 +3,9 @@ package com.mmc.csf.release.service;
import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.dto.*;
import com.mmc.csf.infomation.qo.AgreeOrRefusePilotQO;
import com.mmc.csf.infomation.qo.IndustryCaseQO;
import com.mmc.csf.infomation.qo.MyPreemptQO;
import com.mmc.csf.infomation.qo.MyPublishQO;
import com.mmc.csf.infomation.qo.*;
import com.mmc.csf.infomation.vo.*;
import com.mmc.csf.release.entity.information.PersonSendOrderDO;
import com.mmc.csf.release.entity.requirements.ServiceRequirementsDO;
import javax.servlet.http.HttpServletRequest;
......@@ -64,7 +62,7 @@ public interface RequirementsService {
ResultBody deletePublish(Integer id, Integer userAccountId);
ResultBody appPublishList();
ResultBody appPublishList(RequirementsInfoQO requirementsInfoQO);
ResultBody detailPublish(Integer id, HttpServletRequest request, Integer userAccountId);
......@@ -74,6 +72,14 @@ public interface RequirementsService {
PageResult myPublish(Integer userAccountId, MyPublishQO param);
/**
* 需要指派或者需要同意派单的列表
* @param adminUserId 用户的id
* @param param 查询的条件
* @return {@link PageResult}
*/
PageResult mySendPublish(Integer adminUserId, MyPublishQO param);
ResultBody<RequirementsInfoVO> grabTheOrder(GrabTheOrderVO grabTheOrderVO, HttpServletRequest request);
ResultBody arriveAtTheScene(ServiceArriveSceneVO serviceArriveSceneVO);
......@@ -82,6 +88,9 @@ public interface RequirementsService {
ResultBody fulfilATask(ServiceFulfilATaskVO fulfilATaskVO);
ResultBody updateTaskUrl(String taskUrl,Integer requirementsInfoId);
ResultBody getTaskUrl(Integer requirementsInfoId);
ResultBody<ServiceFulfilATaskDTO> fulfilATaskDetails(Integer requirementsInfoId, Integer userAccountId);
ResultBody settleAccounts(ServiceSettleAccountsVO settleAccountsVO, HttpServletRequest request);
......@@ -137,10 +146,37 @@ public interface RequirementsService {
*/
PageResult selectRequireSonInfo(Integer userAccountId, MyPublishQO param);
/**
* 同意或者拒绝飞手接单
* @param param 参数
* @return {@link ResultBody}
*/
ResultBody agreeOrRefusePilot(AgreeOrRefusePilotQO param);
/**
* 根据飞手进行派单操作
*/
ResultBody personSendOrder(PersonSendOrderVO personSendOrderVO,String token);
/**
* 根据团队进行派单操作
*/
ResultBody teamSendOrder(Integer fatherRequireId,Integer messageId,String token);
/**
* 飞手确认接单
*/
ResultBody orderConfirmationByPilot(Integer id,Integer status,String token);
/**
* 管理员确认接单
*/
ResultBody orderConfirmationByTeam(Integer id,Integer status,String token);
/**
* 个人飞手派单的订单列表
*/
PageResult mySendOderList(Integer userAccountId, MyPreemptQO param);
}
package com.mmc.csf.release.service.impl;
import com.alibaba.fastjson2.JSONObject;
import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.dto.DynamicAuditSumDTO;
......@@ -21,15 +22,14 @@ import com.mmc.csf.release.forum.qo.DynamicQO;
import com.mmc.csf.release.forum.vo.UserBaseInfoVO;
import com.mmc.csf.release.service.BackstageForumService;
import com.mmc.csf.user.vo.ChangeUserPointVO;
import com.mmc.csf.user.vo.WxMsgVO;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
......@@ -218,6 +218,13 @@ public class BackstageForumServiceImpl implements BackstageForumService {
changePoint.setChangeType(3);
changePoint.setChangePoint(5);
userAppApi.changeUserPoint(changePoint, token);
// 微信公众号发送通知
WxMsgVO ws = new WxMsgVO();
ws.setDataObject(spellMsg("发布帖子","审核通过"));
ws.setUserAccountId(dynamicDO.getUserAccountId());
// ws.setTemplateId("9qvgBhfW9yoQJY91iMfhrog8y5eZUPSbo9PLvQzS_vk");
ws.setTemplateId("4s0xcovQfT89MYPkUEesBsPD_ONRMPsx_9jxi61Qd-c");
userAppApi.feignSendWxMsg(token, ws);
} else {
dynamicDao.updateCheckDynamic(dynamicId, 2);
List<DynamicGambitDO> gambitDOList= gambitDao.selectGambitDynamic(dynamicId);
......@@ -232,4 +239,31 @@ public class BackstageForumServiceImpl implements BackstageForumService {
}
return ResultBody.success();
}
@Override
public ResultBody getNotCheckDynamicSum() {
return ResultBody.success(backstageForumDao.getDynamicAuditSum(0));
}
public JSONObject spellMsg(String name, String result){
JSONObject data=new JSONObject();
//申请项目{{thing3.DATA}}
JSONObject thing3=new JSONObject();
thing3.put("value",name);
data.put("thing3",thing3);
//审核时间{{time6.DATA}}
JSONObject time6=new JSONObject();
time6.put("value",new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
data.put("time6",time6);
//审核结果{{thing5.DATA}}
JSONObject thing5=new JSONObject();
thing5.put("value",result);
data.put("thing5",thing5);
return data;
}
}
package com.mmc.csf.release.service.impl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.function.Function;
import java.util.stream.Collectors;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.dto.PayWalletDTO;
import com.mmc.csf.infomation.dto.UserAccountSimpleDTO;
import com.mmc.csf.release.auth.qo.UserAccountQO;
import com.mmc.csf.release.constant.TokenConstant;
......@@ -13,7 +26,6 @@ import com.mmc.csf.release.dao.DynamicDao;
import com.mmc.csf.release.dao.LikeDAO;
import com.mmc.csf.release.dao.gambit.GambitDao;
import com.mmc.csf.release.entity.forum.*;
import com.mmc.csf.release.entity.forum.ForumReviewDO;
import com.mmc.csf.release.entity.gambit.ForumAttentionDO;
import com.mmc.csf.release.entity.gambit.ForumGambitDO;
import com.mmc.csf.release.feign.UserAppApi;
......@@ -22,28 +34,14 @@ import com.mmc.csf.release.gambit.dto.ForumGambitDTO;
import com.mmc.csf.release.gambit.dto.PostingLeaderboardDTO;
import com.mmc.csf.release.gambit.qo.ForumGambitQO;
import com.mmc.csf.release.gambit.qo.PostingLeaderboardQO;
import com.mmc.csf.release.gambit.vo.ForumGambitVO;
import com.mmc.csf.release.service.DynamicService;
import com.mmc.csf.release.service.WxApiService;
import com.mmc.csf.release.service.gambit.GambitService;
import com.mmc.csf.user.vo.ChangeUserPointVO;
import com.mmc.csf.user.vo.UserAccountVO;
import io.swagger.models.auth.In;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.*;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.client.RestTemplate;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* @Author LW
* @date 2023/5/15 10:29 概要:动态信息实现层
......@@ -301,7 +299,7 @@ public class DynamicServiceImpl implements DynamicService {
@Override
public PageResult dynamicList(
Integer pageNo, Integer pageSize, Integer userId, HttpServletRequest request, Integer gambitId,Integer dynId,Integer userAccountIds,
Integer pageNo, Integer pageSize, Integer userId, Integer gambitId,Integer dynId,Integer userAccountIds,
String description,List<String> gambitName) {
Integer tokenUserId =userId;
Integer inUserId =userAccountIds;
......@@ -382,7 +380,7 @@ public class DynamicServiceImpl implements DynamicService {
UserAccountQO bUserAccountQO = new UserAccountQO();
bUserAccountQO.setUserIds(userIdList);
List<UserAccountSimpleDTO> userAccountSimpleDTOS =
userAppApi.feignListAppUserAccount(bUserAccountQO, request.getHeader(TokenConstant.TOKEN));
userAppApi.feignListAppUserAccount1(bUserAccountQO);
Map<Integer, UserAccountSimpleDTO> userAccountInfoMap =
userAccountSimpleDTOS.stream()
.collect(Collectors.toMap(UserAccountSimpleDTO::getId, Function.identity()));
......@@ -408,7 +406,7 @@ public class DynamicServiceImpl implements DynamicService {
List<Integer> commentUserIds = comment.stream().map(ForumDynamicDO::getUserAccountId).collect(Collectors.toList());
bUserAccountQO.setUserIds(commentUserIds);
List<UserAccountSimpleDTO> commentUserAccountSimple =
userAppApi.feignListAppUserAccount(bUserAccountQO, request.getHeader(TokenConstant.TOKEN));
userAppApi.feignListAppUserAccount1(bUserAccountQO);
List<DynamicVO> commentAndReply = comment.stream().limit(2).map(ForumDynamicDO::buildDynamicVO).collect(Collectors.toList());
for (DynamicVO vo : commentAndReply) {
for (UserAccountSimpleDTO userAccountSimpleDTO : commentUserAccountSimple) {
......@@ -494,7 +492,6 @@ public class DynamicServiceImpl implements DynamicService {
}
return PageResult.buildPage(pageNo, pageSize, count, dynamicVOList);
}
@Override
public ResultBody recentNewsList(Integer userAccountId) {
List<ForumDynamicUserDO> forumDynamicDOS = dynamicDao.recentNewsList(userAccountId);
......
package com.mmc.csf.release.service.impl;
import java.util.List;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.infomation.qo.IndustryCaseQO;
......@@ -10,13 +19,6 @@ import com.mmc.csf.release.dao.IndustryCaseDao;
import com.mmc.csf.release.entity.information.IndustryCaseDO;
import com.mmc.csf.release.feign.UserAppApi;
import com.mmc.csf.release.service.IndustryCaseService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
......
package com.mmc.csf.release.service.impl;
import java.util.List;
import java.util.stream.Collectors;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mmc.csf.common.util.page.PageResult;
import com.mmc.csf.common.util.web.ResultBody;
import com.mmc.csf.common.util.web.ResultEnum;
......@@ -12,13 +19,8 @@ import com.mmc.csf.release.dao.IndustryNewsDao;
import com.mmc.csf.release.entity.information.IndustryNewsDO;
import com.mmc.csf.release.feign.UserAppApi;
import com.mmc.csf.release.service.IndustryNewsService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author: zj
......@@ -54,6 +56,7 @@ public class IndustryNewsServiceImpl implements IndustryNewsService {
return ResultBody.success(PageResult.buildPage(pageNo, industryCaseQO.getPageSize(), count, industryNewsDTOS));
}
@Override
public ResultBody details(Integer id) {
IndustryNewsDO industryNewsDO = industryNewsDao.details(id);
......@@ -70,14 +73,14 @@ public class IndustryNewsServiceImpl implements IndustryNewsService {
if(count>0){
return ResultBody.error(ResultEnum.INDUSTRY_NEWS_TITLE_EXISTS);
}
industryNewsDO = new IndustryNewsDO(param.getId(), param.getNewsTitle(), param.getNewsAuthor(), userAccountId, param.getSurfaceImg(), param.getNewsContents(), param.getOrigin());
industryNewsDO = new IndustryNewsDO(param.getId(), param.getNewsTitle(), param.getNewsAuthor(), userAccountId, param.getSurfaceImg(), param.getNewsContents(), param.getOrigin(),param.getIsHot());
industryNewsDao.insert(industryNewsDO);
return ResultBody.success();
}
@Override
public ResultBody upDateIndustryNews(IndustryNewsVO param, Integer userAccountId) {
IndustryNewsDO industryNewsDO = new IndustryNewsDO(param.getId(), param.getNewsTitle(), param.getNewsAuthor(), userAccountId, param.getSurfaceImg(), param.getNewsContents(), param.getOrigin());
IndustryNewsDO industryNewsDO = new IndustryNewsDO(param.getId(), param.getNewsTitle(), param.getNewsAuthor(), userAccountId, param.getSurfaceImg(), param.getNewsContents(), param.getOrigin(),param.getIsHot());
industryNewsDao.update(industryNewsDO);
return ResultBody.success();
}
......
......@@ -18,6 +18,6 @@ public interface LicenceBackgroundService {
ResultBody removeOrganizations(Integer id);
ResultBody selectOrganizations(Integer backUserId);
PageResult listOrgPage(LicenseOrganizationsQO organizationsQO, LoginSuccessDTO userLoginInfoFromRedis);
}
......@@ -117,11 +117,13 @@ public class LicenceBackgroundServiceImpl implements LicenceBackgroundService {
private void getOrgName(LicenseOrganizationsVO organizations) {
String region = organizations.getRegion();
List<String> strings = Arrays.asList(region.split(","));
List<Integer> collect = strings.stream().map(Integer::valueOf).collect(Collectors.toList());
List<String> orgName = licenceBackgroundDao.getOrgName(collect);
String join = StringUtils.join(orgName, ",");
organizations.setRegionName(join);
if(region != null) {
List<String> strings = Arrays.asList(region.split(","));
List<Integer> collect = strings.stream().map(Integer::valueOf).collect(Collectors.toList());
List<String> orgName = licenceBackgroundDao.getOrgName(collect);
String join = StringUtils.join(orgName, ",");
organizations.setRegionName(join);
}
}
@Override
......@@ -132,11 +134,24 @@ public class LicenceBackgroundServiceImpl implements LicenceBackgroundService {
}
@Override
public ResultBody selectOrganizations(Integer backUserId) {
LicenseOrganizationsDO licenseOrganizationsDO = licenceBackgroundDao.selectOrganizations(backUserId);
LicenseOrganizationsDTO licenseOrganizationsDTO = licenseOrganizationsDO.organizationsDTO();
Integer orgId = licenseOrganizationsDTO.getId();
List<LicenseProgramsDO> licenseProgramsDOS = licenceBackgroundDao.selectPrograms(orgId);
List<LicenseTrainingProgramsDTO> orgList = licenseProgramsDOS.stream().map(LicenseProgramsDO :: buildTrainingProgramsDTO).collect(Collectors.toList());
licenseOrganizationsDTO.setProgramsDOList(orgList);
return ResultBody.success(licenseOrganizationsDTO);
}
@Override
public PageResult listOrgPage(LicenseOrganizationsQO organizationsQO, LoginSuccessDTO userLoginInfoFromRedis) {
int count = licenceBackgroundDao.countListOrgPage(organizationsQO);
if (count == 0) {
return PageResult.buildPage(organizationsQO.getPageNo(), organizationsQO.getPageSize(), count);
}
Integer backUserId = userLoginInfoFromRedis.getUserAccountId();
organizationsQO.setBackUserId(backUserId);
Integer pageNo = organizationsQO.getPageNo();
organizationsQO.buildCurrentPage();
List<LicenseOrganizationsDO> licenseOrganizationsDOS = licenceBackgroundDao.listOrgPage(organizationsQO);
......
package com.mmc.csf.release.util;
import com.mmc.csf.infomation.vo.PersonSendOrderVO;
import com.mmc.csf.release.dao.RequirementsDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import java.io.Serializable;
import java.util.TimerTask;
@Component
public class MyTask extends TimerTask implements Serializable {
private final RequirementsDao requirementsDao;
private PersonSendOrderVO personSendOrderVO;
public MyTask(RequirementsDao requirementsDao) {
this.requirementsDao = requirementsDao;
}
public void setPersonSendOrderVO(PersonSendOrderVO personSendOrderVO) {
this.personSendOrderVO = personSendOrderVO;
}
private static final long serialVersionUID = 1L;
@Override
public void run() {
requirementsDao.deleteSendOrder(personSendOrderVO.getRequirementsInfoId());
System.out.println("定时任务执行完毕!");
}
}
package com.mmc.csf.release.util;
import com.mmc.csf.infomation.vo.PersonSendOrderVO;
import com.mmc.csf.release.dao.RequirementsDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
import org.springframework.scheduling.TaskScheduler;
import org.springframework.scheduling.support.CronTrigger;
import org.springframework.stereotype.Component;
import java.time.Instant;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ScheduledFuture;
import java.util.concurrent.TimeUnit;
@Component
public class ScheduledTaskUtil {
@Autowired
private RedisTemplate<String, Object> redisTemplate;
@Autowired
private TaskScheduler taskScheduler;
@Autowired
private RequirementsDao requirementsDao;
private final Map<Integer, ScheduledFuture<?>> scheduledTasks = new ConcurrentHashMap<>();
public void create(PersonSendOrderVO personSendOrderVO){
long delay = 10000; // 延迟5s开始执行
MyTask task = new MyTask(requirementsDao);
task.setPersonSendOrderVO(personSendOrderVO);
redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());
redisTemplate.opsForValue().set("task"+personSendOrderVO.getRequirementsInfoId(), task, delay, TimeUnit.MILLISECONDS);
// 使用TaskScheduler执行定时任务
System.out.println("定时任务已开启");
ScheduledFuture<?> scheduledFuture = taskScheduler.schedule(task, Instant.now().plusMillis(delay));
scheduledTasks.put(personSendOrderVO.getRequirementsInfoId(), scheduledFuture);
}
public void destroy(Integer requireId){
redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());
MyTask task = (MyTask) redisTemplate.opsForValue().get("task"+requireId);
ScheduledFuture<?> scheduledFuture = scheduledTasks.get(requireId);
if (task != null && scheduledFuture != null) {
scheduledFuture.cancel(false);
redisTemplate.delete("task"+requireId);
scheduledTasks.remove(requireId);
System.out.println("定时任务已取消");
}
}
}
package com.mmc.csf.release.util;
import com.aliyun.dysmsapi20170525.models.SendSmsRequest;
import com.aliyun.dysmsapi20170525.models.SendSmsResponse;
import com.aliyun.teaopenapi.models.Config;
import com.google.gson.Gson;
/**
* @author: zj
* @Date: 2023/7/25 17:00
*/
public class SmsUtil {
public static String ALIYUN_OSS_ACCESS_KEY_ID = "LTAI5tS3GNPRZAkG9LCQBZmc";
public static String ALIYUN_OSS_ACCESS_KEY_SECRET = "ZkPrv1u2mN2DmOIc7GfPKRuy4Risqe";
public static String CLOUD_JOIN_WEBSITE = "云享飞";
private static String ENDPOINT = "dysmsapi.aliyuncs.com";
/**
*
* 加盟审核通过
*/
private static String COOPERATION_TEMPLATE_PASS_CODE_0 = "SMS_461986130";
private static String COOPERATION_TEMPLATE_PASS_CODE_2 = "SMS_462240459";
private static String COOPERATION_TEMPLATE_PASS_CODE_3 = "SMS_462620535";
private static String COOPERATION_TEMPLATE_PASS_CODE_4 = "SMS_462605558";
private static String COOPERATION_TEMPLATE_PASS_CODE_5 = "SMS_464125992";
private static String COOPERATION_TEMPLATE_PASS_CODE_6 = "SMS_464380042";
private static String COOPERATION_TEMPLATE_PASS_CODE_7 = "SMS_464335035";
private static String COOPERATION_TEMPLATE_PASS_CODE_8="SMS_464386188";
private static String COOPERATION_TEMPLATE_PASS_CODE_9="SMS_464401213";
private static String COOPERATION_TEMPLATE_PASS_CODE_10="SMS_464371178";
private static String COOPERATION_TEMPLATE_PASS_CODE_11="SMS_464371179";
private static String COOPERATION_TEMPLATE_PASS_CODE_12="SMS_464321248";
//短信验证码模板
private static String VERIFYCODE="SMS_211825548";
/**
* 加盟审核未通过
*/
private static String COOPERATION_TEMPLATE_CODE_1 = "SMS_462095054";
public static String sendPassCooperationApply(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_5, null, phone);
}
public static String sendNotPassCooperationApply(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_CODE_1, null, phone);
}
// 飞手审核通过通知
public static String sendPassPilotApply(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_6, null, phone);
}
//飞手提现通知
public static String sendPassWithdrawalApply(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_7, null, phone);
}
//飞手订单派送
public static String sendPilotOrder(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_8, null, phone);
}
//管理员拒绝接单
public static String sendManagerRefuseOrder(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_9, null, phone);
}
//飞手拒绝接用户的订单
public static String sendRefuseUser(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_10, null, phone);
}
//飞手拒绝管理员派单
public static String sendRefuseManager(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_11, null, phone);
}
//飞手接单
public static String sendGetOrder(String phone) {
return send(CLOUD_JOIN_WEBSITE, COOPERATION_TEMPLATE_PASS_CODE_12, null, phone);
}
public static String send(String TemplateCode, String param, String phone) {
return send(CLOUD_JOIN_WEBSITE, TemplateCode, param, phone);
}
public static String send(String signName, String TemplateCode, String param, String phone) {
Config config = new Config().setAccessKeyId(ALIYUN_OSS_ACCESS_KEY_ID).setAccessKeySecret(ALIYUN_OSS_ACCESS_KEY_SECRET);
config.endpoint = ENDPOINT;
com.aliyun.dysmsapi20170525.Client client = null;
SendSmsRequest request = new SendSmsRequest();
request.setPhoneNumbers(phone);
request.setSignName(signName);
request.setTemplateCode(TemplateCode);
if (param != null) {
request.setTemplateParam(param);
}
SendSmsResponse response = null;
try {
client = new com.aliyun.dysmsapi20170525.Client(config);
response = client.sendSms(request);
} catch (Exception e) {
return e.getMessage();
}
return new Gson().toJson(response.body);
}
/**
* 短信验证码
* @param verifyCode
* @param phone
* @return
*/
public static String verifyCode(String verifyCode,String phone){
return send(VERIFYCODE,"{\"code\":\""+verifyCode+"\"}",phone);
}
}
......@@ -10,7 +10,7 @@ spring:
#Database
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://mysql.default:3306/iuav_ims_dev?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8
url: jdbc:mysql://rm-bp1m8kze2l399i1jyko.mysql.rds.aliyuncs.com:3306/iuav_ims_dev?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8
username: iuav_dev
password: ${MYSQL_PASSWORD}
# Druid数据源配置
......@@ -52,7 +52,7 @@ spring:
#Redis
redis:
database: 1
host: redis.default
host: 172.24.1.207
password: ${REDIS_PASSWORD}
port: 6379
#连接池
......@@ -70,7 +70,7 @@ spring:
#rabbitMQ
#rabbitMQ
rabbitmq:
host: amqp-cn-zvp2ozhnj001.cn-shenzhen.amqp-0.net.mq.amqp.aliyuncs.com
host: 172.24.1.207
port: 5672
username: MjphbXFwLWNuLXp2cDJvemhuajAwMTpMVEFJNEZ6Q3B5ckEzM1BlZ254V1M2WFY=
password: ${RABBITMQ_PASSWORD}
......@@ -78,8 +78,8 @@ spring:
wx:
sub:
appid: wx5c6a105a0ddca4c5
secret: 96c75255dd26f82f8d55e15b59e101c7
appid: wx50b22db275f8c320
secret: 7b609851705dd22114fff636d0a2fc4a
app:
id: wx18b7883acd204278
secret: 28afe74ba373830237a8133a7431ee82
......@@ -148,9 +148,9 @@ iuav:
pmsapp:
url: http://pms-svc:8099
omsapp:
url: https://test.iuav.shop/oms/
url: https://test.iuav.com/oms/
payment:
url: https://test.iuav.shop
url: https://test.iuav.com
#mmc:
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论