Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
I
ims
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
iuav
ims
Commits
204efb6c
提交
204efb6c
authored
5月 19, 2023
作者:
zhenjie
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
项目咨询
上级
e0e708f9
隐藏空白字符变更
内嵌
并排
正在显示
39 个修改的文件
包含
1962 行增加
和
4 行删除
+1962
-4
AppTenderInfoDTO.java
...ain/java/com/mmc/csf/infomation/dto/AppTenderInfoDTO.java
+38
-0
TenderApplyDTO.java
.../main/java/com/mmc/csf/infomation/dto/TenderApplyDTO.java
+42
-0
TenderInfoDTO.java
...c/main/java/com/mmc/csf/infomation/dto/TenderInfoDTO.java
+35
-0
TenderNewsDTO.java
...c/main/java/com/mmc/csf/infomation/dto/TenderNewsDTO.java
+32
-0
IndustryCaseQO.java
...c/main/java/com/mmc/csf/infomation/qo/IndustryCaseQO.java
+57
-0
IndustryCaseVO.java
...c/main/java/com/mmc/csf/infomation/vo/IndustryCaseVO.java
+38
-0
IndustryNewsVO.java
...c/main/java/com/mmc/csf/infomation/vo/IndustryNewsVO.java
+38
-0
TenderApplyVO.java
...rc/main/java/com/mmc/csf/infomation/vo/TenderApplyVO.java
+37
-0
TenderNewsVO.java
...src/main/java/com/mmc/csf/infomation/vo/TenderNewsVO.java
+30
-0
IndustryCaseController.java
...om/mmc/csf/release/controller/IndustryCaseController.java
+40
-0
IndustryNewsController.java
...om/mmc/csf/release/controller/IndustryNewsController.java
+41
-0
RequirementsController.java
...om/mmc/csf/release/controller/RequirementsController.java
+4
-2
TenderController.java
...java/com/mmc/csf/release/controller/TenderController.java
+132
-0
IndustryCaseDao.java
...rc/main/java/com/mmc/csf/release/dao/IndustryCaseDao.java
+35
-0
IndustryNewsDao.java
...rc/main/java/com/mmc/csf/release/dao/IndustryNewsDao.java
+35
-0
RequirementsDao.java
...rc/main/java/com/mmc/csf/release/dao/RequirementsDao.java
+15
-0
TenderDao.java
...vice/src/main/java/com/mmc/csf/release/dao/TenderDao.java
+63
-0
IndustryCaseDO.java
.../main/java/com/mmc/csf/release/entity/IndustryCaseDO.java
+45
-0
IndustryNewsDO.java
.../main/java/com/mmc/csf/release/entity/IndustryNewsDO.java
+42
-0
TenderApplyDO.java
...c/main/java/com/mmc/csf/release/entity/TenderApplyDO.java
+50
-0
TenderInfoDO.java
...rc/main/java/com/mmc/csf/release/entity/TenderInfoDO.java
+41
-0
TenderNewsDO.java
...rc/main/java/com/mmc/csf/release/entity/TenderNewsDO.java
+41
-0
UserAppApi.java
...e/src/main/java/com/mmc/csf/release/feign/UserAppApi.java
+14
-2
UserAppApiHystrix.java
.../com/mmc/csf/release/feign/hystrix/UserAppApiHystrix.java
+8
-0
IndustryCaseService.java
...java/com/mmc/csf/release/service/IndustryCaseService.java
+24
-0
IndustryNewsService.java
...java/com/mmc/csf/release/service/IndustryNewsService.java
+24
-0
RequirementsService.java
...java/com/mmc/csf/release/service/RequirementsService.java
+8
-0
TenderService.java
.../main/java/com/mmc/csf/release/service/TenderService.java
+40
-0
IndustryCaseServiceImpl.java
...mmc/csf/release/service/impl/IndustryCaseServiceImpl.java
+57
-0
IndustryNewsServiceImpl.java
...mmc/csf/release/service/impl/IndustryNewsServiceImpl.java
+53
-0
RequirementsServiceImpl.java
...mmc/csf/release/service/impl/RequirementsServiceImpl.java
+18
-0
TenderServiceImpl.java
...a/com/mmc/csf/release/service/impl/TenderServiceImpl.java
+305
-0
application-dev.yml
release-service/src/main/resources/application-dev.yml
+2
-0
application-product.yml
release-service/src/main/resources/application-product.yml
+2
-0
application-test.yml
release-service/src/main/resources/application-test.yml
+2
-0
IndustryCaseDao.xml
...ervice/src/main/resources/mapper/case/IndustryCaseDao.xml
+58
-0
IndustryNewsDao.xml
...ervice/src/main/resources/mapper/news/IndustryNewsDao.xml
+57
-0
RequirementsDao.xml
...rc/main/resources/mapper/requirements/RequirementsDao.xml
+47
-0
TenderDao.xml
...se-service/src/main/resources/mapper/tender/TenderDao.xml
+312
-0
没有找到文件。
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/dto/AppTenderInfoDTO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* @author MMC_hzj
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
AppTenderInfoDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
7967146890958218318L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"招标快讯id"
)
private
Integer
tenderNewsId
;
@ApiModelProperty
(
value
=
"招标快讯内容序号"
)
private
String
tenderInfoNo
;
@ApiModelProperty
(
value
=
"招标快讯内容"
)
private
String
tenderContent
;
@ApiModelProperty
(
value
=
"价格"
)
private
BigDecimal
tenderPrice
;
@ApiModelProperty
(
value
=
"生成时间"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"0未申请,1已申请"
,
example
=
"1"
)
private
Integer
apply
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/dto/TenderApplyDTO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author MMC_hzj
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
TenderApplyDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1224292564881346360L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"招标快讯编号"
)
private
String
tenderInfoNo
;
@ApiModelProperty
(
value
=
"招标快讯内容"
)
private
String
tenderContent
;
// @ApiModelProperty(value = "用户id")
// private Integer userAccountId;
// @ApiModelProperty(value = "招标快讯id")
// private Integer tenderNewsId;
@ApiModelProperty
(
value
=
"招标快讯内容id"
)
private
Integer
tenderInfoId
;
@ApiModelProperty
(
value
=
"昵称"
)
private
String
nickName
;
@ApiModelProperty
(
value
=
"用户名"
)
private
String
userName
;
@ApiModelProperty
(
value
=
"手机号"
)
private
String
phoneNum
;
@ApiModelProperty
(
value
=
"生成时间"
)
private
Date
createTime
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/dto/TenderInfoDTO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* @author MMC_hzj
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
TenderInfoDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8404011575132191740L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"招标快讯id"
)
private
Integer
tenderNewsId
;
@ApiModelProperty
(
value
=
"招标快讯内容序号"
)
private
String
tenderInfoNo
;
@ApiModelProperty
(
value
=
"招标快讯内容"
)
private
String
tenderContent
;
@ApiModelProperty
(
value
=
"价格"
)
private
BigDecimal
tenderPrice
;
@ApiModelProperty
(
value
=
"生成时间"
)
private
Date
createTime
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/dto/TenderNewsDTO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
dto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author MMC_hzj
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
TenderNewsDTO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
8814209421015383178L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"招标快讯名称"
)
private
String
tenderName
;
@ApiModelProperty
(
value
=
"状态"
)
private
Integer
using
;
@ApiModelProperty
(
value
=
"所属产品"
)
private
Integer
port
;
@ApiModelProperty
(
value
=
"发布日期"
)
private
Date
createTime
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/qo/IndustryCaseQO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
qo
;
import
com.mmc.csf.release.model.group.Page
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
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/5/19 13:44
*/
@Builder
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
IndustryCaseQO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
4615177472593013257L
;
@ApiModelProperty
(
value
=
"关键字"
,
required
=
false
,
hidden
=
true
)
private
String
keyword
;
@ApiModelProperty
(
value
=
"省份编码"
,
required
=
false
)
private
Integer
provinceCode
;
@ApiModelProperty
(
value
=
"市编码"
,
required
=
false
)
private
Integer
cityCode
;
@ApiModelProperty
(
value
=
"区编码"
,
required
=
false
)
private
Integer
districtCode
;
@ApiModelProperty
(
value
=
"时间:2023-05-19"
,
required
=
false
)
private
String
date
;
@ApiModelProperty
(
value
=
"用户id集合"
,
hidden
=
true
)
private
List
<
Integer
>
userIds
;
@ApiModelProperty
(
value
=
"页码"
,
required
=
true
)
@NotNull
(
message
=
"页码不能为空"
,
groups
=
Page
.
class
)
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageNo
;
@ApiModelProperty
(
value
=
"每页显示数"
,
required
=
true
)
@NotNull
(
message
=
"每页显示数不能为空"
,
groups
=
Page
.
class
)
@Min
(
value
=
1
,
groups
=
Page
.
class
)
private
Integer
pageSize
;
public
void
buildCurrentPage
()
{
this
.
pageNo
=
(
pageNo
-
1
)
*
pageSize
;
}
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/IndustryCaseVO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author: zj
* @Date: 2023/5/19 11:30
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public
class
IndustryCaseVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
8278011392722950911L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"案例标题"
)
private
String
newsTitle
;
@ApiModelProperty
(
value
=
"作者"
)
private
String
newsAuthor
;
@ApiModelProperty
(
value
=
"发布者id"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"封面图"
)
private
String
surfaceImg
;
@ApiModelProperty
(
value
=
"案例内容"
)
private
String
newsContents
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"最新修改时间"
)
private
Date
updateTime
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/IndustryNewsVO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
vo
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author: zj
* @Date: 2023/5/19 11:23
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Builder
public
class
IndustryNewsVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
8479619142765659138L
;
@ApiModelProperty
(
value
=
"id"
)
private
Integer
id
;
@ApiModelProperty
(
value
=
"新闻标题"
)
private
String
newsTitle
;
@ApiModelProperty
(
value
=
"作者"
)
private
String
newsAuthor
;
@ApiModelProperty
(
value
=
"发布者id"
)
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"封面图"
)
private
String
surfaceImg
;
@ApiModelProperty
(
value
=
"新闻内容"
)
private
String
newsContents
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
Date
createTime
;
@ApiModelProperty
(
value
=
"最新修改时间"
)
private
Date
updateTime
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/TenderApplyVO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
vo
;
import
com.mmc.csf.release.model.group.Create
;
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 MMC_hzj
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
TenderApplyVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
5519324350926972959L
;
@ApiModelProperty
(
value
=
"招标id"
)
@NotNull
(
message
=
"招标id不能为空"
,
groups
=
{
Create
.
class
})
private
Integer
tenderNewsId
;
@ApiModelProperty
(
value
=
"用户id"
)
@NotNull
(
message
=
"用户id不能为空"
,
groups
=
{
Create
.
class
})
private
Integer
userAccountId
;
@ApiModelProperty
(
value
=
"招标详情id"
)
@NotNull
(
message
=
"招标详情id不能为空"
,
groups
=
{
Create
.
class
})
private
Integer
tenderInfoId
;
@ApiModelProperty
(
value
=
"昵称"
,
hidden
=
true
)
private
String
nickName
;
@ApiModelProperty
(
value
=
"用户名"
,
hidden
=
true
)
private
String
userName
;
@ApiModelProperty
(
value
=
"联系电话"
,
hidden
=
true
)
//@NotNull(message = "联系电话不能为空", groups = {Create.class})
private
String
phoneNum
;
}
csf-common/csf-common-model/src/main/java/com/mmc/csf/infomation/vo/TenderNewsVO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
infomation
.
vo
;
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 MMC_hzj
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public
class
TenderNewsVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
8188835029420792396L
;
@ApiModelProperty
(
value
=
"id"
)
@NotNull
(
message
=
"id不能为空"
,
groups
=
{
Update
.
class
})
private
Integer
id
;
@ApiModelProperty
(
value
=
"招标快讯名称"
)
private
String
tenderName
;
@ApiModelProperty
(
value
=
"状态"
)
private
Integer
using
;
@ApiModelProperty
(
value
=
"所属产品"
)
private
Integer
port
;
}
release-service/src/main/java/com/mmc/csf/release/controller/IndustryCaseController.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
controller
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.vo.IndustryCaseVO
;
import
com.mmc.csf.release.model.group.Page
;
import
com.mmc.csf.release.service.IndustryCaseService
;
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.*
;
/**
* @author: zj
* @Date: 2023/5/19 11:34
*/
@Api
(
tags
=
{
"业务案例相关"
})
@RestController
@RequestMapping
(
"/industry-case/"
)
public
class
IndustryCaseController
{
@Autowired
private
IndustryCaseService
industryCaseService
;
@ApiOperation
(
value
=
"案例列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
IndustryCaseVO
.
class
)
})
@PostMapping
(
"listCasePage"
)
public
ResultBody
listCasePage
(
@Validated
(
value
=
{
Page
.
class
})
@RequestBody
IndustryCaseQO
industryCaseQO
){
return
industryCaseService
.
listCasePage
(
industryCaseQO
);
}
@ApiOperation
(
value
=
"案例详情"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
IndustryCaseVO
.
class
)
})
@GetMapping
(
"details"
)
public
ResultBody
details
(
@RequestParam
Integer
id
){
return
industryCaseService
.
details
(
id
);
}
}
release-service/src/main/java/com/mmc/csf/release/controller/IndustryNewsController.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
controller
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.vo.IndustryCaseVO
;
import
com.mmc.csf.infomation.vo.IndustryNewsVO
;
import
com.mmc.csf.release.model.group.Page
;
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.*
;
/**
* @author: zj
* @Date: 2023/5/19 10:42
*/
@Api
(
tags
=
{
"行业新闻相关"
})
@RestController
@RequestMapping
(
"/industry-news/"
)
public
class
IndustryNewsController
{
@Autowired
private
IndustryNewsService
industryNewsService
;
@ApiOperation
(
value
=
"新闻列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
IndustryNewsVO
.
class
)
})
@PostMapping
(
"listNewsPage"
)
public
ResultBody
listNewsPage
(
@Validated
(
value
=
{
Page
.
class
})
@RequestBody
IndustryCaseQO
industryCaseQO
){
return
industryNewsService
.
listNewsPage
(
industryCaseQO
);
}
@ApiOperation
(
value
=
"案例详情"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
IndustryNewsVO
.
class
)
})
@GetMapping
(
"details"
)
public
ResultBody
details
(
@RequestParam
Integer
id
){
return
industryNewsService
.
details
(
id
);
}
}
release-service/src/main/java/com/mmc/csf/release/controller/RequirementsController.java
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
controller
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
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.service.RequirementsService
;
import
io.swagger.annotations.Api
;
...
...
@@ -43,8 +45,8 @@ public class RequirementsController {
@ApiOperation
(
value
=
"需求发布列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
RequirementsInfoVO
.
class
)
})
@PostMapping
(
"listPublishPage"
)
public
ResultBody
listPublishPage
(){
return
ResultBody
.
success
(
);
public
ResultBody
listPublishPage
(
@Validated
(
value
=
{
Page
.
class
})
@RequestBody
IndustryCaseQO
industryCaseQO
){
return
requirementsService
.
listPublishPage
(
industryCaseQO
);
}
@ApiOperation
(
value
=
"需求已解决"
)
...
...
release-service/src/main/java/com/mmc/csf/release/controller/TenderController.java
0 → 100644
浏览文件 @
204efb6c
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.common.util.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.TenderApplyVO
;
import
com.mmc.csf.infomation.vo.TenderNewsVO
;
import
com.mmc.csf.release.service.TenderService
;
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
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* @author: zj
* @Date: 2023/5/18 14:26
*/
@Api
(
tags
=
{
"招标相关"
})
@RestController
@RequestMapping
(
"/tender/"
)
public
class
TenderController
{
@Autowired
private
TenderService
tenderService
;
@ApiOperation
(
value
=
"新增招标快讯"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
value
=
"news"
)
public
ResultBody
addTenderNews
(
@RequestPart
(
value
=
"file"
)
MultipartFile
file
,
@RequestPart
TenderNewsVO
tenderNewsVO
)
throws
IOException
{
return
tenderService
.
addTenderNews
(
file
,
tenderNewsVO
);
}
@ApiOperation
(
value
=
"查询招标快讯列表-分页"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
TenderNewsDTO
.
class
)})
@GetMapping
(
value
=
"news"
)
public
ResultBody
listTenderNews
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
@RequestParam
(
value
=
"tenderName"
,
required
=
false
)
String
tenderName
,
@RequestParam
(
value
=
"startTime"
,
required
=
false
)
Date
startTime
,
@RequestParam
(
value
=
"endTime"
,
required
=
false
)
Date
endTime
,
@RequestParam
(
value
=
"using"
,
required
=
false
)
Integer
using
){
return
tenderService
.
listTenderNews
(
pageNo
,
pageSize
,
tenderName
,
startTime
,
endTime
,
using
);
}
@ApiOperation
(
value
=
"修改招标快讯列表"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PutMapping
(
value
=
"news"
)
public
ResultBody
updateTenderNews
(
@RequestParam
(
value
=
"file"
,
required
=
false
)
MultipartFile
file
,
@Validated
(
value
=
{
Update
.
class
})
@RequestPart
TenderNewsVO
tenderNewsVO
)
throws
IOException
{
return
tenderService
.
updateTenderNews
(
file
,
tenderNewsVO
);
}
@ApiOperation
(
value
=
"删除查询招标快讯"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@DeleteMapping
(
value
=
"news/{id}"
)
public
ResultBody
removeTenderNews
(
@PathVariable
(
"id"
)
Integer
id
){
return
tenderService
.
removeTenderNews
(
id
);
}
@ApiOperation
(
value
=
"查询招标快讯详情列表-分页"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
TenderInfoDTO
.
class
)})
@GetMapping
(
value
=
"info"
)
public
ResultBody
listTenderInfo
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
@RequestParam
Integer
tenderNewsId
){
return
tenderService
.
listTenderInfo
(
pageNo
,
pageSize
,
tenderNewsId
);
}
@ApiOperation
(
value
=
"修改招标快讯详情"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PutMapping
(
value
=
"info"
)
public
ResultBody
updateTenderInfo
(
@RequestParam
(
value
=
"id"
,
required
=
true
)
Integer
id
,
@RequestParam
(
value
=
"tenderContent"
,
required
=
true
)
String
tenderContent
,
@RequestParam
(
required
=
false
)
BigDecimal
tenderPrice
){
return
tenderService
.
updateTenderInfo
(
id
,
tenderContent
,
tenderPrice
);
}
@ApiOperation
(
value
=
"合作申请提交"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
ResultBody
.
class
)})
@PostMapping
(
value
=
"apply"
)
public
ResultBody
addTenderApply
(
@Validated
(
value
=
{
Create
.
class
})
@RequestBody
TenderApplyVO
tenderApplyVO
){
return
tenderService
.
addTenderApply
(
tenderApplyVO
);
}
@ApiOperation
(
value
=
"用户反馈列表-分页"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
TenderApplyDTO
.
class
)})
@GetMapping
(
value
=
"apply"
)
public
ResultBody
listTenderApply
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
@RequestParam
Integer
tenderNewsId
,
@RequestParam
(
required
=
false
)
Integer
tenderInfoId
,
@RequestParam
(
required
=
false
)
String
keyword
){
return
tenderService
.
listTenderApply
(
pageNo
,
pageSize
,
tenderNewsId
,
tenderInfoId
,
keyword
);
}
@ApiOperation
(
value
=
"app往期招标快讯详情列表-分页"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AppTenderInfoDTO
.
class
)})
@GetMapping
(
value
=
"info/app"
)
public
ResultBody
listTenderInfoApp
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
@RequestParam
Integer
tenderNewsId
,
@RequestParam
(
required
=
false
)
Integer
userAccountId
){
return
tenderService
.
listTenderInfoApp
(
pageNo
,
pageSize
,
tenderNewsId
,
userAccountId
);
}
@ApiOperation
(
value
=
"app最新招标快讯详情列表-分页"
,
hidden
=
true
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AppTenderInfoDTO
.
class
)})
@GetMapping
(
value
=
"info/app/latest"
)
public
ResultBody
listTenderInfoAppLatest
(
@RequestParam
Integer
pageNo
,
@RequestParam
Integer
pageSize
,
@RequestParam
(
required
=
false
)
Integer
userAccountId
){
return
tenderService
.
listTenderInfoAppLatest
(
pageNo
,
pageSize
,
userAccountId
);
}
@ApiOperation
(
value
=
"招投标列表"
)
@ApiResponses
({
@ApiResponse
(
code
=
200
,
message
=
"OK"
,
response
=
AppTenderInfoDTO
.
class
)})
@PostMapping
(
value
=
"listNewTenderInfo"
)
public
ResultBody
listNewTenderInfo
(
@Validated
(
value
=
{
Page
.
class
})
@RequestBody
IndustryCaseQO
industryCaseQO
,
HttpServletRequest
request
){
return
tenderService
.
listNewTenderInfo
(
industryCaseQO
);
}
}
release-service/src/main/java/com/mmc/csf/release/dao/IndustryCaseDao.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.release.entity.IndustryCaseDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/5/19 13:38
*/
@Mapper
public
interface
IndustryCaseDao
{
/**
* 案例列表数量
* @param industryCaseQO
* @return
*/
int
countListCasePage
(
IndustryCaseQO
industryCaseQO
);
/**
* 案例列表
* @param industryCaseQO
* @return
*/
List
<
IndustryCaseDO
>
listCasePage
(
IndustryCaseQO
industryCaseQO
);
/**
* 案例详情
* @param id
* @return
*/
IndustryCaseDO
details
(
Integer
id
);
}
release-service/src/main/java/com/mmc/csf/release/dao/IndustryNewsDao.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.release.entity.IndustryNewsDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/5/19 13:36
*/
@Mapper
public
interface
IndustryNewsDao
{
/**
* 新闻数量
* @param industryCaseQO
* @return
*/
int
countListNewsPage
(
IndustryCaseQO
industryCaseQO
);
/**
* 新闻列表信息
* @param industryCaseQO
* @return
*/
List
<
IndustryNewsDO
>
listNewsPage
(
IndustryCaseQO
industryCaseQO
);
/**
* 新闻详情
* @param id
* @return
*/
IndustryNewsDO
details
(
Integer
id
);
}
release-service/src/main/java/com/mmc/csf/release/dao/RequirementsDao.java
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.release.entity.RequirementsInfoDO
;
import
com.mmc.csf.release.entity.RequirementsTypeDO
;
import
org.apache.ibatis.annotations.Mapper
;
...
...
@@ -35,4 +36,18 @@ public interface RequirementsDao {
* @param requirementsInfoId
*/
void
solveRequire
(
Integer
requirementsInfoId
);
/**
* 需求发布的数量
* @param industryCaseQO
* @return
*/
int
countListPublishPage
(
IndustryCaseQO
industryCaseQO
);
/**
* 需求发布列表
* @param industryCaseQO
* @return
*/
List
<
RequirementsInfoDO
>
listPublishPage
(
IndustryCaseQO
industryCaseQO
);
}
release-service/src/main/java/com/mmc/csf/release/dao/TenderDao.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
dao
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.release.entity.TenderApplyDO
;
import
com.mmc.csf.release.entity.TenderInfoDO
;
import
com.mmc.csf.release.entity.TenderNewsDO
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.math.BigDecimal
;
import
java.util.Date
;
import
java.util.List
;
/**
* author:zhenjie
* Date:2022/5/21
* time:17:10
*/
@Mapper
public
interface
TenderDao
{
void
addTenderNewsDO
(
TenderNewsDO
tenderNewsDO
);
void
batchAddTenderInfo
(
List
<
TenderInfoDO
>
tenderInfoDOList
);
int
countListTenderNews
(
String
tenderName
,
Date
startTime
,
Date
endTime
,
Integer
using
);
List
<
TenderNewsDO
>
listTenderNews
(
int
itemIndex
,
Integer
pageSize
,
String
tenderName
,
Date
startTime
,
Date
endTime
,
Integer
using
);
void
batchRemoveTenderInfo
(
Integer
tenderNewsId
);
void
updateTenderNews
(
TenderNewsDO
tenderNewsDO
);
void
removeTenderNews
(
Integer
id
);
int
countListTenderInfo
(
Integer
tenderNewsId
);
List
<
TenderInfoDO
>
listTenderInfo
(
int
itemIndex
,
Integer
pageSize
,
Integer
tenderNewsId
);
void
updateTenderInfo
(
Integer
id
,
String
tenderContent
,
BigDecimal
tenderPrice
);
TenderApplyDO
getTenderApplyByUId
(
Integer
userAccountId
,
Integer
tenderInfoId
);
void
addTenderApply
(
TenderApplyDO
tenderApplyDO
);
int
countListTenderApply
(
Integer
tenderNewsId
,
Integer
tenderInfoId
,
String
keyword
);
List
<
TenderApplyDO
>
listTenderApply
(
int
itemIndex
,
Integer
pageSize
,
Integer
tenderNewsId
,
Integer
tenderInfoId
,
String
keyword
);
List
<
TenderApplyDO
>
listAppTenderApply
(
Integer
tenderNewsId
,
Integer
userAccountId
);
TenderNewsDO
latestTenderNewsDO
();
int
countListTenderInfoApp
(
Integer
tenderNewsId
);
List
<
TenderInfoDO
>
listTenderInfoApp
(
int
itemIndex
,
Integer
pageSize
,
Integer
tenderNewsId
);
int
countExistSameName
(
Integer
id
,
String
tenderName
);
int
countNewListTenderInfo
(
IndustryCaseQO
industryCaseQO
);
List
<
TenderInfoDO
>
listNewListTenderInfo
(
IndustryCaseQO
industryCaseQO
);
List
<
Integer
>
listApplyTenderInfoIds
(
List
<
Integer
>
tenderInfoIds
,
Integer
applyUserId
);
}
release-service/src/main/java/com/mmc/csf/release/entity/IndustryCaseDO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
entity
;
import
com.mmc.csf.infomation.vo.IndustryCaseVO
;
import
com.mmc.csf.infomation.vo.IndustryNewsVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author: zj
* @Date: 2023/5/19 11:27
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
IndustryCaseDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
664297500411067297L
;
private
Integer
id
;
private
String
caseTitle
;
private
String
caseAuthor
;
private
Integer
userAccountId
;
private
String
surfaceImg
;
private
String
caseContents
;
private
Integer
deleted
;
private
Date
createTime
;
private
Date
updateTime
;
public
IndustryCaseVO
buildIndustryCaseVO
(){
return
IndustryCaseVO
.
builder
().
id
(
id
).
newsTitle
(
caseTitle
).
newsAuthor
(
caseAuthor
).
userAccountId
(
userAccountId
).
surfaceImg
(
surfaceImg
).
newsContents
(
caseContents
).
createTime
(
createTime
).
updateTime
(
updateTime
).
build
();
}
public
IndustryCaseDO
(
IndustryCaseVO
industryCaseVO
){
this
.
id
=
industryCaseVO
.
getId
();
this
.
caseTitle
=
industryCaseVO
.
getNewsTitle
();
this
.
caseAuthor
=
industryCaseVO
.
getNewsAuthor
();
this
.
userAccountId
=
industryCaseVO
.
getUserAccountId
();
this
.
surfaceImg
=
industryCaseVO
.
getSurfaceImg
();
this
.
caseContents
=
industryCaseVO
.
getNewsContents
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/IndustryNewsDO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
entity
;
import
com.mmc.csf.infomation.vo.IndustryNewsVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @author: zj
* @Date: 2023/5/19 11:20
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
IndustryNewsDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3296973167970903480L
;
private
Integer
id
;
private
String
newsTitle
;
private
String
newsAuthor
;
private
Integer
userAccountId
;
private
String
surfaceImg
;
private
String
newsContents
;
private
Date
createTime
;
private
Date
updateTime
;
public
IndustryNewsVO
buildIndustryNewsVO
(){
return
IndustryNewsVO
.
builder
().
id
(
id
).
newsTitle
(
newsTitle
).
newsAuthor
(
newsAuthor
).
userAccountId
(
userAccountId
).
surfaceImg
(
surfaceImg
).
newsContents
(
newsContents
).
createTime
(
createTime
).
updateTime
(
updateTime
).
build
();
}
public
IndustryNewsDO
(
IndustryNewsVO
industryNewsVO
){
this
.
id
=
industryNewsVO
.
getId
();
this
.
newsTitle
=
industryNewsVO
.
getNewsTitle
();
this
.
newsAuthor
=
industryNewsVO
.
getNewsAuthor
();
this
.
userAccountId
=
industryNewsVO
.
getUserAccountId
();
this
.
surfaceImg
=
industryNewsVO
.
getSurfaceImg
();
this
.
newsContents
=
industryNewsVO
.
getNewsContents
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/TenderApplyDO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
entity
;
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
* time:16:02
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
TenderApplyDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
4290565153507919210L
;
private
Integer
id
;
private
Integer
userAccountId
;
private
Integer
tenderNewsId
;
private
Integer
tenderInfoId
;
private
String
nickName
;
private
String
userName
;
private
String
phoneNum
;
private
Integer
deleted
;
private
Date
createTime
;
private
Date
updateTime
;
private
String
tenderInfoNo
;
private
String
tenderContent
;
public
TenderApplyDO
(
TenderApplyVO
tenderApplyVO
)
{
this
.
userAccountId
=
tenderApplyVO
.
getUserAccountId
();
this
.
tenderNewsId
=
tenderApplyVO
.
getTenderNewsId
();
this
.
tenderInfoId
=
tenderApplyVO
.
getTenderInfoId
();
this
.
nickName
=
tenderApplyVO
.
getNickName
();
this
.
userName
=
tenderApplyVO
.
getUserName
();
this
.
phoneNum
=
tenderApplyVO
.
getPhoneNum
();
}
public
TenderApplyDTO
buildTenderApplyDTO
(){
return
TenderApplyDTO
.
builder
().
id
(
this
.
id
).
tenderInfoId
(
this
.
tenderInfoId
).
nickName
(
this
.
nickName
).
userName
(
this
.
userName
).
phoneNum
(
this
.
phoneNum
)
.
createTime
(
this
.
createTime
).
tenderInfoNo
(
this
.
tenderInfoNo
).
tenderContent
(
this
.
tenderContent
).
build
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/TenderInfoDO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
entity
;
import
com.mmc.csf.infomation.dto.AppTenderInfoDTO
;
import
com.mmc.csf.infomation.dto.TenderInfoDTO
;
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
* time:16:00
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
TenderInfoDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
6547272373224463237L
;
private
Integer
id
;
private
Integer
tenderNewsId
;
private
String
tenderInfoNo
;
private
String
tenderContent
;
private
BigDecimal
tenderPrice
;
private
Integer
deleted
;
private
Date
createTime
;
private
Date
updateTime
;
public
TenderInfoDTO
buildTenderInfoDTO
(){
return
TenderInfoDTO
.
builder
().
id
(
this
.
id
).
tenderNewsId
(
this
.
tenderNewsId
).
tenderInfoNo
(
this
.
tenderInfoNo
).
tenderContent
(
this
.
tenderContent
)
.
tenderPrice
(
this
.
tenderPrice
).
createTime
(
this
.
createTime
).
build
();
}
public
AppTenderInfoDTO
buildAppTenderInfoDTO
(){
return
AppTenderInfoDTO
.
builder
().
id
(
this
.
id
).
tenderNewsId
(
this
.
tenderNewsId
).
tenderInfoNo
(
this
.
tenderInfoNo
).
tenderContent
(
this
.
tenderContent
)
.
tenderPrice
(
this
.
tenderPrice
).
createTime
(
this
.
createTime
).
apply
(
0
).
build
();
}
}
release-service/src/main/java/com/mmc/csf/release/entity/TenderNewsDO.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
entity
;
import
com.mmc.csf.infomation.dto.TenderNewsDTO
;
import
com.mmc.csf.infomation.vo.TenderNewsVO
;
import
lombok.AllArgsConstructor
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* author:zhenjie
* Date:2022/5/21
* time:15:56
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public
class
TenderNewsDO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3403042130524788589L
;
private
Integer
id
;
private
String
tenderName
;
private
Integer
using
;
private
Integer
port
;
private
Integer
deleted
;
private
Date
createTime
;
private
Date
updateTime
;
public
TenderNewsDTO
buildTenderNewsDTO
(){
return
TenderNewsDTO
.
builder
().
id
(
this
.
id
).
tenderName
(
this
.
tenderName
).
using
(
this
.
using
).
port
(
this
.
port
).
createTime
(
this
.
createTime
)
.
build
();
}
public
TenderNewsDO
(
TenderNewsVO
tenderNewsVO
){
this
.
id
=
tenderNewsVO
.
getId
();
this
.
tenderName
=
tenderNewsVO
.
getTenderName
();
this
.
using
=
tenderNewsVO
.
getUsing
();
this
.
port
=
tenderNewsVO
.
getPort
();
}
}
release-service/src/main/java/com/mmc/csf/release/feign/UserAppApi.java
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
feign
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.dto.UserAccountSimpleDTO
;
import
com.mmc.csf.release.feign.hystrix.UserAppApiHystrix
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMethod
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/5/18 17:06
*/
@FeignClient
(
name
=
"cms-svc
.dev.svc.cluster.local
"
,
fallback
=
UserAppApiHystrix
.
class
)
@FeignClient
(
name
=
"cms-svc
:30150
"
,
fallback
=
UserAppApiHystrix
.
class
)
public
interface
UserAppApi
{
/**
* 根据用户id获取基本信息
...
...
@@ -21,4 +23,14 @@ public interface UserAppApi {
*/
@RequestMapping
(
value
=
"/userapp/user-account/feignGetUserSimpleInfo"
,
method
=
RequestMethod
.
GET
)
public
UserAccountSimpleDTO
feignGetUserSimpleInfo
(
@RequestParam
Integer
userAccountId
);
/**
* 根据地区信息查询用户id
* @param provinceCode
* @param cityCode
* @param districtCode
* @return
*/
@GetMapping
(
"/userapp/user-account/feignListUserAccountIds"
)
List
<
Integer
>
feignListUserAccountIds
(
@RequestParam
Integer
provinceCode
,
@RequestParam
Integer
cityCode
,
@RequestParam
Integer
districtCode
);
}
release-service/src/main/java/com/mmc/csf/release/feign/hystrix/UserAppApiHystrix.java
浏览文件 @
204efb6c
...
...
@@ -4,6 +4,8 @@ import com.mmc.csf.infomation.dto.UserAccountSimpleDTO;
import
com.mmc.csf.release.feign.UserAppApi
;
import
lombok.extern.slf4j.Slf4j
;
import
java.util.List
;
/**
* @author: zj
* @Date: 2023/5/18 17:08
...
...
@@ -15,4 +17,10 @@ public class UserAppApiHystrix implements UserAppApi {
log
.
error
(
"熔断:feignGetUserSimpleInfo:{}"
,
userAccountId
);
return
null
;
}
@Override
public
List
<
Integer
>
feignListUserAccountIds
(
Integer
provinceCode
,
Integer
cityCode
,
Integer
districtCode
)
{
log
.
error
(
"熔断:feignListUserAccountIds:{}, {}, {}"
,
provinceCode
,
cityCode
,
districtCode
);
return
null
;
}
}
release-service/src/main/java/com/mmc/csf/release/service/IndustryCaseService.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
service
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
/**
* @author: zj
* @Date: 2023/5/19 13:40
*/
public
interface
IndustryCaseService
{
/**
* 案例列表
* @param industryCaseQO
* @return
*/
ResultBody
listCasePage
(
IndustryCaseQO
industryCaseQO
);
/**
* 案例详情
* @param id
* @return
*/
ResultBody
details
(
Integer
id
);
}
release-service/src/main/java/com/mmc/csf/release/service/IndustryNewsService.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
service
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
/**
* @author: zj
* @Date: 2023/5/19 13:40
*/
public
interface
IndustryNewsService
{
/**
* 新闻列表
* @param industryCaseQO
* @return
*/
ResultBody
listNewsPage
(
IndustryCaseQO
industryCaseQO
);
/**
* 新闻详情
* @param id
* @return
*/
ResultBody
details
(
Integer
id
);
}
release-service/src/main/java/com/mmc/csf/release/service/RequirementsService.java
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
service
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.vo.RequirementsInfoVO
;
/**
...
...
@@ -28,4 +29,11 @@ public interface RequirementsService {
* @return
*/
ResultBody
solveRequire
(
Integer
requirementsInfoId
,
Integer
userAccountId
);
/**
* 需求发布列表
* @param industryCaseQO
* @return
*/
ResultBody
listPublishPage
(
IndustryCaseQO
industryCaseQO
);
}
release-service/src/main/java/com/mmc/csf/release/service/TenderService.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
service
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.vo.TenderApplyVO
;
import
com.mmc.csf.infomation.vo.TenderNewsVO
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* author:zhenjie
* Date:2022/5/21
* time:17:11
*/
public
interface
TenderService
{
ResultBody
addTenderNews
(
MultipartFile
file
,
TenderNewsVO
tenderNewsVO
)
throws
IOException
;
ResultBody
listTenderNews
(
Integer
pageNo
,
Integer
pageSize
,
String
tenderName
,
Date
startTime
,
Date
endTime
,
Integer
using
);
ResultBody
updateTenderNews
(
MultipartFile
file
,
TenderNewsVO
tenderNewsVO
)
throws
IOException
;
ResultBody
removeTenderNews
(
Integer
id
);
ResultBody
listTenderInfo
(
Integer
pageNo
,
Integer
pageSize
,
Integer
tenderNewsId
);
ResultBody
updateTenderInfo
(
Integer
id
,
String
tenderContent
,
BigDecimal
tenderPrice
);
ResultBody
addTenderApply
(
TenderApplyVO
tenderApplyVO
);
ResultBody
listTenderApply
(
Integer
pageNo
,
Integer
pageSize
,
Integer
tenderNewsId
,
Integer
tenderInfoId
,
String
keyword
);
ResultBody
listTenderInfoApp
(
Integer
pageNo
,
Integer
pageSize
,
Integer
tenderNewsId
,
Integer
userAccountId
);
ResultBody
listTenderInfoAppLatest
(
Integer
pageNo
,
Integer
pageSize
,
Integer
userAccountId
);
ResultBody
listNewTenderInfo
(
IndustryCaseQO
industryCaseQO
);
}
release-service/src/main/java/com/mmc/csf/release/service/impl/IndustryCaseServiceImpl.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
service
.
impl
;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.vo.IndustryCaseVO
;
import
com.mmc.csf.infomation.vo.IndustryNewsVO
;
import
com.mmc.csf.release.dao.IndustryCaseDao
;
import
com.mmc.csf.release.entity.IndustryCaseDO
;
import
com.mmc.csf.release.entity.IndustryNewsDO
;
import
com.mmc.csf.release.feign.UserAppApi
;
import
com.mmc.csf.release.service.IndustryCaseService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* @author: zj
* @Date: 2023/5/19 13:40
*/
@Service
public
class
IndustryCaseServiceImpl
implements
IndustryCaseService
{
@Autowired
private
IndustryCaseDao
industryCaseDao
;
@Autowired
private
UserAppApi
userAppApi
;
@Override
public
ResultBody
listCasePage
(
IndustryCaseQO
industryCaseQO
)
{
//查询对应地区的用户
List
<
Integer
>
userIds
=
userAppApi
.
feignListUserAccountIds
(
industryCaseQO
.
getProvinceCode
(),
industryCaseQO
.
getCityCode
(),
industryCaseQO
.
getDistrictCode
());
industryCaseQO
.
setUserIds
(
userIds
);
int
count
=
industryCaseDao
.
countListCasePage
(
industryCaseQO
);
if
(
count
==
0
)
{
return
ResultBody
.
success
(
PageResult
.
buildPage
(
industryCaseQO
.
getPageNo
(),
industryCaseQO
.
getPageSize
(),
count
));
}
Integer
pageNo
=
industryCaseQO
.
getPageNo
();
industryCaseQO
.
buildCurrentPage
();
List
<
IndustryCaseDO
>
industryCaseDOList
=
industryCaseDao
.
listCasePage
(
industryCaseQO
);
List
<
IndustryCaseVO
>
industryCaseVOS
=
industryCaseDOList
.
stream
().
map
(
IndustryCaseDO:
:
buildIndustryCaseVO
).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
industryCaseQO
.
getPageSize
(),
count
,
industryCaseVOS
));
}
@Override
public
ResultBody
details
(
Integer
id
)
{
IndustryCaseDO
industryCaseDO
=
industryCaseDao
.
details
(
id
);
if
(
industryCaseDO
!=
null
)
{
return
ResultBody
.
success
(
industryCaseDO
.
buildIndustryCaseVO
());
}
return
ResultBody
.
success
();
}
}
\ No newline at end of file
release-service/src/main/java/com/mmc/csf/release/service/impl/IndustryNewsServiceImpl.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
service
.
impl
;
import
com.mmc.csf.common.util.page.PageResult
;
import
com.mmc.csf.common.util.web.ResultBody
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.vo.IndustryNewsVO
;
import
com.mmc.csf.release.dao.IndustryNewsDao
;
import
com.mmc.csf.release.entity.IndustryNewsDO
;
import
com.mmc.csf.release.feign.UserAppApi
;
import
com.mmc.csf.release.service.IndustryNewsService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* @author: zj
* @Date: 2023/5/19 13:41
*/
@Service
public
class
IndustryNewsServiceImpl
implements
IndustryNewsService
{
@Autowired
private
IndustryNewsDao
industryNewsDao
;
@Autowired
private
UserAppApi
userAppApi
;
@Override
public
ResultBody
listNewsPage
(
IndustryCaseQO
industryCaseQO
)
{
//查询对应地区的用户
List
<
Integer
>
userIds
=
userAppApi
.
feignListUserAccountIds
(
industryCaseQO
.
getProvinceCode
(),
industryCaseQO
.
getCityCode
(),
industryCaseQO
.
getDistrictCode
());
industryCaseQO
.
setUserIds
(
userIds
);
int
count
=
industryNewsDao
.
countListNewsPage
(
industryCaseQO
);
if
(
count
==
0
)
{
return
ResultBody
.
success
(
PageResult
.
buildPage
(
industryCaseQO
.
getPageNo
(),
industryCaseQO
.
getPageSize
(),
count
));
}
Integer
pageNo
=
industryCaseQO
.
getPageNo
();
industryCaseQO
.
buildCurrentPage
();
List
<
IndustryNewsDO
>
industryNewsDOList
=
industryNewsDao
.
listNewsPage
(
industryCaseQO
);
List
<
IndustryNewsVO
>
industryNewsVOS
=
industryNewsDOList
.
stream
().
map
(
IndustryNewsDO:
:
buildIndustryNewsVO
).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
industryCaseQO
.
getPageSize
(),
count
,
industryNewsVOS
));
}
@Override
public
ResultBody
details
(
Integer
id
)
{
IndustryNewsDO
industryNewsDO
=
industryNewsDao
.
details
(
id
);
if
(
industryNewsDO
!=
null
)
{
return
ResultBody
.
success
(
industryNewsDO
.
buildIndustryNewsVO
());
}
return
ResultBody
.
success
();
}
}
release-service/src/main/java/com/mmc/csf/release/service/impl/RequirementsServiceImpl.java
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
service
.
impl
;
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.dto.UserAccountSimpleDTO
;
import
com.mmc.csf.infomation.qo.IndustryCaseQO
;
import
com.mmc.csf.infomation.vo.RequirementsInfoVO
;
import
com.mmc.csf.infomation.vo.RequirementsTypeVO
;
import
com.mmc.csf.release.dao.RequirementsDao
;
...
...
@@ -59,4 +61,20 @@ public class RequirementsServiceImpl implements RequirementsService {
requirementsDao
.
solveRequire
(
requirementsInfoId
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
listPublishPage
(
IndustryCaseQO
industryCaseQO
)
{
//查询对应地区的用户
List
<
Integer
>
userIds
=
userAppApi
.
feignListUserAccountIds
(
industryCaseQO
.
getProvinceCode
(),
industryCaseQO
.
getCityCode
(),
industryCaseQO
.
getDistrictCode
());
industryCaseQO
.
setUserIds
(
userIds
);
int
count
=
requirementsDao
.
countListPublishPage
(
industryCaseQO
);
if
(
count
==
0
)
{
return
ResultBody
.
success
(
PageResult
.
buildPage
(
industryCaseQO
.
getPageNo
(),
industryCaseQO
.
getPageSize
(),
count
));
}
Integer
pageNo
=
industryCaseQO
.
getPageNo
();
industryCaseQO
.
buildCurrentPage
();
List
<
RequirementsInfoDO
>
requirementsInfoDOList
=
requirementsDao
.
listPublishPage
(
industryCaseQO
);
List
<
RequirementsInfoVO
>
requirementsInfoVOS
=
requirementsInfoDOList
.
stream
().
map
(
RequirementsInfoDO:
:
buildRequirementsInfoVO
).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
industryCaseQO
.
getPageSize
(),
count
,
requirementsInfoVOS
));
}
}
release-service/src/main/java/com/mmc/csf/release/service/impl/TenderServiceImpl.java
0 → 100644
浏览文件 @
204efb6c
package
com
.
mmc
.
csf
.
release
.
service
.
impl
;
import
cn.afterturn.easypoi.excel.ExcelImportUtil
;
import
cn.afterturn.easypoi.excel.entity.ImportParams
;
import
com.alibaba.druid.sql.visitor.functions.If
;
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.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.TenderApplyVO
;
import
com.mmc.csf.infomation.vo.TenderNewsVO
;
import
com.mmc.csf.release.dao.TenderDao
;
import
com.mmc.csf.release.entity.TenderApplyDO
;
import
com.mmc.csf.release.entity.TenderInfoDO
;
import
com.mmc.csf.release.entity.TenderNewsDO
;
import
com.mmc.csf.release.feign.UserAppApi
;
import
com.mmc.csf.release.service.TenderService
;
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
org.springframework.transaction.interceptor.TransactionAspectSupport
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.io.File
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.stream.Collectors
;
/**
* author:zhenjie
* Date:2022/5/21
* time:17:11
*/
@Service
public
class
TenderServiceImpl
implements
TenderService
{
@Autowired
private
TenderDao
tenderDao
;
@Autowired
private
UserAppApi
userAppApi
;
@Override
@Transactional
public
ResultBody
addTenderNews
(
MultipartFile
file
,
TenderNewsVO
tenderNewsVO
)
throws
IOException
{
TenderNewsDO
tenderNewsDO
=
new
TenderNewsDO
(
tenderNewsVO
);
//检查快讯标题名称是否重复
int
count
=
tenderDao
.
countExistSameName
(
tenderNewsVO
.
getId
(),
tenderNewsDO
.
getTenderName
());
if
(
count
>
0
){
return
ResultBody
.
error
(
ResultEnum
.
EXIST_SAME_NAME_ERROR
);
}
tenderDao
.
addTenderNewsDO
(
tenderNewsDO
);
List
<
TenderInfoDO
>
tenderInfoDOList
=
new
ArrayList
<>();
ResultBody
resultBody
=
listTenderInfo
(
file
,
tenderNewsDO
);
if
(
resultBody
.
getCode
().
toString
().
equals
(
"200"
)){
tenderInfoDOList
=
(
List
<
TenderInfoDO
>)
resultBody
.
getResult
();
}
else
{
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
return
resultBody
;
}
tenderDao
.
batchAddTenderInfo
(
tenderInfoDOList
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
listTenderNews
(
Integer
pageNo
,
Integer
pageSize
,
String
tenderName
,
Date
startTime
,
Date
endTime
,
Integer
using
)
{
int
count
=
tenderDao
.
countListTenderNews
(
tenderName
,
startTime
,
endTime
,
using
);
if
(
count
==
0
)
{
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
));
}
int
itemIndex
=
(
pageNo
-
1
)
*
pageSize
;
List
<
TenderNewsDO
>
list
=
tenderDao
.
listTenderNews
(
itemIndex
,
pageSize
,
tenderName
,
startTime
,
endTime
,
using
);
List
<
TenderNewsDTO
>
pageList
=
list
.
stream
().
map
(
d
->
{
return
d
.
buildTenderNewsDTO
();
}).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
pageList
));
}
@Override
@Transactional
public
ResultBody
updateTenderNews
(
MultipartFile
file
,
TenderNewsVO
tenderNewsVO
)
throws
IOException
{
TenderNewsDO
tenderNewsDO
=
new
TenderNewsDO
(
tenderNewsVO
);
//检查快讯标题名称是否重复
int
count
=
tenderDao
.
countExistSameName
(
tenderNewsVO
.
getId
(),
tenderNewsDO
.
getTenderName
());
if
(
count
>
0
){
return
ResultBody
.
error
(
ResultEnum
.
EXIST_SAME_NAME_ERROR
);
}
if
(
file
!=
null
&&
!
file
.
isEmpty
()){
//把之前的覆盖
//删除之前的
tenderDao
.
batchRemoveTenderInfo
(
tenderNewsVO
.
getId
());
List
<
TenderInfoDO
>
tenderInfoDOList
=
new
ArrayList
<>();
ResultBody
resultBody
=
listTenderInfo
(
file
,
tenderNewsDO
);
if
(
resultBody
.
getCode
().
toString
().
equals
(
"200"
)){
tenderInfoDOList
=
(
List
<
TenderInfoDO
>)
resultBody
.
getResult
();
}
else
{
TransactionAspectSupport
.
currentTransactionStatus
().
setRollbackOnly
();
return
resultBody
;
}
tenderDao
.
batchAddTenderInfo
(
tenderInfoDOList
);
}
tenderDao
.
updateTenderNews
(
tenderNewsDO
);
return
ResultBody
.
success
();
}
private
ResultBody
listTenderInfo
(
MultipartFile
file
,
TenderNewsDO
tenderNewsDO
)
throws
IOException
{
//TenderNewsDO tenderNewsDO = new TenderNewsDO(tenderNewsVO);
// ImportParams params = new ImportParams();
// params.setTitleRows(0);
// params.setHeadRows(1);
// File importFile = MultipartFileUtil.multipartFileToFile(file);
// List<ExcelTenderInfo> list = ExcelImportUtil.importExcel(importFile, ExcelTenderInfo.class, params);
// //删除必填项都为空的记录,有一个空的情况不去除,可以提醒用户重新上传
// list.removeIf(d-> d.getTenderContent() == null && d.getTenderInfoNo() == null);
// // 删除临时文件
// MultipartFileUtil.delteTempFile(importFile);
// //判断是否为空,空的话,要提醒
// if(list.isEmpty()){
// return ResultBody.error(ResultEnum.FILE_PARSE_ERROR);
// }
// //把之前的覆盖
// //删除之前的
// //tenderDao.batchRemoveTenderInfo(tenderNewsVO.getId());
// //添加
// List<TenderInfoDO> tenderInfoDOList = new ArrayList<>();
// for(ExcelTenderInfo tenderInfo : list){
// TenderInfoDO tenderInfoDO = new TenderInfoDO();
// tenderInfoDO.setTenderNewsId(tenderNewsDO.getId());
// //不能为空,
// if(tenderInfo.getTenderInfoNo() == null || tenderInfo.getTenderInfoNo().trim().isEmpty()){
// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
// return ResultBody.error(ResultEnum.TENDER_FORMAT_ERROR);
// }else {
// tenderInfoDO.setTenderInfoNo(tenderInfo.getTenderInfoNo().trim());
// }
// //判断长度,不能为空,且长度在64之内
// if(tenderInfo.getTenderContent() == null || tenderInfo.getTenderContent().trim().isEmpty()){
// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
// return ResultBody.error(ResultEnum.TENDER_FORMAT_ERROR);
// }else {
// if(tenderInfo.getTenderContent().trim().length() > 120){
// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
// return ResultBody.error(ResultEnum.TENDER_CONTENT_TOO_LONG_ERROR);
// }
// tenderInfoDO.setTenderContent(tenderInfo.getTenderContent().trim());
// }
// //做判断
// BigDecimal beforeTenderPrice = BigDecimal.valueOf(10000000);
// BigDecimal afterTenderPrice = tenderInfo.getTenderPrice() == null ? BigDecimal.ZERO : tenderInfo.getTenderPrice();
// if( afterTenderPrice.compareTo(BigDecimal.ZERO) >= 0 && afterTenderPrice.compareTo(beforeTenderPrice) <= 0 ){
// tenderInfoDO.setTenderPrice(afterTenderPrice);
// }else {
// //抛出异常
// TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
// return ResultBody.error(ResultEnum.PRICE_TO_HIGH_ERROR);
// }
// tenderInfoDOList.add(tenderInfoDO);
// }
// return ResultBody.success(tenderInfoDOList);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
removeTenderNews
(
Integer
id
)
{
tenderDao
.
removeTenderNews
(
id
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
listTenderInfo
(
Integer
pageNo
,
Integer
pageSize
,
Integer
tenderNewsId
)
{
int
count
=
tenderDao
.
countListTenderInfo
(
tenderNewsId
);
if
(
count
==
0
)
{
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
));
}
int
itemIndex
=
(
pageNo
-
1
)
*
pageSize
;
List
<
TenderInfoDO
>
list
=
tenderDao
.
listTenderInfo
(
itemIndex
,
pageSize
,
tenderNewsId
);
List
<
TenderInfoDTO
>
pageList
=
list
.
stream
().
map
(
d
->
{
return
d
.
buildTenderInfoDTO
();
}).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
pageList
));
}
@Override
public
ResultBody
updateTenderInfo
(
Integer
id
,
String
tenderContent
,
BigDecimal
tenderPrice
)
{
tenderDao
.
updateTenderInfo
(
id
,
tenderContent
,
tenderPrice
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
addTenderApply
(
TenderApplyVO
tenderApplyVO
)
{
//判断之前有没有申请
TenderApplyDO
beforeTenderApplyDO
=
tenderDao
.
getTenderApplyByUId
(
tenderApplyVO
.
getUserAccountId
(),
tenderApplyVO
.
getTenderInfoId
());
if
(
beforeTenderApplyDO
!=
null
){
return
ResultBody
.
error
(
ResultEnum
.
HAS_BEEN_APPLY_ERROR
);
}
TenderApplyDO
tenderApplyDO
=
new
TenderApplyDO
(
tenderApplyVO
);
tenderDao
.
addTenderApply
(
tenderApplyDO
);
return
ResultBody
.
success
();
}
@Override
public
ResultBody
listTenderApply
(
Integer
pageNo
,
Integer
pageSize
,
Integer
tenderNewsId
,
Integer
tenderInfoId
,
String
keyword
)
{
int
count
=
tenderDao
.
countListTenderApply
(
tenderNewsId
,
tenderInfoId
,
keyword
);
if
(
count
==
0
)
{
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
));
}
int
itemIndex
=
(
pageNo
-
1
)
*
pageSize
;
List
<
TenderApplyDO
>
list
=
tenderDao
.
listTenderApply
(
itemIndex
,
pageSize
,
tenderNewsId
,
tenderInfoId
,
keyword
);
List
<
TenderApplyDTO
>
pageList
=
list
.
stream
().
map
(
d
->
{
return
d
.
buildTenderApplyDTO
();
}).
collect
(
Collectors
.
toList
());
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
pageList
));
}
@Override
public
ResultBody
listTenderInfoApp
(
Integer
pageNo
,
Integer
pageSize
,
Integer
tenderNewsId
,
Integer
userAccountId
)
{
int
count
=
tenderDao
.
countListTenderInfoApp
(
tenderNewsId
);
int
itemIndex
=
(
pageNo
-
1
)
*
pageSize
;
if
(
count
==
0
)
{
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
));
}
List
<
TenderInfoDO
>
list
=
tenderDao
.
listTenderInfoApp
(
itemIndex
,
pageSize
,
tenderNewsId
);
List
<
AppTenderInfoDTO
>
pageList
=
list
.
stream
().
map
(
d
->
{
return
d
.
buildAppTenderInfoDTO
();
}).
collect
(
Collectors
.
toList
());
List
<
TenderApplyDO
>
applyDOList
=
tenderDao
.
listAppTenderApply
(
tenderNewsId
,
userAccountId
);
if
(
userAccountId
==
null
){
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
pageList
));
}
for
(
AppTenderInfoDTO
appTenderInfoDTO
:
pageList
){
for
(
TenderApplyDO
tenderApplyDO
:
applyDOList
){
if
(
tenderApplyDO
.
getTenderInfoId
().
toString
().
equals
(
appTenderInfoDTO
.
getId
().
toString
())){
appTenderInfoDTO
.
setApply
(
1
);
break
;
}
}
}
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
pageList
));
}
@Override
public
ResultBody
listTenderInfoAppLatest
(
Integer
pageNo
,
Integer
pageSize
,
Integer
userAccountId
)
{
TenderNewsDO
tenderNewsDO
=
tenderDao
.
latestTenderNewsDO
();
if
(
tenderNewsDO
==
null
){
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
0
));
}
int
count
=
tenderDao
.
countListTenderInfoApp
(
tenderNewsDO
.
getId
());
int
itemIndex
=
(
pageNo
-
1
)
*
pageSize
;
List
<
TenderInfoDO
>
list
=
tenderDao
.
listTenderInfoApp
(
itemIndex
,
pageSize
,
tenderNewsDO
.
getId
());
List
<
AppTenderInfoDTO
>
pageList
=
list
.
stream
().
map
(
d
->
{
return
d
.
buildAppTenderInfoDTO
();
}).
collect
(
Collectors
.
toList
());
if
(
userAccountId
==
null
){
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
pageList
));
}
List
<
TenderApplyDO
>
applyDOList
=
tenderDao
.
listAppTenderApply
(
tenderNewsDO
.
getId
(),
userAccountId
);
for
(
AppTenderInfoDTO
appTenderInfoDTO
:
pageList
){
for
(
TenderApplyDO
tenderApplyDO
:
applyDOList
){
if
(
tenderApplyDO
.
getTenderInfoId
().
toString
().
equals
(
appTenderInfoDTO
.
getId
().
toString
())){
appTenderInfoDTO
.
setApply
(
1
);
break
;
}
}
}
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
pageSize
,
count
,
pageList
));
}
@Override
public
ResultBody
listNewTenderInfo
(
IndustryCaseQO
industryCaseQO
)
{
//查询对应地区的用户
List
<
Integer
>
userIds
=
userAppApi
.
feignListUserAccountIds
(
industryCaseQO
.
getProvinceCode
(),
industryCaseQO
.
getCityCode
(),
industryCaseQO
.
getDistrictCode
());
industryCaseQO
.
setUserIds
(
userIds
);
int
count
=
tenderDao
.
countNewListTenderInfo
(
industryCaseQO
);
if
(
count
==
0
)
{
return
ResultBody
.
success
(
PageResult
.
buildPage
(
0
,
0
,
count
));
}
Integer
pageNo
=
industryCaseQO
.
getPageNo
();
industryCaseQO
.
buildCurrentPage
();
List
<
TenderInfoDO
>
list
=
tenderDao
.
listNewListTenderInfo
(
industryCaseQO
);
List
<
Integer
>
tenderInfoIds
=
list
.
stream
().
map
(
TenderInfoDO:
:
getId
).
collect
(
Collectors
.
toList
());
List
<
AppTenderInfoDTO
>
pageList
=
list
.
stream
().
map
(
d
->
{
return
d
.
buildAppTenderInfoDTO
();
}).
collect
(
Collectors
.
toList
());
Integer
applyUserId
=
1
;
//查出已申请过的并做标记
List
<
Integer
>
applyTenderInfoIds
=
tenderDao
.
listApplyTenderInfoIds
(
tenderInfoIds
,
applyUserId
);
if
(
CollectionUtils
.
isNotEmpty
(
applyTenderInfoIds
))
{
pageList
.
forEach
(
d
->{
if
(
applyTenderInfoIds
.
contains
(
d
.
getId
())){
d
.
setApply
(
1
);
}
});
}
return
ResultBody
.
success
(
PageResult
.
buildPage
(
pageNo
,
industryCaseQO
.
getPageSize
(),
count
,
pageList
));
}
}
release-service/src/main/resources/application-dev.yml
浏览文件 @
204efb6c
...
...
@@ -48,6 +48,8 @@ spring:
loadbalancer
:
retry
:
enabled
:
true
jackson
:
date-format
:
yyyy-MM-dd HH:mm:ss
#Redis
redis
:
database
:
0
...
...
release-service/src/main/resources/application-product.yml
浏览文件 @
204efb6c
...
...
@@ -48,6 +48,8 @@ spring:
loadbalancer
:
retry
:
enabled
:
true
jackson
:
date-format
:
yyyy-MM-dd HH:mm:ss
#Redis
redis
:
database
:
0
...
...
release-service/src/main/resources/application-test.yml
浏览文件 @
204efb6c
...
...
@@ -48,6 +48,8 @@ spring:
loadbalancer
:
retry
:
enabled
:
true
jackson
:
date-format
:
yyyy-MM-dd HH:mm:ss
#Redis
redis
:
database
:
0
...
...
release-service/src/main/resources/mapper/case/IndustryCaseDao.xml
0 → 100644
浏览文件 @
204efb6c
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.csf.release.dao.IndustryCaseDao"
>
<select
id=
"countListCasePage"
resultType=
"java.lang.Integer"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
select count(*) from industry_case
where is_deleted = 0
<if
test=
" userIds != null "
>
<foreach
collection=
"userIds"
item=
"id"
index=
"index"
open=
"and user_account_id in ("
close=
")"
separator=
","
>
#{id}
</foreach>
</if>
<if
test=
"date != null "
>
Date(create_time) = #{date}
</if>
</select>
<select
id=
"listCasePage"
resultType=
"com.mmc.csf.release.entity.IndustryCaseDO"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
select id,
case_title,
case_author,
user_account_id,
surface_img,
case_contents,
create_time,
update_time
from industry_case
where is_deleted = 0
<if
test=
" userIds != null "
>
<foreach
collection=
"userIds"
item=
"id"
index=
"index"
open=
"and user_account_id in ("
close=
")"
separator=
","
>
#{id}
</foreach>
</if>
<if
test=
"date != null "
>
Date(create_time) = #{date}
</if>
order by create_time desc
limit #{pageNo}, #{pageSize}
</select>
<select
id=
"details"
resultType=
"com.mmc.csf.release.entity.IndustryCaseDO"
>
select id,
case_title,
case_author,
user_account_id,
surface_img,
case_contents,
create_time,
update_time
from industry_case
where is_deleted = 0 and id = #{id}
</select>
</mapper>
\ No newline at end of file
release-service/src/main/resources/mapper/news/IndustryNewsDao.xml
0 → 100644
浏览文件 @
204efb6c
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.csf.release.dao.IndustryNewsDao"
>
<select
id=
"countListNewsPage"
resultType=
"java.lang.Integer"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
select count(*) from industry_news
where is_deleted = 0
<if
test=
" userIds != null "
>
<foreach
collection=
"userIds"
item=
"id"
index=
"index"
open=
"and user_account_id in ("
close=
")"
separator=
","
>
#{id}
</foreach>
</if>
<if
test=
"date != null "
>
Date(create_time) = #{date}
</if>
</select>
<select
id=
"listNewsPage"
resultType=
"com.mmc.csf.release.entity.IndustryNewsDO"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
select id,
news_title,
news_author,
user_account_id,
surface_img,
news_contents,
create_time,
update_time
from industry_news
where is_deleted = 0
<if
test=
" userIds != null "
>
<foreach
collection=
"userIds"
item=
"id"
index=
"index"
open=
"and user_account_id in ("
close=
")"
separator=
","
>
#{id}
</foreach>
</if>
<if
test=
"date != null "
>
Date(create_time) = #{date}
</if>
order by create_time desc
limit #{pageNo}, #{pageSize}
</select>
<select
id=
"details"
resultType=
"com.mmc.csf.release.entity.IndustryNewsDO"
>
select id,
news_title,
news_author,
user_account_id,
surface_img,
news_contents,
create_time,
update_time
from industry_news
where is_deleted = 0 and id = #{id}
</select>
</mapper>
\ No newline at end of file
release-service/src/main/resources/mapper/requirements/RequirementsDao.xml
浏览文件 @
204efb6c
...
...
@@ -21,4 +21,50 @@
<select
id=
"getRequirementsInfoById"
resultType=
"com.mmc.csf.release.entity.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>
<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=
"date != null "
>
Date(create_time) = #{date}
</if>
<if
test=
"provinceCode != null "
>
province_code = #{provinceCode}
</if>
<if
test=
"cityCode != null "
>
city_code = #{cityCode}
</if>
<if
test=
"districtCode != null "
>
district_code = #{districtCode}
</if>
</select>
<select
id=
"listPublishPage"
resultType=
"com.mmc.csf.release.entity.RequirementsInfoDO"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
select id,
requirement_type_id,
user_account_id,
publish_name,
publish_phone,
require_description,
is_solved,
is_deleted,
create_time,
update_time
from requirements_info
where is_deleted = 0
<if
test=
"date != null "
>
Date(create_time) = #{date}
</if>
<if
test=
"provinceCode != null "
>
province_code = #{provinceCode}
</if>
<if
test=
"cityCode != null "
>
city_code = #{cityCode}
</if>
<if
test=
"districtCode != null "
>
district_code = #{districtCode}
</if>
order by create_time desc
limit #{pageNo}, #{pageSize}
</select>
</mapper>
\ No newline at end of file
release-service/src/main/resources/mapper/tender/TenderDao.xml
0 → 100644
浏览文件 @
204efb6c
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mmc.csf.release.dao.TenderDao"
>
<resultMap
id=
"tenderNewsResultMap"
type=
"com.mmc.csf.release.entity.TenderNewsDO"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"tender_name"
property=
"tenderName"
/>
<result
column=
"is_using"
property=
"using"
/>
<result
column=
"port"
property=
"port"
/>
<result
column=
"is_deleted"
property=
"deleted"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
<resultMap
id=
"tenderInfoResultMap"
type=
"com.mmc.csf.release.entity.TenderInfoDO"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"tender_news_id"
property=
"tenderNewsId"
/>
<result
column=
"tender_info_no"
property=
"tenderInfoNo"
/>
<result
column=
"tender_content"
property=
"tenderContent"
/>
<result
column=
"tender_price"
property=
"tenderPrice"
/>
<result
column=
"is_deleted"
property=
"deleted"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
<resultMap
id=
"tenderApplyResultMap"
type=
"com.mmc.csf.release.entity.TenderApplyDO"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"tender_news_id"
property=
"tenderNewsId"
/>
<result
column=
"user_account_id"
property=
"userAccountId"
/>
<result
column=
"tender_info_id"
property=
"tenderInfoId"
/>
<result
column=
"nick_name"
property=
"nickName"
/>
<result
column=
"user_name"
property=
"userName"
/>
<result
column=
"phone_num"
property=
"phoneNum"
/>
<result
column=
"is_deleted"
property=
"deleted"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
<result
column=
"tender_info_no"
property=
"tenderInfoNo"
/>
<result
column=
"tender_content"
property=
"tenderContent"
/>
</resultMap>
<insert
id=
"addTenderNewsDO"
useGeneratedKeys=
"true"
keyProperty=
"id"
parameterType=
"com.mmc.csf.release.entity.TenderNewsDO"
>
insert into tender_news(tender_name,is_using,port,create_time)
values(#{tenderName},#{using},#{port},NOW())
</insert>
<insert
id=
"batchAddTenderInfo"
useGeneratedKeys=
"true"
keyProperty=
"id"
parameterType=
"com.mmc.csf.release.entity.TenderInfoDO"
>
insert into
tender_info(tender_news_id,tender_info_no,tender_content,tender_price,create_time)
values
<foreach
item=
"item"
index=
"index"
collection=
"list"
separator=
","
>
(
#{item.tenderNewsId},
#{item.tenderInfoNo},
#{item.tenderContent},
#{item.tenderPrice},
NOW()
)
</foreach>
</insert>
<insert
id=
"addTenderApply"
parameterType=
"com.mmc.csf.release.entity.TenderApplyDO"
>
insert into tender_apply(user_account_id, tender_news_id, tender_info_id, nick_name, user_name, phone_num, create_time)
values(#{userAccountId},#{tenderNewsId},#{tenderInfoId},#{nickName},#{userName},#{phoneNum},NOW());
</insert>
<update
id=
"batchRemoveTenderInfo"
>
update tender_info set is_deleted = 1 where tender_news_id = #{tenderNewsId}
</update>
<update
id=
"updateTenderNews"
parameterType=
"com.mmc.csf.release.entity.TenderNewsDO"
>
update tender_news
<set>
<if
test=
" tenderName != null and tenderName != ''"
>
tender_name = #{tenderName},
</if>
<if
test=
" using != null "
>
is_using = #{using},
</if>
<if
test=
" port != null "
>
port = #{port}
</if>
</set>
where id = #{id}
</update>
<update
id=
"removeTenderNews"
>
update tender_news set is_deleted = 1 where id = #{id}
</update>
<update
id=
"updateTenderInfo"
>
update tender_info
<set>
<if
test=
" tenderContent != null "
>
tender_content = #{tenderContent},
</if>
<if
test=
" tenderPrice != null "
>
tender_price = #{tenderPrice}
</if>
</set>
where id = #{id}
</update>
<select
id=
"countListTenderNews"
resultType=
"java.lang.Integer"
>
select count(*) from tender_news
where is_deleted = 0
<if
test=
" tenderName != null and tenderName != '' "
>
and tender_name like CONCAT('%',#{tenderName},'%')
</if>
<if
test=
" startTime != null "
>
and create_time
>
#{startTime}
</if>
<if
test=
" endTime != null "
>
and create_time
<
#{endTime}
</if>
<if
test=
" using != null "
>
and is_using = #{using}
</if>
</select>
<select
id=
"listTenderNews"
resultMap=
"tenderNewsResultMap"
>
select id,tender_name,is_using,port,is_deleted,create_time from tender_news
where is_deleted = 0
<if
test=
" tenderName != null and tenderName != '' "
>
and tender_name like CONCAT('%',#{tenderName},'%')
</if>
<if
test=
" startTime != null "
>
and create_time
>
#{startTime}
</if>
<if
test=
" endTime != null "
>
and create_time
<
#{endTime}
</if>
<if
test=
" using != null "
>
and is_using = #{using}
</if>
order by create_time desc
limit #{itemIndex},#{pageSize}
</select>
<select
id=
"countListTenderInfoApp"
resultType=
"java.lang.Integer"
>
select count(*) from tender_info
where is_deleted = 0 and tender_news_id = #{tenderNewsId}
</select>
<select
id=
"listTenderInfoApp"
resultMap=
"tenderInfoResultMap"
>
select id, tender_news_id, tender_price, tender_info_no, tender_content, is_deleted, create_time, update_time
from tender_info
where is_deleted = 0
<if
test=
" tenderNewsId != null "
>
and tender_news_id = #{tenderNewsId}
</if>
order by id
limit #{itemIndex},#{pageSize}
</select>
<select
id=
"countListTenderInfo"
resultType=
"java.lang.Integer"
>
select count(*) from tender_info
where is_deleted = 0 and tender_news_id = #{tenderNewsId}
</select>
<select
id=
"listTenderInfo"
resultMap=
"tenderInfoResultMap"
>
select id, tender_news_id, tender_price, tender_info_no, tender_content, is_deleted, create_time, update_time
from tender_info
where is_deleted = 0
<if
test=
" tenderNewsId != null "
>
and tender_news_id = #{tenderNewsId}
</if>
order by id
limit #{itemIndex},#{pageSize}
</select>
<select
id=
"getTenderApplyByUId"
resultMap=
"tenderApplyResultMap"
>
select id, user_account_id, tender_news_id, tender_info_id, nick_name,
user_name, phone_num, is_deleted, create_time, update_time
from tender_apply
where user_account_id = #{userAccountId} and tender_info_id = #{tenderInfoId}
</select>
<select
id=
"countListTenderApply"
resultType=
"java.lang.Integer"
>
SELECT
count(*)
FROM
tender_apply ta left join tender_info ti on ta.tender_info_id = ti.id
where ti.is_deleted = 0
<if
test=
" tenderNewsId != null "
>
and ta.tender_news_id = #{tenderNewsId}
</if>
<if
test=
" tenderInfoId != null "
>
and ti.id = #{tenderInfoId}
</if>
<if
test=
" keyword != null and keyword != '' "
>
and ta.user_name like CONCAT('%',#{keyword},'%')
</if>
</select>
<select
id=
"listTenderApply"
resultMap=
"tenderApplyResultMap"
>
SELECT
ta.id,
ti.tender_info_no,
ta.user_account_id,
ti.tender_content,
ta.tender_news_id,
ta.tender_info_id,
ta.nick_name,
ta.user_name,
ta.phone_num,
ta.is_deleted,
ta.create_time,
ta.update_time
FROM
tender_apply ta left join tender_info ti on ta.tender_info_id = ti.id
where ti.is_deleted = 0
<if
test=
" tenderNewsId != null "
>
and ta.tender_news_id = #{tenderNewsId}
</if>
<if
test=
" tenderInfoId != null "
>
and ti.id = #{tenderInfoId}
</if>
<if
test=
" keyword != null and keyword != '' "
>
and ta.user_name like CONCAT('%',#{keyword},'%')
</if>
order by ti.id
limit #{itemIndex}, #{pageSize}
</select>
<select
id=
"listAppTenderApply"
resultMap=
"tenderApplyResultMap"
>
SELECT
ta.id,
ta.tender_info_id,
ti.tender_news_id,
ti.tender_info_no,
ti.tender_content,
ti.is_deleted,
ti.create_time,
ti.update_time,
ta.user_account_id
FROM
tender_apply ta
INNER JOIN tender_info ti ON ta.tender_info_id = ti.id
WHERE
ti.is_deleted = 0 and ta.tender_news_id = #{tenderNewsId} and ta.user_account_id = #{userAccountId}
</select>
<select
id=
"latestTenderNewsDO"
resultMap=
"tenderNewsResultMap"
>
select id,tender_name,is_using,port,is_deleted,create_time from tender_news
where is_deleted = 0 and is_using = 1
order by create_time desc
limit 0, 1
</select>
<select
id=
"countExistSameName"
resultType=
"java.lang.Integer"
>
select count(*) from tender_news
where is_deleted = 0
<if
test=
" id != null "
>
and id
<>
#{id}
</if>
<if
test=
" tenderName != null "
>
and tender_name = #{tenderName}
</if>
</select>
<select
id=
"countNewListTenderInfo"
resultType=
"java.lang.Integer"
parameterType=
"com.mmc.csf.infomation.qo.IndustryCaseQO"
>
select count(*) from tender_news tn INNER JOIN tender_info ti ON tn.id = ti.tender_news_id
where
tn.is_deleted = 0 and tn.is_using = 1 and ti.is_deleted = 0
<if
test=
" date != null "
>
and Date(ti.create_time) = #{date}
</if>
<if
test=
" userIds != null "
>
<foreach
collection=
"userIds"
item=
"id"
index=
"index"
open=
"and tn.user_account_id in ("
close=
")"
separator=
","
>
#{id}
</foreach>
</if>
</select>
<select
id=
"listNewListTenderInfo"
resultType=
"com.mmc.csf.release.entity.TenderInfoDO"
>
select
ti.id, ti.tender_news_id, ti.tender_price, ti.tender_info_no, ti.tender_content, ti.is_deleted, ti.create_time, ti.update_time
from tender_news tn INNER JOIN tender_info ti ON tn.id = ti.tender_news_id
where
tn.is_deleted = 0 and tn.is_using = 1 and ti.is_deleted = 0
<if
test=
" date != null "
>
and Date(ti.create_time) = #{date}
</if>
<if
test=
" userIds != null "
>
<foreach
collection=
"userIds"
item=
"id"
index=
"index"
open=
"and tn.user_account_id in ("
close=
")"
separator=
","
>
#{id}
</foreach>
</if>
order by ti.create_time
limit #{pageNo}, #{pageSize}
</select>
<select
id=
"listApplyTenderInfoIds"
resultType=
"java.util.List"
>
select ti.id
from tender_news tn INNER JOIN tender_info ti ON tn.id = ti.tender_news_id INNER JOIN tender_apply ta ON ta.tender_info_id = ti.id
where ta.user_account_id = #{applyUserId}
<if
test=
"tenderInfoIds != null"
>
<foreach
collection=
"tenderInfoIds"
item=
"id"
index=
"index"
open=
"and ta.tender_info_id in ("
close=
")"
separator=
","
>
#{id}
</foreach>
</if>
</select>
</mapper>
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论