Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
H
hroToOA
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
private-group
hroToOA
Commits
c3eb2d4c
Commit
c3eb2d4c
authored
Mar 23, 2021
by
chai
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
mybatis_plus
parent
b9ea9410
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
418 additions
and
2 deletions
+418
-2
Application.java
src/main/java/com/dianmi/Application.java
+2
-0
CustProjectController.java
...ain/java/com/dianmi/controller/CustProjectController.java
+8
-0
CustProject.java
src/main/java/com/dianmi/entity/CustProject.java
+1
-1
CustProjectDao.xml
src/main/resources/CustProjectDao.xml
+406
-0
bootstrap.yml
src/main/resources/bootstrap.yml
+1
-1
No files found.
src/main/java/com/dianmi/Application.java
View file @
c3eb2d4c
package
com
.
dianmi
;
import
org.mybatis.spring.annotation.MapperScan
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.cloud.client.discovery.EnableDiscoveryClient
;
@EnableDiscoveryClient
@SpringBootApplication
@MapperScan
(
"com.dianmi.mapper"
)
public
class
Application
{
public
static
void
main
(
String
[]
args
)
{
...
...
src/main/java/com/dianmi/controller/CustProjectController.java
View file @
c3eb2d4c
package
com
.
dianmi
.
controller
;
import
com.dianmi.entity.CustProject
;
import
com.dianmi.interfaces.CustProjectService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.stereotype.Controller
;
import
java.util.List
;
/**
* <p>
* 项目表 前端控制器
...
...
@@ -18,9 +23,12 @@ import org.springframework.stereotype.Controller;
@RequestMapping
(
"/cust-project"
)
public
class
CustProjectController
{
@Autowired
private
CustProjectService
custProjectService
;
@GetMapping
(
"/getProjectList"
)
public
String
getActionTest
()
{
List
<
CustProject
>
list
=
custProjectService
.
list
();
System
.
out
.
println
(
"getActionTest---"
);
return
"getActionTest"
;
}
...
...
src/main/java/com/dianmi/entity/CustProject.java
View file @
c3eb2d4c
...
...
@@ -28,7 +28,7 @@ public class CustProject extends Model<CustProject> {
/**
* 客户ID
*/
private
Lo
ng
customerId
;
// private Stri
ng customerId;
/**
* 父项目ID
...
...
src/main/resources/CustProjectDao.xml
0 → 100644
View file @
c3eb2d4c
<?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.dianmi.dao.CustProjectDao"
>
<resultMap
id=
"BaseResultMap"
type=
"com.dianmi.domain.entity.CustProject"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"customer_id"
property=
"customerId"
/>
<result
column=
"parent_id"
property=
"parentId"
/>
<result
column=
"wo_id"
property=
"woId"
/>
<result
column=
"project_name"
property=
"projectName"
/>
<result
column=
"project_code"
property=
"projectCode"
/>
<result
column=
"business_type_name"
property=
"businessTypeName"
/>
<result
column=
"business_type_code"
property=
"businessTypeCode"
/>
<result
column=
"sign_company_id"
property=
"signCompanyId"
/>
<result
column=
"sign_company_name"
property=
"signCompanyName"
/>
<result
column=
"is_exclusive"
property=
"isExclusive"
/>
<result
column=
"exclusive_description"
property=
"exclusiveDescription"
/>
<result
column=
"nc_code"
property=
"ncCode"
/>
<result
column=
"interface_man"
property=
"interfaceMan"
/>
<result
column=
"interface_man_territory"
property=
"interfaceManTerritory"
/>
<result
column=
"interface_man_phone"
property=
"interfaceManPhone"
/>
<result
column=
"interface_man_email"
property=
"interfaceManEmail"
/>
<result
column=
"remark"
property=
"remark"
/>
<result
column=
"if_need_recruitment"
property=
"ifNeedRecruitment"
/>
<result
column=
"recruiter"
property=
"recruiter"
/>
<result
column=
"service_status"
property=
"serviceStatus"
/>
<result
column=
"ejy_wage_auto_card"
property=
"ejyWageAutoCard"
/>
<result
column=
"data_source"
property=
"dataSource"
/>
<result
column=
"service_mode"
property=
"serviceMode"
/>
<result
column=
"service_province"
property=
"serviceProvince"
/>
<result
column=
"service_city"
property=
"serviceCity"
/>
<result
column=
"tax_rate"
property=
"taxRate"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id,
customer_id,
parent_id,
wo_id,
project_name,
project_code,
business_type_name,
business_type_code,
sign_company_id,
sign_company_name,
is_exclusive,
exclusive_description,
nc_code,
interface_man,
interface_man_territory,
interface_man_phone,
interface_man_email,
remark,
if_need_recruitment,
recruiter,
service_status,
ejy_wage_auto_card,
data_source,
service_mode,
service_province,
service_city,
tax_rate,
create_time,
update_time
</sql>
<select
id=
"selectProject"
resultType=
"com.dianmi.dto.proj.CustProjectDto"
>
select
cp.id,
cp.project_name,
cp.project_code,
cp.customer_id,
cp.cust_sale_process_id as custSaleProcessId,
c.customer_name,
c.customer_code,
(SELECT id FROM cust_project WHERE parent_id = cp.id order by id LIMIT 1) firstProjectId,
(SELECT GROUP_CONCAT(DISTINCT user_name) FROM proj_member WHERE project_id in (SELECT id FROM cust_project WHERE
parent_id = cp.id and `type` = '销售')) sellerName,
cp.business_type_name,
cp.sign_company_name,
cp.service_status
from
cust_project cp
left join customer c on c.id = cp.customer_id
where
parent_id = 0 and ((cp.area_code != 'AR0003' AND cp.area_code != 'AR0001') or cp.area_code is null)
<if
test=
"pojo!=null"
>
and cp.id in (
SELECT parent_id FROM cust_project WHERE id in
( select project_id from proj_member where user_account in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"pojo.memberSet"
>
#{item}
</foreach>
)
)
<if
test=
"pojo.searchType==1"
>
<if
test=
"pojo.searchContent!=null"
>
and (c.customer_name like #{pojo.searchContent} or c.customer_code like #{pojo.searchContent})
</if>
</if>
<if
test=
"pojo.searchType==2"
>
<if
test=
"pojo.searchContent!=null"
>
and (cp.project_name like #{pojo.searchContent} or cp.project_code like #{pojo.searchContent})
</if>
</if>
<if
test=
"pojo.searchType==3"
>
<if
test=
"pojo.searchContent!=null"
>
and cp.id in
(
select parent_id from cust_project
where (project_name like #{pojo.searchContent} or project_code like #{pojo.searchContent})
)
</if>
</if>
<if
test=
"pojo.sellerAccounts!=null"
>
and cp.id in (
select project_id from proj_member where `type` = '销售' and user_account in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"pojo.sellerAccounts"
>
#{item}
</foreach>
UNION
SELECT project_id FROM proj_contract
where
zwzy_acct in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"pojo.sellerAccounts"
>
#{item}
</foreach>
or kf_followup_account in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"pojo.sellerAccounts"
>
#{item}
</foreach>
)
</if>
</if>
<if
test=
"projectIds != null and projectIds.size()>0"
>
and cp.id in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"projectIds"
>
#{item}
</foreach>
</if>
order by cp.id desc
</select>
<!--财务角色,看到全部数据,筛选条件 -->
<select
id=
"selectProjectByCaiWu"
resultType=
"com.dianmi.dto.proj.CustProjectDto"
>
select
cp.id,
cp.project_name,
cp.project_code,
cp.customer_id,
c.customer_name,
c.customer_code,
cp.cust_sale_process_id as custSaleProcessId,
(SELECT id FROM cust_project WHERE parent_id = cp.id order by id LIMIT 1) firstProjectId,
(SELECT GROUP_CONCAT(DISTINCT user_name) FROM proj_member WHERE project_id in (SELECT id FROM cust_project WHERE
parent_id = cp.id and `type` = '销售')) sellerName,
cp.business_type_name,
cp.sign_company_name,
cp.service_status
from
cust_project cp
left join customer c on c.id = cp.customer_id
where
parent_id = 0 and ((cp.area_code != 'AR0003' AND cp.area_code != 'AR0001') or cp.area_code is null)
<if
test=
"pojo!=null"
>
<if
test=
"pojo.searchType==1"
>
<if
test=
"pojo.searchContent!=null"
>
and (c.customer_name like #{pojo.searchContent} or c.customer_code like #{pojo.searchContent})
</if>
</if>
<if
test=
"pojo.searchType==2"
>
<if
test=
"pojo.searchContent!=null"
>
and (cp.project_name like #{pojo.searchContent} or cp.project_code like #{pojo.searchContent})
</if>
</if>
<if
test=
"pojo.searchType==3"
>
<if
test=
"pojo.searchContent!=null"
>
and cp.id in
(
select parent_id from cust_project
where (project_name like #{pojo.searchContent} or project_code like #{pojo.searchContent})
)
</if>
</if>
<if
test=
"pojo.sellerAccounts!=null"
>
and cp.id in (
select project_id from proj_member where `type` = '销售' and user_account in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"pojo.sellerAccounts"
>
#{item}
</foreach>
UNION
SELECT project_id FROM proj_contract
where
zwzy_acct in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"pojo.sellerAccounts"
>
#{item}
</foreach>
or kf_followup_account in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"pojo.sellerAccounts"
>
#{item}
</foreach>
)
</if>
</if>
<if
test=
"projectIds != null and projectIds.size()>0"
>
and cp.id in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"projectIds"
>
#{item}
</foreach>
</if>
order by cp.id desc
</select>
<select
id=
"selectChildList"
resultType=
"com.dianmi.dto.proj.CustProjectDto"
>
select
cp.id,
cp.project_name,
cp.project_code,
cp.customer_id,
c.customer_name,
c.customer_code,
(select GROUP_CONCAT(user_name) from proj_member where project_id = cp.id and `type` = '销售') seller_name,
cp.business_type_name,
cp.sign_company_name,
cp.service_status
from
cust_project cp
left join customer c on c.id = cp.customer_id
where cp.parent_id in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"projectIdList"
>
#{item}
</foreach>
order by cp.id desc
</select>
<select
id=
"selectByAccounts"
resultType=
"com.dianmi.domain.entity.CustProject"
>
select
<include
refid=
"Base_Column_List"
/>
from cust_project
where
parent_id != 0
and service_status = 1
and id in (
select project_id from proj_member where user_account in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"accountList"
>
#{item}
</foreach>
and `type` = '销售'
)and parent_id in (
select project_id from proj_contract
)
and id not in (
select project_id from company_sign where sign_type = 2
)
order by id desc
</select>
<select
id=
"selectNotInvalidCount"
resultType=
"java.lang.Integer"
>
select count(*) from cust_project where service_status = 1 and customer_id = #{customerId}
</select>
<select
id=
"listLigongCustProjects"
resultType=
"com.dianmi.dto.ligong.CustProjectLigongDto"
>
SELECT
foo.project_code as parentProjectCode,
cp.*,
pc.id as crmContactId
FROM
cust_project cp
JOIN customer c on c.id = cp.customer_id
join business_type bt on bt.composite_code=cp.business_type_code
left join cust_project foo on foo.id = cp.parent_id
left JOIN proj_contract pc on pc.project_id = foo.id
WHERE cp.customer_id = #{customerId}
and cp.parent_id != 0 and cp.project_code!=''
<if
test=
"signCompanyId != null and signCompanyId != ''"
>
and cp.sign_company_id =#{signCompanyId}
</if>
and bt.composite_code='YG0302'
and bt.area_code='AR0002'
order by cp.id desc
</select>
<!--根据客户id查询父项目-->
<select
id=
"getFooProjectsByCustomerId"
resultMap=
"BaseResultMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM
cust_project
WHERE
parent_id = 0
AND customer_id = #{customerId}
</select>
<select
id=
"selectByProjectCode"
resultType=
"com.dianmi.domain.entity.CustProject"
>
SELECT
<include
refid=
"Base_Column_List"
/>
from cust_project
where project_code = #{projectCode}
</select>
<select
id=
"selectChildByProjectCode"
resultType=
"com.dianmi.domain.entity.CustProject"
>
SELECT
<include
refid=
"Base_Column_List"
/>
from cust_project
where parent_id in (
SELECT
id
from cust_project
where project_code = #{projectCode}
)
</select>
<select
id=
"selectFirstProjectId"
resultType=
"java.lang.String"
>
SELECT id FROM cust_project WHERE parent_id = #{parentProjectId} order by id LIMIT 1
</select>
<select
id=
"selectAreaChild"
resultType=
"com.dianmi.crm.api.dto.CustProjectInfoDto"
>
select
cp.id id,
cp.project_name projectName,
cp.project_code projectCode,
cp.customer_id customerId,
CAST(cp.tax_rate AS decimal(14,2)) taxRate,
c.customer_name customerName,
c.customer_code customerCode,
c.area_name areaName,
cp.business_type_name businessTypeName,
cp.sign_company_name signCompanyName,
cp.service_status serviceStatus,
cp.parent_id parentId
from
cust_project cp
left join customer c on c.id = cp.customer_id
where
c.area_code = #{areaCode}
and cp.parent_id != 0
</select>
<select
id=
"selectSubProjectsBySubProjectCodes"
resultType=
"com.dianmi.dto.proj.CustProjectDto"
>
select
<include
refid=
"Base_Column_List"
/>
from cust_project
where project_code in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"subProjectCodes"
>
#{item}
</foreach>
and parent_id !=0
</select>
<select
id=
"getProjectByprojectIds"
resultType=
"com.dianmi.crm.api.dto.CustProjectInfoDto"
>
select
cp.id id,
cp.project_name projectName,
cp.project_code projectCode,
cp.customer_id customerId,
CAST(cp.tax_rate AS decimal(14,2)) taxRate,
c.customer_name customerName,
c.customer_code customerCode,
c.area_name areaName,
cp.business_type_name businessTypeName,
cp.sign_company_name signCompanyName,
cp.service_status serviceStatus,
cp.parent_id parentId
from
cust_project cp
left join customer c on c.id = cp.customer_id
where cp.id in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"projectIds"
>
#{item}
</foreach>
and cp.parent_id != 0
</select>
<select
id=
"selectChildByCode"
resultType=
"com.dianmi.crm.api.dto.CustProjectInfoDto"
>
select
cp.id id,
cp.project_name projectName,
cp.project_code projectCode,
cp.customer_id customerId,
CAST(cp.tax_rate AS decimal(14,2)) taxRate,
c.customer_name customerName,
c.customer_code customerCode,
c.area_name areaName,
c.area_code areaCode,
cp.business_type_name businessTypeName,
cp.business_type_code businessTypeCode,
cp.sign_company_name signCompanyName,
cp.service_status serviceStatus,
cp.parent_id parentId
from
cust_project cp
left join customer c on c.id = cp.customer_id
where
cp.project_code in
<foreach
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
collection=
"subProjectCodeList"
>
#{item}
</foreach>
and cp.parent_id != 0
</select>
</mapper>
src/main/resources/bootstrap.yml
View file @
c3eb2d4c
...
...
@@ -5,7 +5,7 @@ server:
#spring配置
spring
:
application
:
name
:
hro-to-oa
name
:
crm-service
cloud
:
nacos
:
discovery
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment