|
|
@@ -2,11 +2,13 @@ package org.jeecg.modules.smscheck.controller;
|
|
|
|
|
|
import cn.hutool.core.lang.Dict;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.fasterxml.jackson.databind.ObjectMapper;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
@@ -14,17 +16,20 @@ import org.jeecg.common.api.vo.Result;
|
|
|
import org.jeecg.common.aspect.annotation.PermissionData;
|
|
|
import org.jeecg.common.constant.CommonConstant;
|
|
|
import org.jeecg.common.system.query.QueryGenerator;
|
|
|
-import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
|
|
|
-import org.jeecg.modules.smscheck.entity.SmsCheckCustomerData;
|
|
|
-import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfo;
|
|
|
-import org.jeecg.modules.smscheck.entity.SpecialExamination;
|
|
|
+import org.jeecg.modules.smscheck.entity.*;
|
|
|
import org.jeecg.modules.smscheck.service.BusinessReminderCardService;
|
|
|
+import org.jeecg.modules.smscheck.service.PhonePurposeService;
|
|
|
+import org.jeecg.modules.smscheck.util.HttpClientUtil;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import java.util.Arrays;
|
|
|
+import java.util.HashMap;
|
|
|
import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.regex.Matcher;
|
|
|
+import java.util.regex.Pattern;
|
|
|
import java.util.stream.Stream;
|
|
|
|
|
|
/**
|
|
|
@@ -37,6 +42,10 @@ import java.util.stream.Stream;
|
|
|
public class BusinessReminderCardController {
|
|
|
@Autowired
|
|
|
private BusinessReminderCardService businessReminderCardService;
|
|
|
+ @Autowired
|
|
|
+ private PhonePurposeService phonePurposeService;
|
|
|
+
|
|
|
+ private static final String PHONE_PLACE_API_URL="https://cx.shouji.360.cn/phonearea.php";
|
|
|
|
|
|
|
|
|
@ApiOperation(value = "入网信息业务-分页列表查询", notes = "入网信息业务-分页列表查询")
|
|
|
@@ -46,7 +55,16 @@ public class BusinessReminderCardController {
|
|
|
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
|
|
|
HttpServletRequest request) {
|
|
|
businessReminderCard.setDelFlag( CommonConstant.DEL_FLAG_0);
|
|
|
+ String numberResults_MultiString = request.getParameterMap().get("numberResults_MultiString")==null?"":
|
|
|
+ Arrays.toString(request.getParameterMap().get("numberResults_MultiString")).replace("[", "").replace("]", "").replace("*", "");
|
|
|
+
|
|
|
+ request.getParameterMap().get("numberResults_MultiString");
|
|
|
+ LambdaQueryWrapper<BusinessReminderCard> queryWrapperData = new LambdaQueryWrapper<>();
|
|
|
QueryWrapper<BusinessReminderCard> queryWrapper = QueryGenerator.initQueryWrapper(businessReminderCard, request.getParameterMap());
|
|
|
+
|
|
|
+ if (StringUtils.isNotBlank(numberResults_MultiString)){
|
|
|
+ queryWrapper.or().like("number_results",numberResults_MultiString);
|
|
|
+ }
|
|
|
Page<BusinessReminderCard> page = new Page<>(pageNo, pageSize);
|
|
|
IPage<BusinessReminderCard> pageList = businessReminderCardService.page(page, queryWrapper);
|
|
|
return Result.OK(pageList);
|
|
|
@@ -86,21 +104,21 @@ public class BusinessReminderCardController {
|
|
|
QueryWrapper<BusinessReminderCard> unCountQueryWrapper = QueryGenerator.initQueryWrapper(new BusinessReminderCard(), request.getParameterMap());
|
|
|
unCountQueryWrapper.lambda()
|
|
|
.eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0)
|
|
|
- .in(BusinessReminderCard::getNumberResults, Arrays.asList(1));
|
|
|
+ .like(BusinessReminderCard::getNumberResults, '1');
|
|
|
long unCount = businessReminderCardService.count(unCountQueryWrapper);
|
|
|
|
|
|
//已报蓝紫名单
|
|
|
QueryWrapper<BusinessReminderCard> uncheckCountQueryWrapper = QueryGenerator.initQueryWrapper(new BusinessReminderCard(), request.getParameterMap());
|
|
|
uncheckCountQueryWrapper.lambda()
|
|
|
.eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0)
|
|
|
- .in(BusinessReminderCard::getNumberResults, Arrays.asList(2));
|
|
|
+ .like(BusinessReminderCard::getNumberResults, '2');
|
|
|
long uncheckCount = businessReminderCardService.count(uncheckCountQueryWrapper);
|
|
|
|
|
|
//已报关停
|
|
|
QueryWrapper<BusinessReminderCard> closeCountQueryWrapper = QueryGenerator.initQueryWrapper(new BusinessReminderCard(), request.getParameterMap());
|
|
|
closeCountQueryWrapper.lambda()
|
|
|
.eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0)
|
|
|
- .in(BusinessReminderCard::getNumberResults, Arrays.asList(3));
|
|
|
+ .like(BusinessReminderCard::getNumberResults,'3');
|
|
|
long closeCount = businessReminderCardService.count(closeCountQueryWrapper);
|
|
|
|
|
|
//删除
|
|
|
@@ -229,13 +247,17 @@ public class BusinessReminderCardController {
|
|
|
@GetMapping(value = "/queryByCardNo")
|
|
|
public Result<?> queryByCardNo(HttpServletRequest request) {
|
|
|
String cardNo = request.getParameterMap().get("cardNo")==null?"": Arrays.toString(request.getParameterMap().get("cardNo")).replace("[", "").replace("]", "").replace("*", "");
|
|
|
+ String id = request.getParameterMap().get("id")==null?"": Arrays.toString(request.getParameterMap().get("id")).replace("[", "").replace("]", "").replace("*", "");
|
|
|
LambdaQueryWrapper<BusinessReminderCard> queryWrapperData = new LambdaQueryWrapper<>();
|
|
|
queryWrapperData.eq(BusinessReminderCard::getCardNo, cardNo).eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0).orderByDesc(BusinessReminderCard::getCreateTime);
|
|
|
+ if (StringUtils.isNotBlank(id)){
|
|
|
+ queryWrapperData.eq(BusinessReminderCard::getId,id);
|
|
|
+ }
|
|
|
List<BusinessReminderCard> businessReminderCard = businessReminderCardService.list(queryWrapperData);
|
|
|
int i = 0;
|
|
|
for (BusinessReminderCard reminderCard : businessReminderCard) {
|
|
|
if (ObjectUtil.isNotNull(reminderCard.getNumberResults())){
|
|
|
- if (reminderCard.getNumberResults() !=1){
|
|
|
+ if (!reminderCard.getNumberResults().contains("1")){
|
|
|
i++;
|
|
|
}
|
|
|
}
|
|
|
@@ -249,4 +271,120 @@ public class BusinessReminderCardController {
|
|
|
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+ @GetMapping(value = "/querySizeByCardNo")
|
|
|
+ public Result<?> querySizeByCardNo(HttpServletRequest request) {
|
|
|
+ String cardNo = request.getParameterMap().get("cardNo")==null?"": Arrays.toString(request.getParameterMap().get("cardNo")).replace("[", "").replace("]", "").replace("*", "");
|
|
|
+ LambdaQueryWrapper<BusinessReminderCard> queryWrapperData = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapperData.eq(BusinessReminderCard::getCardNo, cardNo).eq(BusinessReminderCard::getDelFlag, CommonConstant.DEL_FLAG_0).orderByDesc(BusinessReminderCard::getCreateTime);
|
|
|
+
|
|
|
+ List<BusinessReminderCard> businessReminderCard = businessReminderCardService.list(queryWrapperData);
|
|
|
+ List<PhonePurpose> list = phonePurposeService.list();
|
|
|
+ Map<String,Integer> map = new HashMap<>();
|
|
|
+ int liantong=0;
|
|
|
+ int yidong=0;
|
|
|
+ int dianxin=0;
|
|
|
+ int qita=0;
|
|
|
+ for (BusinessReminderCard reminderCard : businessReminderCard) {
|
|
|
+ for (PhonePurpose phonePurpose : list) {
|
|
|
+ if (phonePurpose.getNumber().equals(reminderCard.getNewPhone())){
|
|
|
+ if (phonePurpose.getType().equals("联通")){
|
|
|
+ liantong++;
|
|
|
+ }
|
|
|
+ if (phonePurpose.getType().equals("电信")){
|
|
|
+ dianxin++;
|
|
|
+ }
|
|
|
+ if (phonePurpose.getType().equals("移动")){
|
|
|
+ yidong++;
|
|
|
+ }
|
|
|
+ if (phonePurpose.getType().equals("其它")){
|
|
|
+ qita++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ map.put("liantong",liantong);
|
|
|
+ map.put("yidong",yidong);
|
|
|
+ map.put("qita",list.size()-yidong-dianxin-liantong);
|
|
|
+ map.put("dianxin",dianxin);
|
|
|
+
|
|
|
+ return Result.OK(map);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+
|
|
|
+ *
|
|
|
+
|
|
|
+ * @Title: getMobilePlace
|
|
|
+
|
|
|
+ * @Description: 获取手机归属地信息
|
|
|
+
|
|
|
+ * @param @param mobile
|
|
|
+
|
|
|
+ * @param @return
|
|
|
+
|
|
|
+ * @return String
|
|
|
+
|
|
|
+ * @throws
|
|
|
+
|
|
|
+ */
|
|
|
+ @GetMapping(value = "/queryByMobile")
|
|
|
+ public String getMobilePlace(String mobile) throws Exception{
|
|
|
+
|
|
|
+ HttpClientUtil util = new HttpClientUtil();
|
|
|
+
|
|
|
+ String[] strings={"",""};
|
|
|
+
|
|
|
+ try {
|
|
|
+
|
|
|
+ //访问拍拍的查询接口
|
|
|
+
|
|
|
+ String mobileMessage = util.getWebcontent(PHONE_PLACE_API_URL+"?number="+mobile, "GB2312");
|
|
|
+
|
|
|
+ //{"code":0,"data":{"province":"\u6cb3\u5317","city":"\u77f3\u5bb6\u5e84","sp":"\u79fb\u52a8"}}
|
|
|
+ JSONObject jsonObject = JSONObject.parseObject(mobileMessage);
|
|
|
+
|
|
|
+ //解析出省份和city和运营商
|
|
|
+
|
|
|
+ String province = JSONObject.parseObject(jsonObject.get("data").toString()).get("province").toString();
|
|
|
+
|
|
|
+ String cityname = JSONObject.parseObject(jsonObject.get("data").toString()).get("city").toString();
|
|
|
+
|
|
|
+ String isp = JSONObject.parseObject(jsonObject.get("data").toString()).get("sp").toString();
|
|
|
+
|
|
|
+ return province+cityname;
|
|
|
+
|
|
|
+ } catch (Exception e) {
|
|
|
+
|
|
|
+ e.printStackTrace();
|
|
|
+
|
|
|
+ // logger.error(strings[0]+e.toString());
|
|
|
+
|
|
|
+ return "";
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @param string
|
|
|
+ * @return 转换之后的内容
|
|
|
+ * @Title: unicodeDecode
|
|
|
+ * @Description: unicode解码 将Unicode的编码转换为中文
|
|
|
+ */
|
|
|
+ public String unicodeDecode(String string) {
|
|
|
+ Pattern pattern = Pattern.compile("(\\\\u(\\p{XDigit}{4}))");
|
|
|
+ Matcher matcher = pattern.matcher(string);
|
|
|
+ char ch;
|
|
|
+ while (matcher.find()) {
|
|
|
+ ch = (char) Integer.parseInt(matcher.group(2), 16);
|
|
|
+ string = string.replace(matcher.group(1), ch + "");
|
|
|
+ }
|
|
|
+ return string;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|