Newspaper 1 年間 前
コミット
6f8334c26f

+ 124 - 0
huimv-admin/src/main/java/com/huimv/admin/common/utils/SendSMS.java

@@ -0,0 +1,124 @@
+package com.huimv.admin.common.utils;
+
+
+import cn.hutool.crypto.SecureUtil;
+import cn.hutool.crypto.digest.MD5;
+import org.apache.commons.codec.digest.Md5Crypt;
+import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
+import org.springframework.http.MediaType;
+import org.springframework.http.ResponseEntity;
+import org.springframework.stereotype.Component;
+import org.springframework.util.LinkedMultiValueMap;
+import org.springframework.util.MultiValueMap;
+import org.springframework.web.client.RestTemplate;
+
+import java.io.BufferedReader;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.net.HttpURLConnection;
+import java.net.URL;
+import java.security.MessageDigest;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+
+@Component
+public class SendSMS {
+
+
+    static String httpUrl = "http://121.41.41.182:8001/sms";
+    static String userNmae = "6085";
+    static String passWord = "huimu@6085";
+
+    //短信内容不能出现空格,换行,百分号等特殊字符.相同两条短信之间内容不能相同
+    public static void main(String[] args) {
+        /**
+         *发送给报警器
+         *//*
+		String content = "003C0043004C0045004100520030003000310039003E";
+		String mobile = "18767100452";//多个用英文逗号隔开 如18767100452,1388888888
+		content = UnicodeTool.decodeUnicode(UnicodeTool.addUnicodeU(content.toString()));*/
+
+        /**
+         * 发送给用户
+         */
+        ArrayList<String> phoneList = new ArrayList<>();
+        phoneList.add("15869188386");
+        String content ="测试结果";
+        sendSMS(phoneList,content);
+
+    }
+
+    public static void sendSMS( ArrayList<String> mobiles, String content) {
+        RestTemplate restTemplate = new RestTemplate();
+
+        // 设置请求头
+        HttpHeaders headers = new HttpHeaders();
+        headers.setContentType(MediaType.APPLICATION_JSON_UTF8);
+
+        // 设置请求参数
+        Map params = new HashMap();
+//        ArrayList<String> phoneList = new ArrayList<>();
+//        phoneList.add("13140429955");
+//        String content ="【慧牧科技】测试结果";
+        content =   "【慧牧科技】"+content;
+        long timestamp = System.currentTimeMillis();
+        params.put("userName", userNmae);
+        params.put("content", content);
+        params.put("phoneList", mobiles);
+        params.put("timestamp", timestamp);
+        MD5 md5 = SecureUtil.md5();
+        String md5PassWord = md5.digestHex(passWord);
+        String sign = md5.digestHex(userNmae+content+timestamp+md5PassWord);
+
+        params.put("sign", sign);
+
+        System.out.println(params.toString());
+        // 创建HttpEntity对象,封装请求头和请求参数
+        HttpEntity requestEntity = new HttpEntity<>(params, headers);
+        // 发送POST请求
+        ResponseEntity<String> responseEntity = restTemplate.postForEntity(httpUrl+"/api/sendMessage", requestEntity, String.class);
+
+        // 获取响应结果
+        String responseBody = responseEntity.getBody();
+        System.out.println(responseBody);
+
+    }
+//    public static void sendSMS(String[] mobiles, String content) {
+//        for (String mobile : mobiles) {
+//            String httpArg = "accesskey=5493&secretkey=7e6f0b6e9d12d2c750cbf1932a4b9cc53e36509b&mobile=" + mobile + "&content=" + content + "通知【慧牧科技】";
+//            System.out.println(httpArg);
+//            String jsonResult = request(httpUrl, httpArg);
+//            System.out.println(jsonResult);//返回码
+//        }
+//    }
+
+
+    public static String request(String httpUrl, String httpArg) {
+        BufferedReader reader = null;
+        String result = null;
+        StringBuffer sbf = new StringBuffer();
+        httpUrl = httpUrl + "?" + httpArg;
+        try {
+            URL url = new URL(httpUrl);
+            HttpURLConnection connection = (HttpURLConnection) url
+                    .openConnection();
+            connection.setRequestMethod("GET");
+            connection.connect();
+            InputStream is = connection.getInputStream();
+            reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
+            String strRead = null;
+            while ((strRead = reader.readLine()) != null) {
+                sbf.append(strRead);
+                sbf.append("\r\n");
+            }
+            reader.close();
+            result = sbf.toString();
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return result;
+    }
+}
+

+ 2 - 0
huimv-admin/src/main/java/com/huimv/admin/entity/vo/FactoryDirectorVo.java

@@ -20,6 +20,8 @@ public class FactoryDirectorVo {
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm" ,timezone = "GMT+8")
     private LocalDateTime checkDate;
 
+    private String admissionUserName;
+
     private String testLocation;
     private Integer vistitType;
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm" ,timezone = "GMT+8")

+ 1 - 1
huimv-admin/src/main/java/com/huimv/admin/mapper/BillCleanMapper.java

@@ -20,7 +20,7 @@ public interface BillCleanMapper extends BaseMapper<BillClean> {
 
     Page<CleanAndDryVo> listCleanAndDry(Page<CleanAndDryVo> page,Integer farmId);
 
-    Page<CleanAndDryVo> listPersonalCleanAndDry(Page<CleanAndDryVo> page, Integer userId);
+    Page<CleanAndDryVo> listPersonalCleanAndDry(Page<CleanAndDryVo> page, Integer userId,String vistitType);
 
     Page<CleanAndDryVo2> CleanAndDry(Page<CleanAndDryVo2> page, String farmId,String type,String[] status,String location);
 

+ 2 - 1
huimv-admin/src/main/java/com/huimv/admin/service/impl/BillCleanServiceImpl.java

@@ -454,9 +454,10 @@ public class BillCleanServiceImpl extends ServiceImpl<BillCleanMapper, BillClean
     public Result listPersonalCleanAndDry(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String pageNo = paramsMap.get("pageNum");
         String pageSize = paramsMap.get("pageSize");
+        String vistitType = paramsMap.get("vistitType");
         Page<CleanAndDryVo> page = new Page<>(Integer.parseInt(pageNo), Integer.parseInt(pageSize));
         Integer userId = TokenSign.getMemberIdByJwtToken(httpServletRequest);
-        Page<CleanAndDryVo> cleanAndDryVoPage = cleanMapper.listPersonalCleanAndDry(page, userId);
+        Page<CleanAndDryVo> cleanAndDryVoPage = cleanMapper.listPersonalCleanAndDry(page, userId,vistitType);
         return new Result(ResultCode.SUCCESS, cleanAndDryVoPage);
     }
 

+ 2 - 1
huimv-admin/src/main/java/com/huimv/admin/service/impl/BillPcrServiceImpl.java

@@ -49,8 +49,9 @@ public class BillPcrServiceImpl extends ServiceImpl<BillPcrMapper, BillPcr> impl
     public Result listPersonalPcr(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String pageNo = paramsMap.get("pageNum");
         String pageSize = paramsMap.get("pageSize");
+        String vistitType = paramsMap.get("vistitType");
         Page<BillPcr> page = new Page<>(Integer.parseInt(pageNo), Integer.parseInt(pageSize));
-        Page<BillPcr> billPcrPage = billPcrMapper.selectPage(page, new QueryWrapper<BillPcr>().eq("admission_user_id", TokenSign.getMemberIdByJwtToken(httpServletRequest)).orderByDesc("sub_date"));
+        Page<BillPcr> billPcrPage = billPcrMapper.selectPage(page, new QueryWrapper<BillPcr>().eq(StringUtils.isNotBlank(vistitType),"vistit_type",vistitType).eq("admission_user_id", TokenSign.getMemberIdByJwtToken(httpServletRequest)).orderByDesc("sub_date"));
         return new Result(ResultCode.SUCCESS, billPcrPage);
     }
 

+ 15 - 1
huimv-admin/src/main/java/com/huimv/admin/service/impl/BillPersonnelAdmissionServiceImpl.java

@@ -155,6 +155,13 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
         baseProcessMapper.insert(baseProcess);
         billPersonnelAdmission.setProcessId(baseProcess.getId());
         billPersonnelAdmissionMapper.insert(billPersonnelAdmission);
+        ArrayList<String> phoneList = new ArrayList<>();
+        List<SysAccountMultilevel> factory = sysAccountMultilevelMapper.selectList(new QueryWrapper<SysAccountMultilevel>().eq("farm_ids", farmId).eq("type", 1));
+        for (SysAccountMultilevel sysAccountMultilevel : factory) {
+            phoneList.add(sysAccountMultilevel.getPhone());
+        }
+//        SendSMS.sendSMS(phoneList,TokenSign.getUserNameByJwtToken(httpServletRequest)+"入场申请测试");
+        SendSMS.sendSMS(phoneList,"污渍正在进场!");
         if (ObjectUtil.isNotEmpty(goods)){
             ObjectMapper objectMapper = new ObjectMapper();
             List<BillGoodsInventory> admissionAndGoods = objectMapper.readValue(goods, new TypeReference<List<BillGoodsInventory>>() {});
@@ -172,6 +179,7 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
                 billGoodsInventoryMapper.insert(good);
             }
         }
+
         return Result.SUCCESS();
     }
 
@@ -179,8 +187,9 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
     public Result listPersonalAdmission(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
         String pageNo = paramsMap.get("pageNum");
         String pageSize = paramsMap.get("pageSize");
+        String vistitType = paramsMap.get("vistitType");
         Page<BillPersonnelAdmission> page = new Page<>(Integer.parseInt(pageNo), Integer.parseInt(pageSize));
-        Page<BillPersonnelAdmission> billPersonnelAdmissionPage = billPersonnelAdmissionMapper.selectPage(page, new QueryWrapper<BillPersonnelAdmission>().eq("admission_user_id", TokenSign.getMemberIdByJwtToken(httpServletRequest)).orderByDesc("sub_date"));
+        Page<BillPersonnelAdmission> billPersonnelAdmissionPage = billPersonnelAdmissionMapper.selectPage(page, new QueryWrapper<BillPersonnelAdmission>().eq(StringUtils.isNotBlank(vistitType),"vistit_type",vistitType).eq("admission_user_id", TokenSign.getMemberIdByJwtToken(httpServletRequest)).orderByDesc("sub_date"));
         return new Result(ResultCode.SUCCESS, billPersonnelAdmissionPage);
     }
 
@@ -239,6 +248,8 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
         billPersonnelAdmission.setPassUserName(TokenSign.getUserNameByJwtToken(httpServletRequest));
         BaseProcess baseProcess = baseProcessMapper.selectById(billPersonnelAdmission.getProcessId());
         List<BaseLocation> baseLocations = baseLocationMapper.selectList(new QueryWrapper<BaseLocation>().eq("serial_number", 0));
+        ArrayList<String> phoneList = new ArrayList<>();
+        phoneList.add(billPersonnelAdmission.getPhone());
         List<Integer> locationIds = new ArrayList<>();
         for (BaseLocation baseLocation : baseLocations) {
             locationIds.add(baseLocation.getId());
@@ -255,6 +266,8 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
             billPersonnelAdmission.setBillStatus(2);
             baseProcess.setProcessType(2);
             baseProcess.setCurrentStatus(String.join(",",split));
+//            SendSMS.sendSMS(phoneList,"拒绝入场申请测试");
+            SendSMS.sendSMS(phoneList,"污渍倒了");
         } else {
             //通过
             billPersonnelAdmission.setBillStatus(1);
@@ -297,6 +310,7 @@ public class BillPersonnelAdmissionServiceImpl extends ServiceImpl<BillPersonnel
                     billPcr.setTestLocation(baseLocation.getLocationName());
                     billPcr.setTestLocationId(baseLocation.getId());
                     billPcrMapper.insert(billPcr);
+                    SendSMS.sendSMS(phoneList,"污渍,永远滴神!");
                 }
             } else {
                 baseProcess.setCurrentStatus("1");

+ 2 - 2
huimv-admin/src/main/resources/com/huimv/admin/mapper/BillCleanMapper.xml

@@ -41,12 +41,12 @@
 
     <select id="listPersonalCleanAndDry" resultType="com.huimv.admin.entity.vo.CleanAndDryVo">
         SELECT id,car_num,bill_status,test_location,check_date,vistit_type,sub_date,pass_date,1 AS 'type'
-        FROM `bill_clean` WHERE admission_user_id = #{userId} AND vistit_type != 0 AND img_status = 1
+        FROM `bill_clean` WHERE admission_user_id = #{userId} AND vistit_type = #{vistitType}
 
         UNION ALL
 
         SELECT id,car_num,bill_status,test_location,check_date,vistit_type,sub_date,pass_date,2 AS 'type'
-        FROM `bill_dry` WHERE admission_user_id = #{userId} AND vistit_type != 0 AND img_status = 1
+        FROM `bill_dry` WHERE admission_user_id = #{userId} AND vistit_type = #{vistitType}
         ORDER BY sub_date DESC
     </select>
 

+ 5 - 5
huimv-admin/src/main/resources/com/huimv/admin/mapper/BillPersonnelAdmissionMapper.xml

@@ -49,27 +49,27 @@ ORDER BY sub_date DESC
 
 
     <select id="listCarAll" resultType="com.huimv.admin.entity.vo.FactoryDirectorVo">
-SELECT id,car_num, bill_status, isolate_location, isolate_start_date AS check_date, isolate_start_date AS 'startTime', isolate_end_date AS 'endTime', NULL AS test_location, NULL AS vistit_type, NULL AS dest_name, NULL AS vistit_date,3 AS 'type',sub_date
+SELECT id,admission_user_name,car_num, bill_status, isolate_location, isolate_start_date AS check_date, isolate_start_date AS 'startTime', isolate_end_date AS 'endTime', NULL AS test_location, NULL AS vistit_type, NULL AS dest_name, NULL AS vistit_date,3 AS 'type',sub_date
 FROM bill_isolate WHERE farm_id = #{farmId} AND vistit_type = #{type}
 
 UNION ALL
 
-SELECT id,car_num, bill_status, test_location, check_date, NULL, NULL, NULL, vistit_type, NULL, NULL,4 AS 'type',sub_date
+SELECT id,admission_user_name,car_num, bill_status, test_location, check_date, NULL, NULL, NULL, vistit_type, NULL, NULL,4 AS 'type',sub_date
 FROM bill_dry WHERE farm_id = #{farmId} AND vistit_type = #{type} AND img_status = 1
 
 UNION ALL
 
-SELECT id,car_num, bill_status, test_location, check_date, NULL, NULL, NULL, vistit_type, NULL, NULL,2 AS 'type',sub_date
+SELECT id,admission_user_name,car_num, bill_status, test_location, check_date, NULL, NULL, NULL, vistit_type, NULL, NULL,2 AS 'type',sub_date
 FROM bill_clean WHERE farm_id = #{farmId} AND vistit_type = #{type} AND img_status = 1
 
 UNION ALL
 
-SELECT id,car_num, bill_status, test_location, check_date, NULL, NULL, NULL, vistit_type, NULL, NULL,1 AS 'type',sub_date
+SELECT id,admission_user_name,car_num, bill_status, test_location, check_date, NULL, NULL, NULL, vistit_type, NULL, NULL,1 AS 'type',sub_date
 FROM bill_pcr WHERE farm_id = #{farmId} AND vistit_type = #{type}
 
 UNION ALL
 
-SELECT id,car_num, bill_status, NULL, NULL, NULL, NULL, NULL, vistit_type, dest_name, vistit_date,0 AS 'type',sub_date
+SELECT id,admission_user_name,car_num, bill_status, NULL, NULL, NULL, NULL, NULL, vistit_type, dest_name, vistit_date,0 AS 'type',sub_date
 FROM bill_personnel_admission WHERE farm_id = #{farmId} AND vistit_type = #{type}
 ORDER BY sub_date DESC
     </select>