Browse Source

Merge remote-tracking branch 'origin/develop' into develop

FengChaoYu 6 months ago
parent
commit
8bc73ebda7

+ 1 - 1
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/bean/policy/WorkerRemind.java

@@ -16,7 +16,7 @@ public class WorkerRemind {
     @ApiModelProperty("网点id")
     private String websitId;
 
-    @ApiModelProperty("1保险购买提示,2意外到期提醒,3意外已到期")
+    @ApiModelProperty("1保险购买提示,2意外到期提醒,3意外已到期 ,4保险待审")
     private Integer remindIn;
 
     @ApiModelProperty("过期时间")

+ 27 - 10
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/logic/policy/WorkerLogic.java

@@ -87,7 +87,7 @@ public class WorkerLogic {
             //保险购买状态,没有购买的意外险
             if (websitUser.getExamineStatus().equals(ExamineWorkerStatusEnum.WAIT_WORKER.getKey()) &&
                     workerPolicyService.lambdaQuery().eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
-                    .in(WorkerPolicy::getStatus,"ON","WAIT_ON")
+                    .in(WorkerPolicy::getStatus,"DSX","BZZ")
                     .eq(WorkerPolicy::getPolicyType,"AC")
                     .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
                     .count() < 1) {
@@ -102,10 +102,27 @@ public class WorkerLogic {
                 workerReminds.add(workerRemind);
             }
 
+            if (websitUser.getExamineStatus().equals(ExamineWorkerStatusEnum.WAIT_WORKER.getKey()) &&
+                    workerPolicyService.lambdaQuery().eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
+                            .in(WorkerPolicy::getStatus,"DSX","BZZ")
+                            .eq(WorkerPolicy::getPolicyType,"AC")
+                            .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
+                            .count() > 0) {
+
+                AdminWebsit adminWebsit = adminWebsitService.getById(websitUser.getWebsitId());
+
+                WorkerRemind workerRemind = new WorkerRemind();
+                workerRemind.setWebsitId(websitUser.getWebsitId());
+                workerRemind.setWebsitName(adminWebsit.getName());
+                workerRemind.setRemindIn(4);
+
+                workerReminds.add(workerRemind);
+            }
+
             // 购买的意外险,七天后过期 每天提醒一次
             if (  workerPolicyService.lambdaQuery()
                     .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
-                    .in(WorkerPolicy::getStatus,"ON","WAIT_ON")
+                    .in(WorkerPolicy::getStatus,"DSX","BZZ")
                     .le(WorkerPolicy::getEndTime, DateUtil.offsetDay(new Date(),7))
                     .eq(WorkerPolicy::getPolicyType,"AC")
                     .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
@@ -115,7 +132,7 @@ public class WorkerLogic {
 
                 List<WorkerPolicy> list = workerPolicyService.lambdaQuery()
                         .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
-                        .in(WorkerPolicy::getStatus, "ON", "WAIT_ON")
+                        .in(WorkerPolicy::getStatus, "DSX", "BZZ")
                         .le(WorkerPolicy::getEndTime, DateUtil.offsetDay(new Date(), 7))
                         .eq(WorkerPolicy::getPolicyType, "AC")
                         .eq(WorkerPolicy::getWebsitUserId, websitUser.getId())
@@ -134,8 +151,8 @@ public class WorkerLogic {
 
                 workerPolicyService.lambdaUpdate()
                         .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
-                        .in(WorkerPolicy::getStatus,"OFF")
-                        .notIn(WorkerPolicy::getStatus,"ON","WAIT_ON")
+                        .in(WorkerPolicy::getStatus,"YSX")
+                        .notIn(WorkerPolicy::getStatus,"DSX","BZZ")
                         .eq(WorkerPolicy::getPolicyType,"AC")
                         .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
                         .set(WorkerPolicy::getExTime,DateUtil.endOfDay(new Date())).update();
@@ -144,8 +161,8 @@ public class WorkerLogic {
             // 意外险失效,没有购买的意外险
             if (  workerPolicyService.lambdaQuery()
                     .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
-                    .in(WorkerPolicy::getStatus,"OFF")
-                    .notIn(WorkerPolicy::getStatus,"ON","WAIT_ON")
+                    .in(WorkerPolicy::getStatus,"YSX")
+                    .notIn(WorkerPolicy::getStatus,"DSX","BZZ")
                     .eq(WorkerPolicy::getPolicyType,"AC")
                     .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
                     .le(WorkerPolicy::getExTime,new Date())
@@ -153,8 +170,8 @@ public class WorkerLogic {
 
                 workerPolicyService.lambdaUpdate()
                         .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
-                        .in(WorkerPolicy::getStatus,"OFF")
-                        .notIn(WorkerPolicy::getStatus,"ON","WAIT_ON")
+                        .in(WorkerPolicy::getStatus,"YSX")
+                        .notIn(WorkerPolicy::getStatus,"DSX","BZZ")
                         .eq(WorkerPolicy::getPolicyType,"AC")
                         .eq(WorkerPolicy::getWebsitUserId,websitUser.getId())
                         .set(WorkerPolicy::getExTime,DateUtil.endOfDay(new Date())).update();
@@ -319,7 +336,7 @@ public class WorkerLogic {
 
         BigDecimal price = this.getPayPrice(integer,policy);
 
-        policyOrder.setPayAmount(policy.getPolicyPrice().multiply(price));
+        policyOrder.setPayAmount(policy.getPolicyPrice().multiply(price).setScale(2, BigDecimal.ROUND_HALF_UP));
 
         policyOrder.setIsSend(IsYesNoEnum.NO.getKey());
         policyOrder.setIsReceipt(IsYesNoEnum.NO.getKey());

+ 4 - 4
mall-miniapp-service/src/main/java/com/gree/mall/miniapp/logic/user/UserLogic.java

@@ -379,8 +379,8 @@ public class UserLogic {
                         workerPolicy.setWorkerId(websitUser.getWorkerNumber());
                         workerPolicy.setType("LINE");
                         workerPolicy.setOrderId(userWait.getEmPolicyOrder());
-                        workerPolicy.setPolicyName(userWait.getPolicyName());
-                        workerPolicy.setCompany(userWait.getCompany());
+                        workerPolicy.setPolicyName(userWait.getEmPolicyName());
+                        workerPolicy.setCompany(userWait.getEmCompany());
                         workerPolicy.setPolicyOrder(userWait.getEmPolicyOrder());
                         workerPolicy.setPolicyType("EM");
                         workerPolicy.setStartTime(userWait.getEmPolicyStartTime());
@@ -408,8 +408,8 @@ public class UserLogic {
                         workerPolicy.setWorkerId(websitUser.getWorkerNumber());
                         workerPolicy.setType("LINE");
                         workerPolicy.setOrderId(userWait.getInPolicyOrder());
-                        workerPolicy.setPolicyName(userWait.getPolicyName());
-                        workerPolicy.setCompany(userWait.getCompany());
+                        workerPolicy.setPolicyName(userWait.getInPolicyName());
+                        workerPolicy.setCompany(userWait.getInCompany());
                         workerPolicy.setPolicyOrder(userWait.getInPolicyOrder());
                         workerPolicy.setPolicyType("IN");
                         workerPolicy.setStartTime(userWait.getInPolicyStartTime());

+ 0 - 2
mall-server-api/src/main/java/com/gree/mall/manager/bean/listvo/UserVO.java

@@ -52,8 +52,6 @@ public class UserVO   {
     @ApiModelProperty("身份证")
     private String idCard;
 
-    @ApiModelProperty("身份证图片")
-    private String idCardImg;
 
     @ZfireField(hide = true, tbName = "b")
     private String slaveWorkerId;

+ 1 - 1
mall-server-api/src/main/java/com/gree/mall/manager/bean/policy/PolicyOrderVO.java

@@ -30,7 +30,7 @@ public class PolicyOrderVO  {
     private String policyName;
 
     @ApiModelProperty(value = "保单编号")
-    private String policyOrderId;
+    private String policyNumber;
 
     @ApiModelProperty(value = "所属公司")
     private String belongCompany;

+ 1 - 0
mall-server-api/src/main/java/com/gree/mall/manager/constant/Constant.java

@@ -109,6 +109,7 @@ public class Constant {
         public static final String NEW_CHANGE = "jsm:sxb:parts:change:sales:";
         public static final String PARTS_REFUND = "jsm:sxb:lock:parts:refund";
         public static final String FDD_BATCH_SIGN_NOTIFY = "jsm:sxb:fdd:batch:sign:notify:";
+        public static final String TOKEN_GREE = "SETTLE:TOKEN:GREE";
     }
     public class ChatMessage {
         public final static String MSG_TYPE_DOC = "docmsg";

+ 74 - 4
mall-server-api/src/main/java/com/gree/mall/manager/logic/SyncOrderInfoLogic.java

@@ -6,29 +6,67 @@ import cn.hutool.http.HttpUtil;
 import cn.hutool.json.JSONArray;
 import cn.hutool.json.JSONUtil;
 import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.aliyuncs.utils.StringUtils;
 import com.gree.mall.manager.bean.policy.ItfGreeSynDownloadRecBean;
 import com.gree.mall.manager.constant.Constant;
+import com.gree.mall.manager.exception.RemoteServiceException;
 import com.gree.mall.manager.plus.entity.ItfGreeSynDownloadRec;
 import com.gree.mall.manager.plus.entity.ItfGreeSynRule;
 import com.gree.mall.manager.plus.service.ItfGreeSynDownloadRecService;
 import com.gree.mall.manager.plus.service.ItfGreeSynRuleService;
+import com.gree.mall.manager.utils.RedisUtil;
+import com.gree.mall.manager.utils.http.HttpUtils;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
+import org.springframework.util.LinkedMultiValueMap;
+import org.springframework.util.MultiValueMap;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @Service
 @Slf4j
 @RequiredArgsConstructor
 public class SyncOrderInfoLogic {
 
+/*
+    @Value("${gree.V3.gettoken}")
+    private String tokenUrl;
+    @Value("${gree.check.barcode}")
+    private String checkBarcodeUrl;
+    @Value("${gree.repair.settle.get}")
+    private String getRepairSettleUrl;
+    @Value("${gree.repair.settle.do}")
+    private String doRepairSettleUrl;
+    @Value("${gree.client.id}")
+    private String clientId;
+    @Value("${gree.V3.client.secert}")
+    private String clientSecert;
+    @Value("${gree.api.url}")
+    private String apiUrl;
+    @Value("${gree.gz.appid}")
+    private String gzAppId;
+    @Value("${gree.gz.appkey}")
+    private String gzAppKey;
+    @Value("${gree.fs.appid}")
+    private String fsAppId;
+    @Value("${gree.fs.appkey}")
+    private String fsAppKey;
+    //    @Value("${gree.cloud.api.url}")
+//    private String cloudApiUrl;
+    @Value("${gree.V3.api.url}")
+    private String v3ApiUrl;
+    @Value("${gree.V3.gettoken}")
+    private String v3TokenUrl;
+    @Value("${gree.V3.client.secert}")
+    private String v3ClientSecert;
+    @Value("${gree.url}")
+    private String apiUrlFeedBack;*/
+
     @Autowired
     ItfGreeSynRuleService itfGreeSynRuleService;
 
@@ -38,6 +76,9 @@ public class SyncOrderInfoLogic {
     @Value("${gree.url}")
     private  String greeUrl;
 
+    @Autowired
+    RedisUtil redisUtil;
+
     public void syncGuang() {
         ItfGreeSynRule itfGreeSynRule = itfGreeSynRuleService.lambdaQuery().eq(ItfGreeSynRule::getSalesWebsitNumber, Constant.gree.GUANGZHOUXIAOSI)
                 .one();
@@ -70,6 +111,35 @@ public class SyncOrderInfoLogic {
 
     }
 
+    /**
+     * 获取总部接口的请求token
+     * @return
+
+     */
+/*
+    public String getAccessToken() throws RemoteServiceException {
+        String redisKey = Constant.RedisPrefix.TOKEN_GREE;
+        String token = (String)redisUtil.get(redisKey);
+        if(token != null){
+            return token;
+        }
+        MultiValueMap<String, String> forms= new LinkedMultiValueMap<String, String>();
+
+        forms.put("client_id", Collections.singletonList(clientId));
+        forms.put("client_secret", Collections.singletonList(clientSecert));
+        forms.put("grant_type", Collections.singletonList("client_credentials"));
+        String s = HttpUtils.requestXwww(tokenUrl, forms);
+        //String s = HttpUtils.requestPostForm(tokenUrl, map, null);
+        log.info("【获取总部token】response:{}",s);
+        JSONObject jsonObject = JSONObject.parseObject(s);
+        String accessToken = jsonObject.getString("access_token");
+        if(StringUtils.isNotEmpty(accessToken)) {
+            redisUtil.set(Constant.RedisPrefix.TOKEN_GREE, accessToken, 2 * 60 * 60);
+        }
+        return accessToken;
+    }
+*/
+
     public void syncFo() {
     }
 }

+ 8 - 1
mall-server-api/src/main/java/com/gree/mall/manager/logic/policy/WorkerManagerLogic.java

@@ -177,6 +177,11 @@ public class WorkerManagerLogic {
     @Transactional(rollbackFor = Exception.class)
     public void examineWait(WorkerManagerBean workerManagerBean) {
 
+        AdminUserCom adminUser = commonLogic.getAdminUser();
+
+        workerManagerBean.setExamineBy(adminUser.getNickName());
+        workerManagerBean.setExamineTime(new Date());
+
         workerManagerBean.setWorkerNumber(workerManagerBean.getUser().getWorkerNumber());
         User user = userService.getById(workerManagerBean.getUserId());
 
@@ -448,7 +453,9 @@ public class WorkerManagerLogic {
 
     @Transactional(rollbackFor = Exception.class)
     public void examine(WorkerManagerBean workerManagerBean) {
-
+        AdminUserCom adminUser = commonLogic.getAdminUser();
+        workerManagerBean.setPolicyExamineBy(adminUser.getNickName());
+        workerManagerBean.setPolicyExamineTime(new Date());
 
 
         workerManagerBean.updateById();

+ 15 - 2
mall-server-api/src/main/java/com/gree/mall/manager/logic/user/UserLogic.java

@@ -218,9 +218,9 @@ public class UserLogic {
         Map<String, AdminWebsit> websitMap = list.stream().collect(Collectors.toMap(AdminWebsit::getWebsitId, Function.identity()));
         int index = 0;
         //先删除
-        userWaitService.lambdaUpdate()
+ /*       userWaitService.lambdaUpdate()
                 .eq(UserWait::getCompanyWechatId, adminUser.getCompanyWechatId())
-                .remove();
+                .remove();*/
 
         List<UserWait> userWaits = new ArrayList<>();
         for (Object o : datas) {
@@ -297,6 +297,8 @@ public class UserLogic {
 
             userWait.setName(name);
             userWait.setIdcard(idcard);
+            userWait.setIdCardStartTime(DateUtil.parse(idcardStartTime, "yyyy/MM/dd"));
+            userWait.setIdCardEndTime(DateUtil.parse(idcardEndTime, "yyyy/MM/dd"));
             userWait.setCompanyWechatId(adminUser.getCompanyWechatId());
             userWait.setCompanyWechatName(adminUser.getCompanyName());
             userWait.setBankAccount(brank);
@@ -309,6 +311,15 @@ public class UserLogic {
                 userWait.setHightExamineTime(DateUtil.parse(hightExamineTime, "yyyy/MM/dd"));
             }
 
+            if (adminWebsit.getInsureType().equals("意外险,工伤险")) {
+
+                if (StringUtil.isEmpty(in_company))
+                    throw new RemoteServiceException(userWait.getWorkerNumber()+"必须导入工伤险");
+            }else {
+                if (StringUtil.isEmpty(em_company))
+                    throw new RemoteServiceException(userWait.getEmCompany()+"必须导入雇主险");
+            }
+
 
             if (!StringUtil.isEmpty(company)) {
                 userWait.setCompany(company);
@@ -316,6 +327,8 @@ public class UserLogic {
                 userWait.setPolicyEndTime(DateUtil.offsetSecond(DateUtil.endOfDay(DateUtil.parse(policy_end_time, "yyyy/MM/dd")),-1));
                 userWait.setPolicyName(policy_name);
                 userWait.setPolicyOrder(policy_order);
+            }else {
+                throw new RemoteServiceException(userWait.getEmCompany()+"必须导入意外险");
             }
 
             if (!StringUtil.isEmpty(em_company)) {

+ 15 - 0
mall-server-api/src/main/java/com/gree/mall/manager/utils/http/HttpUtils.java

@@ -8,6 +8,10 @@ import com.gree.mall.manager.exception.RemoteServiceException;
 import okhttp3.*;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
+import org.springframework.util.MultiValueMap;
+import org.springframework.web.client.RestTemplate;
 
 import java.io.IOException;
 import java.util.Map;
@@ -240,5 +244,16 @@ public class HttpUtils {
 
     }
 
+    static public String requestXwww(String url, MultiValueMap<String, String> forms) {
+        // 设置请求头
+        HttpHeaders headers = new HttpHeaders();
+        headers.setContentType(org.springframework.http.MediaType.APPLICATION_FORM_URLENCODED);
+        RestTemplate restTemplate=new RestTemplate();
+        HttpEntity<MultiValueMap<String, String>> httpEntity = new HttpEntity<MultiValueMap<String, String>>(forms, headers);
 
+        //获取返回数据
+        String body = restTemplate.postForObject(url, httpEntity, String.class);
+        return body;
+
+    }
 }

+ 19 - 0
mall-server-api/src/main/resources/bootstrap-dev.properties

@@ -129,3 +129,22 @@ fadada.websit.sign.notify.url=${sys.url}/${server.servlet.context-path}/fdd/noti
 fadada.websit.person.auth.notify.url=${sys.url}/${server.servlet.context-path}/fdd/notify/websit/person
 
 gree.url=https://api.sms-test.gree.com/api/sso/sms-server-order-external
+
+
+#总部3.0接口地址
+gree.V3.url=https://api-sms.gree.com
+gree.V3.gettoken=https://idm-sms.gree.com/auth/realms/gree-shyun/protocol/openid-connect/token
+gree.client.id=guangfoserver
+gree.V3.client.secert=3b23c33b-106d-4837-b506-7779335247d9
+gree.V3.api.url=${gree.V3.url}/api/sso/autoapp-default-server-greeshmobile/api/yunpaigong/accessories
+gree.check.barcode=${gree.V3.url}/api/sso/autoapp-default-server-installaccounts/api/ext/azwgmx/checkBarcode
+gree.repair.settle.get=${gree.V3.url}/api/sso/autoapp-default-server-greerepairaccounts/api/JsBzController/xsGetJsbzByJxxmh
+gree.repair.settle.do=${gree.V3.url}/api/sso/autoapp-default-server-greerepairaccounts/api/repairsettlement/gzBatchSettlement
+#总部接口地址
+gree.api.url=${gree.V3.url}/api/sso/autoapp-default-server-guangzhou/api/outapp/default/general
+gree.web.url=${gree.V3.url}/api/sso/autoapp-default-server-guangzhou
+gree.grant_type=client_credentials
+gree.gz.appid=O921980101
+gree.gz.appkey=4Bx3m3fOMatutVv1u08kUdtIYZ4FsN4x
+gree.fs.appid=O921980101
+gree.fs.appkey=4Bx3m3fOMatutVv1u08kUdtIYZ4FsN4x