bug-1492 移动破和工服工单的区域显示数据调整
管理端 创建工单时需要将这个设备的服务代理商公司固化下来,区域字段的数据取这个公司对应的区域 客户端 工单列表中,如果是内部用户和终端用户登录,则去掉区域列,如果是主账号登录,则区域显示空,如果是子账号登录,则显示主账号为子账号设置的区域
This commit is contained in:
parent
2417c023a7
commit
2c847246f7
|
|
@ -690,19 +690,8 @@ public class TicketController extends ControllerBase {
|
|||
VUtils.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("工单不存在");
|
||||
AdminUser adminUser = StrUtil.equals(ticket.getUserPlatform(), Constant.FROM_ADMIN) ? adminUserService.getById(ticket.getUserId()) : null;
|
||||
AppUser user = StrUtil.equals(ticket.getUserPlatform(), Constant.FROM_APP) ? appUserService.getById(ticket.getUserId()) : null;
|
||||
String areaName = "";
|
||||
if (Objects.nonNull(user)) {
|
||||
if (user.getType() == 0) {
|
||||
if (BooleanUtil.isTrue(user.getIsPrimary())) {
|
||||
areaName = StrUtil.join(",", customerService.getAreas(Arrays.stream(user.getCompanyId().split(",")).map(Integer::parseInt).collect(Collectors.toList())));
|
||||
} else if (Objects.nonNull(user.getAreaId())) {
|
||||
areaName = appAreaService.getById(user.getAreaId()).getName();
|
||||
}
|
||||
} else {
|
||||
areaName = Optional.ofNullable(areaService.getById(user.getAreaId())).map(TBaseArea::getAreaName).orElse("");
|
||||
}
|
||||
}
|
||||
// TBaseCustomer company = customerService.getById(Integer.valueOf(user.getCompanyId()));
|
||||
TBaseCustomer customer=customerService.lambdaQuery().eq(TBaseCustomer::getAgencyCompanyCode, ticket.getAgencyCompanyCode()).one();
|
||||
String areaName = Objects.isNull(customer) ? "" : customer.getAreaName();
|
||||
DeviceInfoVO device = deviceService.getByDeviceNo(ticket.getDeviceNo());
|
||||
String warrantyStateDesc = "";
|
||||
if (Objects.nonNull(device.getWarrantyState())) {
|
||||
|
|
|
|||
|
|
@ -270,41 +270,25 @@ public class TicketController extends ControllerBase {
|
|||
public ApiResult<TicketInfoVO> getTicket(@Valid @RequestParam @NotNull Long id) {
|
||||
TicketDTO ticket = ticketService.getDto(id);
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(ticket)).throwMessage("未找到工单");
|
||||
String areaId = "", areaName = "", companyName = "";
|
||||
// String areaId = "", areaName = "", companyName = "";
|
||||
String userName, userAvatar;
|
||||
DeviceInfoVO device = deviceService.getByDeviceNo(ticket.getDeviceNo());
|
||||
TBaseCustomer customer = customerService.lambdaQuery().eq(TBaseCustomer::getAgencyCompanyCode, ticket.getAgencyCompanyCode()).one();
|
||||
String companyName = Optional.ofNullable(customer).map(TBaseCustomer::getAgencyCompanyName).orElse("");
|
||||
String areaName = "";
|
||||
if (StrUtil.equals(ticket.getUserPlatform(), "app")) {
|
||||
AppUser user = appUserService.getById(ticket.getUserId());
|
||||
userName = user.getName();
|
||||
userAvatar = user.getAvatar();
|
||||
if (user.getType() == 0) {
|
||||
if (user.getIsPrimary()) {
|
||||
areaId = StrUtil.join(",", customerService.getAreaIds(Arrays.stream(user.getCompanyId().split(",")).map(Integer::parseInt).collect(Collectors.toList())));
|
||||
areaName = StrUtil.join(",", customerService.getAreas(Arrays.stream(user.getCompanyId().split(",")).map(Integer::parseInt).collect(Collectors.toList())));
|
||||
} else if (Objects.nonNull(user.getAreaId())) {
|
||||
AppArea area = appAreaService.getById(user.getAreaId());
|
||||
if (Objects.nonNull(area)) {
|
||||
areaId = String.valueOf(area.getId());
|
||||
areaName = area.getName();
|
||||
}
|
||||
}
|
||||
// companyName = StrUtil.join(",", customerService.listByIds(Arrays.stream(user.getCompanyId().split(",")).map(Integer::parseInt).collect(Collectors.toList()))
|
||||
// .stream().map(TBaseCustomer::getAgencyCompanyName).collect(Collectors.toList()));
|
||||
} else if (user.getType() == 1) {
|
||||
// areaName = gongfuTicketAreaService.getAreaName(ticket.getAreaId(), MultilingualUtil.getLanguage());
|
||||
GongfuTicketArea area = gongfuTicketAreaService.getArea(ticket.getAreaId(), MultilingualUtil.getLanguage());
|
||||
if (Objects.nonNull(area)) {
|
||||
areaId = String.valueOf(area.getId());
|
||||
areaName = area.getName();
|
||||
}
|
||||
// companyName = device.getAgentName();
|
||||
if (user.getType() == 0 && !user.getIsPrimary()) {
|
||||
AppArea appArea = appAreaService.getById(user.getAreaId());
|
||||
areaName = Objects.isNull(appArea) ? "" : appArea.getName();
|
||||
}
|
||||
} else {
|
||||
AdminUser adminUser = adminUserService.getById(ticket.getUserId());
|
||||
userName = adminUser.getUserName();
|
||||
userAvatar = adminUser.getAvatar();
|
||||
}
|
||||
companyName = Objects.nonNull(device) ? device.getAgentName() : "";
|
||||
String handle = ticket.getHandle();
|
||||
if (StrUtil.isNotBlank(handle)) {
|
||||
List<AdminUser> adminUsers = adminUserService.listByIds(Arrays.stream(handle.split(",")).map(Integer::parseInt).collect(Collectors.toList()));
|
||||
|
|
@ -326,7 +310,8 @@ public class TicketController extends ControllerBase {
|
|||
.setCreateUserName(userName)
|
||||
.setCreateUserAvatar(userAvatar)
|
||||
.setCreateTime(ticket.getCreateTime())
|
||||
.setAreaId(areaId)
|
||||
// .setAreaId(areaId)
|
||||
// .setAreaName(areaName)
|
||||
.setAreaName(areaName)
|
||||
.setSolveTime(ticket.getSolveTime())
|
||||
.setCompanyName(companyName)
|
||||
|
|
@ -342,7 +327,7 @@ public class TicketController extends ControllerBase {
|
|||
if (Objects.nonNull(part)) {
|
||||
vo.setComponent(part.getPartName());
|
||||
}
|
||||
vo.setPrimaryUserName(companyName);
|
||||
vo.setPrimaryUserName(Optional.ofNullable(customer).map(TBaseCustomer::getAgencyCompanyName).orElse(""));
|
||||
} else {
|
||||
GongfuDevicePart part = part1Service.getByIdAndLanguage(ticket.getComponentId(), MultilingualUtil.getLanguage());
|
||||
if (Objects.nonNull(part)) {
|
||||
|
|
|
|||
|
|
@ -75,9 +75,9 @@ public class AdminTicketVO {
|
|||
return reason;
|
||||
}
|
||||
|
||||
//代理区域
|
||||
@ExcelColumn("代理区域")
|
||||
private String agentAreaName;
|
||||
// //代理区域
|
||||
// @ExcelColumn("代理区域")
|
||||
// private String agentAreaName;
|
||||
|
||||
//区域
|
||||
@ExcelColumn("区域")
|
||||
|
|
|
|||
|
|
@ -50,10 +50,13 @@ public class TicketInfoVO {
|
|||
//客户名称
|
||||
private String companyName;
|
||||
|
||||
//所属区域id,多个时逗号分隔
|
||||
private String areaId;
|
||||
// //所属区域id,多个时逗号分隔
|
||||
// private String areaId;
|
||||
|
||||
//所属区域,多个时逗号分隔
|
||||
// //所属区域,多个时逗号分隔
|
||||
// private String areaName;
|
||||
|
||||
//所属区域
|
||||
private String areaName;
|
||||
|
||||
//设备编号
|
||||
|
|
|
|||
|
|
@ -163,4 +163,9 @@ public class Ticket implements Serializable {
|
|||
*/
|
||||
@TableLogic(value = "0", delval = "1")
|
||||
private Integer isDelete;
|
||||
|
||||
/**
|
||||
* 代理公司编码
|
||||
*/
|
||||
private String agencyCompanyCode;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -69,14 +69,20 @@ public class TicketServiceImpl extends ServiceImpl<TicketMapper, Ticket> impleme
|
|||
@Resource
|
||||
private IAppMessageService appMessageService;
|
||||
|
||||
@Resource
|
||||
private IDeviceService deviceService;
|
||||
|
||||
@Transactional
|
||||
@Override
|
||||
public Ticket add(TicketAddRequest request, Integer userId) {
|
||||
Ticket lastTicket = getBaseMapper().getLastTicket();
|
||||
String no = lastTicket == null ? TicketUtil.getNextNo("YPSH", null) : TicketUtil.getNextNo("YPSH", lastTicket.getNo());
|
||||
Device device = deviceService.lambdaQuery().eq(Device::getDeviceNo, request.getDeviceNo()).last("LIMIT 1").one();
|
||||
VUtils.trueThrowBusinessError(Objects.isNull(device)).throwMessage("未找到设备");
|
||||
Ticket ticket = new Ticket()
|
||||
.setNo(no)
|
||||
.setDeviceNo(request.getDeviceNo())
|
||||
.setAgencyCompanyCode(device.getAgentCode())
|
||||
.setDeviceAddress(request.getDeviceAddress())
|
||||
.setComponentId(Math.toIntExact(request.getComponentId()))
|
||||
.setUseTime(request.getUseTime())
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@
|
|||
|
||||
<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'
|
||||
,IF(t.user_platform='admin',au.user_name,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',IF(LENGTH(l.language_value)>0
|
||||
,l.language_value,p.part_name) AS 'component',t.*
|
||||
FROM gongfu_ticket t
|
||||
LEFT JOIN app_user u ON t.user_id=u.id
|
||||
|
|
@ -156,7 +156,7 @@
|
|||
|
||||
<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
|
||||
,a1.area_name AS 'areaName','' AS 'agentAreaName',d.customer_name AS 'customerName',t.agency_company_name AS 'agentName'
|
||||
,c.area_name AS 'areaName',d.customer_name AS 'customerName',t.agency_company_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.solve_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'
|
||||
|
|
@ -165,7 +165,7 @@
|
|||
FROM gongfu_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 t_base_area a1 ON u.area_id=a1.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
LEFT JOIN gongfu_device d ON t.device_no=d.device_no and d.data_valid_state=1
|
||||
LEFT JOIN gongfu_device_type dt1 ON dt1.parent_id=0 AND d.product_line=dt1.device_type
|
||||
LEFT JOIN gongfu_device_type dt2 ON dt2.parent_id=dt1.id AND d.device_type=dt2.device_type
|
||||
|
|
@ -180,7 +180,7 @@
|
|||
|
||||
<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
|
||||
,a1.area_name AS 'areaName','' AS 'agentAreaName',d.customer_name AS 'customerName',t.agency_company_name AS 'agentName'
|
||||
,c.area_name AS 'areaName',d.customer_name AS 'customerName',t.agency_company_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.solve_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'
|
||||
|
|
@ -189,7 +189,7 @@
|
|||
FROM gongfu_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 t_base_area a1 ON u.area_id=a1.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
LEFT JOIN gongfu_device d ON t.device_no=d.device_no and d.data_valid_state=1
|
||||
LEFT JOIN gongfu_device_type dt1 ON dt1.parent_id=0 AND d.product_line=dt1.device_type
|
||||
LEFT JOIN gongfu_device_type dt2 ON dt2.parent_id=dt1.id AND d.device_type=dt2.device_type
|
||||
|
|
@ -204,7 +204,7 @@
|
|||
|
||||
<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
|
||||
,a1.area_name AS 'areaName','' AS 'agentAreaName',d.customer_name AS 'customerName',t.agency_company_name AS 'agentName'
|
||||
,c.area_name AS 'areaName',d.customer_name AS 'customerName',t.agency_company_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.solve_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'
|
||||
|
|
@ -213,7 +213,7 @@
|
|||
FROM gongfu_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 t_base_area a1 ON u.area_id=a1.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
INNER JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=1
|
||||
LEFT JOIN gongfu_device d ON t.device_no=d.device_no and d.data_valid_state=1
|
||||
LEFT JOIN gongfu_device_type dt1 ON dt1.parent_id=0 AND d.product_line=dt1.device_type
|
||||
|
|
@ -228,7 +228,7 @@
|
|||
|
||||
<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
|
||||
,a1.area_name AS 'areaName','' AS 'agentAreaName',d.customer_name AS 'customerName',t.agency_company_name AS 'agentName'
|
||||
,c.area_name AS 'areaName',d.customer_name AS 'customerName',t.agency_company_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.solve_time AS 'completeTime',di.name AS 'warrantyStatusDesc',true AS 'followed'
|
||||
,auc.user_name AS 'cqm',t.update_time AS 'closeTime',auh.user_name AS 'currentHandle'
|
||||
|
|
@ -236,7 +236,7 @@
|
|||
FROM gongfu_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 t_base_area a1 ON u.area_id=a1.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
INNER JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=1
|
||||
LEFT JOIN gongfu_device d ON t.device_no=d.device_no and d.data_valid_state=1
|
||||
LEFT JOIN gongfu_device_type dt1 ON dt1.parent_id=0 AND d.product_line=dt1.device_type
|
||||
|
|
@ -262,7 +262,7 @@
|
|||
|
||||
<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
|
||||
,a1.area_name AS 'areaName','' AS 'agentAreaName',d.customer_name AS 'customerName',t.agency_company_name AS 'agentName'
|
||||
,c.area_name AS 'areaName',d.customer_name AS 'customerName',t.agency_company_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.solve_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'
|
||||
|
|
@ -271,7 +271,7 @@
|
|||
FROM gongfu_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 t_base_area a1 ON u.area_id=a1.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
INNER JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=1
|
||||
<if test="favouritesId>0">
|
||||
AND tf.favorites_id=#{favouritesId}
|
||||
|
|
|
|||
|
|
@ -98,12 +98,14 @@
|
|||
</sql>
|
||||
|
||||
<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'
|
||||
,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.*
|
||||
SELECT a.name AS 'areaName',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 v_all_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 app_area a ON u.area_id=a.id and u.is_primary=0 and u.type=0
|
||||
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
|
||||
LEFT JOIN v_device_part p ON t.component_id=p.id
|
||||
|
|
@ -114,13 +116,13 @@
|
|||
</select>
|
||||
|
||||
<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'
|
||||
,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.*
|
||||
SELECT a.name AS 'areaName',true AS 'followed',IF(t.user_platform='admin',au.user_name,u.`name`) AS 'createBy'
|
||||
,true AS 'followed',IF(LENGTH(l.language_value)>0,l.language_value,p.part_name) AS 'component'
|
||||
,t.*
|
||||
FROM v_all_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 app_area a ON u.area_id=a.id and u.is_primary=0 and u.type=0
|
||||
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
|
||||
LEFT JOIN v_device_part p ON t.component_id=p.id
|
||||
|
|
@ -131,14 +133,14 @@
|
|||
</select>
|
||||
|
||||
<select id="searchArea" resultType="com.nflg.mobilebroken.common.pojo.vo.TicketVO">
|
||||
SELECT IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),IF(u.type=1,a3.area_name,a2.`name`)) AS 'areaName'
|
||||
,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.*
|
||||
SELECT a.name AS 'areaName',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 v_all_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 t_base_area a3 ON u.area_id=a3.id
|
||||
LEFT JOIN app_area a ON u.area_id=a.id and u.is_primary=0 and u.type=0
|
||||
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
|
||||
LEFT JOIN v_device_part p ON t.component_id=p.id
|
||||
|
|
@ -160,17 +162,17 @@
|
|||
|
||||
<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),IF(u.type=1,a3.area_name,'')) AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,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',t.description,t.throughput,t.accident_level
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),c.area_name AS 'areaName',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',t.description,t.throughput
|
||||
,t.accident_level
|
||||
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 t_base_area a3 ON u.area_id=a3.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
LEFT JOIN device d ON t.device_no=d.device_no and d.data_valid_state=1
|
||||
LEFT JOIN t_base_device_type dt ON d.device_type=dt.device_type
|
||||
LEFT JOIN dictionary_item di ON d.warranty_state=di.id
|
||||
|
|
@ -184,17 +186,16 @@
|
|||
|
||||
<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),IF(u.type=1,a3.area_name,'')) AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,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',t.description,t.throughput,t.accident_level
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),c.area_name AS 'areaName',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',t.description,t.throughput,t.accident_level
|
||||
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 t_base_area a3 ON u.area_id=a3.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
LEFT JOIN device d ON t.device_no=d.device_no and d.data_valid_state=1
|
||||
LEFT JOIN t_base_device_type dt ON d.device_type=dt.device_type
|
||||
LEFT JOIN dictionary_item di ON d.warranty_state=di.id
|
||||
|
|
@ -208,17 +209,16 @@
|
|||
|
||||
<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),IF(u.type=1,a3.area_name,'')) AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,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'
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),c.area_name AS 'areaName',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',t.description,t.throughput,t.accident_level
|
||||
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 t_base_area a3 ON u.area_id=a3.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
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 and d.data_valid_state=1
|
||||
LEFT JOIN t_base_device_type dt ON d.device_type=dt.device_type
|
||||
|
|
@ -232,16 +232,15 @@
|
|||
|
||||
<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),IF(u.type=1,a3.area_name,'')) AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,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'
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),c.area_name AS 'areaName',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',t.description,t.throughput,t.accident_level
|
||||
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 t_base_area a3 ON u.area_id=a3.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
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 and d.data_valid_state=1
|
||||
LEFT JOIN t_base_device_type dt ON d.device_type=dt.device_type
|
||||
|
|
@ -267,17 +266,16 @@
|
|||
|
||||
<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),IF(u.type=1,a3.area_name,'')) AS 'areaName',IF(u.is_primary,'',a2.`name`) AS 'agentAreaName'
|
||||
,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'
|
||||
,IF(u.is_primary,fun_getPrimaryUserArea(u.company_id),c.area_name AS 'areaName',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',t.description,t.throughput,t.accident_level
|
||||
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 t_base_area a3 ON u.area_id=a3.id
|
||||
LEFT JOIN t_base_customer c ON t.agency_company_code=c.agency_company_code
|
||||
INNER JOIN ticket_follow tf ON t.id=tf.ticket_id AND tf.user_id=#{userId} AND tf.from=1
|
||||
<if test="favouritesId>0">
|
||||
AND tf.favorites_id=#{favouritesId}
|
||||
|
|
|
|||
Loading…
Reference in New Issue