feat: bug-384 用户端需要支持管理端用户添加工单和后续操作
This commit is contained in:
parent
5f5ae39a06
commit
d15a3b4b86
|
|
@ -25,7 +25,7 @@ public interface TicketMapper extends BaseMapper<Ticket> {
|
|||
|
||||
IPage<TicketVO> searchFollow(IPage<?> page, TicketSearchRequest request, Integer userId,String from,String language);
|
||||
|
||||
IPage<TicketVO> searchArea(IPage<?> page, TicketSearchRequest request, String companyId, Integer userId,String language,Boolean isPrimary,String companyCode);
|
||||
IPage<TicketVO> searchArea(IPage<?> page, TicketSearchRequest request, String companyId, Integer userId,String language,Boolean isPrimary,String companyCode,String from);
|
||||
|
||||
IPage<AdminTicketVO> searchFromAdmin(AdminTicketSearchRequest request, Integer userId, IPage<?> page);
|
||||
|
||||
|
|
|
|||
|
|
@ -138,7 +138,7 @@ public class TicketServiceImpl extends ServiceImpl<TicketMapper, Ticket> impleme
|
|||
return baseMapper.searchFollow(new Page<>(request.getPage(), request.getPageSize()), request, user.getId(), user.getFrom(), language);
|
||||
} else if (request.getType() == 3) {
|
||||
if (StrUtil.equals(AppUserUtil.getFrom(), Constant.FROM_ADMIN)) {
|
||||
return baseMapper.searchArea(new Page<>(request.getPage(), request.getPageSize()), request, null, user.getId(), language, null, null);
|
||||
return baseMapper.searchArea(new Page<>(request.getPage(), request.getPageSize()), request, null, user.getId(), language, null, null, user.getFrom());
|
||||
} else {
|
||||
String companyCode = "";
|
||||
if (!user.getIsPrimary()) {
|
||||
|
|
@ -148,7 +148,7 @@ public class TicketServiceImpl extends ServiceImpl<TicketMapper, Ticket> impleme
|
|||
}
|
||||
}
|
||||
return baseMapper.searchArea(new Page<>(request.getPage(), request.getPageSize()), request
|
||||
, StrUtil.join(",", user.getCompanyIds()), user.getId(), language, user.getIsPrimary(), companyCode);
|
||||
, StrUtil.join(",", user.getCompanyIds()), user.getId(), language, user.getIsPrimary(), companyCode, user.getFrom());
|
||||
}
|
||||
}
|
||||
return null;
|
||||
|
|
|
|||
|
|
@ -85,9 +85,10 @@
|
|||
|
||||
<select id="searchMy" resultType="com.nflg.mobilebroken.common.pojo.vo.TicketVO">
|
||||
SELECT IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),a2.`name`) AS 'areaName',IF(tf.id IS NULL, false, true) AS 'followed'
|
||||
,u.`name` AS 'createBy',IF(LENGTH(l.language_value)>0,l.language_value,p.part_name) AS 'component',t.*
|
||||
,IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy',IF(LENGTH(l.language_value)>0,l.language_value,p.part_name) AS 'component',t.*
|
||||
FROM ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
LEFT JOIN admin_user au ON t.user_id=au.id
|
||||
LEFT JOIN app_area a2 ON u.area_id=a2.id
|
||||
LEFT JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=IF(#{from}='app',0,1)
|
||||
LEFT JOIN ticket_evaluate te ON t.id=te.ticket_id AND t.state=2
|
||||
|
|
@ -100,10 +101,11 @@
|
|||
|
||||
<select id="searchFollow" resultType="com.nflg.mobilebroken.common.pojo.vo.TicketVO">
|
||||
SELECT IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),a2.`name`) AS 'areaName',true AS 'followed'
|
||||
,u.`name` AS 'createBy',true AS 'followed',t.handle,IF(LENGTH(l.language_value)>0
|
||||
,IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy',true AS 'followed',t.handle,IF(LENGTH(l.language_value)>0
|
||||
,l.language_value,p.part_name) AS 'component',t.*
|
||||
FROM ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
LEFT JOIN admin_user au ON t.user_id=au.id
|
||||
LEFT JOIN app_area a2 ON u.area_id=a2.id
|
||||
INNER JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.from=IF(#{from}='app',0,1)
|
||||
LEFT JOIN ticket_evaluate te ON t.id=te.ticket_id AND t.state=2
|
||||
|
|
@ -116,10 +118,11 @@
|
|||
|
||||
<select id="searchArea" resultType="com.nflg.mobilebroken.common.pojo.vo.TicketVO">
|
||||
SELECT IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),a2.`name`) AS 'areaName'
|
||||
,IF(tf.id IS NULL, false, true) AS 'followed',u.`name` AS 'createBy',IF(LENGTH(l.language_value)>0
|
||||
,IF(tf.id IS NULL, false, true) AS 'followed',IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy',IF(LENGTH(l.language_value)>0
|
||||
,l.language_value,p.part_name) AS 'component',t.*
|
||||
FROM ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
LEFT JOIN admin_user au ON t.user_id=au.id
|
||||
LEFT JOIN app_area a2 ON u.area_id=a2.id
|
||||
LEFT JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=IF(#{from}='app',0,1)
|
||||
LEFT JOIN ticket_evaluate te ON t.id=te.ticket_id AND t.state=2
|
||||
|
|
@ -133,6 +136,9 @@
|
|||
<if test="isPrimary==true">
|
||||
AND (u.id=#{userId} OR FIND_IN_SET(u.company_id,#{companyId}))
|
||||
</if>
|
||||
<if test="isPrimary==null">
|
||||
AND t.user_platform='admin'
|
||||
</if>
|
||||
<include refid="searchWhereCondition"/>
|
||||
ORDER BY t.id DESC
|
||||
</select>
|
||||
|
|
@ -140,13 +146,14 @@
|
|||
<select id="searchFromAdmin" resultType="com.nflg.mobilebroken.common.pojo.vo.AdminTicketVO">
|
||||
SELECT t.id,t.`no`,t.title,t.state,t.urgency,p.part_name AS 'component',t.question,t.reason
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),'') AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',u.`name` AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,t.create_time AS 'createTime',t.update_time AS 'completeTime',di.name AS 'warrantyStatusDesc',d.device_type AS 'deviceType'
|
||||
,d.model_no AS 'equipmentModel',d.shipment_date AS 'shipmentDate',IF(tf.id IS NULL, false, true) AS 'followed',auc.user_name AS 'cqm'
|
||||
,t.solve_time AS 'closeTime',auh.user_name AS 'currentHandle',dt.cqm_person_name AS 'cqms'
|
||||
,t.handle_name AS 'handle'
|
||||
FROM ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
LEFT JOIN admin_user au ON t.user_id=au.id
|
||||
LEFT JOIN app_area a2 ON u.area_id=a2.id
|
||||
LEFT JOIN device d ON t.device_no=d.device_no
|
||||
LEFT JOIN t_base_device_type dt ON d.device_type=dt.device_type
|
||||
|
|
@ -162,13 +169,14 @@
|
|||
<select id="searchAllFromAdmin" resultType="com.nflg.mobilebroken.common.pojo.vo.AdminTicketVO">
|
||||
SELECT t.id,t.`no`,t.title,t.state,t.urgency,p.part_name AS 'component',t.question,t.reason
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),'') AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',u.`name` AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,t.create_time AS 'createTime',t.update_time AS 'completeTime',di.name AS 'warrantyStatusDesc',d.device_type AS 'deviceType'
|
||||
,d.model_no AS 'equipmentModel',d.shipment_date AS 'shipmentDate',IF(tf.id IS NULL, false, true) AS 'followed',auc.user_name AS 'cqm'
|
||||
,t.solve_time AS 'closeTime',auh.user_name AS 'currentHandle',dt.cqm_person_name AS 'cqms'
|
||||
,t.handle_name AS 'handle'
|
||||
FROM ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
LEFT JOIN admin_user au ON t.user_id=au.id
|
||||
LEFT JOIN app_area a2 ON u.area_id=a2.id
|
||||
LEFT JOIN device d ON t.device_no=d.device_no
|
||||
LEFT JOIN t_base_device_type dt ON d.device_type=dt.device_type
|
||||
|
|
@ -184,13 +192,14 @@
|
|||
<select id="searchFromAdminAndFollow" resultType="com.nflg.mobilebroken.common.pojo.vo.AdminTicketVO">
|
||||
SELECT t.id,t.`no`,t.title,t.state,t.urgency,p.part_name AS 'component',t.question,t.reason
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),'') AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',u.`name` AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,t.create_time AS 'createTime',t.update_time AS 'completeTime',di.name AS 'warrantyStatusDesc',d.device_type AS 'deviceType'
|
||||
,d.model_no AS 'equipmentModel',d.shipment_date AS 'shipmentDate',true AS 'followed',auc.user_name AS 'cqm'
|
||||
,t.solve_time AS 'closeTime',auh.user_name AS 'currentHandle',dt.cqm_person_name AS 'cqms'
|
||||
,t.handle_name AS 'handle'
|
||||
FROM ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
LEFT JOIN admin_user au ON t.user_id=au.id
|
||||
LEFT JOIN app_area a2 ON u.area_id=a2.id
|
||||
INNER JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=1
|
||||
LEFT JOIN device d ON t.device_no=d.device_no
|
||||
|
|
@ -206,12 +215,13 @@
|
|||
<select id="searchAllFromAdminAndFollow" resultType="com.nflg.mobilebroken.common.pojo.vo.AdminTicketVO">
|
||||
SELECT t.id,t.`no`,t.title,t.state,t.urgency,p.part_name AS 'component',t.question,t.reason
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),'') AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',u.`name` AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,t.create_time AS 'createTime',t.update_time AS 'completeTime',di.name AS 'warrantyStatusDesc',true AS 'followed'
|
||||
,auc.user_name AS 'cqm',t.solve_time AS 'closeTime',auh.user_name AS 'currentHandle'
|
||||
,dt.cqm_person_name AS 'cqms',t.handle_name AS 'handle'
|
||||
FROM ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
LEFT JOIN admin_user au ON t.user_id=au.id
|
||||
LEFT JOIN app_area a2 ON u.area_id=a2.id
|
||||
INNER JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=1
|
||||
LEFT JOIN device d ON t.device_no=d.device_no
|
||||
|
|
@ -237,13 +247,14 @@
|
|||
<select id="searchByFavouritesId" resultType="com.nflg.mobilebroken.common.pojo.vo.AdminTicketVO">
|
||||
SELECT t.id,t.`no`,t.title,t.state,t.urgency,p.part_name AS 'component',t.question,t.reason
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),'') AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',u.`name` AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,d.customer_name AS 'customerName',d.agent_name AS 'agentName',IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy',t.device_no AS 'deviceNo',t.use_time AS 'useTime'
|
||||
,t.create_time AS 'createTime',t.update_time AS 'completeTime',di.name AS 'warrantyStatusDesc',d.device_type AS 'deviceType'
|
||||
,d.model_no AS 'equipmentModel',d.shipment_date AS 'shipmentDate',true AS 'followed',auc.user_name AS 'cqm'
|
||||
,t.solve_time AS 'closeTime',auh.user_name AS 'currentHandle',dt.cqm_person_name AS 'cqms'
|
||||
,t.handle_name AS 'handle'
|
||||
FROM ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
LEFT JOIN admin_user au ON t.user_id=au.id
|
||||
LEFT JOIN app_area a2 ON u.area_id=a2.id
|
||||
INNER JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=1
|
||||
<if test="favouritesId>0">
|
||||
|
|
|
|||
Loading…
Reference in New Issue