新增话务管理
This commit is contained in:
parent
65cc7d4f54
commit
1033950cd6
|
@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.annotation.DbType;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
|
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.inner.DynamicTableNameInnerInterceptor;
|
import com.baomidou.mybatisplus.extension.plugins.inner.DynamicTableNameInnerInterceptor;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
|
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
|
||||||
import net.shapelight.common.interceptor.CustomizeTableNameHandler;
|
import net.shapelight.common.handler.CustomizeTableNameHandler;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
@ -20,18 +20,18 @@ import org.springframework.context.annotation.Configuration;
|
||||||
public class MybatisPlusConfig {
|
public class MybatisPlusConfig {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 分页插件
|
* 分表插件
|
||||||
*/
|
*/
|
||||||
// 最新版
|
// 最新版
|
||||||
@Bean
|
@Bean
|
||||||
public MybatisPlusInterceptor mybatisPlusInterceptor() {
|
public MybatisPlusInterceptor mybatisPlusInterceptor() {
|
||||||
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
|
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
|
||||||
// 分页插件
|
// 分表插件
|
||||||
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
|
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
|
||||||
DynamicTableNameInnerInterceptor dynamicTableNameInnerInterceptor = new DynamicTableNameInnerInterceptor();
|
DynamicTableNameInnerInterceptor dynamicTableNameInnerInterceptor = new DynamicTableNameInnerInterceptor();
|
||||||
dynamicTableNameInnerInterceptor.setTableNameHandler(
|
dynamicTableNameInnerInterceptor.setTableNameHandler(
|
||||||
//可以传多个表名参数,指定哪些表使用MonthTableNameHandler处理表名称
|
//可以传多个表名参数,指定哪些表使用MonthTableNameHandler处理表名称
|
||||||
new CustomizeTableNameHandler("ten_person_extract")
|
new CustomizeTableNameHandler("ten_person_extract,mobile_device,mobile_package_order,mobile_call_logs")
|
||||||
);
|
);
|
||||||
|
|
||||||
//以拦截器的方式处理表名称
|
//以拦截器的方式处理表名称
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package net.shapelight.common.interceptor;
|
package net.shapelight.common.handler;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.handler.TableNameHandler;
|
import com.baomidou.mybatisplus.extension.plugins.handler.TableNameHandler;
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
package net.shapelight.common.handler;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
|
||||||
|
import org.apache.ibatis.reflection.MetaObject;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
public class TimeHandler implements MetaObjectHandler {
|
||||||
|
@Override
|
||||||
|
public void insertFill(MetaObject metaObject) {
|
||||||
|
this.setFieldValByName("createTime", new Date(), metaObject);
|
||||||
|
this.setFieldValByName("updateTime", new Date(), metaObject);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateFill(MetaObject metaObject) {
|
||||||
|
this.setFieldValByName("updateTime", new Date(), metaObject);
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,74 @@
|
||||||
|
package net.shapelight.modules.mobile.controler;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiImplicitParam;
|
||||||
|
import io.swagger.annotations.ApiImplicitParams;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import net.shapelight.common.handler.CustomizeTableNameHandler;
|
||||||
|
import net.shapelight.common.utils.PageUtils;
|
||||||
|
import net.shapelight.common.utils.R;
|
||||||
|
import net.shapelight.common.utils.SnowflakeIdWorker;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileDevice;
|
||||||
|
import net.shapelight.modules.mobile.service.MobileDeviceService;
|
||||||
|
import net.shapelight.modules.sys.controller.AbstractController;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("mobile/device/")
|
||||||
|
@Api("话机设备管理")
|
||||||
|
public class DeviceController extends AbstractController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
MobileDeviceService mobileDeviceService;
|
||||||
|
|
||||||
|
|
||||||
|
@PostMapping("list")
|
||||||
|
@ApiOperation("设备列表")
|
||||||
|
@ApiImplicitParams({
|
||||||
|
@ApiImplicitParam(name="limit",value = "每页条数",paramType = "query",dataType = "String",required = true),
|
||||||
|
@ApiImplicitParam(name="page",value = "页码",paramType = "query",dataType = "String",required = true),
|
||||||
|
@ApiImplicitParam(name = "name", value = "设备名称", paramType = "query", dataType = "String"),
|
||||||
|
@ApiImplicitParam(name = "status", value = "设备状态", paramType = "query", dataType = "Integer"),
|
||||||
|
@ApiImplicitParam(name = "cellName", value = "学校名称", paramType = "query", dataType = "String"),
|
||||||
|
@ApiImplicitParam(name = "deptId", value = "设备区域名称", paramType = "query", dataType = "String")
|
||||||
|
})
|
||||||
|
public R list(@RequestBody Map<String,Object> params) {
|
||||||
|
//params.put("tenantId",getUser().getTenantId());
|
||||||
|
CustomizeTableNameHandler.setData(String.valueOf(getUser().getTenantId()));
|
||||||
|
PageUtils page = mobileDeviceService.queryPage(params);
|
||||||
|
CustomizeTableNameHandler.removeData();
|
||||||
|
return R.ok().put("data",page);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("add")
|
||||||
|
@ApiOperation("设备新增")
|
||||||
|
public R add(@RequestBody MobileDevice mobileDevice) {
|
||||||
|
//mobileDevice.setTenantId(getUser().getTenantId());
|
||||||
|
Long id = new SnowflakeIdWorker().nextId();
|
||||||
|
mobileDevice.setId(id);
|
||||||
|
CustomizeTableNameHandler.setData(String.valueOf(getUser().getTenantId()));
|
||||||
|
mobileDeviceService.save(mobileDevice);
|
||||||
|
CustomizeTableNameHandler.removeData();
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("update")
|
||||||
|
@ApiOperation("设备信息更新")
|
||||||
|
public R update(@RequestBody MobileDevice mobileDevice) {
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("delete")
|
||||||
|
@ApiOperation("删除设备")
|
||||||
|
public R delete(@RequestBody List<Long> deviceIdList) {
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,51 @@
|
||||||
|
package net.shapelight.modules.mobile.controler;
|
||||||
|
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiImplicitParam;
|
||||||
|
import io.swagger.annotations.ApiImplicitParams;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import net.shapelight.common.utils.R;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileDeviceGroup;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("mobile/device/group/")
|
||||||
|
@Api("话机设备组管理")
|
||||||
|
public class DeviceGroupController {
|
||||||
|
|
||||||
|
@PostMapping("list")
|
||||||
|
@ApiOperation("话机设备组列表")
|
||||||
|
@ApiImplicitParams({
|
||||||
|
@ApiImplicitParam(name="limit",value = "每页条数",paramType = "query",dataType = "String",required = true),
|
||||||
|
@ApiImplicitParam(name="page",value = "页码",paramType = "query",dataType = "String",required = true),
|
||||||
|
@ApiImplicitParam(name = "groupName", value = "设备组名称", paramType = "query", dataType = "String"),
|
||||||
|
@ApiImplicitParam(name = "status", value = "设备组状态", paramType = "query", dataType = "Integer"),
|
||||||
|
@ApiImplicitParam(name = "cellName", value = "学校名称", paramType = "query", dataType = "String"),
|
||||||
|
@ApiImplicitParam(name = "deptId", value = "设备组区域名称", paramType = "query", dataType = "String")
|
||||||
|
})
|
||||||
|
public R list(@RequestBody Map<String, Object> params) {
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("add")
|
||||||
|
@ApiOperation("设备组新增")
|
||||||
|
public R add(@RequestBody MobileDeviceGroup mobileDeviceGroup) {
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("remove")
|
||||||
|
@ApiOperation("设备组删除")
|
||||||
|
@ApiImplicitParam(name = "groupId",value = "设备组ID",paramType = "query",dataType = "List",required = true)
|
||||||
|
public R remove(@RequestBody List<Long> groupId) {
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("update")
|
||||||
|
@ApiOperation("设备组更新")
|
||||||
|
public R update(@RequestBody MobileDeviceGroup mobileDeviceGroup) {
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,75 @@
|
||||||
|
package net.shapelight.modules.mobile.entity;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @TableName mobile_call_logs
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("mobile_call_logs")
|
||||||
|
@ApiModel("设备通话记录")
|
||||||
|
public class MobileCallLogs implements Serializable {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* id
|
||||||
|
*/
|
||||||
|
@NotNull(message="[id]不能为空")
|
||||||
|
@ApiModelProperty("id")
|
||||||
|
private Long id;
|
||||||
|
/**
|
||||||
|
* 设备ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("设备ID")
|
||||||
|
private Long deviceId;
|
||||||
|
/**
|
||||||
|
* 人员ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("人员ID")
|
||||||
|
private Long personId;
|
||||||
|
/**
|
||||||
|
* 联系人ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("联系人ID")
|
||||||
|
private Long relationId;
|
||||||
|
/**
|
||||||
|
* 通话类型(0语音1视频)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("通话类型(0语音1视频)")
|
||||||
|
private Integer callType;
|
||||||
|
/**
|
||||||
|
* 是否接通(0否1是)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("是否接通(0否1是)")
|
||||||
|
private Integer isConnected;
|
||||||
|
/**
|
||||||
|
* 是否紧急电话
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("是否紧急电话")
|
||||||
|
private Integer isSos;
|
||||||
|
/**
|
||||||
|
* 结束通话操作
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("结束通话操作")
|
||||||
|
private Integer operateStatus;
|
||||||
|
/**
|
||||||
|
* 通话开始时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("通话开始时间")
|
||||||
|
private Date startTime;
|
||||||
|
/**
|
||||||
|
* 通话结束时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("通话结束时间")
|
||||||
|
private Date endTime;
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,124 @@
|
||||||
|
package net.shapelight.modules.mobile.entity;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotBlank;
|
||||||
|
import javax.validation.constraints.Size;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @TableName mobile_device
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("mobile_device")
|
||||||
|
@ApiModel("设备信息")
|
||||||
|
public class MobileDevice implements Serializable {
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
@NotNull(message="[]不能为空")
|
||||||
|
@ApiModelProperty("id")
|
||||||
|
private Long id;
|
||||||
|
/**
|
||||||
|
* 设备唯一标识
|
||||||
|
*/
|
||||||
|
@NotBlank(message="[设备唯一标识]不能为空")
|
||||||
|
@Size(max= 30,message="编码长度不能超过30")
|
||||||
|
@ApiModelProperty("设备唯一标识")
|
||||||
|
@Length(max= 30,message="编码长度不能超过30")
|
||||||
|
private String sn;
|
||||||
|
/**
|
||||||
|
* 设备名称
|
||||||
|
*/
|
||||||
|
@Size(max= 20,message="编码长度不能超过20")
|
||||||
|
@ApiModelProperty("设备名称")
|
||||||
|
@Length(max= 20,message="编码长度不能超过20")
|
||||||
|
private String name;
|
||||||
|
/**
|
||||||
|
* 设备类型
|
||||||
|
*/
|
||||||
|
@Size(max= 20,message="编码长度不能超过20")
|
||||||
|
@ApiModelProperty("设备类型")
|
||||||
|
@Length(max= 20,message="编码长度不能超过20")
|
||||||
|
private String deviceType;
|
||||||
|
/**
|
||||||
|
* 设备组ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("设备组ID")
|
||||||
|
private Long groupId;
|
||||||
|
/**
|
||||||
|
* 学校ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("学校ID")
|
||||||
|
private Long cellId;
|
||||||
|
/**
|
||||||
|
* 设备IP
|
||||||
|
*/
|
||||||
|
@Size(max= 20,message="编码长度不能超过20")
|
||||||
|
@ApiModelProperty("设备IP")
|
||||||
|
@Length(max= 20,message="编码长度不能超过20")
|
||||||
|
private String deviceIp;
|
||||||
|
/**
|
||||||
|
* apk版本
|
||||||
|
*/
|
||||||
|
@Size(max= 10,message="编码长度不能超过10")
|
||||||
|
@ApiModelProperty("apk版本")
|
||||||
|
@Length(max= 10,message="编码长度不能超过10")
|
||||||
|
private String apkVersion;
|
||||||
|
/**
|
||||||
|
* voip到期时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("voip到期时间")
|
||||||
|
private Date voipTime;
|
||||||
|
/**
|
||||||
|
* 人脸库
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("人脸库")
|
||||||
|
private Integer faceCount;
|
||||||
|
/**
|
||||||
|
* 设备状态
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("设备状态")
|
||||||
|
private Integer status;
|
||||||
|
/**
|
||||||
|
* 创建时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("创建时间")
|
||||||
|
@TableField(fill = FieldFill.INSERT)
|
||||||
|
private Date createTime;
|
||||||
|
/**
|
||||||
|
* 更新时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("更新时间")
|
||||||
|
@TableField(fill = FieldFill.INSERT_UPDATE)
|
||||||
|
private Date updateTime;
|
||||||
|
/**
|
||||||
|
* 创建人
|
||||||
|
*/
|
||||||
|
@Size(max= 20,message="编码长度不能超过20")
|
||||||
|
@ApiModelProperty("创建人")
|
||||||
|
@Length(max= 20,message="编码长度不能超过20")
|
||||||
|
private String createBy;
|
||||||
|
/**
|
||||||
|
* 区域ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("区域ID")
|
||||||
|
private Long deptId;
|
||||||
|
|
||||||
|
@ApiModelProperty("运营商ID")
|
||||||
|
@TableField(exist = false)
|
||||||
|
private Long tenantId;
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,93 @@
|
||||||
|
package net.shapelight.modules.mobile.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.FieldFill;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.annotation.CreatedDate;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @TableName mobile_device_group
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName ("mobile_device_group")
|
||||||
|
@ApiModel("话机信息")
|
||||||
|
public class MobileDeviceGroup implements Serializable {
|
||||||
|
/**
|
||||||
|
* 设备组id
|
||||||
|
*/
|
||||||
|
@TableId
|
||||||
|
@ApiModelProperty(name = "设备组ID")
|
||||||
|
private Long groupId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分组名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "组名",required = true)
|
||||||
|
private String groupName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设备类型ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "类型ID",required = true)
|
||||||
|
private String modelId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 学校ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "学校ID",required = true)
|
||||||
|
private Long cellId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设备数量
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "设备数量",required = true)
|
||||||
|
private Integer deviceCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 描述
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "描述",required = true)
|
||||||
|
private String describe;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 学校名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "学校名称",required = true)
|
||||||
|
private String cellName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设备区域
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "设备组区域",required = true)
|
||||||
|
private Long deptId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设备组状态
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "设备组状态")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "创建时间")
|
||||||
|
@TableField(fill = FieldFill.INSERT)
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "修改时间")
|
||||||
|
@TableField(fill = FieldFill.INSERT_UPDATE)
|
||||||
|
private Date updateTime;
|
||||||
|
}
|
|
@ -0,0 +1,116 @@
|
||||||
|
package net.shapelight.modules.mobile.entity;
|
||||||
|
|
||||||
|
import javax.validation.constraints.Size;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @TableName mobile_package
|
||||||
|
*/
|
||||||
|
@TableName("mobile_package")
|
||||||
|
@ApiModel("套餐信息")
|
||||||
|
@Data
|
||||||
|
public class MobilePackage implements Serializable {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 套餐ID
|
||||||
|
*/
|
||||||
|
@NotNull(message="[套餐ID]不能为空")
|
||||||
|
@ApiModelProperty("套餐ID")
|
||||||
|
private Long packageId;
|
||||||
|
/**
|
||||||
|
* 套餐名称
|
||||||
|
*/
|
||||||
|
@Size(max= 20,message="编码长度不能超过20")
|
||||||
|
@ApiModelProperty("套餐名称")
|
||||||
|
@Length(max= 20,message="编码长度不能超过20")
|
||||||
|
private String packageName;
|
||||||
|
/**
|
||||||
|
* 套餐类型
|
||||||
|
*/
|
||||||
|
@Size(max= 20,message="编码长度不能超过20")
|
||||||
|
@ApiModelProperty("套餐类型")
|
||||||
|
@Length(max= 20,message="编码长度不能超过20")
|
||||||
|
private String packageType;
|
||||||
|
/**
|
||||||
|
* 套餐价格
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("套餐价格")
|
||||||
|
private BigDecimal price;
|
||||||
|
/**
|
||||||
|
* 通话时长
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("通话时长")
|
||||||
|
private Integer duration;
|
||||||
|
/**
|
||||||
|
* 通话次数(临时包)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("通话次数(临时包)")
|
||||||
|
private Integer callCount;
|
||||||
|
/**
|
||||||
|
* 开始时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("开始时间")
|
||||||
|
private Date startTime;
|
||||||
|
/**
|
||||||
|
* 结束时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("结束时间")
|
||||||
|
private Date endTime;
|
||||||
|
/**
|
||||||
|
* 生效类型(0当月1下月)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("生效类型(0当月1下月)")
|
||||||
|
private Integer effectType;
|
||||||
|
/**
|
||||||
|
* 套餐模式
|
||||||
|
*/
|
||||||
|
@Size(max= 10,message="编码长度不能超过10")
|
||||||
|
@ApiModelProperty("套餐模式")
|
||||||
|
@Length(max= 10,message="编码长度不能超过10")
|
||||||
|
private String packageModel;
|
||||||
|
/**
|
||||||
|
* 折扣
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("折扣")
|
||||||
|
private BigDecimal discount;
|
||||||
|
/**
|
||||||
|
* 月底是否清零
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("月底是否清零")
|
||||||
|
private Integer isClear;
|
||||||
|
/**
|
||||||
|
* 状态(0未启用1启用)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("状态(0未启用1启用)")
|
||||||
|
private Integer status;
|
||||||
|
/**
|
||||||
|
* 创建时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("创建时间")
|
||||||
|
private Date createTime;
|
||||||
|
/**
|
||||||
|
* 更新时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("更新时间")
|
||||||
|
private Date updateTime;
|
||||||
|
/**
|
||||||
|
* 创建人
|
||||||
|
*/
|
||||||
|
@Size(max= 20,message="编码长度不能超过20")
|
||||||
|
@ApiModelProperty("创建人")
|
||||||
|
@Length(max= 20,message="编码长度不能超过20")
|
||||||
|
private String createBy;
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,259 @@
|
||||||
|
package net.shapelight.modules.mobile.entity;
|
||||||
|
|
||||||
|
import javax.validation.constraints.Size;
|
||||||
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.hibernate.validator.constraints.Length;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @TableName mobile_package_order
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("mobile_package_order")
|
||||||
|
@ApiModel("套餐订单")
|
||||||
|
public class MobilePackageOrder implements Serializable {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单ID
|
||||||
|
*/
|
||||||
|
@NotNull(message="[订单ID]不能为空")
|
||||||
|
@ApiModelProperty("订单ID")
|
||||||
|
private Long orderId;
|
||||||
|
/**
|
||||||
|
* 学生ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("学生ID")
|
||||||
|
private Long personId;
|
||||||
|
/**
|
||||||
|
* 套餐ID
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("套餐ID")
|
||||||
|
private Long packageId;
|
||||||
|
/**
|
||||||
|
* 支付金额
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("支付金额")
|
||||||
|
private BigDecimal payment;
|
||||||
|
/**
|
||||||
|
* 付款时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("付款时间")
|
||||||
|
private Date payTime;
|
||||||
|
/**
|
||||||
|
* 支付状态(1已支付0未支付)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("支付状态(1已支付0未支付)")
|
||||||
|
private Integer payStatus;
|
||||||
|
/**
|
||||||
|
* 生效时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("生效时间")
|
||||||
|
private Date effectiveDate;
|
||||||
|
/**
|
||||||
|
* 剩余时长
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("剩余时长")
|
||||||
|
private Integer remainderTime;
|
||||||
|
/**
|
||||||
|
* 剩余次数
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("剩余次数")
|
||||||
|
private Integer remainderCount;
|
||||||
|
/**
|
||||||
|
* 生效状态
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("生效状态")
|
||||||
|
private Integer status;
|
||||||
|
/**
|
||||||
|
* 学生姓名
|
||||||
|
*/
|
||||||
|
@Size(max= 20,message="编码长度不能超过20")
|
||||||
|
@ApiModelProperty("学生姓名")
|
||||||
|
@Length(max= 20,message="编码长度不能超过20")
|
||||||
|
private String personName;
|
||||||
|
/**
|
||||||
|
* 到期时间
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("到期时间")
|
||||||
|
private Date expireTime;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单ID
|
||||||
|
*/
|
||||||
|
private void setOrderId(Long orderId){
|
||||||
|
this.orderId = orderId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 学生ID
|
||||||
|
*/
|
||||||
|
private void setPersonId(Long personId){
|
||||||
|
this.personId = personId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 套餐ID
|
||||||
|
*/
|
||||||
|
private void setPackageId(Long packageId){
|
||||||
|
this.packageId = packageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 支付金额
|
||||||
|
*/
|
||||||
|
private void setPayment(BigDecimal payment){
|
||||||
|
this.payment = payment;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 付款时间
|
||||||
|
*/
|
||||||
|
private void setPayTime(Date payTime){
|
||||||
|
this.payTime = payTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 支付状态(1已支付0未支付)
|
||||||
|
*/
|
||||||
|
private void setPayStatus(Integer payStatus){
|
||||||
|
this.payStatus = payStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生效时间
|
||||||
|
*/
|
||||||
|
private void setEffectiveDate(Date effectiveDate){
|
||||||
|
this.effectiveDate = effectiveDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 剩余时长
|
||||||
|
*/
|
||||||
|
private void setRemainderTime(Integer remainderTime){
|
||||||
|
this.remainderTime = remainderTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 剩余次数
|
||||||
|
*/
|
||||||
|
private void setRemainderCount(Integer remainderCount){
|
||||||
|
this.remainderCount = remainderCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生效状态
|
||||||
|
*/
|
||||||
|
private void setStatus(Integer status){
|
||||||
|
this.status = status;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 学生姓名
|
||||||
|
*/
|
||||||
|
private void setPersonName(String personName){
|
||||||
|
this.personName = personName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 到期时间
|
||||||
|
*/
|
||||||
|
private void setExpireTime(Date expireTime){
|
||||||
|
this.expireTime = expireTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 订单ID
|
||||||
|
*/
|
||||||
|
private Long getOrderId(){
|
||||||
|
return this.orderId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 学生ID
|
||||||
|
*/
|
||||||
|
private Long getPersonId(){
|
||||||
|
return this.personId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 套餐ID
|
||||||
|
*/
|
||||||
|
private Long getPackageId(){
|
||||||
|
return this.packageId;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 支付金额
|
||||||
|
*/
|
||||||
|
private BigDecimal getPayment(){
|
||||||
|
return this.payment;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 付款时间
|
||||||
|
*/
|
||||||
|
private Date getPayTime(){
|
||||||
|
return this.payTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 支付状态(1已支付0未支付)
|
||||||
|
*/
|
||||||
|
private Integer getPayStatus(){
|
||||||
|
return this.payStatus;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生效时间
|
||||||
|
*/
|
||||||
|
private Date getEffectiveDate(){
|
||||||
|
return this.effectiveDate;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 剩余时长
|
||||||
|
*/
|
||||||
|
private Integer getRemainderTime(){
|
||||||
|
return this.remainderTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 剩余次数
|
||||||
|
*/
|
||||||
|
private Integer getRemainderCount(){
|
||||||
|
return this.remainderCount;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生效状态
|
||||||
|
*/
|
||||||
|
private Integer getStatus(){
|
||||||
|
return this.status;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 学生姓名
|
||||||
|
*/
|
||||||
|
private String getPersonName(){
|
||||||
|
return this.personName;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 到期时间
|
||||||
|
*/
|
||||||
|
private Date getExpireTime(){
|
||||||
|
return this.expireTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
package net.shapelight.modules.mobile.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileCallLogs;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_call_logs】的数据库操作Mapper
|
||||||
|
* @createDate 2024-11-14 09:51:55
|
||||||
|
* @Entity net.shapelight.modules.mobile.entity.MobileCallLogs
|
||||||
|
*/
|
||||||
|
public interface MobileCallLogsMapper extends BaseMapper<MobileCallLogs> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
package net.shapelight.modules.mobile.mapper;
|
||||||
|
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileDeviceGroup;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_device_group】的数据库操作Mapper
|
||||||
|
* @createDate 2024-11-13 11:50:36
|
||||||
|
* @Entity net.shapelight.modules.mobile.entity.MobileDeviceGroup
|
||||||
|
*/
|
||||||
|
public interface MobileDeviceGroupMapper extends BaseMapper<MobileDeviceGroup> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
package net.shapelight.modules.mobile.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileDevice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_device】的数据库操作Mapper
|
||||||
|
* @createDate 2024-11-13 14:36:39
|
||||||
|
* @Entity net.shapelight.modules.mobile.entity.MobileDevice
|
||||||
|
*/
|
||||||
|
public interface MobileDeviceMapper extends BaseMapper<MobileDevice> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
package net.shapelight.modules.mobile.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobilePackage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_package】的数据库操作Mapper
|
||||||
|
* @createDate 2024-11-14 09:50:19
|
||||||
|
* @Entity net.shapelight.modules.mobile.entity.MobilePackage
|
||||||
|
*/
|
||||||
|
public interface MobilePackageMapper extends BaseMapper<MobilePackage> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
package net.shapelight.modules.mobile.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobilePackageOrder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_package_order】的数据库操作Mapper
|
||||||
|
* @createDate 2024-11-14 09:51:08
|
||||||
|
* @Entity net.shapelight.modules.mobile.entity.MobilePackageOrder
|
||||||
|
*/
|
||||||
|
public interface MobilePackageOrderMapper extends BaseMapper<MobilePackageOrder> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
package net.shapelight.modules.mobile.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileCallLogs;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_call_logs】的数据库操作Service
|
||||||
|
* @createDate 2024-11-14 09:51:55
|
||||||
|
*/
|
||||||
|
public interface MobileCallLogsService extends IService<MobileCallLogs> {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
package net.shapelight.modules.mobile.service;
|
||||||
|
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileDeviceGroup;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_device_group】的数据库操作Service
|
||||||
|
* @createDate 2024-11-13 11:50:36
|
||||||
|
*/
|
||||||
|
public interface MobileDeviceGroupService extends IService<MobileDeviceGroup> {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,16 @@
|
||||||
|
package net.shapelight.modules.mobile.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import net.shapelight.common.utils.PageUtils;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileDevice;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_device】的数据库操作Service
|
||||||
|
* @createDate 2024-11-13 14:36:39
|
||||||
|
*/
|
||||||
|
public interface MobileDeviceService extends IService<MobileDevice> {
|
||||||
|
PageUtils queryPage(Map<String,Object> params);
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
package net.shapelight.modules.mobile.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobilePackageOrder;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_package_order】的数据库操作Service
|
||||||
|
* @createDate 2024-11-14 09:51:08
|
||||||
|
*/
|
||||||
|
public interface MobilePackageOrderService extends IService<MobilePackageOrder> {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,13 @@
|
||||||
|
package net.shapelight.modules.mobile.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobilePackage;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_package】的数据库操作Service
|
||||||
|
* @createDate 2024-11-14 09:50:19
|
||||||
|
*/
|
||||||
|
public interface MobilePackageService extends IService<MobilePackage> {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
package net.shapelight.modules.mobile.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileCallLogs;
|
||||||
|
import net.shapelight.modules.mobile.service.MobileCallLogsService;
|
||||||
|
import net.shapelight.modules.mobile.mapper.MobileCallLogsMapper;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_call_logs】的数据库操作Service实现
|
||||||
|
* @createDate 2024-11-14 09:51:55
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class MobileCallLogsServiceImpl extends ServiceImpl<MobileCallLogsMapper, MobileCallLogs>
|
||||||
|
implements MobileCallLogsService{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
package net.shapelight.modules.mobile.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileDeviceGroup;
|
||||||
|
import net.shapelight.modules.mobile.service.MobileDeviceGroupService;
|
||||||
|
import net.shapelight.modules.mobile.mapper.MobileDeviceGroupMapper;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_device_group】的数据库操作Service实现
|
||||||
|
* @createDate 2024-11-13 11:50:36
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class MobileDeviceGroupServiceImpl extends ServiceImpl<MobileDeviceGroupMapper, MobileDeviceGroup>
|
||||||
|
implements MobileDeviceGroupService{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
package net.shapelight.modules.mobile.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import net.shapelight.common.utils.PageUtils;
|
||||||
|
import net.shapelight.common.utils.Query;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobileDevice;
|
||||||
|
import net.shapelight.modules.mobile.service.MobileDeviceService;
|
||||||
|
import net.shapelight.modules.mobile.mapper.MobileDeviceMapper;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_device】的数据库操作Service实现
|
||||||
|
* @createDate 2024-11-13 14:36:39
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class MobileDeviceServiceImpl extends ServiceImpl<MobileDeviceMapper, MobileDevice>
|
||||||
|
implements MobileDeviceService{
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageUtils queryPage(Map<String, Object> params) {
|
||||||
|
IPage<MobileDevice> page = this.page(new Query<MobileDevice>().getPage(params),new LambdaQueryWrapper<MobileDevice>()
|
||||||
|
.eq(params.get("name")!=null && params.get("name")!="",MobileDevice::getName,params.get("name")));
|
||||||
|
|
||||||
|
return new PageUtils(page);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
package net.shapelight.modules.mobile.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobilePackageOrder;
|
||||||
|
import net.shapelight.modules.mobile.service.MobilePackageOrderService;
|
||||||
|
import net.shapelight.modules.mobile.mapper.MobilePackageOrderMapper;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_package_order】的数据库操作Service实现
|
||||||
|
* @createDate 2024-11-14 09:51:08
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class MobilePackageOrderServiceImpl extends ServiceImpl<MobilePackageOrderMapper, MobilePackageOrder>
|
||||||
|
implements MobilePackageOrderService{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,22 @@
|
||||||
|
package net.shapelight.modules.mobile.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import net.shapelight.modules.mobile.entity.MobilePackage;
|
||||||
|
import net.shapelight.modules.mobile.service.MobilePackageService;
|
||||||
|
import net.shapelight.modules.mobile.mapper.MobilePackageMapper;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author zhangbo
|
||||||
|
* @description 针对表【mobile_package】的数据库操作Service实现
|
||||||
|
* @createDate 2024-11-14 09:50:19
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class MobilePackageServiceImpl extends ServiceImpl<MobilePackageMapper, MobilePackage>
|
||||||
|
implements MobilePackageService{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ import io.netty.channel.Channel;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.shapelight.common.config.GlobalValue;
|
import net.shapelight.common.config.GlobalValue;
|
||||||
import net.shapelight.common.config.MinioConfig;
|
import net.shapelight.common.config.MinioConfig;
|
||||||
import net.shapelight.common.interceptor.CustomizeTableNameHandler;
|
import net.shapelight.common.handler.CustomizeTableNameHandler;
|
||||||
import net.shapelight.common.utils.*;
|
import net.shapelight.common.utils.*;
|
||||||
import net.shapelight.modules.nettyapi.config.ClientMap;
|
import net.shapelight.modules.nettyapi.config.ClientMap;
|
||||||
import net.shapelight.modules.nettyapi.config.CmdConstant;
|
import net.shapelight.modules.nettyapi.config.CmdConstant;
|
||||||
|
|
|
@ -55,7 +55,7 @@ public class TenParentController extends AbstractController {
|
||||||
|
|
||||||
|
|
||||||
@GetMapping("/list")
|
@GetMapping("/list")
|
||||||
@ApiOperation(value = "查询访客列表", response = ParentVo.class)
|
@ApiOperation(value = "查询家长列表", response = ParentVo.class)
|
||||||
@ApiImplicitParams({
|
@ApiImplicitParams({
|
||||||
@ApiImplicitParam(name = "limit", value = "每页条数", paramType = "query", dataType = "String", required = true),
|
@ApiImplicitParam(name = "limit", value = "每页条数", paramType = "query", dataType = "String", required = true),
|
||||||
@ApiImplicitParam(name = "page", value = "页码", paramType = "query", dataType = "String", required = true),
|
@ApiImplicitParam(name = "page", value = "页码", paramType = "query", dataType = "String", required = true),
|
||||||
|
@ -71,7 +71,11 @@ public class TenParentController extends AbstractController {
|
||||||
|
|
||||||
@PostMapping("/delete")
|
@PostMapping("/delete")
|
||||||
@Transactional
|
@Transactional
|
||||||
public R deleteParent(@RequestBody List<Map<String, String>> params) throws Exception {
|
@ApiOperation(value = "删除家长信息")
|
||||||
|
@ApiImplicitParams({
|
||||||
|
@ApiImplicitParam(name = "id", value = "家长ID", paramType = "query", dataType = "List", required = true)
|
||||||
|
})
|
||||||
|
public R deleteParent(@RequestBody List<Map<String, String>> params) {
|
||||||
/*Map<String,Object> opParams = new HashMap<>();
|
/*Map<String,Object> opParams = new HashMap<>();
|
||||||
opParams.put("operation","delUserContactData");
|
opParams.put("operation","delUserContactData");
|
||||||
opParams.put("accountNumber",globalValue.accountNumber);
|
opParams.put("accountNumber",globalValue.accountNumber);
|
||||||
|
|
|
@ -5,7 +5,7 @@ import java.util.Map;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParam;
|
||||||
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiImplicitParams;
|
||||||
import net.shapelight.common.interceptor.CustomizeTableNameHandler;
|
import net.shapelight.common.handler.CustomizeTableNameHandler;
|
||||||
import net.shapelight.modules.sys.controller.AbstractController;
|
import net.shapelight.modules.sys.controller.AbstractController;
|
||||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
|
@ -29,6 +29,9 @@ public interface TenCellDao extends BaseMapper<TenCellEntity> {
|
||||||
void createTenCellDept(@Param("cellId")String cellId);
|
void createTenCellDept(@Param("cellId")String cellId);
|
||||||
void createTenParent(@Param("cellId")String celId);
|
void createTenParent(@Param("cellId")String celId);
|
||||||
void createTenRelation(@Param("cellId")String celId);
|
void createTenRelation(@Param("cellId")String celId);
|
||||||
|
void createMobileCallLogs(@Param("cellId")String cellId);
|
||||||
|
void createMobilePackageOrder(@Param("cellId")String cellId);
|
||||||
|
void createMobileDevice(@Param("tenantId")String tenantId);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -91,6 +91,9 @@ public class TenCellServiceImpl extends ServiceImpl<TenCellDao, TenCellEntity> i
|
||||||
// tenCellDao.createTenParent(cellId);
|
// tenCellDao.createTenParent(cellId);
|
||||||
//tenCellDao.createTenRelation(cellId);
|
//tenCellDao.createTenRelation(cellId);
|
||||||
//tenCellDao.createTenCellDept(cellId);
|
//tenCellDao.createTenCellDept(cellId);
|
||||||
|
tenCellDao.createMobileCallLogs(cellId);
|
||||||
|
tenCellDao.createMobilePackageOrder(cellId);
|
||||||
|
tenCellDao.createMobileDevice(tenantId);
|
||||||
return super.save(entity);
|
return super.save(entity);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@ import io.minio.PutObjectOptions;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.shapelight.common.config.GlobalValue;
|
import net.shapelight.common.config.GlobalValue;
|
||||||
import net.shapelight.common.config.MinioConfig;
|
import net.shapelight.common.config.MinioConfig;
|
||||||
import net.shapelight.common.interceptor.CustomizeTableNameHandler;
|
import net.shapelight.common.handler.CustomizeTableNameHandler;
|
||||||
import net.shapelight.common.utils.*;
|
import net.shapelight.common.utils.*;
|
||||||
import net.shapelight.commons.engine.sdk.PicSDK;
|
import net.shapelight.commons.engine.sdk.PicSDK;
|
||||||
import net.shapelight.modules.app.entity.AppUserEntity;
|
import net.shapelight.modules.app.entity.AppUserEntity;
|
||||||
|
@ -913,7 +913,7 @@ public class TenPersonServiceImpl implements TenPersonService {
|
||||||
tenPersonDao.logicDeleteById(personId, cellId);
|
tenPersonDao.logicDeleteById(personId, cellId);
|
||||||
tenRelationMapper.delete(new LambdaQueryWrapper<TenRelation>().eq(TenRelation::getStudentId,personId));
|
tenRelationMapper.delete(new LambdaQueryWrapper<TenRelation>().eq(TenRelation::getStudentId,personId));
|
||||||
Map<String, String> snPersons = tenPersonSyncService.findGroupDevicePerson(personId,cellId);
|
Map<String, String> snPersons = tenPersonSyncService.findGroupDevicePerson(personId,cellId);
|
||||||
if(snPersons!=null) {
|
if(snPersons!=null && !snPersons.isEmpty()) {
|
||||||
String sn = snPersons.get("deviceSn");
|
String sn = snPersons.get("deviceSn");
|
||||||
TenDeviceEntity deviceEntity = tenDeviceService.findBySn(sn);
|
TenDeviceEntity deviceEntity = tenDeviceService.findBySn(sn);
|
||||||
if(deviceEntity==null){
|
if(deviceEntity==null){
|
||||||
|
|
|
@ -106,7 +106,7 @@ global:
|
||||||
# secretKey: 0fad3477fb9f60c7be75561db967e8d7
|
# secretKey: 0fad3477fb9f60c7be75561db967e8d7
|
||||||
# bucketName: cell
|
# bucketName: cell
|
||||||
wx:
|
wx:
|
||||||
appid: wxf59991f23f1f5500
|
appid: wx313273bb23519704
|
||||||
secret: 30b523b2bdd7b0739b7f06e9dc1519f8
|
secret: 30b523b2bdd7b0739b7f06e9dc1519f8
|
||||||
tcp_server:
|
tcp_server:
|
||||||
port: 8086
|
port: 8086
|
||||||
|
|
|
@ -0,0 +1,26 @@
|
||||||
|
<?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="net.shapelight.modules.mobile.mapper.MobileCallLogsMapper">
|
||||||
|
|
||||||
|
<resultMap id="BaseResultMap" type="net.shapelight.modules.mobile.entity.MobileCallLogs">
|
||||||
|
<id property="id" column="id" jdbcType="BIGINT"/>
|
||||||
|
<result property="deviceId" column="device_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="personId" column="person_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="relationId" column="relation_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="callType" column="call_type" jdbcType="TINYINT"/>
|
||||||
|
<result property="isConnected" column="is_connected" jdbcType="TINYINT"/>
|
||||||
|
<result property="isSos" column="is_sos" jdbcType="TINYINT"/>
|
||||||
|
<result property="operateStatus" column="operate_status" jdbcType="TINYINT"/>
|
||||||
|
<result property="startTime" column="start_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="endTime" column="end_time" jdbcType="TIMESTAMP"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
id,device_id,person_id,
|
||||||
|
relation_id,call_type,is_connected,
|
||||||
|
is_sos,operate_status,start_time,
|
||||||
|
end_time
|
||||||
|
</sql>
|
||||||
|
</mapper>
|
|
@ -0,0 +1,27 @@
|
||||||
|
<?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="net.shapelight.modules.mobile.mapper.MobileDeviceGroupMapper">
|
||||||
|
|
||||||
|
<resultMap id="BaseResultMap" type="net.shapelight.modules.mobile.entity.MobileDeviceGroup">
|
||||||
|
<id property="groupId" column="group_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="groupName" column="group_name" jdbcType="VARCHAR"/>
|
||||||
|
<result property="modelId" column="model_id" jdbcType="VARCHAR"/>
|
||||||
|
<result property="cellId" column="cell_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="deviceCount" column="device_count" jdbcType="INTEGER"/>
|
||||||
|
<result property="describe" column="describe" jdbcType="VARCHAR"/>
|
||||||
|
<result property="cellName" column="cell_name" jdbcType="VARCHAR"/>
|
||||||
|
<result property="deptId" column="dept_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="status" column="status" jdbcType="INTEGER"/>
|
||||||
|
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
group_id,group_name,model_id,
|
||||||
|
cell_id,device_count,describe,
|
||||||
|
cell_name,dept_id,status,
|
||||||
|
create_time,update_time
|
||||||
|
</sql>
|
||||||
|
</mapper>
|
|
@ -0,0 +1,32 @@
|
||||||
|
<?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="net.shapelight.modules.mobile.mapper.MobileDeviceMapper">
|
||||||
|
|
||||||
|
<resultMap id="BaseResultMap" type="net.shapelight.modules.mobile.entity.MobileDevice">
|
||||||
|
<id property="id" column="id" jdbcType="BIGINT"/>
|
||||||
|
<result property="sn" column="sn" jdbcType="VARCHAR"/>
|
||||||
|
<result property="name" column="name" jdbcType="VARCHAR"/>
|
||||||
|
<result property="deviceType" column="device_type" jdbcType="VARCHAR"/>
|
||||||
|
<result property="groupId" column="group_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="cellId" column="cell_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="deptId" column="dept_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="deviceIp" column="device_ip" jdbcType="VARCHAR"/>
|
||||||
|
<result property="apkVersion" column="apk_version" jdbcType="VARCHAR"/>
|
||||||
|
<result property="voipTime" column="voip_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="faceCount" column="face_count" jdbcType="INTEGER"/>
|
||||||
|
<result property="status" column="status" jdbcType="INTEGER"/>
|
||||||
|
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="createBy" column="create_by" jdbcType="VARCHAR"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
id,sn,name,
|
||||||
|
device_type,group_id,cell_id,
|
||||||
|
dept_id,device_ip,apk_version,voip_time,
|
||||||
|
face_count,status,create_time,
|
||||||
|
update_time,create_by
|
||||||
|
</sql>
|
||||||
|
</mapper>
|
|
@ -0,0 +1,34 @@
|
||||||
|
<?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="net.shapelight.modules.mobile.mapper.MobilePackageMapper">
|
||||||
|
|
||||||
|
<resultMap id="BaseResultMap" type="net.shapelight.modules.mobile.entity.MobilePackage">
|
||||||
|
<id property="packageId" column="package_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="packageName" column="package_name" jdbcType="VARCHAR"/>
|
||||||
|
<result property="packageType" column="package_type" jdbcType="VARCHAR"/>
|
||||||
|
<result property="price" column="price" jdbcType="DECIMAL"/>
|
||||||
|
<result property="duration" column="duration" jdbcType="INTEGER"/>
|
||||||
|
<result property="callCount" column="call_count" jdbcType="INTEGER"/>
|
||||||
|
<result property="startTime" column="start_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="endTime" column="end_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="effectType" column="effect_type" jdbcType="INTEGER"/>
|
||||||
|
<result property="packageModel" column="package_model" jdbcType="VARCHAR"/>
|
||||||
|
<result property="discount" column="discount" jdbcType="DECIMAL"/>
|
||||||
|
<result property="isClear" column="is_clear" jdbcType="INTEGER"/>
|
||||||
|
<result property="status" column="status" jdbcType="INTEGER"/>
|
||||||
|
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="createBy" column="create_by" jdbcType="VARCHAR"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
package_id,package_name,package_type,
|
||||||
|
price,duration,call_count,
|
||||||
|
start_time,end_time,effect_type,
|
||||||
|
package_model,discount,is_clear,
|
||||||
|
status,create_time,update_time,
|
||||||
|
create_by
|
||||||
|
</sql>
|
||||||
|
</mapper>
|
|
@ -0,0 +1,28 @@
|
||||||
|
<?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="net.shapelight.modules.mobile.mapper.MobilePackageOrderMapper">
|
||||||
|
|
||||||
|
<resultMap id="BaseResultMap" type="net.shapelight.modules.mobile.entity.MobilePackageOrder">
|
||||||
|
<id property="orderId" column="order_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="personId" column="person_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="packageId" column="package_id" jdbcType="BIGINT"/>
|
||||||
|
<result property="payment" column="payment" jdbcType="DECIMAL"/>
|
||||||
|
<result property="payTime" column="pay_time" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="payStatus" column="pay_status" jdbcType="INTEGER"/>
|
||||||
|
<result property="effectiveDate" column="effective_date" jdbcType="TIMESTAMP"/>
|
||||||
|
<result property="remainderTime" column="remainder_time" jdbcType="INTEGER"/>
|
||||||
|
<result property="remainderCount" column="remainder_count" jdbcType="INTEGER"/>
|
||||||
|
<result property="status" column="status" jdbcType="TINYINT"/>
|
||||||
|
<result property="personName" column="person_name" jdbcType="VARCHAR"/>
|
||||||
|
<result property="expireTime" column="expire_time" jdbcType="TIMESTAMP"/>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<sql id="Base_Column_List">
|
||||||
|
order_id,person_id,package_id,
|
||||||
|
payment,pay_time,pay_status,
|
||||||
|
effective_date,remainder_time,remainder_count,
|
||||||
|
status,person_name,expire_time
|
||||||
|
</sql>
|
||||||
|
</mapper>
|
|
@ -79,6 +79,18 @@
|
||||||
create table if not exists `ten_relation_${cellId}` like `ten_relation_0`;
|
create table if not exists `ten_relation_${cellId}` like `ten_relation_0`;
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
|
<update id="createMobileCallLogs" parameterType="String">
|
||||||
|
create table if not exists `mobile_call_logs_${cellId}` like `mobile_call_logs`;
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<update id="createMobilePackageOrder" parameterType="String">
|
||||||
|
create table if not exists `mobile_package_order_${cellId}` like `mobile_package_order`;
|
||||||
|
</update>
|
||||||
|
|
||||||
|
<update id="createMobileDevice" parameterType="String">
|
||||||
|
create table if not exists `mobile_device_${teantId}` like `mobile_device`;
|
||||||
|
</update>
|
||||||
|
|
||||||
<select id="queryList" resultMap="tenCellMap">
|
<select id="queryList" resultMap="tenCellMap">
|
||||||
select * from ten_cell where delete_flag = 0 and tenant_id = #{params.tenantId}
|
select * from ten_cell where delete_flag = 0 and tenant_id = #{params.tenantId}
|
||||||
<if test="params.sql_filter != null">
|
<if test="params.sql_filter != null">
|
||||||
|
|
Loading…
Reference in New Issue