Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
ims-ci-test
Commits
c0b9086a
提交
c0b9086a
authored
8月 01, 2023
作者:
zhenjie
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'develop'
上级
c35ab4e1
7908213d
隐藏空白字符变更
内嵌
并排
正在显示
23 个修改的文件
包含
738 行增加
和
176 行删除
+738
-176
pom.xml
csf-common/csf-common-model/pom.xml
+1
-1
IndustryCaseQO.java
...c/main/java/com/mmc/csf/infomation/qo/IndustryCaseQO.java
+5
-5
RequirementsInfoVO.java
...in/java/com/mmc/csf/infomation/vo/RequirementsInfoVO.java
+87
-22
RequirementsTypeSubclassVO.java
...com/mmc/csf/infomation/vo/RequirementsTypeSubclassVO.java
+31
-0
RequirementsTypeVO.java
...in/java/com/mmc/csf/infomation/vo/RequirementsTypeVO.java
+6
-1
TenderApplyVO.java
...rc/main/java/com/mmc/csf/infomation/vo/TenderApplyVO.java
+2
-0
Insert.java
...src/main/java/com/mmc/csf/release/model/group/Insert.java
+3
-1
pom.xml
csf-common/csf-common-util/pom.xml
+0
-7
ResultEnum.java
...src/main/java/com/mmc/csf/common/util/web/ResultEnum.java
+4
-0
kustomization.yaml
kustomization/overlays/dev/kustomization.yaml
+1
-1
RequirementsController.java
...om/mmc/csf/release/controller/RequirementsController.java
+46
-18
RequirementsDao.java
...rc/main/java/com/mmc/csf/release/dao/RequirementsDao.java
+21
-0
RequirementsInfoDO.java
...c/csf/release/entity/requirements/RequirementsInfoDO.java
+63
-3
RequirementsTypeDO.java
...c/csf/release/entity/requirements/RequirementsTypeDO.java
+9
-2
RequirementsTypeSubclassDO.java
...lease/entity/requirements/RequirementsTypeSubclassDO.java
+32
-0
RequirementsService.java
...java/com/mmc/csf/release/service/RequirementsService.java
+14
-1
RequirementsServiceImpl.java
...mmc/csf/release/service/impl/RequirementsServiceImpl.java
+136
-13
LicenceBackgroundServiceImpl.java
...se/service/licence/impl/LicenceBackgroundServiceImpl.java
+9
-6
application-dev.yml
release-service/src/main/resources/application-dev.yml
+4
-2
application-local.yml
release-service/src/main/resources/application-local.yml
+73
-71
application-prod.yml
release-service/src/main/resources/application-prod.yml
+3
-2
RequirementsDao.xml
...rc/main/resources/mapper/requirements/RequirementsDao.xml
+187
-20
not-check.yml
release-service/src/main/resources/not-check.yml
+1
-0
没有找到文件。
csf-common/csf-common-model/pom.xml
浏览文件 @
c0b9086a
...
...
@@ -27,7 +27,7 @@
<dependency>
<groupId>
org.hibernate.validator
</groupId>
<artifactId>
hibernate-validator
</artifactId>
<version>
6.0.
7
.Final
</version>
<version>
6.0.
20
.Final
</version>
</dependency>
<dependency>
<groupId>
cn.afterturn
</groupId>
...
...
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/qo/IndustryCaseQO.java
浏览文件 @
c0b9086a
...
...
@@ -23,19 +23,19 @@ import java.util.List;
public
class
IndustryCaseQO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
4615177472593013257L
;
@ApiModelProperty
(
value
=
"关键字"
,
required
=
false
)
@ApiModelProperty
(
value
=
"关键字"
,
required
=
false
,
example
=
"张三"
)
private
String
keyword
;
@ApiModelProperty
(
value
=
"需求类型id"
,
required
=
false
)
@ApiModelProperty
(
value
=
"需求类型id"
,
required
=
false
,
example
=
"1"
)
private
Integer
requirementTypeId
;
@ApiModelProperty
(
value
=
"省份编码"
,
required
=
false
)
@ApiModelProperty
(
value
=
"省份编码"
,
required
=
false
,
example
=
"802323"
)
private
Integer
provinceCode
;
@ApiModelProperty
(
value
=
"市编码"
,
required
=
false
)
@ApiModelProperty
(
value
=
"市编码"
,
required
=
false
,
example
=
"802323"
)
private
Integer
cityCode
;
@ApiModelProperty
(
value
=
"区编码"
,
required
=
false
)
@ApiModelProperty
(
value
=
"区编码"
,
required
=
false
,
example
=
"802323"
)
private
Integer
districtCode
;
@ApiModelProperty
(
value
=
"时间:2023-05-19"
,
required
=
false
)
...
...
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/RequirementsInfoVO.java
浏览文件 @
c0b9086a
package
com
.
mmc
.
csf
.
infomation
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.mmc.csf.release.model.group.Insert
;
import
com.mmc.csf.release.model.group.Update
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -9,8 +10,11 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
...
...
@@ -26,6 +30,69 @@ public class RequirementsInfoVO implements Serializable {
@ApiModelProperty
(
value
=
"id"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"需求发布id"
,
hidden
=
true
)
private
Integer
requirementsInfoId
;
@ApiModelProperty
(
value
=
"需求类型id"
,
example
=
"1"
,
required
=
true
)
@NotNull
(
message
=
"需求类型id不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
Integer
requirementTypeId
;
@ApiModelProperty
(
value
=
"任务标题"
,
example
=
"任务标题001"
,
required
=
true
)
@Size
(
max
=
15
,
message
=
"任务标题限制15个字"
)
@NotBlank
(
message
=
"任务标题不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
String
taskTitle
;
@ApiModelProperty
(
value
=
"任务开始时间"
,
example
=
"2023-07-25"
,
required
=
true
)
@NotNull
(
message
=
"任务开始时间不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
taskStartTime
;
@ApiModelProperty
(
value
=
"任务结束时间"
,
example
=
"2023-07-26"
,
required
=
true
)
@NotNull
(
message
=
"任务开始时间不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
taskEndTime
;
@ApiModelProperty
(
value
=
"任务地址"
,
example
=
"广东省深圳市"
,
required
=
true
)
@NotBlank
(
message
=
"任务地址不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
String
taskAddress
;
@ApiModelProperty
(
value
=
"任务经度"
,
example
=
"23.344324"
,
required
=
true
)
@NotNull
(
message
=
"任务经度不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
Double
longitude
;
@ApiModelProperty
(
value
=
"任务纬度"
,
example
=
"44.344324"
,
required
=
true
)
@NotNull
(
message
=
"任务纬度不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
Double
latitude
;
@ApiModelProperty
(
value
=
"需求描述"
,
example
=
"描述一下"
,
required
=
true
)
@NotNull
(
message
=
"需求描述不能为空"
,
groups
=
{
Insert
.
class
})
@Length
(
max
=
300
,
message
=
"字符过长"
)
private
String
requireDescription
;
@ApiModelProperty
(
value
=
"描述图片"
,
example
=
"http://,http://"
,
required
=
false
)
private
String
requireUrl
;
@ApiModelProperty
(
value
=
"发布者姓名"
,
example
=
"张三"
)
// @NotNull(message = "发布者姓名不能为空", groups = {Insert.class})
private
String
publishName
;
@ApiModelProperty
(
value
=
"发布者电话"
,
example
=
"1892994543"
,
required
=
true
)
@NotNull
(
message
=
"发布者电话不能为空"
,
groups
=
{
Insert
.
class
})
private
String
publishPhone
;
/**
* 后台获取token里面的用户id
*/
@ApiModelProperty
(
value
=
"用户id"
,
hidden
=
true
)
//@NotNull(message = "用户id不能为空", groups = {Insert.class})
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"省份编码"
,
required
=
false
)
//@NotNull(message = "省份编码不能为空", groups = {Insert.class})
private
Integer
provinceCode
;
...
...
@@ -33,28 +100,26 @@ public class RequirementsInfoVO implements Serializable {
private
Integer
cityCode
;
@ApiModelProperty
(
value
=
"区编码"
,
required
=
false
)
private
Integer
districtCode
;
@ApiModelProperty
(
value
=
"需求类型id"
)
@NotNull
(
message
=
"需求类型id不能为空"
,
groups
=
{
Insert
.
class
})
private
Integer
requirementTypeId
;
@ApiModelProperty
(
value
=
"需求类型名称"
)
private
String
requirementTypeName
;
@ApiModelProperty
(
value
=
"用户id"
)
//@NotNull(message = "用户id不能为空", groups = {Insert.class})
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"发布者姓名"
)
@NotNull
(
message
=
"发布者姓名不能为空"
,
groups
=
{
Insert
.
class
})
private
String
publishName
;
@ApiModelProperty
(
value
=
"发布者电话"
)
@NotNull
(
message
=
"发布者电话不能为空"
,
groups
=
{
Insert
.
class
})
private
String
publishPhone
;
@ApiModelProperty
(
value
=
"需求描述"
)
@NotNull
(
message
=
"需求描述不能为空"
,
groups
=
{
Insert
.
class
})
@Length
(
max
=
256
,
message
=
"字符过长"
)
private
String
requireDescription
;
@ApiModelProperty
(
value
=
"是否已解决"
)
private
Boolean
solved
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"更新时间"
)
private
Date
updateTime
;
@ApiModelProperty
(
value
=
"类型名称"
,
hidden
=
true
)
private
String
requirementTypeName
;
@ApiModelProperty
(
value
=
"订单编号"
)
private
String
orderNumber
;
@ApiModelProperty
(
value
=
"应支付金额 单位元"
,
example
=
"1.00"
)
private
BigDecimal
paramMoney
;
@ApiModelProperty
(
value
=
"发布者id"
,
example
=
"1"
,
required
=
true
)
private
Integer
publishAccountId
;
@ApiModelProperty
(
value
=
"发布者订单编号"
)
private
String
publisherNumber
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/RequirementsTypeSubclassVO.java
0 → 100644
浏览文件 @
c0b9086a
package
com
.
mmc
.
csf
.
infomation
.
vo
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author small
* @Date 2023/7/25 9:56
* @Version 1.0
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public
class
RequirementsTypeSubclassVO
{
/**
* 二级分类的id
*/
private
Integer
id
;
/**
* 一级分类的id
*/
private
Integer
requirementsTypeId
;
/**
* 二级分类的名称
*/
private
String
name
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/RequirementsTypeVO.java
浏览文件 @
c0b9086a
...
...
@@ -7,7 +7,7 @@ import lombok.Data;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.
Date
;
import
java.util.
List
;
/**
* @author: zj
...
...
@@ -23,4 +23,9 @@ public class RequirementsTypeVO implements Serializable {
private
Integer
id
;
@ApiModelProperty
(
value
=
"需求名称"
)
private
String
typeName
;
/**
* 二级分类
*/
private
List
<
RequirementsTypeSubclassVO
>
typeSubclassList
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/TenderApplyVO.java
浏览文件 @
c0b9086a
...
...
@@ -34,4 +34,6 @@ public class TenderApplyVO implements Serializable {
@ApiModelProperty
(
value
=
"联系电话"
,
hidden
=
true
)
//@NotNull(message = "联系电话不能为空", groups = {Create.class})
private
String
phoneNum
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/release/model/group/Insert.java
浏览文件 @
c0b9086a
package
com
.
mmc
.
csf
.
release
.
model
.
group
;
import
javax.validation.groups.Default
;
/**
* @author 作者 dahang
* @version 创建时间:2022年7月20日
* @explain 类说明
*/
public
interface
Insert
{
public
interface
Insert
extends
Default
{
}
csf-common/csf-common-util/pom.xml
浏览文件 @
c0b9086a
...
...
@@ -83,13 +83,6 @@
<version>
2.9.0
</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.github.wxpay/wxpay-sdk -->
<dependency>
<groupId>
com.github.wxpay
</groupId>
<artifactId>
wxpay-sdk
</artifactId>
<version>
0.0.3
</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>
javax.servlet
</groupId>
...
...
csf-common/csf-common-util/src/main/java/com/mmc/csf/common/util/web/ResultEnum.java
浏览文件 @
c0b9086a
...
...
@@ -404,7 +404,11 @@ public enum ResultEnum implements BaseErrorInfoInterface {
// 论坛
DYNAMIC_SENSITIVE_INFO
(
"50100"
,
"发布信息涉及敏感信息!"
),
THE_ORGANIZATION_NAME_ALREADY_EXISTS
(
"60001"
,
"机构名称已存在"
),
YOU_CANNOT_MODIFY_REQUIREMENTS_PUBLISHED_BY_OTHERS
(
"60003"
,
"不能修改他(她)人发布的需求"
),
YOU_CANNOT_DELETE_REQUIREMENTS_POSTED_BY_OTHERS
(
"60004"
,
"不能删除他(她)人发布的需求"
),
THE_THIRD_PARTY_INTERFACE_IS_BEING_UPDATED
(
"60005"
,
"第三方接口在更新请联系开发人员"
),
THREE_FIELDS_CAN_BE_REPEATED
(
"60002"
,
"机型、等级、类型存在重复"
);
/**
* 错误码
*
...
...
kustomization/overlays/dev/kustomization.yaml
浏览文件 @
c0b9086a
...
...
@@ -18,4 +18,4 @@ patches:
images
:
-
name
:
REGISTRY/NAMESPACE/IMAGE:TAG
newName
:
mmc-registry.cn-shenzhen.cr.aliyuncs.com/sharefly-dev/ims
newTag
:
8
9096d93770e8076a81d07f0386daff9a303bd14
newTag
:
8
d6510aa5d90515a62b0293d79641358521815c9
release-service/src/main/java/com/mmc/csf/release/controller/RequirementsController.java
浏览文件 @
c0b9086a
...
...
@@ -6,12 +6,9 @@ import com.mmc.csf.infomation.vo.RequirementsInfoVO;
import
com.mmc.csf.infomation.vo.RequirementsTypeVO
;
import
com.mmc.csf.release.model.group.Insert
;
import
com.mmc.csf.release.model.group.Page
;
import
com.mmc.csf.release.model.group.
Query
;
import
com.mmc.csf.release.model.group.
Update
;
import
com.mmc.csf.release.service.RequirementsService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiResponse
;
import
io.swagger.annotations.ApiResponses
;
import
io.swagger.annotations.*
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -25,44 +22,75 @@ import javax.servlet.http.HttpServletRequest;
@Api
(
tags
=
{
"需求相关"
})
@RestController
@RequestMapping
(
"/requirements/"
)
public
class
RequirementsController
extends
BaseController
{
public
class
RequirementsController
extends
BaseController
{
@Autowired
private
RequirementsService
requirementsService
;
@ApiOperation
(
value
=
"需求类型"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RequirementsTypeVO
.
class
)
})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RequirementsTypeVO
.
class
)
})
@GetMapping
(
"listType"
)
public
ResultBody
listType
(
)
{
return
requirementsService
.
listType
();
public
ResultBody
listType
(
@RequestParam
(
value
=
"1"
,
required
=
false
)
Integer
id
)
{
return
requirementsService
.
listType
(
id
);
}
@ApiOperation
(
value
=
"需求发布"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@ApiOperation
(
value
=
"
小程序——
需求发布"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@PostMapping
(
"publish"
)
public
ResultBody
publish
(
@
Validated
(
value
=
{
Insert
.
class
})
@RequestBody
RequirementsInfoVO
requirementsInfoVO
,
HttpServletRequest
request
)
{
public
ResultBody
publish
(
@
RequestBody
@Validated
(
value
=
{
Insert
.
class
})
RequirementsInfoVO
requirementsInfoVO
,
HttpServletRequest
request
)
{
requirementsInfoVO
.
setUserAccountId
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
return
requirementsService
.
publish
(
requirementsInfoVO
,
request
);
}
@ApiOperation
(
value
=
"小程序-编辑——需求发布"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
"updatePublish"
)
public
ResultBody
updatePublish
(
@RequestBody
@Validated
(
value
=
{
Update
.
class
})
RequirementsInfoVO
requirementsInfoVO
,
HttpServletRequest
request
)
{
requirementsInfoVO
.
setUserAccountId
(
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
return
requirementsService
.
updatePublish
(
requirementsInfoVO
,
request
);
}
@ApiOperation
(
value
=
"小程序-删除——需求发布"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"deletePublish"
)
public
ResultBody
deletePublish
(
@ApiParam
(
value
=
"需求发布id"
,
required
=
true
)
@RequestParam
Integer
id
,
HttpServletRequest
request
)
{
return
requirementsService
.
deletePublish
(
id
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
@ApiOperation
(
value
=
"小程序-列表——需求发布"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"appPublishList"
)
public
ResultBody
<
RequirementsInfoVO
>
appPublishList
()
{
return
requirementsService
.
appPublishList
();
}
@ApiOperation
(
value
=
"小程序-详情——需求发布"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@GetMapping
(
"detailPublish"
)
public
ResultBody
<
RequirementsInfoVO
>
detailPublish
(
@ApiParam
(
value
=
"需求发布id"
,
required
=
true
)
@RequestParam
Integer
id
,
HttpServletRequest
request
)
{
return
requirementsService
.
detailPublish
(
id
,
request
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
@ApiOperation
(
value
=
"需求发布列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RequirementsInfoVO
.
class
)
})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RequirementsInfoVO
.
class
)
})
@PostMapping
(
"listPublishPage"
)
public
ResultBody
listPublishPage
(
@Validated
(
value
=
{
Page
.
class
})
@RequestBody
IndustryCaseQO
industryCaseQO
,
HttpServletRequest
request
){
public
ResultBody
listPublishPage
(
@Validated
(
value
=
{
Page
.
class
})
@RequestBody
IndustryCaseQO
industryCaseQO
,
HttpServletRequest
request
)
{
return
requirementsService
.
listPublishPage
(
industryCaseQO
,
request
);
}
@ApiOperation
(
value
=
"需求已解决"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@GetMapping
(
"solveRequire"
)
public
ResultBody
solveRequire
(
@RequestParam
Integer
requirementsInfoId
,
HttpServletRequest
request
){
public
ResultBody
solveRequire
(
@RequestParam
Integer
requirementsInfoId
,
HttpServletRequest
request
)
{
return
requirementsService
.
solveRequire
(
requirementsInfoId
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
@ApiOperation
(
value
=
"删除需求"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)
})
@GetMapping
(
"deleteRequire"
)
public
ResultBody
deleteRequire
(
@RequestParam
Integer
requirementsInfoId
,
HttpServletRequest
request
){
public
ResultBody
deleteRequire
(
@RequestParam
Integer
requirementsInfoId
,
HttpServletRequest
request
)
{
return
requirementsService
.
deleteRequire
(
requirementsInfoId
,
this
.
getUserLoginInfoFromRedis
(
request
).
getUserAccountId
());
}
...
...
release-service/src/main/java/com/mmc/csf/release/dao/RequirementsDao.java
浏览文件 @
c0b9086a
...
...
@@ -15,30 +15,35 @@ import java.util.List;
public
interface
RequirementsDao
{
/**
* 需求类型列表
*
* @return
*/
List
<
RequirementsTypeDO
>
listType
();
/**
* 添加需求
*
* @param requirementsInfoDO
*/
void
addRequirementsInfo
(
RequirementsInfoDO
requirementsInfoDO
);
/**
* 获取需求
*
* @param requirementsInfoId
*/
RequirementsInfoDO
getRequirementsInfoById
(
Integer
requirementsInfoId
);
/**
* 解决需求
*
* @param requirementsInfoId
*/
void
solveRequire
(
Integer
requirementsInfoId
);
/**
* 需求发布的数量
*
* @param industryCaseQO
* @return
*/
...
...
@@ -46,6 +51,7 @@ public interface RequirementsDao {
/**
* 需求发布列表
*
* @param industryCaseQO
* @return
*/
...
...
@@ -53,7 +59,22 @@ public interface RequirementsDao {
/**
* 删除需求
*
* @param requirementsInfoId
*/
void
removeRequire
(
Integer
requirementsInfoId
);
List
<
RequirementsTypeDO
>
listTypeReq
(
Integer
id
);
Integer
findPublish
(
RequirementsInfoDO
requirementsInfoDO
);
void
updatePublish
(
RequirementsInfoDO
requirementsInfoDO
);
Integer
findPublishCount
(
Integer
id
,
Integer
userAccountId
);
void
requirementsDao
(
Integer
id
);
List
<
RequirementsInfoDO
>
appPublishList
();
RequirementsInfoDO
detailPublish
(
Integer
id
);
}
release-service/src/main/java/com/mmc/csf/release/entity/requirements/RequirementsInfoDO.java
浏览文件 @
c0b9086a
package
com
.
mmc
.
csf
.
release
.
entity
.
requirements
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.mmc.csf.infomation.vo.RequirementsInfoVO
;
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.Data
;
import
lombok.NoArgsConstructor
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
import
java.io.Serializable
;
import
java.util.Date
;
...
...
@@ -31,13 +38,59 @@ public class RequirementsInfoDO implements Serializable {
private
Boolean
solved
;
private
Date
createTime
;
private
Date
updateTime
;
@ApiModelProperty
(
value
=
"任务标题"
,
example
=
"任务标题001"
,
required
=
true
)
@NotBlank
(
message
=
"任务标题不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
@Size
(
max
=
15
,
message
=
"任务标题限制15个字"
)
private
String
taskTitle
;
public
RequirementsInfoVO
buildRequirementsInfoVO
(){
@ApiModelProperty
(
value
=
"任务开始时间"
,
example
=
"2023-07-25"
,
required
=
true
)
@NotNull
(
message
=
"任务开始时间不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
taskStartTime
;
@ApiModelProperty
(
value
=
"任务结束时间"
,
example
=
"2023-07-26"
,
required
=
true
)
@NotNull
(
message
=
"任务开始时间不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
Date
taskEndTime
;
@ApiModelProperty
(
value
=
"任务地址"
,
example
=
"广东省深圳市"
,
required
=
true
)
@NotBlank
(
message
=
"任务地址不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
String
taskAddress
;
@ApiModelProperty
(
value
=
"任务经度"
,
example
=
"23.344324"
,
required
=
true
)
@NotNull
(
message
=
"任务经度不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
Double
longitude
;
@ApiModelProperty
(
value
=
"任务纬度"
,
example
=
"44.344324"
,
required
=
true
)
@NotNull
(
message
=
"任务纬度不能为空"
,
groups
=
{
Insert
.
class
,
Update
.
class
})
private
Double
latitude
;
@ApiModelProperty
(
value
=
"描述图片"
,
example
=
"http://,http://"
,
required
=
false
)
private
String
requireUrl
;
@ApiModelProperty
(
value
=
"类型名称"
)
private
String
requirementTypeName
;
@ApiModelProperty
(
value
=
"发布者订单编号"
)
private
String
publisherNumber
;
public
RequirementsInfoVO
buildRequirementsInfoVO
()
{
return
RequirementsInfoVO
.
builder
().
id
(
this
.
id
).
requirementTypeId
(
this
.
requirementTypeId
).
userAccountId
(
this
.
userAccountId
).
publishName
(
this
.
publishName
)
.
publishPhone
(
this
.
publishPhone
).
requireDescription
(
this
.
requireDescription
).
solved
(
this
.
solved
).
createTime
(
this
.
createTime
).
updateTime
(
this
.
updateTime
).
build
();
.
publishPhone
(
this
.
publishPhone
).
requireDescription
(
this
.
requireDescription
).
solved
(
this
.
solved
).
taskStartTime
(
this
.
taskStartTime
).
taskEndTime
(
this
.
taskEndTime
)
.
taskTitle
(
this
.
taskTitle
)
.
taskAddress
(
this
.
taskAddress
)
.
longitude
(
this
.
longitude
)
.
latitude
(
this
.
latitude
)
.
requirementTypeName
(
this
.
requirementTypeName
)
.
publisherNumber
(
this
.
publisherNumber
)
.
requireUrl
(
this
.
requireUrl
).
build
();
}
public
RequirementsInfoDO
(
RequirementsInfoVO
requirementsInfoVO
){
public
RequirementsInfoDO
(
RequirementsInfoVO
requirementsInfoVO
)
{
this
.
id
=
requirementsInfoVO
.
getId
();
this
.
requirementTypeId
=
requirementsInfoVO
.
getRequirementTypeId
();
this
.
userAccountId
=
requirementsInfoVO
.
getUserAccountId
();
...
...
@@ -47,6 +100,13 @@ public class RequirementsInfoDO implements Serializable {
this
.
provinceCode
=
requirementsInfoVO
.
getProvinceCode
();
this
.
cityCode
=
requirementsInfoVO
.
getCityCode
();
this
.
districtCode
=
requirementsInfoVO
.
getDistrictCode
();
this
.
taskStartTime
=
requirementsInfoVO
.
getTaskStartTime
();
this
.
taskEndTime
=
requirementsInfoVO
.
getTaskEndTime
();
this
.
taskTitle
=
requirementsInfoVO
.
getTaskTitle
();
this
.
taskAddress
=
requirementsInfoVO
.
getTaskAddress
();
this
.
longitude
=
requirementsInfoVO
.
getLongitude
();
this
.
latitude
=
requirementsInfoVO
.
getLatitude
();
this
.
requireUrl
=
requirementsInfoVO
.
getRequireUrl
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/requirements/RequirementsTypeDO.java
浏览文件 @
c0b9086a
package
com
.
mmc
.
csf
.
release
.
entity
.
requirements
;
import
com.mmc.csf.infomation.vo.RequirementsTypeSubclassVO
;
import
com.mmc.csf.infomation.vo.RequirementsTypeVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
...
...
@@ -7,6 +8,7 @@ import lombok.NoArgsConstructor;
import
java.io.Serializable
;
import
java.util.Date
;
import
java.util.List
;
/**
* @description 需求类型 用枚举
...
...
@@ -21,9 +23,14 @@ public class RequirementsTypeDO implements Serializable {
private
Integer
id
;
private
String
typeName
;
private
Date
createTime
;
/**
* 二级分类
*/
private
List
<
RequirementsTypeSubclassVO
>
typeSubclassList
;
public
RequirementsTypeVO
buildRequirementsTypeVO
(){
return
RequirementsTypeVO
.
builder
().
id
(
this
.
id
).
typeName
(
this
.
typeName
).
build
();
public
RequirementsTypeVO
buildRequirementsTypeVO
()
{
return
RequirementsTypeVO
.
builder
().
id
(
this
.
id
).
typeName
(
this
.
typeName
).
typeSubclassList
(
this
.
typeSubclassList
).
build
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/requirements/RequirementsTypeSubclassDO.java
0 → 100644
浏览文件 @
c0b9086a
package
com
.
mmc
.
csf
.
release
.
entity
.
requirements
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
/**
* @Author small
* @Date 2023/7/25 9:52
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public
class
RequirementsTypeSubclassDO
{
/**
* 二级分类的id
*/
private
Integer
id
;
/**
* 一级分类的id
*/
private
Integer
requirementsTypeId
;
/**
* 二级分类的名称
*/
private
String
name
;
}
release-service/src/main/java/com/mmc/csf/release/service/RequirementsService.java
浏览文件 @
c0b9086a
...
...
@@ -13,12 +13,14 @@ import javax.servlet.http.HttpServletRequest;
public
interface
RequirementsService
{
/**
* 需求类型列表
*
* @return
*/
ResultBody
listType
();
ResultBody
listType
(
Integer
id
);
/**
* 需求发布
*
* @param requirementsInfoVO
* @param request
* @return
...
...
@@ -27,6 +29,7 @@ public interface RequirementsService {
/**
* 解决需求
*
* @param requirementsInfoId
* @param userAccountId
* @return
...
...
@@ -35,6 +38,7 @@ public interface RequirementsService {
/**
* 需求发布列表
*
* @param industryCaseQO
* @param request
* @return
...
...
@@ -43,9 +47,18 @@ public interface RequirementsService {
/**
* 删除需求
*
* @param requirementsInfoId
* @param userAccountId
* @return
*/
ResultBody
deleteRequire
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
ResultBody
updatePublish
(
RequirementsInfoVO
requirementsInfoVO
,
HttpServletRequest
request
);
ResultBody
deletePublish
(
Integer
id
,
Integer
userAccountId
);
ResultBody
appPublishList
();
ResultBody
detailPublish
(
Integer
id
,
HttpServletRequest
request
,
Integer
userAccountId
);
}
release-service/src/main/java/com/mmc/csf/release/service/impl/RequirementsServiceImpl.java
浏览文件 @
c0b9086a
package
com
.
mmc
.
csf
.
release
.
service
.
impl
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
javax.servlet.http.HttpServletRequest
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
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.common.util.web.ResultEnum
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.vo.RequirementsInfoVO
;
import
com.mmc.csf.infomation.vo.RequirementsTypeVO
;
...
...
@@ -20,8 +14,23 @@ import com.mmc.csf.release.entity.requirements.RequirementsTypeDO;
import
com.mmc.csf.release.feign.UserAppApi
;
import
com.mmc.csf.release.service.RequirementsService
;
import
com.mmc.csf.release.util.RestTemplateUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.data.redis.core.StringRedisTemplate
;
import
org.springframework.http.*
;
import
org.springframework.stereotype.Service
;
import
org.springframework.web.client.RestClientException
;
import
org.springframework.web.client.RestTemplate
;
import
javax.servlet.http.HttpServletRequest
;
import
java.math.BigDecimal
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Random
;
import
java.util.stream.Collectors
;
/**
* @author: zj
...
...
@@ -39,9 +48,18 @@ public class RequirementsServiceImpl implements RequirementsService {
@Autowired
private
RestTemplateUtil
restTemplateUtil
;
@Autowired
private
RestTemplate
restTemplate
;
@Value
(
"${iuav.omsapp.url}"
)
private
String
omsApp
;
@Autowired
private
StringRedisTemplate
stringRedisTemplate
;
@Override
public
ResultBody
listType
()
{
List
<
RequirementsTypeDO
>
requirementsTypeDOList
=
requirementsDao
.
listType
(
);
public
ResultBody
listType
(
Integer
id
)
{
List
<
RequirementsTypeDO
>
requirementsTypeDOList
=
requirementsDao
.
listType
Req
(
id
);
List
<
RequirementsTypeVO
>
requirementsTypeVOList
=
requirementsTypeDOList
.
stream
().
map
(
RequirementsTypeDO:
:
buildRequirementsTypeVO
).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
requirementsTypeVOList
);
}
...
...
@@ -53,15 +71,20 @@ public class RequirementsServiceImpl implements RequirementsService {
// if (userAccountSimpleDTO == null || !userAccountSimpleDTO.getCompanyAuthStatus().toString().equals("1")){
// return ResultBody.error(ResultEnum.COMPANY_NOT_VERIFY_ERROR);
// }
RequirementsInfoDO
requirementsInfoDO
=
new
RequirementsInfoDO
(
requirementsInfoVO
);
requirementsInfoDO
.
setPublisherNumber
(
randomOrderCode
());
requirementsDao
.
addRequirementsInfo
(
requirementsInfoDO
);
return
ResultBody
.
success
();
}
HttpHeaders
headers
=
new
HttpHeaders
();
@Override
public
ResultBody
solveRequire
(
Integer
requirementsInfoId
,
Integer
userAccountId
)
{
RequirementsInfoDO
requirementsInfoDO
=
requirementsDao
.
getRequirementsInfoById
(
requirementsInfoId
);
if
(!
requirementsInfoDO
.
getUserAccountId
().
toString
().
equals
(
userAccountId
.
toString
())){
if
(!
requirementsInfoDO
.
getUserAccountId
().
toString
().
equals
(
userAccountId
.
toString
()))
{
return
ResultBody
.
error
(
"无权限"
);
}
requirementsDao
.
solveRequire
(
requirementsInfoId
);
...
...
@@ -91,4 +114,104 @@ public class RequirementsServiceImpl implements RequirementsService {
requirementsDao
.
removeRequire
(
requirementsInfoId
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
updatePublish
(
RequirementsInfoVO
requirementsInfoVO
,
HttpServletRequest
request
)
{
RequirementsInfoDO
requirementsInfoDO
=
new
RequirementsInfoDO
(
requirementsInfoVO
);
Integer
publish
=
requirementsDao
.
findPublish
(
requirementsInfoDO
);
if
(
publish
==
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
YOU_CANNOT_MODIFY_REQUIREMENTS_PUBLISHED_BY_OTHERS
);
}
requirementsDao
.
updatePublish
(
requirementsInfoDO
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
deletePublish
(
Integer
id
,
Integer
userAccountId
)
{
Integer
publish
=
requirementsDao
.
findPublishCount
(
id
,
userAccountId
);
if
(
publish
==
0
)
{
return
ResultBody
.
error
(
ResultEnum
.
YOU_CANNOT_DELETE_REQUIREMENTS_POSTED_BY_OTHERS
);
}
requirementsDao
.
requirementsDao
(
id
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
appPublishList
()
{
List
<
RequirementsInfoDO
>
requirementsInfoDOS
=
requirementsDao
.
appPublishList
();
List
<
RequirementsInfoVO
>
collect
=
requirementsInfoDOS
.
stream
().
map
(
RequirementsInfoDO:
:
buildRequirementsInfoVO
).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
collect
);
}
@Override
public
ResultBody
detailPublish
(
Integer
id
,
HttpServletRequest
request
,
Integer
userAccountId
)
{
RequirementsInfoDO
requirementsInfoDO
=
requirementsDao
.
detailPublish
(
id
);
RequirementsInfoVO
requirementsInfoVO
=
requirementsInfoDO
.
buildRequirementsInfoVO
();
if
(
userAccountId
.
equals
(
requirementsInfoVO
.
getUserAccountId
()))
{
requirementsInfoVO
.
setParamMoney
(
BigDecimal
.
valueOf
(
0.00
));
}
else
if
(!
userAccountId
.
equals
(
requirementsInfoVO
.
getUserAccountId
()))
{
requirementsInfoVO
.
setParamMoney
(
BigDecimal
.
valueOf
(
0.10
));
}
requirementsInfoVO
.
setOrderNumber
(
randomOrderCode
());
requirementsInfoVO
.
setPublishAccountId
(
requirementsInfoDO
.
getUserAccountId
());
requirementsInfoVO
.
setRequirementsInfoId
(
requirementsInfoDO
.
getId
());
//已经支付
String
s
=
stringRedisTemplate
.
opsForValue
().
get
(
requirementsInfoDO
.
getId
().
toString
());
RequirementsInfoVO
orderVO
=
JSON
.
parseObject
(
s
,
RequirementsInfoVO
.
class
);
if
(
s
!=
null
)
{
if
(
requirementsInfoDO
.
getId
().
equals
(
orderVO
.
getRequirementsInfoId
())
&&
userAccountId
.
equals
(
orderVO
.
getUserAccountId
()))
{
requirementsInfoVO
.
setParamMoney
(
new
BigDecimal
(
0
));
requirementsInfoVO
.
setOrderNumber
(
orderVO
.
getOrderNumber
());
requirementsInfoVO
.
setPublishPhone
(
""
);
return
ResultBody
.
success
(
requirementsInfoVO
);
}
}
//生成
ResultBody
resultBody
=
releaseOrder
(
requirementsInfoVO
,
request
.
getHeader
(
"token"
));
if
(
resultBody
.
getCode
().
equals
(
ResultEnum
.
THE_THIRD_PARTY_INTERFACE_IS_BEING_UPDATED
.
getResultCode
()))
{
return
resultBody
;
}
requirementsInfoVO
.
setPublishPhone
(
""
);
return
ResultBody
.
success
(
requirementsInfoVO
);
}
public
ResultBody
releaseOrder
(
RequirementsInfoVO
requirementsInfoVO
,
String
token
)
{
HttpHeaders
headers
=
new
HttpHeaders
();
headers
.
setContentType
(
MediaType
.
APPLICATION_JSON
);
headers
.
add
(
"token"
,
token
);
HttpEntity
<
String
>
entity
=
new
HttpEntity
<>(
JSONObject
.
toJSONString
(
requirementsInfoVO
),
headers
);
ResponseEntity
<
Object
>
exchange
=
null
;
try
{
exchange
=
restTemplate
.
exchange
(
omsApp
+
"releaseOrder/publish"
,
HttpMethod
.
POST
,
entity
,
Object
.
class
);
}
catch
(
RestClientException
e
)
{
return
ResultBody
.
error
(
ResultEnum
.
THE_THIRD_PARTY_INTERFACE_IS_BEING_UPDATED
);
}
return
ResultBody
.
success
();
}
public
String
randomOrderCode
()
{
SimpleDateFormat
dmDate
=
new
SimpleDateFormat
(
"yyyyMMddHHmmss"
);
String
ranData
=
getRandom
(
6
);
Date
date
=
new
Date
();
String
dateRan
=
dmDate
.
format
(
date
);
String
xsCode
=
"R"
+
dateRan
+
ranData
;
if
(
xsCode
.
length
()
<
24
)
{
xsCode
=
xsCode
+
0
;
}
return
xsCode
;
}
public
String
getRandom
(
int
len
)
{
Random
r
=
new
Random
();
StringBuilder
rs
=
new
StringBuilder
();
for
(
int
i
=
0
;
i
<
len
;
i
++)
{
rs
.
append
(
r
.
nextInt
(
10
));
}
return
rs
.
toString
();
}
}
release-service/src/main/java/com/mmc/csf/release/service/licence/impl/LicenceBackgroundServiceImpl.java
浏览文件 @
c0b9086a
...
...
@@ -67,9 +67,9 @@ public class LicenceBackgroundServiceImpl implements LicenceBackgroundService {
return
ResultBody
.
error
(
ResultEnum
.
THREE_FIELDS_CAN_BE_REPEATED
);
}
}
// licenceBackgroundDao.insertLicenseOrgTraining(organizationsDO.getOrgTrainingIds(), organizationsDO.getId());
// licenceBackgroundDao.insertLicenseOrgTraining(organizationsDO.getOrgTrainingIds(), organizationsDO.getId());
}
if
(
organizations
.
getTrainingProgramsVOS
()
==
null
||
organizations
.
getTrainingProgramsVOS
().
size
()==
0
)
{
if
(
organizations
.
getTrainingProgramsVOS
()
==
null
||
organizations
.
getTrainingProgramsVOS
().
size
()
==
0
)
{
licenceBackgroundDao
.
insertOrganizations
(
organizationsDO
);
}
return
ResultBody
.
success
();
...
...
@@ -97,7 +97,7 @@ public class LicenceBackgroundServiceImpl implements LicenceBackgroundService {
hashMap
.
put
(
trainingProgramsVO
,
pro
++);
return
ResultBody
.
error
(
ResultEnum
.
THREE_FIELDS_CAN_BE_REPEATED
);
}
// licenceBackgroundDao.removeOrganizations(organizations.getId());
// licenceBackgroundDao.removeOrganizations(organizations.getId());
programsDO
=
new
LicenseTrainingProgramsDO
(
trainingProgramsVO
);
Integer
id
=
organizations
.
getId
();
programsDO
.
setOrgId
(
id
);
...
...
@@ -107,9 +107,9 @@ public class LicenceBackgroundServiceImpl implements LicenceBackgroundService {
}
licenceBackgroundDao
.
updateOrganizations
(
organizationsDO
);
// licenceBackgroundDao.insertLicenseOrgTraining(organizationsDO.getOrgTrainingIds(), organizationsDO.getId());
// licenceBackgroundDao.insertLicenseOrgTraining(organizationsDO.getOrgTrainingIds(), organizationsDO.getId());
}
if
(
organizations
.
getTrainingProgramsVOS
()
==
null
||
organizations
.
getTrainingProgramsVOS
().
size
()==
0
)
{
if
(
organizations
.
getTrainingProgramsVOS
()
==
null
||
organizations
.
getTrainingProgramsVOS
().
size
()
==
0
)
{
licenceBackgroundDao
.
updateOrganizations
(
organizationsDO
);
}
return
ResultBody
.
success
();
...
...
@@ -159,7 +159,10 @@ public class LicenceBackgroundServiceImpl implements LicenceBackgroundService {
}
return true;
}).collect(Collectors.toList());*/
if
(
organizationsQO
.
getModelsId
()
!=
null
||
organizationsQO
.
getGradeId
()
!=
null
||
organizationsQO
.
getTypeId
()
!=
null
)
{
orgList
=
orgList
.
stream
().
filter
(
t
->
t
.
getProgramsDOList
()
!=
null
).
collect
(
Collectors
.
toList
());
}
List
<
LicenseOrganizationsDTO
>
subList
=
orgList
.
stream
().
skip
((
pageNo
-
1
)
*
organizationsQO
.
getPageSize
()).
limit
(
organizationsQO
.
getPageSize
()).
collect
(
Collectors
.
toList
());
...
...
release-service/src/main/resources/application-dev.yml
浏览文件 @
c0b9086a
...
...
@@ -147,6 +147,9 @@ iuav:
url
:
http://cms-svc:35150
pmsapp
:
url
:
http://pms-svc:8099
omsapp
:
url
:
https://test.iuav.shop/oms/
#mmc:
# appid: 80001
...
...
@@ -174,4 +177,4 @@ iuav:
# endpoints:
# web:
# exposure:
# include: "*"
\ No newline at end of file
# include: "*"
release-service/src/main/resources/application-local.yml
浏览文件 @
c0b9086a
...
...
@@ -15,35 +15,34 @@ spring:
password
:
IUAV_DEV@2023&MYSQL
# Druid数据源配置
type
:
com.alibaba.druid.pool.DruidDataSource
druid
:
initial-size
:
1
#初始化连接池大小
min-idle
:
1
#最小大小
max-active
:
1
#最大大小
max-wait
:
60000
#获取连接时最大等待时间,单位毫秒
time-between-eviction-runs-millis
:
60000
#配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
min-evictable-idle-time-millis
:
300000
#配置一个连接在池中最小生存的时间,单位是毫秒
validation-query
:
SELECT 1 FROM DUAL
#用来检测连接是否有效的sql
test-while-idle
:
true
#申请连接的时候检测,建议配置为true,不影响性能,并且保证安全性
testOnBorrow
:
false
#获取连接时执行检测,建议关闭,影响性能
testOnReturn
:
false
#归还连接时执行检测,建议关闭,影响性能
pool-prepared-statements
:
false
#是否开启PSCache,PSCache对支持游标的数据库性能提升巨大,oracle建议开启,mysql下建议关闭
filters
:
stat,wall
#配置扩展插件,常用的插件有=>stat:监控统计 log4j:日志 wall:防御sql注入
filter
:
wall
:
config
:
multi-statement-allow
:
true
db-type
:
mysql
enabled
:
true
connection-properties
:
druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
#打开慢sql记录和延迟时间
web-stat-filter
:
url-pattern
:
/*
exclusions
:
"
*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
enabled
:
true
stat-view-servlet
:
enabled
:
true
login-username
:
druid
login-password
:
druid
#cloud
# druid:
# initial-size: 1 #初始化连接池大小
# min-idle: 1 #最小大小
# max-active: 1 #最大大小
# max-wait: 60000 #获取连接时最大等待时间,单位毫秒
# time-between-eviction-runs-millis: 60000 #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
# min-evictable-idle-time-millis: 300000 #配置一个连接在池中最小生存的时间,单位是毫秒
# validation-query: SELECT 1 FROM DUAL #用来检测连接是否有效的sql
# test-while-idle: true #申请连接的时候检测,建议配置为true,不影响性能,并且保证安全性
# testOnBorrow: false #获取连接时执行检测,建议关闭,影响性能
# testOnReturn: false #归还连接时执行检测,建议关闭,影响性能
# pool-prepared-statements: false #是否开启PSCache,PSCache对支持游标的数据库性能提升巨大,oracle建议开启,mysql下建议关闭
# filters: stat,wall #配置扩展插件,常用的插件有=>stat:监控统计 log4j:日志 wall:防御sql注入
# filter:
# wall:
# config:
# multi-statement-allow: true
# db-type: mysql
# enabled: true
# connection-properties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000 #打开慢sql记录和延迟时间
# web-stat-filter:
# url-pattern: /*
# exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*"
# enabled: true
# stat-view-servlet:
# enabled: true
# login-username: druid
# login-password: druid
cloud
:
loadbalancer
:
retry
:
...
...
@@ -53,8 +52,7 @@ spring:
#Redis
redis
:
database
:
1
host
:
r-wz9ke310fs684hacn1pd.redis.rds.aliyuncs.com
password
:
MMC@2022&REDIS
host
:
127.0.0.1
port
:
6379
#连接池
lettuce
:
...
...
@@ -69,13 +67,25 @@ spring:
#初始化最小
min-idle
:
1
#rabbitMQ
#rabbitMQ
rabbitmq
:
host
:
amqp-cn-zvp2ozhnj001.cn-shenzhen.amqp-0.net.mq.amqp.aliyuncs.com
port
:
5672
username
:
MjphbXFwLWNuLXp2cDJvemhuajAwMTpMVEFJNEZ6Q3B5ckEzM1BlZ254V1M2WFY=
password
:
${RABBITMQ_PASSWORD}
password
:
RTg3OUMxQzk4NzU0NDQ4RkQ1RDg4MkEzQjY4M0M3MkQxOTM2QkEyNDoxNjUyNDA4NDk0NDg4
virtual-host
:
/
wx
:
sub
:
appid
:
wx5c6a105a0ddca4c5
secret
:
96c75255dd26f82f8d55e15b59e101c7
app
:
id
:
wx18b7883acd204278
secret
:
28afe74ba373830237a8133a7431ee82
miniprogram-state
:
trial
env-version
:
trial
port
:
user
#eureka eureka.client.register-with-eureka=true
eureka
:
instance
:
...
...
@@ -104,48 +114,40 @@ mybatis:
configuration
:
map-underscore-to-camel-case
:
true
#feign
feign
:
client
:
config
:
default
:
connect-timeout
:
3000
read-timeout
:
6000
#Okhttp参数配置
httpclient
:
enabled
:
false
okhttp
:
enabled
:
true
hystrix
:
enabled
:
true
hystrix
:
command
:
default
:
execution
:
isolation
:
thread
:
# hystrix 超时时间
timeoutInMilliseconds
:
9000
#ribbon-ribbo和hystrix时间取最小的生效,feign和ribbon的超时时间只能选其一生效feign优先级高于ribbon
ribbon
:
okhttp
:
enabled
:
true
iuav
:
userapp
:
url
:
http://
127.0.0.1
:35150
url
:
http://
cms-svc
:35150
pmsapp
:
url
:
http://127.0.0.1:8099
wx
:
sub
:
appid
:
wx5c6a105a0ddca4c5
secret
:
96c75255dd26f82f8d55e15b59e101c7
app
:
id
:
wx18b7883acd204278
secret
:
28afe74ba373830237a8133a7431ee82
miniprogram-state
:
trial
env-version
:
trial
##feign
#feign:
# client:
# config:
# default:
# connect-timeout: 3000
# read-timeout: 6000
# #Okhttp参数配置
# httpclient:
# enabled: false
# okhttp:
# enabled: true
# hystrix:
# enabled: true
#hystrix:
# command:
# default:
# execution:
# isolation:
# thread:
# # hystrix 超时时间
# timeoutInMilliseconds: 9000
##ribbon-ribbo和hystrix时间取最小的生效,feign和ribbon的超时时间只能选其一生效feign优先级高于ribbon
#ribbon:
# okhttp:
# enabled: true
url
:
http://pms-svc:8099
omsapp
:
url
:
http://localhost:8077/oms/
#mmc:
# appid: 80001
...
...
release-service/src/main/resources/application-prod.yml
浏览文件 @
c0b9086a
...
...
@@ -145,6 +145,8 @@ iuav:
url
:
http://cms-svc:35150
pmsapp
:
url
:
http://pms-svc:8099
omsapp
:
url
:
https://www.iuav.shop/oms/
#mmc:
# appid: 80001
...
...
@@ -172,4 +174,4 @@ iuav:
# endpoints:
# web:
# exposure:
# include: "*"
\ No newline at end of file
# include: "*"
release-service/src/main/resources/mapper/requirements/RequirementsDao.xml
浏览文件 @
c0b9086a
...
...
@@ -4,29 +4,75 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.csf.release.dao.RequirementsDao"
>
<resultMap
id=
"listTypeMap"
type=
"com.mmc.csf.release.entity.requirements.RequirementsTypeDO"
>
<result
property=
"id"
column=
"id"
/>
<result
property=
"typeName"
column=
"type_name"
/>
<collection
property=
"typeSubclassList"
ofType=
"com.mmc.csf.infomation.vo.RequirementsTypeSubclassVO"
select=
"selectSubListType"
column=
"{requirementsTypeId=id}"
>
</collection>
</resultMap>
<select
id=
"selectSubListType"
resultType=
"com.mmc.csf.infomation.vo.RequirementsTypeSubclassVO"
>
select id, requirements_type_id AS requirementsTypeId, `name`
from requirements_type_subclass
where requirements_type_id = #{requirementsTypeId}
</select>
<insert
id=
"addRequirementsInfo"
parameterType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
INSERT INTO `requirements_info`(`requirement_type_id`, `user_account_id`, `publish_name`, `publish_phone`, `require_description`, `province_code`, `city_code`, `district_code`, `create_time`)
VALUES (#{requirementTypeId}, #{userAccountId}, #{publishName}, #{publishPhone}, #{requireDescription}, #{provinceCode}, #{cityCode}, #{districtCode}, NOW());
keyProperty=
"id"
useGeneratedKeys=
"true"
>
INSERT INTO requirements_info(requirement_type_id, user_account_id, publish_name, publish_phone,
require_description, province_code, city_code, district_code, create_time,
update_time, task_title, task_start_time, task_end_time, task_address, longitude,
latitude, require_url, publisher_number)
VALUES (#{requirementTypeId}, #{userAccountId}, #{publishName}, #{publishPhone},
#{requireDescription}, #{provinceCode}, #{cityCode}, #{districtCode}, NOW(),
NOW(), #{taskTitle}, #{taskStartTime}, #{taskEndTime}, #{taskAddress}, #{longitude},
#{latitude}, #{requireUrl}, #{publisherNumber});
</insert>
<update
id=
"solveRequire"
>
update requirements_info set is_solved = 1 where id = #{requirementsInfoId}
update requirements_info
set is_solved = 1
where id = #{requirementsInfoId}
</update>
<update
id=
"removeRequire"
>
update requirements_info set is_deleted = 1 where id = #{requirementsInfoId}
</update>
<delete
id=
"removeRequire"
>
delete
from requirements_info
where id = #{requirementsInfoId}
</delete>
<select
id=
"listType"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsTypeDO"
>
select id, type_name from requirements_type where is_deleted = 0
select id, type_name
from requirements_type
where is_deleted = 0
</select>
<select
id=
"listTypeReq"
resultMap=
"listTypeMap"
>
select id, type_name
from requirements_type
where is_deleted = 0
<if
test=
"id!= null "
>
and id = #{id}
</if>
</select>
<select
id=
"getRequirementsInfoById"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
select id, requirement_type_id, user_account_id, publish_name, publish_phone, require_description, is_solved as solved, create_time from requirements_info where id = #{id}
select id,
requirement_type_id,
user_account_id,
publish_name,
publish_phone,
require_description,
is_solved as solved,
create_time
from requirements_info
where id = #{id}
</select>
<select
id=
"countListPublishPage"
resultType=
"java.lang.Integer"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
<select
id=
"countListPublishPage"
resultType=
"java.lang.Integer"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
select count(*) from requirements_info
where is_deleted = 0
<if
test=
"keyword != null"
>
...
...
@@ -52,20 +98,31 @@
</if>
</select>
<select
id=
"listPublishPage"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
select id,
<select
id=
"listPublishPage"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
SELECT
id,
requirement_type_id,
user_account_id,
publish_name,
publish_phone,
require_description,
is_solved
as
solved,
is_deleted
as
deleted,
is_solved
AS
solved,
is_deleted
AS
deleted,
create_time,
update_time
from requirements_info
where is_deleted = 0
<if
test=
"keyword != null"
>
update_time,
task_title,
task_start_time,
task_end_time,
task_address,
longitude,
latitude,
require_url
FROM
requirements_info
WHERE
is_deleted = 0
<if
test=
"keyword != null and keyword != '' "
>
and (
publish_name like CONCAT("%",#{keyword},"%") or
publish_phone like CONCAT("%",#{keyword},"%")
...
...
@@ -89,4 +146,115 @@
order by create_time desc
limit #{pageNo}, #{pageSize}
</select>
</mapper>
\ No newline at end of file
<select
id=
"findPublish"
parameterType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
resultType=
"java.lang.Integer"
>
SELECT count(*)
FROM requirements_info
WHERE id = #{id}
AND user_account_id = #{userAccountId}
</select>
<update
id=
"updatePublish"
parameterType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
UPDATE requirements_info
<set>
<if
test=
" requirementTypeId != null and requirementTypeId != '' "
>
requirement_type_id = #{requirementTypeId},
</if>
<if
test=
" userAccountId != null and userAccountId != '' "
>
user_account_id = #{userAccountId},
</if>
<if
test=
" publishName != null and publishName != '' "
>
publish_name = #{publishName},
</if>
<if
test=
" publishPhone != null and publishPhone != '' "
>
publish_phone = #{publishPhone},
</if>
<if
test=
" requireDescription != null and requireDescription != '' "
>
require_description = #{requireDescription},
</if>
<if
test=
" provinceCode != null and provinceCode != '' "
>
province_code = #{provinceCode},
</if>
<if
test=
" cityCode != null and cityCode != '' "
>
city_code = #{cityCode},
</if>
<if
test=
" districtCode != null and districtCode != '' "
>
district_code = #{districtCode},
</if>
<if
test=
" taskTitle != null and taskTitle != '' "
>
task_title = #{taskTitle},
</if>
<if
test=
" taskStartTime != null "
>
task_start_time = #{taskStartTime},
</if>
<if
test=
" taskEndTime != null "
>
task_end_time = #{taskEndTime},
</if>
<if
test=
" taskAddress != null and taskAddress != '' "
>
task_address = #{taskAddress},
</if>
<if
test=
" longitude != null and longitude != '' "
>
longitude = #{longitude},
</if>
<if
test=
" latitude != null and latitude != '' "
>
latitude = #{latitude},
</if>
<if
test=
" requireUrl != null and requireUrl != '' "
>
require_url = #{requireUrl},
</if>
update_time=NOW()
</set>
where id = #{id}
</update>
<select
id=
"findPublishCount"
resultType=
"java.lang.Integer"
>
SELECT count(*)
FROM requirements_info
WHERE id = #{id}
AND user_account_id = #{userAccountId}
</select>
<delete
id=
"requirementsDao"
>
delete
from requirements_info
where id = #{id}
</delete>
<select
id=
"appPublishList"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
SELECT id,
task_title,
task_start_time,
task_end_time,
task_address,
longitude,
latitude,
require_url,
require_description,
requirement_type_id,
user_account_id
FROM requirements_info
order by create_time desc
</select>
<select
id=
"detailPublish"
resultType=
"com.mmc.csf.release.entity.requirements.RequirementsInfoDO"
>
SELECT ri.id,
ri.task_title,
ri.task_start_time,
ri.task_end_time,
ri.task_address,
ri.longitude,
ri.latitude,
ri.require_url,
ri.require_description,
ri.requirement_type_id,
ri.user_account_id,
rt.type_name AS requirementTypeName,
ri.publish_phone,
ri.publisher_number
FROM requirements_info ri
LEFT JOIN requirements_type rt
ON rt.id = ri.requirement_type_id
WHERE ri.id = #{id}
</select>
</mapper>
release-service/src/main/resources/not-check.yml
浏览文件 @
c0b9086a
...
...
@@ -37,3 +37,4 @@ data-filter:
-
/release/wechat/mediaCheckAsync
-
/release/licence/background/appListOrgPage
-
/release/licence/background/webListOrgPage
-
/release/requirements/appPublishList
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论