Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gic-platform-udesk
Overview
Overview
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
base_platform_enterprise
gic-platform-udesk
Commits
b031640c
Commit
b031640c
authored
Feb 06, 2020
by
guojuxing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
创建udesk客户
parent
3beb65b7
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
390 additions
and
0 deletions
+390
-0
GicTicketDTO.java
...api/src/main/java/com/gic/udesk/dto/gic/GicTicketDTO.java
+65
-0
TabUdeskCustomersMapper.java
...ava/com/gic/udesk/dao/mapper/TabUdeskCustomersMapper.java
+57
-0
TabUdeskCustomers.java
...src/main/java/com/gic/udesk/entity/TabUdeskCustomers.java
+74
-0
UdeskCustomersService.java
...ain/java/com/gic/udesk/service/UdeskCustomersService.java
+10
-0
UdeskCustomersServiceImpl.java
...com/gic/udesk/service/impl/UdeskCustomersServiceImpl.java
+31
-0
GicTicketApiServiceImpl.java
...gic/udesk/service/outer/impl/GicTicketApiServiceImpl.java
+47
-0
TabUdeskCustomersMapper.xml
...ice/src/main/resources/mapper/TabUdeskCustomersMapper.xml
+101
-0
GicTicketController.java
...ava/com/gic/udesk/web/controller/GicTicketController.java
+5
-0
No files found.
gic-platform-udesk-api/src/main/java/com/gic/udesk/dto/gic/GicTicketDTO.java
View file @
b031640c
...
...
@@ -17,6 +17,15 @@ public class GicTicketDTO implements Serializable{
* 1:gic基础服务 2:应用服务
*/
private
Integer
businessModuleType
;
/**
* 查找客户时使用的类型
*/
private
String
type
;
/**
* 与类型type对应的值
*/
private
String
type_content
;
/**
* 标题 必填
...
...
@@ -46,6 +55,14 @@ public class GicTicketDTO implements Serializable{
*/
private
Map
<
String
,
String
>
ticket_field
;
private
Integer
gicEnterpriseId
;
private
Integer
gicUserId
;
private
String
gicUserName
;
private
String
gicEnterpriseName
;
public
String
getSubject
()
{
return
subject
;
}
...
...
@@ -101,4 +118,52 @@ public class GicTicketDTO implements Serializable{
public
void
setTicketFieldJsonStr
(
String
ticketFieldJsonStr
)
{
this
.
ticketFieldJsonStr
=
ticketFieldJsonStr
;
}
public
Integer
getGicEnterpriseId
()
{
return
gicEnterpriseId
;
}
public
void
setGicEnterpriseId
(
Integer
gicEnterpriseId
)
{
this
.
gicEnterpriseId
=
gicEnterpriseId
;
}
public
Integer
getGicUserId
()
{
return
gicUserId
;
}
public
void
setGicUserId
(
Integer
gicUserId
)
{
this
.
gicUserId
=
gicUserId
;
}
public
String
getGicUserName
()
{
return
gicUserName
;
}
public
void
setGicUserName
(
String
gicUserName
)
{
this
.
gicUserName
=
gicUserName
;
}
public
String
getGicEnterpriseName
()
{
return
gicEnterpriseName
;
}
public
void
setGicEnterpriseName
(
String
gicEnterpriseName
)
{
this
.
gicEnterpriseName
=
gicEnterpriseName
;
}
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
String
getType_content
()
{
return
type_content
;
}
public
void
setType_content
(
String
type_content
)
{
this
.
type_content
=
type_content
;
}
}
gic-platform-udesk-service/src/main/java/com/gic/udesk/dao/mapper/TabUdeskCustomersMapper.java
0 → 100644
View file @
b031640c
package
com
.
gic
.
udesk
.
dao
.
mapper
;
import
com.gic.udesk.entity.TabUdeskCustomers
;
import
org.apache.ibatis.annotations.Param
;
public
interface
TabUdeskCustomersMapper
{
/**
* 根据主键删除
*
* @param id 主键
* @return 更新条目数
*/
int
deleteByPrimaryKey
(
Integer
id
);
/**
* 插入一条记录
*
* @param record 实体对象
* @return 更新条目数
*/
int
insert
(
TabUdeskCustomers
record
);
/**
* 动态插入一条记录
*
* @param record 实体对象
* @return 更新条目数
*/
int
insertSelective
(
TabUdeskCustomers
record
);
/**
* 根据主键查询
*
* @param id 主键
* @return 实体对象
*/
TabUdeskCustomers
selectByPrimaryKey
(
Integer
id
);
/**
* 根据主键动态更新记录
*
* @param record 实体对象
* @return 更新条目数
*/
int
updateByPrimaryKeySelective
(
TabUdeskCustomers
record
);
/**
* 根据主键更新记录
*
* @param record 实体对象
* @return 更新条目数
*/
int
updateByPrimaryKey
(
TabUdeskCustomers
record
);
TabUdeskCustomers
countCustomerId
(
@Param
(
"enterpriseId"
)
Integer
enterpriseId
,
@Param
(
"userId"
)
Integer
userId
);
}
\ No newline at end of file
gic-platform-udesk-service/src/main/java/com/gic/udesk/entity/TabUdeskCustomers.java
0 → 100644
View file @
b031640c
package
com
.
gic
.
udesk
.
entity
;
import
java.util.Date
;
/**
* tab_udesk_customers
*/
public
class
TabUdeskCustomers
{
/**
* 主键id
*/
private
Integer
id
;
/**
* 商户ID
*/
private
Integer
enterpriseId
;
/**
* gic用户id
*/
private
Integer
userId
;
/**
* udesk客户ID
*/
private
Integer
customerId
;
/**
*
*/
private
Date
createTime
;
public
Integer
getId
()
{
return
id
;
}
public
void
setId
(
Integer
id
)
{
this
.
id
=
id
;
}
public
Integer
getEnterpriseId
()
{
return
enterpriseId
;
}
public
void
setEnterpriseId
(
Integer
enterpriseId
)
{
this
.
enterpriseId
=
enterpriseId
;
}
public
Integer
getUserId
()
{
return
userId
;
}
public
void
setUserId
(
Integer
userId
)
{
this
.
userId
=
userId
;
}
public
Integer
getCustomerId
()
{
return
customerId
;
}
public
void
setCustomerId
(
Integer
customerId
)
{
this
.
customerId
=
customerId
;
}
public
Date
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
Date
createTime
)
{
this
.
createTime
=
createTime
;
}
}
\ No newline at end of file
gic-platform-udesk-service/src/main/java/com/gic/udesk/service/UdeskCustomersService.java
0 → 100644
View file @
b031640c
package
com
.
gic
.
udesk
.
service
;
import
com.gic.udesk.entity.TabUdeskCustomers
;
public
interface
UdeskCustomersService
{
int
save
(
Integer
enterpriseId
,
Integer
customerId
,
Integer
userId
);
TabUdeskCustomers
hasCustomerId
(
Integer
enterpriseId
,
Integer
userId
);
}
gic-platform-udesk-service/src/main/java/com/gic/udesk/service/impl/UdeskCustomersServiceImpl.java
0 → 100644
View file @
b031640c
package
com
.
gic
.
udesk
.
service
.
impl
;
import
com.gic.udesk.dao.mapper.TabUdeskCustomersMapper
;
import
com.gic.udesk.entity.TabUdeskCustomers
;
import
com.gic.udesk.service.UdeskCustomersService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Date
;
@Service
(
"udeskCustomersService"
)
public
class
UdeskCustomersServiceImpl
implements
UdeskCustomersService
{
@Autowired
private
TabUdeskCustomersMapper
tabUdeskCustomersMapper
;
@Override
public
int
save
(
Integer
enterpriseId
,
Integer
customerId
,
Integer
userId
)
{
TabUdeskCustomers
record
=
new
TabUdeskCustomers
();
record
.
setCreateTime
(
new
Date
());
record
.
setCustomerId
(
customerId
);
record
.
setUserId
(
userId
);
record
.
setEnterpriseId
(
enterpriseId
);
return
tabUdeskCustomersMapper
.
insert
(
record
);
}
@Override
public
TabUdeskCustomers
hasCustomerId
(
Integer
enterpriseId
,
Integer
userId
)
{
TabUdeskCustomers
obj
=
tabUdeskCustomersMapper
.
countCustomerId
(
enterpriseId
,
userId
);
return
obj
;
}
}
gic-platform-udesk-service/src/main/java/com/gic/udesk/service/outer/impl/GicTicketApiServiceImpl.java
View file @
b031640c
...
...
@@ -9,8 +9,10 @@ import com.gic.udesk.dto.UdeskTicketDetailDTO;
import
com.gic.udesk.dto.customfield.UdeskCustomFieldOptionDTO
;
import
com.gic.udesk.dto.gic.TicketRepliesDTO
;
import
com.gic.udesk.dto.gic.UdeskEnterpriseDTO
;
import
com.gic.udesk.entity.TabUdeskCustomers
;
import
com.gic.udesk.entity.TabUdeskEnterprise
;
import
com.gic.udesk.qo.TicketListQO
;
import
com.gic.udesk.service.UdeskCustomersService
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
...
...
@@ -39,6 +41,8 @@ public class GicTicketApiServiceImpl implements GicTicketApiService{
private
UdeskBaseApiService
udeskBaseApiService
;
@Autowired
private
UdeskEnterpriseService
udeskEnterpriseService
;
@Autowired
private
UdeskCustomersService
udeskCustomersService
;
/**
* udesk工单接口 (创建)
...
...
@@ -54,6 +58,11 @@ public class GicTicketApiServiceImpl implements GicTicketApiService{
*/
private
static
final
String
TICKET_DETAIL
=
"/tickets/detail"
;
/**
* 客户
*/
private
static
final
String
CUSTOMERS
=
"/customers"
;
@Override
public
ServiceResponse
<
Integer
>
saveTicket
(
GicTicketDTO
gicTicketDTO
)
{
Integer
businessModuleType
=
gicTicketDTO
.
getBusinessModuleType
();
...
...
@@ -68,6 +77,44 @@ public class GicTicketApiServiceImpl implements GicTicketApiService{
gicTicketDTO
.
setTemplate_id
(
UdeskConstant
.
APP_MODULE_TEMPLATE_ID
);
}
//查询有无客户ID
Integer
gicEnterpriseId
=
gicTicketDTO
.
getGicEnterpriseId
();
Integer
gicUserId
=
gicTicketDTO
.
getGicUserId
();
String
gicUserName
=
gicTicketDTO
.
getGicUserName
();
TabUdeskCustomers
obj
=
udeskCustomersService
.
hasCustomerId
(
gicEnterpriseId
,
gicUserId
);
if
(
obj
!=
null
)
{
gicTicketDTO
.
setType
(
"customer_id"
);
gicTicketDTO
.
setType_content
(
obj
.
getCustomerId
().
toString
());
}
else
{
//创建客户
JSONObject
customer
=
new
JSONObject
();
JSONObject
customerSub
=
new
JSONObject
();
//客户名称
customerSub
.
put
(
"nick_name"
,
gicUserName
);
customer
.
put
(
"customer"
,
customerSub
);
LOGGER
.
info
(
"gic新建udesk客户,内容为:{}"
,
customer
.
toJSONString
());
String
customerStr
=
UdeskHttpClientUtil
.
postUdeskJsonFromJson
(
CUSTOMERS
,
customer
.
toJSONString
());
LOGGER
.
info
(
"gic新建udesk客户,返回为:{}"
,
customerStr
);
JSONObject
customerRes
=
JSONObject
.
parseObject
(
customerStr
);
if
(
customerRes
!=
null
)
{
int
code
=
customerRes
.
getIntValue
(
"code"
);
JSONObject
customerObj
=
customerRes
.
getJSONObject
(
"customer"
);
if
(
code
==
UdeskConstant
.
UDESK_SUCCESS_CODE
)
{
int
customerId
=
customerObj
.
getIntValue
(
"id"
);
gicTicketDTO
.
setType
(
"customer_id"
);
gicTicketDTO
.
setType_content
(
obj
.
getCustomerId
().
toString
());
//保存到
udeskCustomersService
.
save
(
gicEnterpriseId
,
customerId
,
gicUserId
);
}
else
{
return
ServiceResponse
.
failure
(
ErrorCode
.
SYSTEM_ERROR
.
getCode
(),
customerRes
.
getString
(
"message"
));
}
}
}
Map
<
String
,
Object
>
paramMap
=
new
HashMap
<>(
4
);
paramMap
.
put
(
"ticket"
,
gicTicketDTO
);
String
params
=
JSON
.
toJSONString
(
paramMap
);
...
...
gic-platform-udesk-service/src/main/resources/mapper/TabUdeskCustomersMapper.xml
0 → 100644
View file @
b031640c
<?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.gic.udesk.dao.mapper.TabUdeskCustomersMapper"
>
<resultMap
id=
"BaseResultMap"
type=
"com.gic.udesk.entity.TabUdeskCustomers"
>
<id
column=
"id"
jdbcType=
"INTEGER"
property=
"id"
/>
<result
column=
"enterprise_id"
jdbcType=
"INTEGER"
property=
"enterpriseId"
/>
<result
column=
"user_id"
jdbcType=
"INTEGER"
property=
"userId"
/>
<result
column=
"customer_id"
jdbcType=
"INTEGER"
property=
"customerId"
/>
<result
column=
"create_time"
jdbcType=
"TIMESTAMP"
property=
"createTime"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
id, enterprise_id, user_id, customer_id, create_time
</sql>
<select
id=
"selectByPrimaryKey"
parameterType=
"java.lang.Integer"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from tab_udesk_customers
where id = #{id,jdbcType=INTEGER}
</select>
<delete
id=
"deleteByPrimaryKey"
parameterType=
"java.lang.Integer"
>
delete from tab_udesk_customers
where id = #{id,jdbcType=INTEGER}
</delete>
<insert
id=
"insert"
parameterType=
"com.gic.udesk.entity.TabUdeskCustomers"
>
insert into tab_udesk_customers (id, enterprise_id, user_id,
customer_id, create_time)
values (#{id,jdbcType=INTEGER}, #{enterpriseId,jdbcType=INTEGER}, #{userId,jdbcType=INTEGER},
#{customerId,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP})
</insert>
<insert
id=
"insertSelective"
parameterType=
"com.gic.udesk.entity.TabUdeskCustomers"
>
insert into tab_udesk_customers
<trim
prefix=
"("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
id,
</if>
<if
test=
"enterpriseId != null"
>
enterprise_id,
</if>
<if
test=
"userId != null"
>
user_id,
</if>
<if
test=
"customerId != null"
>
customer_id,
</if>
<if
test=
"createTime != null"
>
create_time,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"id != null"
>
#{id,jdbcType=INTEGER},
</if>
<if
test=
"enterpriseId != null"
>
#{enterpriseId,jdbcType=INTEGER},
</if>
<if
test=
"userId != null"
>
#{userId,jdbcType=INTEGER},
</if>
<if
test=
"customerId != null"
>
#{customerId,jdbcType=INTEGER},
</if>
<if
test=
"createTime != null"
>
#{createTime,jdbcType=TIMESTAMP},
</if>
</trim>
</insert>
<update
id=
"updateByPrimaryKeySelective"
parameterType=
"com.gic.udesk.entity.TabUdeskCustomers"
>
update tab_udesk_customers
<set>
<if
test=
"enterpriseId != null"
>
enterprise_id = #{enterpriseId,jdbcType=INTEGER},
</if>
<if
test=
"userId != null"
>
user_id = #{userId,jdbcType=INTEGER},
</if>
<if
test=
"customerId != null"
>
customer_id = #{customerId,jdbcType=INTEGER},
</if>
<if
test=
"createTime != null"
>
create_time = #{createTime,jdbcType=TIMESTAMP},
</if>
</set>
where id = #{id,jdbcType=INTEGER}
</update>
<update
id=
"updateByPrimaryKey"
parameterType=
"com.gic.udesk.entity.TabUdeskCustomers"
>
update tab_udesk_customers
set enterprise_id = #{enterpriseId,jdbcType=INTEGER},
user_id = #{userId,jdbcType=INTEGER},
customer_id = #{customerId,jdbcType=INTEGER},
create_time = #{createTime,jdbcType=TIMESTAMP}
where id = #{id,jdbcType=INTEGER}
</update>
<select
id=
"countCustomerId"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
></include>
from tab_udesk_customers
where enterprise_id = #{enterpriseId}
and user_id = #{userId}
</select>
</mapper>
\ No newline at end of file
gic-platform-udesk-web/src/main/java/com/gic/udesk/web/controller/GicTicketController.java
View file @
b031640c
...
...
@@ -4,6 +4,7 @@ import java.util.Map;
import
javax.servlet.http.HttpServletRequest
;
import
com.gic.enterprise.utils.UserDetailUtils
;
import
org.apache.commons.lang3.StringUtils
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
...
...
@@ -75,6 +76,10 @@ public class GicTicketController {
@IgnoreLogin
public
RestResponse
addTicket
(
GicTicketDTO
dto
)
{
dto
.
setTicket_field
(
JSON
.
parseObject
(
dto
.
getTicketFieldJsonStr
(),
Map
.
class
));
dto
.
setGicEnterpriseId
(
UserDetailUtils
.
getUserDetail
().
getEnterpriseId
());
dto
.
setGicUserId
(
UserDetailUtils
.
getUserDetail
().
getUserId
());
dto
.
setGicUserName
(
UserDetailUtils
.
getUserDetail
().
getUserInfo
().
getUserName
());
dto
.
setGicEnterpriseName
(
UserDetailUtils
.
getUserDetail
().
getEnterpriseInfo
().
getEnterpriseName
());
return
ResultControllerUtils
.
commonResult
(
gicTicketApiService
.
saveTicket
(
dto
));
}
...
...
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