Ver código fonte

1,graphQL 完善

tags/B.2.6.4_20240106_base
yk 1 ano atrás
pai
commit
f75d4823bc
7 arquivos alterados com 42 adições e 31 exclusões
  1. +4
    -0
      xueyi-api/xueyi-api-system/src/main/java/com/xueyi/system/api/digitalmans/domain/po/DmVisitorsPo.java
  2. +1
    -6
      xueyi-api/xueyi-api-system/src/main/java/com/xueyi/system/api/staff/domain/dto/GraphqlVisitRecordInput.java
  3. +0
    -5
      xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/graphql/VisitRecordGraphQLMutationResolver.java
  4. +20
    -6
      xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/graphql/VisitRecordsGraphQLQueryResolver.java
  5. +10
    -6
      xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/graphql/VisitorGraphQLMutationResolver.java
  6. +2
    -7
      xueyi-modules/xueyi-system/src/main/resources/graphql/visitRecords.graphqls
  7. +5
    -1
      xueyi-modules/xueyi-system/src/main/resources/graphql/visitor.graphqls

+ 4
- 0
xueyi-api/xueyi-api-system/src/main/java/com/xueyi/system/api/digitalmans/domain/po/DmVisitorsPo.java Ver arquivo

@@ -71,5 +71,9 @@ public class DmVisitorsPo extends TBaseEntity {
@GraphQLField
protected Long resourceId;

private Boolean isBlock;
private Boolean isVip;
private Boolean flexVisit;


}

+ 1
- 6
xueyi-api/xueyi-api-system/src/main/java/com/xueyi/system/api/staff/domain/dto/GraphqlVisitRecordInput.java Ver arquivo

@@ -13,13 +13,8 @@ import java.util.Date;
@Data
public class GraphqlVisitRecordInput {

private String name;
private String nickname;
private String phone;
private String visitorCompany;
private Boolean isVip;
private Boolean isVital;
private Date visitDate;
private Long visitorId;


@Override


+ 0
- 5
xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/graphql/VisitRecordGraphQLMutationResolver.java Ver arquivo

@@ -36,13 +36,8 @@ class VisitRecordGraphQLMutationResolver implements GraphQLMutationResolver {


public boolean saveVisitRecord(GraphqlVisitRecordInput input){
DmVisitorsPo po = JSONObject.parseObject(input.toString(), DmVisitorsPo.class);
Long id = IdUtil.getSnowflakeNextId();
po.setId(id);
visitorsMapper.insert(po);

DmVisitRecordsPo visitRecordsPo = JSONObject.parseObject(input.toString(), DmVisitRecordsPo.class);
visitRecordsPo.setVisitorId(id);

return mapper.insert(visitRecordsPo) > 0;
}


+ 20
- 6
xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/graphql/VisitRecordsGraphQLQueryResolver.java Ver arquivo

@@ -1,10 +1,13 @@
package com.xueyi.system.staff.graphql;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.xueyi.system.api.digitalmans.domain.dto.DmVisitRecordsDto;
import com.xueyi.system.api.digitalmans.domain.dto.DmVisitorsDto;
import com.xueyi.system.api.digitalmans.domain.po.DmVisitRecordsPo;
import com.xueyi.system.api.digitalmans.domain.po.DmVisitorsPo;
import com.xueyi.system.staff.domain.model.DmVisitRecordsConverter;
import com.xueyi.system.staff.domain.model.DmVisitorsConverter;
import com.xueyi.system.staff.domain.query.DmVisitRecordsQuery;
import com.xueyi.system.staff.mapper.DmVisitRecordsMapper;
import com.xueyi.system.staff.mapper.DmVisitorsMapper;
import graphql.kickstart.tools.GraphQLQueryResolver;
@@ -34,15 +37,26 @@ class VisitRecordsGraphQLQueryResolver implements GraphQLQueryResolver {
@Autowired
private DmVisitorsConverter visitorsConverter;

// public boolean saveVisitRecord(String phone, String name){
// return true;
// }
public DmVisitRecordsDto visitRecord(Long id) {
return converter.mapperDto(mapper.selectById(id));
}

public List<DmVisitRecordsDto> visitRecords(String receiverName, String receiverPhone){
return mapper.selectList(null).stream().map(
public List<DmVisitRecordsDto> visitRecords(String receiverName, String receiverPhone, Long visitorId){
QueryWrapper<DmVisitRecordsPo> query = new QueryWrapper<>();

if (StringUtils.isNotEmpty(receiverName)) {
query.like("receiver_name", receiverName);
}

if (StringUtils.isNotEmpty(receiverPhone)) {
query.eq("receiver_phone", receiverPhone);
}

if (null != visitorId) {
query.eq("visitor_id", visitorId);
}

return mapper.selectList(query).stream().map(
t -> {
DmVisitorsPo po = visitorsMapper.selectById(t.getVisitorId());
DmVisitRecordsDto dto = converter.mapperDto(t);


+ 10
- 6
xueyi-modules/xueyi-system/src/main/java/com/xueyi/system/staff/graphql/VisitorGraphQLMutationResolver.java Ver arquivo

@@ -1,16 +1,13 @@
package com.xueyi.system.staff.graphql;

import com.xueyi.system.api.digitalmans.domain.dto.DmVisitorsDto;
import com.alibaba.excel.util.BooleanUtils;
import com.xueyi.system.api.digitalmans.domain.po.DmVisitorsPo;
import com.xueyi.system.staff.domain.model.DmVisitorsConverter;
import com.xueyi.system.staff.mapper.DmVisitorsMapper;
import graphql.kickstart.tools.GraphQLMutationResolver;
import graphql.kickstart.tools.GraphQLQueryResolver;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.stream.Collectors;

/*
* @author yk
@@ -27,12 +24,19 @@ class VisitorGraphQLMutationResolver implements GraphQLMutationResolver {
private DmVisitorsConverter converter;


public boolean saveVisitor( String name, String nickname, String phone, Integer type){
public boolean saveVisitor( String name, String nickname, String phone, Integer type, Boolean isVip, Boolean flexVisit, Boolean isBlock){
DmVisitorsPo dto =new DmVisitorsPo();
dto.setPhone(phone);
dto.setNickname(nickname);
dto.setName(name);
dto.setType(type.longValue());
dto.setIsVip(isVip);
if (BooleanUtils.isTrue(isVip)) {
dto.setType(9L);
} else {
dto.setType(8L);
}
dto.setFlexVisit(flexVisit);
dto.setIsBlock(isBlock);
return mapper.updateById(dto) > 0;
}



+ 2
- 7
xueyi-modules/xueyi-system/src/main/resources/graphql/visitRecords.graphqls Ver arquivo

@@ -2,20 +2,15 @@ extend type Query {
visitRecords(
receiverName:String
receiverPhone:String
visitorId:Long
): [VisitRecord]

visitRecord(id:Long): VisitRecord
}

input visitRecordInput{
name:String
phone:String
nickname:String
visitorId: Long
visitDate:Date
visitorCompany:String
isVip:Boolean
isVital:Boolean
resourceId:Long
}




+ 5
- 1
xueyi-modules/xueyi-system/src/main/resources/graphql/visitor.graphqls Ver arquivo

@@ -14,7 +14,11 @@ extend type Mutation {
name: String
nickname: String
type: Int
phone: String): Boolean
phone: String
isVip:Boolean
flexVisit:Boolean
isBlock:Boolean
): Boolean

deleteVisitor(id: Long!): Boolean
}


Carregando…
Cancelar
Salvar