sunyize пре 2 година
родитељ
комит
2f6b356748

+ 66 - 1
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/BusinessReminderCardController.java

@@ -2,6 +2,7 @@ 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;
@@ -19,6 +20,7 @@ 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.service.BusinessReminderCardService;
+import org.jeecg.modules.smscheck.util.HttpClientUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -37,6 +39,7 @@ import java.util.stream.Stream;
 public class BusinessReminderCardController {
     @Autowired
     private BusinessReminderCardService businessReminderCardService;
+    private static final String PHONE_PLACE_API_URL="http://virtual.paipai.com/extinfo/GetMobileProductInfo";
 
 
     @ApiOperation(value = "入网信息业务-分页列表查询", notes = "入网信息业务-分页列表查询")
@@ -235,7 +238,7 @@ public class BusinessReminderCardController {
         int i = 0;
         for (BusinessReminderCard reminderCard : businessReminderCard) {
             if (ObjectUtil.isNotNull(reminderCard.getNumberResults())){
-                if (reminderCard.getNumberResults() !=1){
+                if (!reminderCard.getNumberResults().contains("1")){
                     i++;
                 }
             }
@@ -249,4 +252,66 @@ public class BusinessReminderCardController {
 
     }
 
+    /**
+
+     *
+
+     * @Title: getMobilePlace
+
+     * @Description: 获取手机归属地信息
+
+     * @param @param mobile
+
+     * @param @return
+
+     * @return String
+
+     * @throws
+
+     */
+
+    public String getMobilePlace(String mobile){
+
+        HttpClientUtil util = new HttpClientUtil();
+
+        String[] strings={"",""};
+
+        try {
+
+            //访问拍拍的查询接口
+
+            String mobileMessage = util.getWebcontent(PHONE_PLACE_API_URL+"?mobile="+mobile+"&amount=10000", "GB2312");
+
+            strings = mobileMessage.split(";");
+
+            //(页面获取到的消息,除了这些,还有一些html语句)
+
+            //            string[0]="({mobile:'15850781443',province:'江苏',isp:'中国移动',stock:'1',amount:'10000',maxprice:'0',minprice:'0',cityname:'南京'})";
+
+            mobileMessage = strings[0];
+
+            JSONObject jsonObject = JSONObject.parseObject(mobileMessage.substring(1, mobileMessage.length()-1));
+
+            //解析出省份和city和运营商
+
+            String province = jsonObject.getString("province");
+
+            String cityname = jsonObject.getString("cityname");
+
+            String isp = jsonObject.getString("isp");
+
+            return isp+"&nbsp"+province+cityname;
+
+        } catch (Exception e) {
+
+            e.printStackTrace();
+
+            //            logger.error(strings[0]+e.toString());
+
+            return "";
+
+        }
+
+    }
+
 }

+ 58 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/controller/SysCompanyController.java

@@ -0,0 +1,58 @@
+package org.jeecg.modules.smscheck.controller;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecg.common.api.vo.Result;
+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.SysBusinessHallAndSysCompany;
+import org.jeecg.modules.smscheck.entity.SysCompany;
+import org.jeecg.modules.smscheck.service.SysBusinessHallService;
+import org.jeecg.modules.smscheck.service.SysCompanyService;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:12
+ */
+@Api(tags = "营业厅与公司联动")
+@RestController
+@RequestMapping("/sysCompany")
+@Slf4j
+public class SysCompanyController {
+
+    @Resource
+    private SysCompanyService sysCompanyService;
+
+    @Resource
+    private SysBusinessHallService sysBusinessHallService;
+
+
+
+    @ApiOperation(value = "营业厅与公司联动", notes = "营业厅与公司联动")
+    @GetMapping(value = "/list")
+    public Result<List<SysBusinessHallAndSysCompany>> queryPageList(HttpServletRequest request) {
+        //目前没用户组织 条件
+        List<SysCompany> sysCompanyList =sysCompanyService.list();
+        List<SysBusinessHallAndSysCompany> dataSysBusinessHall = sysBusinessHallService.getDataSysBusinessHall(sysCompanyList);
+        return Result.OK(dataSysBusinessHall);
+    }
+
+
+
+
+}

+ 9 - 1
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/BusinessReminderCard.java

@@ -80,7 +80,7 @@ public class BusinessReminderCard {
     /** 黑名单到期客户新入网的高危疑似涉诈号码备注 */
     private String isInvolvingFraudNote;
     /** 是否将高危号码上报蓝、紫名单或不可复开关停 */
-    private Integer numberResults;
+    private String numberResults;
 
     /** 删除标识 */
     @Excel(name = "删除标识", width = 15)
@@ -143,4 +143,12 @@ public class BusinessReminderCard {
 
     // 研判结果 个数
     private String isSizeNumberResults;
+
+
+    /** 客户所属行业 */
+    @ApiModelProperty(value = "客户所属行业")
+    private String industry;
+    /** 新开手机号码 */
+    @ApiModelProperty(value = "新开手机号码")
+    private String newPhone;
 }

+ 39 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SysBusinessHall.java

@@ -0,0 +1,39 @@
+package org.jeecg.modules.smscheck.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:00
+ */
+@Data
+@TableName("sys_business_hall")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="sys_business_hall", description="营业厅实体类")
+public class SysBusinessHall {
+
+    /** 主键 */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+
+    private String name;
+
+    private String companyId;
+
+    private String  standby;
+
+    private String  standby2;
+
+    private String  standby3;
+
+}

+ 25 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SysBusinessHallAndSysCompany.java

@@ -0,0 +1,25 @@
+package org.jeecg.modules.smscheck.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:50
+ */
+@Data
+public class SysBusinessHallAndSysCompany {
+
+    private String id;
+
+    private String name;
+
+    private List<SysBusinessHall> sysBusinessHallList;
+
+
+}

+ 39 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/entity/SysCompany.java

@@ -0,0 +1,39 @@
+package org.jeecg.modules.smscheck.entity;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:03
+ */
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+@Data
+@TableName("sys_company")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="sys_company", description="公司实体类")
+public class SysCompany {
+
+    /** 主键 */
+    @TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "主键")
+    private String id;
+
+    private String name;
+
+
+
+    private String  standby1;
+
+    private String  standby2;
+
+    private String  standby3;
+
+}

+ 10 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SysBusinessHallMapper.java

@@ -0,0 +1,10 @@
+package org.jeecg.modules.smscheck.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.jeecg.modules.smscheck.entity.SmsLotCustomerData;
+import org.jeecg.modules.smscheck.entity.SysBusinessHall;
+
+@Mapper
+public interface SysBusinessHallMapper extends BaseMapper<SysBusinessHall> {
+}

+ 15 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/mapper/SysCompanyMapper.java

@@ -0,0 +1,15 @@
+package org.jeecg.modules.smscheck.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+import org.jeecg.modules.smscheck.entity.SysBusinessHall;
+import org.jeecg.modules.smscheck.entity.SysCompany;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:09
+ */
+@Mapper
+public interface SysCompanyMapper extends BaseMapper<SysCompany> {
+}

+ 20 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/SysBusinessHallService.java

@@ -0,0 +1,20 @@
+package org.jeecg.modules.smscheck.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.smscheck.entity.SysBusinessHall;
+import org.jeecg.modules.smscheck.entity.SysBusinessHallAndSysCompany;
+import org.jeecg.modules.smscheck.entity.SysCompany;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:05
+ */
+public interface SysBusinessHallService extends IService<SysBusinessHall> {
+
+    List<SysBusinessHallAndSysCompany> getDataSysBusinessHall(List<SysCompany>list);
+
+}

+ 20 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/SysCompanyService.java

@@ -0,0 +1,20 @@
+package org.jeecg.modules.smscheck.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.smscheck.entity.SysBusinessHall;
+import org.jeecg.modules.smscheck.entity.SysCompany;
+import org.jeecg.modules.smscheck.mapper.SysCompanyMapper;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:05
+ */
+public interface SysCompanyService extends IService<SysCompany> {
+
+      List<SysCompany> getSysCompanyList();
+
+}

+ 51 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SysBusinessHallServiceImpl.java

@@ -0,0 +1,51 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.modules.smscheck.entity.BusinessReminderCard;
+import org.jeecg.modules.smscheck.entity.SysBusinessHall;
+import org.jeecg.modules.smscheck.entity.SysBusinessHallAndSysCompany;
+import org.jeecg.modules.smscheck.entity.SysCompany;
+import org.jeecg.modules.smscheck.mapper.SysBusinessHallMapper;
+import org.jeecg.modules.smscheck.mapper.SysCompanyMapper;
+import org.jeecg.modules.smscheck.service.SysBusinessHallService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:06
+ */
+@Service
+public class SysBusinessHallServiceImpl  extends ServiceImpl<SysBusinessHallMapper, SysBusinessHall> implements SysBusinessHallService {
+
+    @Resource
+    private SysBusinessHallMapper sysBusinessHallMapper;
+
+
+    @Override
+    public List<SysBusinessHallAndSysCompany> getDataSysBusinessHall(List<SysCompany> list) {
+
+        List<SysBusinessHallAndSysCompany>sysBusinessHallAndSysCompanies = new ArrayList<>();
+        for (SysCompany sysCompany : list) {
+            SysBusinessHall sysBusinessHall = new SysBusinessHall();
+            sysBusinessHall.setCompanyId(sysCompany.getId());
+            QueryWrapper<SysBusinessHall> queryWrapper = QueryGenerator.initQueryWrapper(sysBusinessHall,null);
+            List<SysBusinessHall> sysBusinessHalls = sysBusinessHallMapper.selectList(queryWrapper);
+            SysBusinessHallAndSysCompany sysBusinessHallAndSysCompany =new SysBusinessHallAndSysCompany();
+            sysBusinessHallAndSysCompany.setId(sysCompany.getId());
+            sysBusinessHallAndSysCompany.setName(sysCompany.getName());
+            sysBusinessHallAndSysCompany.setSysBusinessHallList(sysBusinessHalls);
+            sysBusinessHallAndSysCompanies.add(sysBusinessHallAndSysCompany);
+        }
+
+        return sysBusinessHallAndSysCompanies;
+    }
+}

+ 29 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/service/impl/SysCompanyServiceImpl.java

@@ -0,0 +1,29 @@
+package org.jeecg.modules.smscheck.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.jeecg.modules.smscheck.entity.SysCompany;
+import org.jeecg.modules.smscheck.mapper.SysCompanyMapper;
+import org.jeecg.modules.smscheck.service.SysCompanyService;
+import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-08  20:10
+ */
+@Service
+public class SysCompanyServiceImpl extends ServiceImpl<SysCompanyMapper, SysCompany> implements SysCompanyService {
+
+    @Resource
+    private SysCompanyMapper sysCompany;
+
+
+    @Override
+    public List<SysCompany> getSysCompanyList() {
+        List<SysCompany> sysCompanies = sysCompany.selectList(null);
+        return sysCompanies;
+    }
+}

+ 121 - 0
tnc-sms/src/main/java/org/jeecg/modules/smscheck/util/HttpClientUtil.java

@@ -0,0 +1,121 @@
+package org.jeecg.modules.smscheck.util;
+import java.io.BufferedReader;
+
+import java.io.InputStream;
+
+import java.io.InputStreamReader;
+
+import java.net.HttpURLConnection;
+
+import java.net.URL;
+
+import org.apache.commons.io.IOUtils;
+
+import org.apache.commons.lang3.StringUtils;
+
+import org.slf4j.Logger;
+
+import org.slf4j.LoggerFactory;
+/**
+ * @Author: Syze
+ * @description
+ * @Date: 2023-08-07  17:45
+ */
+public class HttpClientUtil {
+    private static final Logger logger = LoggerFactory.getLogger("HttpClient");
+
+    private String readInputStream(InputStream instream, String charest) throws Exception {
+
+        StringBuilder sb = new StringBuilder();
+
+        try(
+
+                InputStreamReader isr = new InputStreamReader(instream, charest);
+
+                BufferedReader reader = new BufferedReader(isr);) {
+
+            String line = null;
+
+            while ((line = reader.readLine()) != null) {
+
+                sb.append(line);
+
+            }
+
+        }
+
+        return sb.toString();
+
+    }
+
+    public String getWebcontent(String webUrl, String charest) {
+
+        if (StringUtils.isEmpty(webUrl))
+
+            return null;
+
+        int response = -1;
+
+        HttpURLConnection conn = null;
+
+        try {
+
+            URL url = new URL(webUrl);
+
+            conn = (HttpURLConnection) url.openConnection();
+
+            conn.setRequestMethod("GET");
+
+            conn.setReadTimeout(60 * 2000);
+
+            conn.setConnectTimeout(10 * 1000);
+
+            conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36");
+
+            conn.setDoOutput(true);
+
+            conn.connect();
+
+            response = conn.getResponseCode();
+
+            if (response == 200) {
+
+                InputStream im = null;
+
+                try {
+
+                    im = conn.getInputStream();
+
+                    return readInputStream(im, charest);
+
+                } finally {
+
+                    IOUtils.closeQuietly(im);
+
+                }
+
+            }
+
+            return null;
+
+        } catch (Exception e) {
+
+            logger.error(String.format("下载到文件出错[url=%s][%s][responsecode=%d]", webUrl, e.getMessage(), response));
+
+            return null;
+
+        } finally {
+
+            if(conn != null) {
+
+                conn.disconnect();
+
+                conn = null;
+
+            }
+
+        }
+
+    }
+
+}