瀏覽代碼

Merge branch 'dev' of http://git.ycjcjy.com/zhiyuxing/estateagents into dev

张延森 5 年之前
父節點
當前提交
f7b56331c8
共有 24 個文件被更改,包括 423 次插入86 次删除
  1. 32
    5
      src/main/java/com/huiju/estateagents/common/CommConstant.java
  2. 2
    0
      src/main/java/com/huiju/estateagents/config/FadadaProperties.java
  3. 2
    2
      src/main/java/com/huiju/estateagents/controller/TaRaiseController.java
  4. 103
    12
      src/main/java/com/huiju/estateagents/eContract/controller/TaCompanyController.java
  5. 24
    6
      src/main/java/com/huiju/estateagents/eContract/controller/TaCompanySealController.java
  6. 1
    1
      src/main/java/com/huiju/estateagents/eContract/controller/TaContractController.java
  7. 3
    0
      src/main/java/com/huiju/estateagents/eContract/entity/TaCompany.java
  8. 1
    1
      src/main/java/com/huiju/estateagents/eContract/entity/TaContractBusiness.java
  9. 1
    1
      src/main/java/com/huiju/estateagents/eContract/mapper/TaCompanyMapper.java
  10. 6
    0
      src/main/java/com/huiju/estateagents/eContract/service/ITaCompanyService.java
  11. 1
    1
      src/main/java/com/huiju/estateagents/eContract/service/ITaContractService.java
  12. 67
    6
      src/main/java/com/huiju/estateagents/eContract/service/impl/TaCompanySealUtil.java
  13. 62
    0
      src/main/java/com/huiju/estateagents/eContract/service/impl/TaCompanyServiceImpl.java
  14. 34
    6
      src/main/java/com/huiju/estateagents/eContract/service/impl/TaContractServiceImpl.java
  15. 28
    7
      src/main/java/com/huiju/estateagents/eContract/service/impl/TaContractUserServiceImpl.java
  16. 2
    0
      src/main/java/com/huiju/estateagents/entity/TaMiniapp.java
  17. 1
    2
      src/main/java/com/huiju/estateagents/entity/TaRaise.java
  18. 24
    13
      src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java
  19. 1
    2
      src/main/java/com/huiju/estateagents/service/impl/TaRaiseRecordServiceImpl.java
  20. 14
    17
      src/main/java/com/huiju/estateagents/service/impl/TaRaiseServiceImpl.java
  21. 4
    2
      src/main/resources/application-blue.yml
  22. 3
    1
      src/main/resources/application-green.yml
  23. 6
    0
      src/main/resources/mapper/eContract/TaCompanyMapper.xml
  24. 1
    1
      src/main/resources/mapper/eContract/TaContractMapper.xml

+ 32
- 5
src/main/java/com/huiju/estateagents/common/CommConstant.java 查看文件

36
     /**
36
     /**
37
      * 状态: 正常
37
      * 状态: 正常
38
      */
38
      */
39
-    public final static int STATUS_NORMAL = 1;
39
+    public final static Integer STATUS_NORMAL = 1;
40
 
40
 
41
     /**
41
     /**
42
      * 状态: 删除
42
      * 状态: 删除
43
      */
43
      */
44
-    public final static int STATUS_DELETE = -1;
44
+    public final static Integer STATUS_DELETE = -1;
45
 
45
 
46
     /**
46
     /**
47
      * 状态: 关闭、禁用
47
      * 状态: 关闭、禁用
48
      */
48
      */
49
-    public final static int STATUS_CLOSED = 9;
49
+    public final static Integer STATUS_CLOSED = 9;
50
 
50
 
51
     /**
51
     /**
52
      * 消息未读
52
      * 消息未读
53
      */
53
      */
54
-    public final static int MESSAGE_UNREAD = 0;
54
+    public final static Integer MESSAGE_UNREAD = 0;
55
 
55
 
56
     /**
56
     /**
57
      * 消息已读
57
      * 消息已读
58
      */
58
      */
59
-    public final static int MESSAGE_READED = 1;
59
+    public final static Integer MESSAGE_READED = 1;
60
 
60
 
61
     /**
61
     /**
62
      * 点赞置业卡片
62
      * 点赞置业卡片
774
      * 企业认证人员的身份 2 代理人
774
      * 企业认证人员的身份 2 代理人
775
      */
775
      */
776
     public static final String COMPANY_PRINCIPAL_TYPE_AGENT = "2";
776
     public static final String COMPANY_PRINCIPAL_TYPE_AGENT = "2";
777
+
778
+    /**
779
+     * 授权类型 1自动签
780
+     */
781
+    public static final Integer AUTH_TYPE = 1;
782
+
783
+    /**
784
+     * 合同关联业务类型
785
+     */
786
+    public static final String AUTH = "auth";
787
+
788
+    /**
789
+     * 接口线上授权
790
+     */
791
+    public static final String ONLINEAUTH = "onLine";
792
+
793
+    /**
794
+     * 企业实名状态
795
+     */
796
+    public static final Integer REAL_NAME_STATUS = 4;
797
+
798
+    /**
799
+     * 已授权自动签章
800
+     */
801
+    public static final String AUTO_AUTH_STATUS = "3000";
802
+
803
+    public static final String  AUTH_SUCCESS_DESC = "签章成功";
777
 }
804
 }

+ 2
- 0
src/main/java/com/huiju/estateagents/config/FadadaProperties.java 查看文件

14
     private String version;
14
     private String version;
15
     private String serveHost;
15
     private String serveHost;
16
     private String companyNotify;
16
     private String companyNotify;
17
+    private String authReturnUrl;
18
+    private String authNotifyUrl;
17
     private String signNotify;
19
     private String signNotify;
18
 }
20
 }

+ 2
- 2
src/main/java/com/huiju/estateagents/controller/TaRaiseController.java 查看文件

155
             taRaise.setCreateDate(LocalDateTime.now());
155
             taRaise.setCreateDate(LocalDateTime.now());
156
             if (iTaRaiseService.save(taRaise)) {
156
             if (iTaRaiseService.save(taRaise)) {
157
                 // 为邀请制,添加认筹被邀请清单
157
                 // 为邀请制,添加认筹被邀请清单
158
-                if (CommConstant.STATUS_NORMAL == taRaise.getIsInvite()) {
158
+                if (CommConstant.STATUS_NORMAL == taRaise.getInvite()) {
159
                     iTaRaiseService.saveOrUpdateInvite(taRaise, getOrgId(request), true);
159
                     iTaRaiseService.saveOrUpdateInvite(taRaise, getOrgId(request), true);
160
                 }
160
                 }
161
                 responseBean.addSuccess(taRaise);
161
                 responseBean.addSuccess(taRaise);
238
             taRaise.setRaisePrice(taRaise.getRaisePrice() != null ? taRaise.getRaisePrice() : null);
238
             taRaise.setRaisePrice(taRaise.getRaisePrice() != null ? taRaise.getRaisePrice() : null);
239
             if (iTaRaiseService.updateById(taRaise)) {
239
             if (iTaRaiseService.updateById(taRaise)) {
240
                 // 为邀请制,添加认筹被邀请清单
240
                 // 为邀请制,添加认筹被邀请清单
241
-                if (CommConstant.STATUS_NORMAL == taRaise.getIsInvite()) {
241
+                if (CommConstant.STATUS_NORMAL == taRaise.getInvite()) {
242
                     iTaRaiseService.saveOrUpdateInvite(taRaise, getOrgId(request), false);
242
                     iTaRaiseService.saveOrUpdateInvite(taRaise, getOrgId(request), false);
243
                 }
243
                 }
244
                 responseBean.addSuccess(taRaise);
244
                 responseBean.addSuccess(taRaise);

+ 103
- 12
src/main/java/com/huiju/estateagents/eContract/controller/TaCompanyController.java 查看文件

2
 
2
 
3
 import com.alibaba.fastjson.JSONArray;
3
 import com.alibaba.fastjson.JSONArray;
4
 import com.alibaba.fastjson.JSONObject;
4
 import com.alibaba.fastjson.JSONObject;
5
+import com.baomidou.mybatisplus.core.conditions.query.Query;
5
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
6
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
6
 import com.baomidou.mybatisplus.core.metadata.IPage;
7
 import com.baomidou.mybatisplus.core.metadata.IPage;
7
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
8
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
10
 import com.huiju.estateagents.common.CommConstant;
11
 import com.huiju.estateagents.common.CommConstant;
11
 import com.huiju.estateagents.eContract.entity.TaCompanySeal;
12
 import com.huiju.estateagents.eContract.entity.TaCompanySeal;
12
 import com.huiju.estateagents.eContract.entity.TaContract;
13
 import com.huiju.estateagents.eContract.entity.TaContract;
14
+import com.huiju.estateagents.eContract.service.ITaCompanySealService;
15
+import com.huiju.estateagents.config.FadadaProperties;
16
+import com.huiju.estateagents.eContract.service.ITaContractService;
13
 import com.huiju.estateagents.eContract.entity.TaContractUser;
17
 import com.huiju.estateagents.eContract.entity.TaContractUser;
14
 import com.huiju.estateagents.eContract.service.ITaCompanySealService;
18
 import com.huiju.estateagents.eContract.service.ITaCompanySealService;
15
 import com.huiju.estateagents.config.FadadaProperties;
19
 import com.huiju.estateagents.config.FadadaProperties;
16
 import com.huiju.estateagents.eContract.service.ITaContractUserService;
20
 import com.huiju.estateagents.eContract.service.ITaContractUserService;
21
+import com.huiju.estateagents.entity.TaMiniapp;
17
 import com.huiju.estateagents.sample.entity.TaH5Demand;
22
 import com.huiju.estateagents.sample.entity.TaH5Demand;
23
+import com.huiju.estateagents.service.impl.TaMiniappServiceImpl;
18
 import org.apache.commons.lang3.StringUtils;
24
 import org.apache.commons.lang3.StringUtils;
19
 import org.slf4j.Logger;
25
 import org.slf4j.Logger;
20
 import org.slf4j.LoggerFactory;
26
 import org.slf4j.LoggerFactory;
30
 import org.springframework.web.bind.annotation.RestController;
36
 import org.springframework.web.bind.annotation.RestController;
31
 
37
 
32
 import javax.servlet.http.HttpServletRequest;
38
 import javax.servlet.http.HttpServletRequest;
39
+import javax.servlet.http.HttpServletResponse;
40
+import java.io.IOException;
41
+import java.io.PrintWriter;
33
 import java.util.HashMap;
42
 import java.util.HashMap;
34
 import java.util.List;
43
 import java.util.List;
35
 import java.util.Map;
44
 import java.util.Map;
45
+import java.util.ResourceBundle;
36
 
46
 
37
 /**
47
 /**
38
  * <p>
48
  * <p>
57
     @Autowired
67
     @Autowired
58
     private ITaCompanySealService iTaCompanySealService;
68
     private ITaCompanySealService iTaCompanySealService;
59
 
69
 
70
+    @Autowired
71
+    private ITaContractService iTaContractService;
72
+
60
     @Autowired
73
     @Autowired
61
     public ITaContractUserService iTaContractUserService;
74
     public ITaContractUserService iTaContractUserService;
62
 
75
 
76
+    @Autowired
77
+    private TaMiniappServiceImpl taMiniappService;
78
+
79
+
63
     /**
80
     /**
64
      * 条件查询企业列表
81
      * 条件查询企业列表
65
      *
82
      *
82
             queryWrapper.like(StringUtils.isNotBlank(companyName), "company_name", companyName);
99
             queryWrapper.like(StringUtils.isNotBlank(companyName), "company_name", companyName);
83
             queryWrapper.like(StringUtils.isNotBlank(companyCode), "company_code", companyCode);
100
             queryWrapper.like(StringUtils.isNotBlank(companyCode), "company_code", companyCode);
84
             queryWrapper.eq(StringUtils.isNotBlank(certifiedStatus), "certified_status", certifiedStatus);
101
             queryWrapper.eq(StringUtils.isNotBlank(certifiedStatus), "certified_status", certifiedStatus);
85
-            queryWrapper.eq("status", CommConstant.STATUS_NORMAL);
102
+            queryWrapper.eq("status", 2);
86
             queryWrapper.orderByDesc("create_date");
103
             queryWrapper.orderByDesc("create_date");
87
 
104
 
88
             IPage<TaCompany> result = iTaCompanyService.page(pg, queryWrapper);
105
             IPage<TaCompany> result = iTaCompanyService.page(pg, queryWrapper);
113
             QueryWrapper<TaCompany> queryWrapper = new QueryWrapper<>();
130
             QueryWrapper<TaCompany> queryWrapper = new QueryWrapper<>();
114
             queryWrapper.like(StringUtils.isNotBlank(companyName), "company_name", companyName);
131
             queryWrapper.like(StringUtils.isNotBlank(companyName), "company_name", companyName);
115
             queryWrapper.like(StringUtils.isNotBlank(companyCode), "company_code", companyCode);
132
             queryWrapper.like(StringUtils.isNotBlank(companyCode), "company_code", companyCode);
116
-            queryWrapper.eq("status", CommConstant.STATUS_NORMAL);
133
+            queryWrapper.eq("status", CommConstant.REAL_NAME_STATUS);
117
             queryWrapper.orderByDesc("create_date");
134
             queryWrapper.orderByDesc("create_date");
118
 
135
 
119
             IPage<TaCompany> result = iTaCompanyService.page(pg, queryWrapper);
136
             IPage<TaCompany> result = iTaCompanyService.page(pg, queryWrapper);
121
             for (TaCompany taCompany : taCompanyList){
138
             for (TaCompany taCompany : taCompanyList){
122
                 QueryWrapper<TaCompanySeal> sealQueryWrapper = new QueryWrapper<>();
139
                 QueryWrapper<TaCompanySeal> sealQueryWrapper = new QueryWrapper<>();
123
                 sealQueryWrapper.eq("company_id", taCompany.getCompanyId());
140
                 sealQueryWrapper.eq("company_id", taCompany.getCompanyId());
141
+                sealQueryWrapper.ne("status", CommConstant.STATUS_DELETE);
124
                 taCompany.setSealNum(iTaCompanySealService.count(sealQueryWrapper));
142
                 taCompany.setSealNum(iTaCompanySealService.count(sealQueryWrapper));
125
             }
143
             }
126
             responseBean.addSuccess(result);
144
             responseBean.addSuccess(result);
143
     @RequestMapping(value = "/channel/taCompanyList", method = RequestMethod.GET)
161
     @RequestMapping(value = "/channel/taCompanyList", method = RequestMethod.GET)
144
     public ResponseBean channelCompanyList(@RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
162
     public ResponseBean channelCompanyList(@RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
145
                                            @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
163
                                            @RequestParam(value = "pageSize", defaultValue = "10") Integer pageSize,
146
-                                           @RequestParam(value = "companyName") String companyName,
147
-                                           @RequestParam(value = "companyCode")String companyCode,
148
-                                           @RequestParam(value = "certifiedStatus")String certifiedStatus,
149
-                                           @RequestParam(value = "authorizeStatus")String authorizeStatus) {
164
+                                           @RequestParam(value = "companyName", required = false) String companyName,
165
+                                           @RequestParam(value = "companyCode", required = false)String companyCode,
166
+                                           @RequestParam(value = "status", required = false)String status,
167
+                                           @RequestParam(value = "authorizeStatus", required = false)String authorizeStatus) {
150
         ResponseBean responseBean = new ResponseBean();
168
         ResponseBean responseBean = new ResponseBean();
151
         try {
169
         try {
152
             //使用分页插件
170
             //使用分页插件
154
             QueryWrapper<TaCompany> queryWrapper = new QueryWrapper<>();
172
             QueryWrapper<TaCompany> queryWrapper = new QueryWrapper<>();
155
             queryWrapper.like(StringUtils.isNotBlank(companyName), "company_name", companyName);
173
             queryWrapper.like(StringUtils.isNotBlank(companyName), "company_name", companyName);
156
             queryWrapper.like(StringUtils.isNotBlank(companyCode), "company_code", companyCode);
174
             queryWrapper.like(StringUtils.isNotBlank(companyCode), "company_code", companyCode);
157
-            queryWrapper.eq(StringUtils.isNotBlank(certifiedStatus), "certified_status", certifiedStatus);
175
+            queryWrapper.eq(StringUtils.isNotBlank(status), "status", status);
158
             queryWrapper.eq(StringUtils.isNotBlank(authorizeStatus), "authorize_status", authorizeStatus);
176
             queryWrapper.eq(StringUtils.isNotBlank(authorizeStatus), "authorize_status", authorizeStatus);
159
-            queryWrapper.eq("status", CommConstant.STATUS_NORMAL);
177
+            queryWrapper.ne("status", CommConstant.STATUS_DELETE);
160
             queryWrapper.orderByDesc("create_date");
178
             queryWrapper.orderByDesc("create_date");
161
 
179
 
162
             IPage<TaCompany> result = iTaCompanyService.page(pg, queryWrapper);
180
             IPage<TaCompany> result = iTaCompanyService.page(pg, queryWrapper);
164
             for (TaCompany taCompany : taCompanyList){
182
             for (TaCompany taCompany : taCompanyList){
165
                 QueryWrapper<TaCompanySeal> sealQueryWrapper = new QueryWrapper<>();
183
                 QueryWrapper<TaCompanySeal> sealQueryWrapper = new QueryWrapper<>();
166
                 sealQueryWrapper.eq("company_id", taCompany.getCompanyId());
184
                 sealQueryWrapper.eq("company_id", taCompany.getCompanyId());
185
+                sealQueryWrapper.ne("status", CommConstant.STATUS_DELETE);
167
                 taCompany.setSealNum(iTaCompanySealService.count(sealQueryWrapper));
186
                 taCompany.setSealNum(iTaCompanySealService.count(sealQueryWrapper));
168
             }
187
             }
169
             responseBean.addSuccess(result);
188
             responseBean.addSuccess(result);
255
     public ResponseBean taCompanyGet(@PathVariable Integer id) {
274
     public ResponseBean taCompanyGet(@PathVariable Integer id) {
256
         ResponseBean responseBean = new ResponseBean();
275
         ResponseBean responseBean = new ResponseBean();
257
         try {
276
         try {
258
-            responseBean.addSuccess(iTaCompanyService.getById(id));
277
+            TaCompany taCompany = iTaCompanyService.getCompanyAndContractInfo(id);
278
+            responseBean.addSuccess(taCompany);
259
         } catch (Exception e) {
279
         } catch (Exception e) {
260
             e.printStackTrace();
280
             e.printStackTrace();
261
             logger.error("taCompanyDelete -=- {}", e.toString());
281
             logger.error("taCompanyDelete -=- {}", e.toString());
439
         }
459
         }
440
     }
460
     }
441
 
461
 
462
+    /**
463
+     * 自动授权签章回调
464
+     */
465
+    @RequestMapping(value = "/fadd/autoAuthCompanySeal", method = RequestMethod.POST)
466
+    public void autoAuthCompanySealNotify(@RequestParam(value = "transaction_id",required = false) String transactionId,
467
+                                          @RequestParam(value = "contract_id",required = false) Integer contractId,
468
+                                          @RequestParam(value = "download_url",required = false) String downloadUrl,
469
+                                          @RequestParam(value = "viewpdf_url",required = false) String viewpdfUrl,
470
+                                          @RequestParam(value = "result_code",required = false) String resultCode,
471
+                                          @RequestParam(value = "result_desc",required = false) String resultDesc,
472
+                                          HttpServletRequest request){
473
+        TaContract taContract = new TaContract();
474
+        taContract.setContractId(contractId);
475
+        taContract.setContractDownloadUrl(downloadUrl);
476
+        taContract.setContractViewUrl(viewpdfUrl);
477
+        taContract.setStatus(CommConstant.STATUS_NORMAL);
478
+        iTaContractService.updateById(taContract);
479
+
480
+        if (CommConstant.AUTO_AUTH_STATUS.equals(resultCode) && CommConstant.AUTH_SUCCESS_DESC.equals(resultDesc)){
481
+            TaCompany taCompany = new TaCompany();
482
+            taCompany.setCompanyId(iTaContractService.getById(contractId).getCompanyId());
483
+            taCompany.setAuthorizeStatus(resultCode);
484
+            taCompany.setAuthorizeTransactionId(transactionId);
485
+            taCompany.setAuthorizeContractId(String.valueOf(contractId));
486
+            taCompany.setAuthorizeDownloadUrl(downloadUrl);
487
+            taCompany.setAuthorizeViewUrl(viewpdfUrl);
488
+            taCompany.setAuthorizeDescription(resultDesc);
489
+            taCompany.setAuthorizeType(CommConstant.ONLINEAUTH);
490
+            iTaCompanyService.updateById(taCompany);
491
+        }
492
+    }
493
+
442
     /**
494
     /**
443
      * 自动签章授权
495
      * 自动签章授权
444
      */
496
      */
445
-    public ResponseBean autoAuthCompanySeal(Integer companyId, HttpServletRequest request){
446
-        return null;
497
+    @RequestMapping(value = "/channel/company/autoAuthCompany/{id}", method = RequestMethod.PUT)
498
+    public ResponseBean autoAuthCompanySeal(@PathVariable Integer id, HttpServletRequest request) throws Exception {
499
+        ResponseBean responseBean = new ResponseBean();
500
+        QueryWrapper<TaMiniapp> taMiniappQueryWrapper = new QueryWrapper<>();
501
+        taMiniappQueryWrapper.eq("org_id", getOrgId(request));
502
+        TaMiniapp taMiniapp = taMiniappService.getOne(taMiniappQueryWrapper);
503
+
504
+        String res = iTaCompanyService.autoAuthCompanySeal(id, getOrgId(request), taMiniapp.getMiniappId());
505
+        TaCompany taCompany = new TaCompany();
506
+        taCompany.setCompanyId(id);
507
+        taCompany.setAuthorizeAddress(res);
508
+        iTaCompanyService.updateById(taCompany);
509
+        responseBean.addSuccess((Object)res);
510
+        return responseBean;
447
     }
511
     }
448
 
512
 
449
 
513
 
451
      * 手动签署回调函数
515
      * 手动签署回调函数
452
      *
516
      *
453
      */
517
      */
454
-    @RequestMapping(value = "/fadd/sign", method = RequestMethod.POST)
518
+    @RequestMapping(value = "/fadd/sign", method = {RequestMethod.GET,RequestMethod.POST})
455
     public void faddSignNotify(@RequestParam(value = "transaction_id ",required = false) String transaction_id,
519
     public void faddSignNotify(@RequestParam(value = "transaction_id ",required = false) String transaction_id,
456
                                   @RequestParam(value = "contract_id ",required = false) String contract_id,
520
                                   @RequestParam(value = "contract_id ",required = false) String contract_id,
457
                                   @RequestParam(value = "result_code",required = false) String result_code,
521
                                   @RequestParam(value = "result_code",required = false) String result_code,
462
                                   @RequestParam(value = "msg_digest",required = false) String msg_digest,
526
                                   @RequestParam(value = "msg_digest",required = false) String msg_digest,
463
                                   HttpServletRequest request) {
527
                                   HttpServletRequest request) {
464
         logger.info("企业认证回调函数参数:交易号 {},合同编号 {},签章结果代码 {},签章结果描述 ,{}, 下载地址{}, 查看地址 {},请求时间 {}, 摘要 {} ",transaction_id,contract_id,result_code,result_desc,download_url,viewpdf_url,timestamp,msg_digest);
528
         logger.info("企业认证回调函数参数:交易号 {},合同编号 {},签章结果代码 {},签章结果描述 ,{}, 下载地址{}, 查看地址 {},请求时间 {}, 摘要 {} ",transaction_id,contract_id,result_code,result_desc,download_url,viewpdf_url,timestamp,msg_digest);
529
+        TaContract taContract = iTaContractService.getById(contract_id);
530
+        taContract.setContractDownloadUrl(download_url);
531
+        taContract.setContractViewUrl(viewpdf_url);
532
+        iTaContractService.updateById(taContract);
533
+    }
534
+
535
+    /**
536
+     * 查询授权状态接口
537
+     * @param id
538
+     * @return
539
+     */
540
+    @RequestMapping(value = "/channel/company/getAuthStatus/{id}", method = RequestMethod.GET)
541
+    public ResponseBean getAuthStatus(@PathVariable Integer id, HttpServletRequest request){
542
+        QueryWrapper<TaMiniapp> taMiniappQueryWrapper = new QueryWrapper<>();
543
+        taMiniappQueryWrapper.eq("org_id", getOrgId(request));
544
+        TaMiniapp taMiniapp = taMiniappService.getOne(taMiniappQueryWrapper);
545
+
546
+        ResponseBean responseBean = new ResponseBean();
547
+        String res = iTaCompanyService.getAuthStatus(id, taMiniapp.getMiniappId());
548
+        JSONObject result = JSONObject.parseObject(res);
549
+
550
+        if ((Integer) result.get("code") != 1){
551
+            responseBean.addError(result.getString("msg"));
552
+            return responseBean;
553
+        }
554
+        responseBean.addSuccess(result.get("data"));
555
+        return responseBean;
465
     }
556
     }
466
 }
557
 }

+ 24
- 6
src/main/java/com/huiju/estateagents/eContract/controller/TaCompanySealController.java 查看文件

13
 import com.huiju.estateagents.eContract.service.ITaCompanySealService;
13
 import com.huiju.estateagents.eContract.service.ITaCompanySealService;
14
 import com.huiju.estateagents.eContract.service.ITaCompanyService;
14
 import com.huiju.estateagents.eContract.service.ITaCompanyService;
15
 import com.huiju.estateagents.eContract.service.impl.TaCompanySealUtil;
15
 import com.huiju.estateagents.eContract.service.impl.TaCompanySealUtil;
16
+import com.huiju.estateagents.entity.TaMiniapp;
17
+import com.huiju.estateagents.service.impl.TaMiniappServiceImpl;
16
 import org.slf4j.Logger;
18
 import org.slf4j.Logger;
17
 import org.slf4j.LoggerFactory;
19
 import org.slf4j.LoggerFactory;
18
 import org.springframework.beans.factory.annotation.Autowired;
20
 import org.springframework.beans.factory.annotation.Autowired;
19
 import org.springframework.web.bind.annotation.*;
21
 import org.springframework.web.bind.annotation.*;
20
 
22
 
23
+import javax.servlet.http.HttpServletRequest;
21
 import java.time.LocalDateTime;
24
 import java.time.LocalDateTime;
22
 
25
 
23
 /**
26
 /**
43
     @Autowired
46
     @Autowired
44
     private TaCompanySealUtil taCompanySealUtil;
47
     private TaCompanySealUtil taCompanySealUtil;
45
 
48
 
49
+    @Autowired
50
+    private TaMiniappServiceImpl taMiniappService;
51
+
46
     /**
52
     /**
47
      * 分页查询列表
53
      * 分页查询列表
48
      * @param pageNum
54
      * @param pageNum
59
 		    IPage<TaCompanySeal> pg = new Page<>(pageNum, pageSize);
65
 		    IPage<TaCompanySeal> pg = new Page<>(pageNum, pageSize);
60
             QueryWrapper<TaCompanySeal> queryWrapper = new QueryWrapper<>();
66
             QueryWrapper<TaCompanySeal> queryWrapper = new QueryWrapper<>();
61
             queryWrapper.like(!StringUtils.isEmpty(sealName), "seal_name", sealName);
67
             queryWrapper.like(!StringUtils.isEmpty(sealName), "seal_name", sealName);
68
+            queryWrapper.ne("status", CommConstant.STATUS_DELETE);
62
             queryWrapper.orderByDesc("create_date");
69
             queryWrapper.orderByDesc("create_date");
63
 
70
 
64
             IPage<TaCompanySeal> result = iTaCompanySealService.page(pg, queryWrapper);
71
             IPage<TaCompanySeal> result = iTaCompanySealService.page(pg, queryWrapper);
109
      * @return
116
      * @return
110
      */
117
      */
111
     @RequestMapping(value="/channel/taCompanySeal",method= RequestMethod.POST)
118
     @RequestMapping(value="/channel/taCompanySeal",method= RequestMethod.POST)
112
-    public ResponseBean taCompanySealAdd(@RequestBody TaCompanySeal taCompanySeal){
119
+    public ResponseBean taCompanySealAdd(@RequestBody TaCompanySeal taCompanySeal, HttpServletRequest request){
113
         ResponseBean responseBean = new ResponseBean();
120
         ResponseBean responseBean = new ResponseBean();
114
         try {
121
         try {
122
+            QueryWrapper<TaMiniapp> taMiniappQueryWrapper = new QueryWrapper<>();
123
+            taMiniappQueryWrapper.eq("org_id", getOrgId(request));
124
+            TaMiniapp taMiniapp = taMiniappService.getOne(taMiniappQueryWrapper);
115
             TaCompany taCompany = iTaCompanyService.getById(taCompanySeal.getCompanyId());
125
             TaCompany taCompany = iTaCompanyService.getById(taCompanySeal.getCompanyId());
116
-            String result = taCompanySealUtil.addSignaTure(taCompany.getFadadaCode(), taCompanySeal.getSealImg());
126
+            String result = taCompanySealUtil.addSignaTure(taCompany.getFadadaCode(), taCompanySeal.getSealImg(), taMiniapp.getMiniappId());
117
             JSONObject params = JSONObject.parseObject(result);
127
             JSONObject params = JSONObject.parseObject(result);
118
             if ((Integer) params.get("code") != 1){
128
             if ((Integer) params.get("code") != 1){
119
                 responseBean.addError(params.get("msg").toString());
129
                 responseBean.addError(params.get("msg").toString());
143
      */
153
      */
144
     @ResponseBody
154
     @ResponseBody
145
     @RequestMapping(value="/channel/delCompanySeal/{id}", method= RequestMethod.PUT)
155
     @RequestMapping(value="/channel/delCompanySeal/{id}", method= RequestMethod.PUT)
146
-    public ResponseBean taCompanySealDelete(@PathVariable Integer id){
156
+    public ResponseBean taCompanySealDelete(@PathVariable Integer id, HttpServletRequest request){
147
         ResponseBean responseBean = new ResponseBean();
157
         ResponseBean responseBean = new ResponseBean();
148
         try {
158
         try {
159
+            QueryWrapper<TaMiniapp> taMiniappQueryWrapper = new QueryWrapper<>();
160
+            taMiniappQueryWrapper.eq("org_id", getOrgId(request));
161
+            TaMiniapp taMiniapp = taMiniappService.getOne(taMiniappQueryWrapper);
162
+
149
             TaCompanySeal taCompanySeal = iTaCompanySealService.getById(id);
163
             TaCompanySeal taCompanySeal = iTaCompanySealService.getById(id);
150
             TaCompany taCompany = iTaCompanyService.getById(taCompanySeal.getCompanyId());
164
             TaCompany taCompany = iTaCompanyService.getById(taCompanySeal.getCompanyId());
151
             iTaCompanyService.getById(taCompanySeal.getCompanyId());
165
             iTaCompanyService.getById(taCompanySeal.getCompanyId());
152
-            String res = taCompanySealUtil.delSignature(taCompany.getFadadaCode(), taCompanySeal.getSignatureId());
166
+            String res = taCompanySealUtil.delSignature(taCompany.getFadadaCode(), taCompanySeal.getSignatureId(), taMiniapp.getMiniappId());
153
             JSONObject params = JSONObject.parseObject(res);
167
             JSONObject params = JSONObject.parseObject(res);
154
             Integer code = (Integer) params.get("code");
168
             Integer code = (Integer) params.get("code");
155
             if (code != 1){
169
             if (code != 1){
181
      */
195
      */
182
     @RequestMapping(value="/channel/taCompanySeal/{id}",method= RequestMethod.PUT)
196
     @RequestMapping(value="/channel/taCompanySeal/{id}",method= RequestMethod.PUT)
183
     public ResponseBean taCompanySealUpdate(@PathVariable Integer id,
197
     public ResponseBean taCompanySealUpdate(@PathVariable Integer id,
184
-                                        @RequestBody TaCompanySeal taCompanySeal){
198
+                                        @RequestBody TaCompanySeal taCompanySeal, HttpServletRequest request){
185
         ResponseBean responseBean = new ResponseBean();
199
         ResponseBean responseBean = new ResponseBean();
186
         try {
200
         try {
201
+            QueryWrapper<TaMiniapp> taMiniappQueryWrapper = new QueryWrapper<>();
202
+            taMiniappQueryWrapper.eq("org_id", getOrgId(request));
203
+            TaMiniapp taMiniapp = taMiniappService.getOne(taMiniappQueryWrapper);
204
+
187
             TaCompany taCompany = iTaCompanyService.getById(taCompanySeal.getCompanyId());
205
             TaCompany taCompany = iTaCompanyService.getById(taCompanySeal.getCompanyId());
188
             TaCompanySeal sealInfo = iTaCompanySealService.getById(id);
206
             TaCompanySeal sealInfo = iTaCompanySealService.getById(id);
189
-            String res = taCompanySealUtil.replaceSignature(taCompany.getFadadaCode(), sealInfo.getSignatureId(), taCompanySeal.getSealImg());
207
+            String res = taCompanySealUtil.replaceSignature(taCompany.getFadadaCode(), sealInfo.getSignatureId(), taCompanySeal.getSealImg(), taMiniapp.getMiniappId());
190
             JSONObject params = JSONObject.parseObject(res);
208
             JSONObject params = JSONObject.parseObject(res);
191
             Integer code = (Integer) params.get("code");
209
             Integer code = (Integer) params.get("code");
192
             if (code != 1){
210
             if (code != 1){

+ 1
- 1
src/main/java/com/huiju/estateagents/eContract/controller/TaContractController.java 查看文件

287
             }
287
             }
288
             TaPerson person = taPersons.get(0);
288
             TaPerson person = taPersons.get(0);
289
             String signUrl = iTaContractService.manualContract(taContract, person);
289
             String signUrl = iTaContractService.manualContract(taContract, person);
290
-            responseBean.addSuccess(signUrl);
290
+            return ResponseBean.success(signUrl);
291
         } catch (Exception e) {
291
         } catch (Exception e) {
292
             e.printStackTrace();
292
             e.printStackTrace();
293
             logger.error("taCompanyList -=- {}", e.toString());
293
             logger.error("taCompanyList -=- {}", e.toString());

+ 3
- 0
src/main/java/com/huiju/estateagents/eContract/entity/TaCompany.java 查看文件

167
 
167
 
168
     @TableField(exist = false)
168
     @TableField(exist = false)
169
     private Integer sealNum;
169
     private Integer sealNum;
170
+
171
+    @TableField(exist = false)
172
+    private String contractId;
170
 }
173
 }

+ 1
- 1
src/main/java/com/huiju/estateagents/eContract/entity/TaContractBusiness.java 查看文件

119
     private String contractTemplateAddress;
119
     private String contractTemplateAddress;
120
 
120
 
121
     @TableField(exist = false)
121
     @TableField(exist = false)
122
-    private String signatrueId;
122
+    private String signatureId;
123
 
123
 
124
     @TableField(exist = false)
124
     @TableField(exist = false)
125
     private String fadadaCode;
125
     private String fadadaCode;

+ 1
- 1
src/main/java/com/huiju/estateagents/eContract/mapper/TaCompanyMapper.java 查看文件

18
 @Mapper
18
 @Mapper
19
 @Component
19
 @Component
20
 public interface TaCompanyMapper extends BaseMapper<TaCompany> {
20
 public interface TaCompanyMapper extends BaseMapper<TaCompany> {
21
-
21
+    TaCompany getCompanyAndContractInfo(@Param("companyId") Integer companyId);
22
 }
22
 }

+ 6
- 0
src/main/java/com/huiju/estateagents/eContract/service/ITaCompanyService.java 查看文件

33
      * @return
33
      * @return
34
      */
34
      */
35
     TaCompany updateCompanyInfoByFdd(Integer id) throws Exception;
35
     TaCompany updateCompanyInfoByFdd(Integer id) throws Exception;
36
+
37
+    String autoAuthCompanySeal(Integer companyId, Integer orgId, String miniAppId) throws Exception;
38
+
39
+    TaCompany getCompanyAndContractInfo(Integer companyId);
40
+
41
+    String getAuthStatus(Integer companyId, String miniAppId);
36
 }
42
 }

+ 1
- 1
src/main/java/com/huiju/estateagents/eContract/service/ITaContractService.java 查看文件

63
      * @param person
63
      * @param person
64
      * @return
64
      * @return
65
      */
65
      */
66
-    String manualContract(TaContract taContract, TaPerson person);
66
+    String manualContract(TaContract taContract, TaPerson person) throws Exception;
67
 }
67
 }

+ 67
- 6
src/main/java/com/huiju/estateagents/eContract/service/impl/TaCompanySealUtil.java 查看文件

3
 import com.fadada.sdk.client.FddClientBase;
3
 import com.fadada.sdk.client.FddClientBase;
4
 import com.fadada.sdk.util.crypt.FddEncryptTool;
4
 import com.fadada.sdk.util.crypt.FddEncryptTool;
5
 import com.fadada.sdk.util.http.HttpsUtil;
5
 import com.fadada.sdk.util.http.HttpsUtil;
6
+import com.huiju.estateagents.common.StringUtils;
6
 import com.huiju.estateagents.config.FadadaProperties;
7
 import com.huiju.estateagents.config.FadadaProperties;
8
+import com.huiju.estateagents.entity.TaMiniapp;
9
+import com.huiju.estateagents.mapper.TaMiniappMapper;
7
 import org.apache.http.message.BasicNameValuePair;
10
 import org.apache.http.message.BasicNameValuePair;
8
 import org.springframework.beans.factory.annotation.Autowired;
11
 import org.springframework.beans.factory.annotation.Autowired;
9
 import org.springframework.stereotype.Component;
12
 import org.springframework.stereotype.Component;
10
 
13
 
14
+import java.io.File;
11
 import java.util.ArrayList;
15
 import java.util.ArrayList;
16
+import java.util.HashMap;
17
+import java.util.Map;
12
 
18
 
13
 @Component
19
 @Component
14
 public class TaCompanySealUtil {
20
 public class TaCompanySealUtil {
16
     @Autowired
22
     @Autowired
17
     private FadadaProperties fadadaProperties;
23
     private FadadaProperties fadadaProperties;
18
 
24
 
19
-    public String addSignaTure(String customerId, String imgUrl) throws Exception {
20
-        FddClientBase base = new FddClientBase(fadadaProperties.getAppId(), fadadaProperties.getAppSecret(), fadadaProperties.getVersion(), fadadaProperties.getServeHost());
25
+    @Autowired
26
+    private TaMiniappMapper taMiniappMapper;
27
+
28
+    public String addSignaTure(String customerId, String imgUrl, String miniappId) throws Exception {
29
+        FddClientBase base = new FddClientBase(fadadaProperties.getAppId(), fadadaProperties.getAppSecret(), fadadaProperties.getVersion(), getFddServerHost(miniappId,fadadaProperties.getServeHost()));
21
         String base64Url = FddEncryptTool.ImageToBase64ByOnline(imgUrl);
30
         String base64Url = FddEncryptTool.ImageToBase64ByOnline(imgUrl);
22
         return base.invokeaddSignature(customerId, base64Url);
31
         return base.invokeaddSignature(customerId, base64Url);
23
     }
32
     }
24
 
33
 
25
-    public String replaceSignature(String customerId, String signatureId, String imgUrl){
34
+    public String replaceSignature(String customerId, String signatureId, String imgUrl, String miniappId){
26
         String base64Url = FddEncryptTool.ImageToBase64ByOnline(imgUrl);
35
         String base64Url = FddEncryptTool.ImageToBase64ByOnline(imgUrl);
27
         ArrayList params = new ArrayList();
36
         ArrayList params = new ArrayList();
28
 
37
 
42
             throw new RuntimeException(var7);
51
             throw new RuntimeException(var7);
43
         }
52
         }
44
 
53
 
45
-        return HttpsUtil.doPost(fadadaProperties.getServeHost() + "replace_signature.api", params);
54
+        return HttpsUtil.doPost(getFddServerHost(miniappId,fadadaProperties.getServeHost()) + "replace_signature.api", params);
46
     }
55
     }
47
 
56
 
48
-    public String delSignature(String customerId, String signatureId){
57
+    public String delSignature(String customerId, String signatureId, String miniappId){
49
         ArrayList params = new ArrayList();
58
         ArrayList params = new ArrayList();
50
 
59
 
51
         try {
60
         try {
63
             throw new RuntimeException(var7);
72
             throw new RuntimeException(var7);
64
         }
73
         }
65
 
74
 
66
-        return HttpsUtil.doPost(fadadaProperties.getServeHost() + "remove_signature.api", params);
75
+        return HttpsUtil.doPost(getFddServerHost(miniappId,fadadaProperties.getServeHost()) + "remove_signature.api", params);
76
+    }
77
+
78
+    public String autoAuthCompanySeal(String transactionId, Integer authType, String contractId, String customerId, String companyId, String miniappId) throws Exception {
79
+        String timeStamp = HttpsUtil.getTimeStamp();
80
+        String sha1 = FddEncryptTool.sha1(fadadaProperties.getAppId() + FddEncryptTool.md5Digest(transactionId + timeStamp) + FddEncryptTool.sha1(fadadaProperties.getAppSecret() + customerId));
81
+        String msgDigest = new String(FddEncryptTool.Base64Encode(sha1.getBytes()));
82
+        StringBuilder stringBuilder = new StringBuilder(getFddServerHost(miniappId,fadadaProperties.getServeHost()) + "before_authsign.api?");
83
+        stringBuilder.append("app_id="+fadadaProperties.getAppId()+"&");
84
+        stringBuilder.append("customer_id="+customerId+"&");
85
+        stringBuilder.append("timestamp="+timeStamp+"&");
86
+        stringBuilder.append("v="+fadadaProperties.getVersion()+"&");
87
+        stringBuilder.append("transaction_id="+transactionId+"&");
88
+        stringBuilder.append("auth_type="+authType+"&");
89
+        stringBuilder.append("contract_id="+contractId+"&");
90
+        stringBuilder.append("msg_digest="+msgDigest+"&");
91
+        stringBuilder.append("notify_url="+fadadaProperties.getAuthNotifyUrl()+"&");
92
+        stringBuilder.append("return_url="+fadadaProperties.getAuthReturnUrl() + companyId);
93
+
94
+        return stringBuilder.toString();
95
+    }
96
+
97
+    public String getAuthStatus(String customerId, String miniappId){
98
+        ArrayList params = new ArrayList();
99
+
100
+        try {
101
+            String timeStamp = HttpsUtil.getTimeStamp();
102
+            String sha1 = FddEncryptTool.sha1(fadadaProperties.getAppId() + FddEncryptTool.md5Digest(timeStamp) + FddEncryptTool.sha1(fadadaProperties.getAppSecret() + customerId));
103
+            String msgDigest = new String(FddEncryptTool.Base64Encode(sha1.getBytes()));
104
+            params.add(new BasicNameValuePair("customer_id", customerId));
105
+            params.add(new BasicNameValuePair("app_id", fadadaProperties.getAppId()));
106
+            params.add(new BasicNameValuePair("timestamp", timeStamp));
107
+            params.add(new BasicNameValuePair("v", fadadaProperties.getVersion()));
108
+            params.add(new BasicNameValuePair("msg_digest", msgDigest));
109
+        } catch (Exception var7) {
110
+            var7.printStackTrace();
111
+            throw new RuntimeException(var7);
112
+        }
113
+
114
+        return HttpsUtil.doPost(getFddServerHost(miniappId,fadadaProperties.getServeHost()) + "get_auth_status.api", params);
115
+    }
116
+
117
+    /**
118
+     * 替换法大大服务器地址
119
+     * @return
120
+     */
121
+    private String getFddServerHost(String miniappId,String subUrl) {
122
+        TaMiniapp taMiniapp = taMiniappMapper.selectById(miniappId);
123
+        int index = subUrl.indexOf(File.separator);
124
+        int twoIndex = subUrl.indexOf(File.separator,index);
125
+        int threeIndex = subUrl.indexOf(File.separator,twoIndex);
126
+        String newUrl = StringUtils.isEmpty(taMiniapp.getFddServerHost()) ? subUrl : taMiniapp.getFddServerHost() + subUrl.substring(threeIndex);
127
+        return newUrl;
67
     }
128
     }
68
 }
129
 }

+ 62
- 0
src/main/java/com/huiju/estateagents/eContract/service/impl/TaCompanyServiceImpl.java 查看文件

13
 import com.huiju.estateagents.common.CommConstant;
13
 import com.huiju.estateagents.common.CommConstant;
14
 import com.huiju.estateagents.common.StringUtils;
14
 import com.huiju.estateagents.common.StringUtils;
15
 import com.huiju.estateagents.config.FadadaProperties;
15
 import com.huiju.estateagents.config.FadadaProperties;
16
+import com.huiju.estateagents.controller.CommonController;
16
 import com.huiju.estateagents.eContract.entity.TaCompany;
17
 import com.huiju.estateagents.eContract.entity.TaCompany;
18
+import com.huiju.estateagents.eContract.entity.TaContract;
17
 import com.huiju.estateagents.eContract.mapper.TaCompanyMapper;
19
 import com.huiju.estateagents.eContract.mapper.TaCompanyMapper;
20
+import com.huiju.estateagents.eContract.mapper.TaContractMapper;
18
 import com.huiju.estateagents.eContract.service.ITaCompanyService;
21
 import com.huiju.estateagents.eContract.service.ITaCompanyService;
19
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
22
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
23
+import com.huiju.estateagents.entity.TaMiniapp;
24
+import com.huiju.estateagents.mapper.TaMiniappMapper;
25
+import com.huiju.estateagents.sample.entity.TaContact;
26
+import com.huiju.estateagents.sample.mapper.TaContactMapper;
20
 import jodd.util.URLDecoder;
27
 import jodd.util.URLDecoder;
21
 import lombok.extern.slf4j.Slf4j;
28
 import lombok.extern.slf4j.Slf4j;
22
 import org.apache.commons.codec.binary.Base64;
29
 import org.apache.commons.codec.binary.Base64;
23
 import org.springframework.beans.factory.annotation.Autowired;
30
 import org.springframework.beans.factory.annotation.Autowired;
24
 import org.springframework.stereotype.Service;
31
 import org.springframework.stereotype.Service;
25
 
32
 
33
+import java.io.File;
26
 import java.time.LocalDateTime;
34
 import java.time.LocalDateTime;
27
 import java.time.format.DateTimeFormatter;
35
 import java.time.format.DateTimeFormatter;
28
 
36
 
44
     @Autowired
52
     @Autowired
45
     private TaCompanyMapper taCompanyMapper;
53
     private TaCompanyMapper taCompanyMapper;
46
 
54
 
55
+    @Autowired
56
+    private TaContractMapper taContractMapper;
57
+
58
+    @Autowired
59
+    private TaCompanySealUtil taCompanySealUtil;
60
+
61
+    @Autowired
62
+    private TaMiniappMapper taMiniappMapper;
63
+
47
     /**
64
     /**
48
      * 在法大大创建一个新的企业信息
65
      * 在法大大创建一个新的企业信息
49
      *
66
      *
70
         taCompany.setCertifiedStatus(CommConstant.CERTIFIED_STATUS_REGISTERED);
87
         taCompany.setCertifiedStatus(CommConstant.CERTIFIED_STATUS_REGISTERED);
71
         taCompany.setCreateDate(LocalDateTime.now());
88
         taCompany.setCreateDate(LocalDateTime.now());
72
         taCompany.setStatus(CommConstant.STATUS_UNACCALIMED);
89
         taCompany.setStatus(CommConstant.STATUS_UNACCALIMED);
90
+        taCompany.setAuthorizeStatus("3001");
73
         taCompanyMapper.insert(taCompany);
91
         taCompanyMapper.insert(taCompany);
74
         return taCompany;
92
         return taCompany;
75
     }
93
     }
185
         return taCompany;
203
         return taCompany;
186
     }
204
     }
187
 
205
 
206
+    @Override
207
+    public String autoAuthCompanySeal(Integer companyId, Integer orgId, String miniAppId) throws Exception {
208
+        TaCompany taCompany = taCompanyMapper.selectById(companyId);
209
+        String timeStamp = HttpsUtil.getTimeStamp();
210
+        String transactionId = "TRAN" + timeStamp;
211
+        TaContract taContract = new TaContract();
212
+        taContract.setCompanyId(companyId);
213
+        taContract.setOrgId(orgId);
214
+        taContract.setCreateDate(LocalDateTime.now());
215
+        taContract.setTargetType(CommConstant.AUTH);
216
+        taContract.setStatus(CommConstant.STATUS_UNACCALIMED);
217
+        taContract.setOrgId(orgId);
218
+        taContractMapper.insert(taContract);
219
+
220
+        Integer contractId = taContract.getContractId();
221
+        String customerId = taCompany.getFadadaCode();
222
+        String res = taCompanySealUtil.autoAuthCompanySeal(transactionId, CommConstant.AUTH_TYPE, String.valueOf(contractId), customerId, String.valueOf(companyId), miniAppId);
223
+        return res;
224
+    }
225
+
226
+    @Override
227
+    public TaCompany getCompanyAndContractInfo(Integer companyId) {
228
+        return taCompanyMapper.getCompanyAndContractInfo(companyId);
229
+    }
230
+
231
+    @Override
232
+    public String getAuthStatus(Integer companyId, String miniAppId) {
233
+        TaCompany taCompany = taCompanyMapper.selectById(companyId);
234
+        return taCompanySealUtil.getAuthStatus(taCompany.getFadadaCode(), miniAppId);
235
+    }
236
+
188
     /**
237
     /**
189
      * url解码
238
      * url解码
190
      * @param bizContent
239
      * @param bizContent
195
         bizContent = new String(Base64.decodeBase64(bizContent.getBytes()));
244
         bizContent = new String(Base64.decodeBase64(bizContent.getBytes()));
196
         return bizContent;
245
         return bizContent;
197
     }
246
     }
247
+
248
+    /**
249
+     * 替换法大大服务器地址
250
+     * @return
251
+     */
252
+    private String getFddServerHost(String miniappId,String subUrl) {
253
+        TaMiniapp taMiniapp = taMiniappMapper.selectById(miniappId);
254
+        int index = subUrl.indexOf(File.separator);
255
+        int twoIndex = subUrl.indexOf(File.separator,index);
256
+        int threeIndex = subUrl.indexOf(File.separator,twoIndex);
257
+        String newUrl = StringUtils.isEmpty(taMiniapp.getFddServerHost()) ? subUrl : taMiniapp.getFddServerHost() + subUrl.substring(threeIndex);
258
+        return newUrl;
259
+    }
198
 }
260
 }

+ 34
- 6
src/main/java/com/huiju/estateagents/eContract/service/impl/TaContractServiceImpl.java 查看文件

10
 import com.fadada.sdk.util.http.HttpsUtil;
10
 import com.fadada.sdk.util.http.HttpsUtil;
11
 import com.huiju.estateagents.base.ResponseBean;
11
 import com.huiju.estateagents.base.ResponseBean;
12
 import com.huiju.estateagents.bo.request.ContractRecordRequestBO;
12
 import com.huiju.estateagents.bo.request.ContractRecordRequestBO;
13
+import com.huiju.estateagents.common.StringUtils;
13
 import com.huiju.estateagents.config.FadadaProperties;
14
 import com.huiju.estateagents.config.FadadaProperties;
14
 import com.huiju.estateagents.eContract.entity.TaContract;
15
 import com.huiju.estateagents.eContract.entity.TaContract;
15
 import com.huiju.estateagents.eContract.entity.TaContractBusiness;
16
 import com.huiju.estateagents.eContract.entity.TaContractBusiness;
18
 import com.huiju.estateagents.eContract.mapper.TaContractUserMapper;
19
 import com.huiju.estateagents.eContract.mapper.TaContractUserMapper;
19
 import com.huiju.estateagents.eContract.service.ITaContractService;
20
 import com.huiju.estateagents.eContract.service.ITaContractService;
20
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
21
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
22
+import com.huiju.estateagents.entity.TaMiniapp;
21
 import com.huiju.estateagents.entity.TaPerson;
23
 import com.huiju.estateagents.entity.TaPerson;
22
 import com.huiju.estateagents.entity.TaRaiseRecord;
24
 import com.huiju.estateagents.entity.TaRaiseRecord;
25
+import com.huiju.estateagents.mapper.TaMiniappMapper;
23
 import com.huiju.estateagents.mapper.TaOrgMapper;
26
 import com.huiju.estateagents.mapper.TaOrgMapper;
24
 import com.huiju.estateagents.mapper.TaRaiseRecordMapper;
27
 import com.huiju.estateagents.mapper.TaRaiseRecordMapper;
25
 import lombok.extern.slf4j.Slf4j;
28
 import lombok.extern.slf4j.Slf4j;
27
 import org.springframework.stereotype.Service;
30
 import org.springframework.stereotype.Service;
28
 import org.springframework.transaction.annotation.Transactional;
31
 import org.springframework.transaction.annotation.Transactional;
29
 
32
 
33
+import java.io.File;
30
 import java.time.LocalDate;
34
 import java.time.LocalDate;
31
 import java.time.LocalDateTime;
35
 import java.time.LocalDateTime;
32
 import java.util.Map;
36
 import java.util.Map;
58
     @Autowired
62
     @Autowired
59
     private TaContractUserMapper taContractUserMapper;
63
     private TaContractUserMapper taContractUserMapper;
60
 
64
 
65
+    @Autowired
66
+    private TaMiniappMapper taMiniappMapper;
67
+
61
 
68
 
62
     @Override
69
     @Override
63
     public ResponseBean listContractForAdmin(Integer pageNum, Integer pageSize, String contractName, Boolean archives, String signatoryName, Integer signatoryStatus, String customerName, Integer customerStatus, LocalDate archivesStartDate, LocalDate archivesEndDate, Integer orgId) {
70
     public ResponseBean listContractForAdmin(Integer pageNum, Integer pageSize, String contractName, Boolean archives, String signatoryName, Integer signatoryStatus, String customerName, Integer customerStatus, LocalDate archivesStartDate, LocalDate archivesEndDate, Integer orgId) {
95
 
102
 
96
         //根据raiseId获取合同的所有参数
103
         //根据raiseId获取合同的所有参数
97
         TaContractBusiness taContractBusiness = taContractMapper.selectContractInfoByRaiseId(taRaiseRecord.getRaiseId());
104
         TaContractBusiness taContractBusiness = taContractMapper.selectContractInfoByRaiseId(taRaiseRecord.getRaiseId());
105
+        if (null == taContractBusiness){
106
+            throw new Exception("无合同模板,请和置业顾问联系");
107
+        }
98
 
108
 
99
         //先入合同表
109
         //先入合同表
100
         TaContract taContract = new TaContract();
110
         TaContract taContract = new TaContract();
111
         taContractMapper.insert(taContract);
121
         taContractMapper.insert(taContract);
112
 
122
 
113
         //上传合同
123
         //上传合同
114
-        FddClientBase base = new FddClientBase(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),fadadaProperties.getServeHost());
124
+        FddClientBase base = new FddClientBase(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),getFddServerHost(person.getMiniappId(),fadadaProperties.getServeHost()));
115
         String result = base.invokeUploadDocs(taContract.getContractId().toString(), taContractBusiness.getContractTemplateName(), null, taContractBusiness.getContractTemplateAddress(), ".pdf");
125
         String result = base.invokeUploadDocs(taContract.getContractId().toString(), taContractBusiness.getContractTemplateName(), null, taContractBusiness.getContractTemplateAddress(), ".pdf");
116
         JSONObject jsonObject = JSONObject.parseObject(result);
126
         JSONObject jsonObject = JSONObject.parseObject(result);
117
-        if (!jsonObject.getInteger("code").equals("1000")){
127
+        if (!jsonObject.getString("code").equals("1000")){
118
             throw new Exception(jsonObject.getString("msg"));
128
             throw new Exception(jsonObject.getString("msg"));
119
         }
129
         }
120
 
130
 
131
         req.setDoc_title(taContractBusiness.getContractTemplateName());
141
         req.setDoc_title(taContractBusiness.getContractTemplateName());
132
         String autoSignResult = base.invokeExtSignAuto(req);
142
         String autoSignResult = base.invokeExtSignAuto(req);
133
         JSONObject autoSignResultJson = JSONObject.parseObject(autoSignResult);
143
         JSONObject autoSignResultJson = JSONObject.parseObject(autoSignResult);
134
-        if (!autoSignResultJson.getInteger("code").equals("1000")){
144
+        if (!autoSignResultJson.getString("code").equals("1000")){
135
             throw new Exception(jsonObject.getString("msg"));
145
             throw new Exception(jsonObject.getString("msg"));
136
         }
146
         }
137
 
147
 
140
         taContract.setContractViewUrl(autoSignResultJson.getString("viewpdf_url"));
150
         taContract.setContractViewUrl(autoSignResultJson.getString("viewpdf_url"));
141
         taContract.setStatus(1);
151
         taContract.setStatus(1);
142
         taContractMapper.updateById(taContract);
152
         taContractMapper.updateById(taContract);
153
+
154
+        //企业名称
155
+        taContract.setCompanyName(taContractBusiness.getCompanyName());
143
         return taContract;
156
         return taContract;
144
     }
157
     }
145
 
158
 
159
+    /**
160
+     * 替换法大大服务器地址
161
+     * @return
162
+     */
163
+    private String getFddServerHost(String miniappId,String subUrl) {
164
+        TaMiniapp taMiniapp = taMiniappMapper.selectById(miniappId);
165
+        int index = subUrl.indexOf(File.separator);
166
+        int twoIndex = subUrl.indexOf(File.separator,index);
167
+        int threeIndex = subUrl.indexOf(File.separator,twoIndex);
168
+        String newUrl = StringUtils.isEmpty(taMiniapp.getFddServerHost()) ? subUrl : taMiniapp.getFddServerHost() + subUrl.substring(threeIndex);
169
+        return newUrl;
170
+    }
171
+
146
     /**
172
     /**
147
      * 手动签署合同
173
      * 手动签署合同
148
      *
174
      *
151
      * @return
177
      * @return
152
      */
178
      */
153
     @Override
179
     @Override
154
-    public String
155
-    manualContract(TaContract taContract, TaPerson person) {
180
+    public String manualContract(TaContract taContract, TaPerson person) throws Exception {
156
         //获取客户信息
181
         //获取客户信息
157
         QueryWrapper<TaContractUser> queryWrapper = new QueryWrapper<>();
182
         QueryWrapper<TaContractUser> queryWrapper = new QueryWrapper<>();
158
         queryWrapper.eq("mini_openid",person.getMiniOpenid());
183
         queryWrapper.eq("mini_openid",person.getMiniOpenid());
160
 
185
 
161
         //根据raiseId获取合同的所有参数
186
         //根据raiseId获取合同的所有参数
162
         TaContractBusiness taContractBusiness = taContractMapper.selectContractInfoByRaiseId(taContract.getTargetId().toString());
187
         TaContractBusiness taContractBusiness = taContractMapper.selectContractInfoByRaiseId(taContract.getTargetId().toString());
188
+        if (null == taContractBusiness){
189
+            throw new Exception("无合同模板,请和置业顾问联系");
190
+        }
163
 
191
 
164
         //手动签署合同
192
         //手动签署合同
165
         String timeStamp = HttpsUtil.getTimeStamp();
193
         String timeStamp = HttpsUtil.getTimeStamp();
166
         String transaction_id = "TRAN_" + timeStamp;
194
         String transaction_id = "TRAN_" + timeStamp;
167
 
195
 
168
-        FddClientBase base = new FddClientBase(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),fadadaProperties.getServeHost());
196
+        FddClientBase base = new FddClientBase(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),getFddServerHost(person.getMiniappId(),fadadaProperties.getServeHost()));
169
         ExtsignReq req = new ExtsignReq();
197
         ExtsignReq req = new ExtsignReq();
170
         req.setCustomer_id(taContractUser.getFadadaCode());
198
         req.setCustomer_id(taContractUser.getFadadaCode());
171
         req.setTransaction_id(transaction_id);
199
         req.setTransaction_id(transaction_id);

+ 28
- 7
src/main/java/com/huiju/estateagents/eContract/service/impl/TaContractUserServiceImpl.java 查看文件

7
 import com.fadada.sdk.client.authForfadada.FindCertInfo;
7
 import com.fadada.sdk.client.authForfadada.FindCertInfo;
8
 import com.fadada.sdk.client.authForfadada.GetPersonVerifyUrl;
8
 import com.fadada.sdk.client.authForfadada.GetPersonVerifyUrl;
9
 import com.huiju.estateagents.common.CommConstant;
9
 import com.huiju.estateagents.common.CommConstant;
10
+import com.huiju.estateagents.common.StringUtils;
10
 import com.huiju.estateagents.config.FadadaProperties;
11
 import com.huiju.estateagents.config.FadadaProperties;
11
 import com.huiju.estateagents.eContract.entity.TaContractUser;
12
 import com.huiju.estateagents.eContract.entity.TaContractUser;
12
 import com.huiju.estateagents.eContract.mapper.TaContractUserMapper;
13
 import com.huiju.estateagents.eContract.mapper.TaContractUserMapper;
13
 import com.huiju.estateagents.eContract.service.ITaContractUserService;
14
 import com.huiju.estateagents.eContract.service.ITaContractUserService;
14
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
15
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
16
+import com.huiju.estateagents.entity.TaMiniapp;
15
 import com.huiju.estateagents.entity.TaPerson;
17
 import com.huiju.estateagents.entity.TaPerson;
16
 import com.huiju.estateagents.entity.TaRaiseRecord;
18
 import com.huiju.estateagents.entity.TaRaiseRecord;
19
+import com.huiju.estateagents.mapper.TaMiniappMapper;
17
 import jodd.util.URLDecoder;
20
 import jodd.util.URLDecoder;
18
 import lombok.extern.slf4j.Slf4j;
21
 import lombok.extern.slf4j.Slf4j;
19
 import org.apache.commons.codec.binary.Base64;
22
 import org.apache.commons.codec.binary.Base64;
20
 import org.springframework.beans.factory.annotation.Autowired;
23
 import org.springframework.beans.factory.annotation.Autowired;
21
 import org.springframework.stereotype.Service;
24
 import org.springframework.stereotype.Service;
22
 
25
 
26
+import java.io.File;
23
 import java.time.LocalDateTime;
27
 import java.time.LocalDateTime;
24
 
28
 
25
 /**
29
 /**
39
 
43
 
40
     @Autowired
44
     @Autowired
41
     private TaContractUserMapper taContractUserMapper;
45
     private TaContractUserMapper taContractUserMapper;
46
+
47
+    @Autowired
48
+    private TaMiniappMapper taMiniappMapper;
42
     /**
49
     /**
43
      * 小程序端首次签署合同的是要在法大大处创建账号
50
      * 小程序端首次签署合同的是要在法大大处创建账号
44
      *
51
      *
59
         //没有法大大账号的先注册
66
         //没有法大大账号的先注册
60
         log.info("========法大大个人注册=======");
67
         log.info("========法大大个人注册=======");
61
         //在法大大注册个人用户
68
         //在法大大注册个人用户
62
-        FddClientBase base = new FddClientBase(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),fadadaProperties.getServeHost());
63
-        //小程序id为注册账号
64
-        String open_id = person.getMiniappId();
69
+        FddClientBase base = new FddClientBase(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),getFddServerHost(person.getMiniappId(),fadadaProperties.getServeHost()));
70
+        //小程序open——id为注册账号
71
+        String open_id = person.getMiniOpenid();
65
         //account_type 1是个人注册
72
         //account_type 1是个人注册
66
         String result =base.invokeregisterAccount(open_id,"1");
73
         String result =base.invokeregisterAccount(open_id,"1");
67
         log.info("法大大注册信息{}", result);
74
         log.info("法大大注册信息{}", result);
81
         newContractUser.setOrgId(CommConstant.STATUS_UNACCALIMED);
88
         newContractUser.setOrgId(CommConstant.STATUS_UNACCALIMED);
82
 
89
 
83
         log.info("正在申请个人认证,客户编码是{}",jsonObject.getString("data"));
90
         log.info("正在申请个人认证,客户编码是{}",jsonObject.getString("data"));
84
-        GetPersonVerifyUrl personverify = new GetPersonVerifyUrl(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),fadadaProperties.getServeHost());
91
+        GetPersonVerifyUrl personverify = new GetPersonVerifyUrl(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),getFddServerHost(person.getMiniappId(),fadadaProperties.getServeHost()));
85
         String customer_id = jsonObject.getString("data");
92
         String customer_id = jsonObject.getString("data");
93
+        //0:三要素标准方案; 1:三要素补充方案;
86
         String verifyed_way = "0";
94
         String verifyed_way = "0";
87
         String page_modify = "1";
95
         String page_modify = "1";
88
         String notify_url = fadadaProperties.getCompanyNotify();
96
         String notify_url = fadadaProperties.getCompanyNotify();
90
         String customer_ident_type = "0";
98
         String customer_ident_type = "0";
91
         String personResult = personverify.invokePersonVerifyUrl(customer_id,verifyed_way,
99
         String personResult = personverify.invokePersonVerifyUrl(customer_id,verifyed_way,
92
                 page_modify,notify_url,return_url,null,customer_ident_type,
100
                 page_modify,notify_url,return_url,null,customer_ident_type,
93
-                null,null,null,null,null);
101
+                null,null,null,"1",null);
94
 
102
 
95
         String data = JSON.parseObject(personResult).getString("data");
103
         String data = JSON.parseObject(personResult).getString("data");
96
         if (null !=data){
104
         if (null !=data){
97
             String url = JSON.parseObject(data).getString("url");
105
             String url = JSON.parseObject(data).getString("url");
98
             url = decode(url);
106
             url = decode(url);
99
-            newContractUser.setCertifiedAddress(url);
107
+            newContractUser.setCertifiedAddress(getFddServerHost(person.getMiniappId(),url));
100
             newContractUser.setCertifiedSerialNumber(JSON.parseObject(data).getString("transactionNo"));
108
             newContractUser.setCertifiedSerialNumber(JSON.parseObject(data).getString("transactionNo"));
101
         }
109
         }
102
         newContractUser.setStatus(0);
110
         newContractUser.setStatus(0);
106
         return newContractUser;
114
         return newContractUser;
107
     }
115
     }
108
 
116
 
117
+    /**
118
+     * 替换法大大服务器地址
119
+     * @return
120
+     */
121
+    private String getFddServerHost(String miniappId,String subUrl) {
122
+        TaMiniapp taMiniapp = taMiniappMapper.selectById(miniappId);
123
+        int index = subUrl.indexOf(File.separator);
124
+        int twoIndex = subUrl.indexOf(File.separator,index);
125
+        int threeIndex = subUrl.indexOf(File.separator,twoIndex);
126
+        String newUrl = StringUtils.isEmpty(taMiniapp.getFddServerHost()) ? subUrl : taMiniapp.getFddServerHost() + subUrl.substring(threeIndex);
127
+        return newUrl;
128
+    }
129
+
109
     /**
130
     /**
110
      * 去法大大处更新客户的状态
131
      * 去法大大处更新客户的状态
111
      *
132
      *
119
         queryWrapper.eq("mini_openid",person.getMiniOpenid());
140
         queryWrapper.eq("mini_openid",person.getMiniOpenid());
120
         TaContractUser taContractUser = taContractUserMapper.selectOne(queryWrapper);
141
         TaContractUser taContractUser = taContractUserMapper.selectOne(queryWrapper);
121
         log.info("个人正在从法大大获取最新数据,企业编号是 {}", taContractUser.getFadadaCode());
142
         log.info("个人正在从法大大获取最新数据,企业编号是 {}", taContractUser.getFadadaCode());
122
-        FindCertInfo personCertInfo = new FindCertInfo(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),fadadaProperties.getServeHost());
143
+        FindCertInfo personCertInfo = new FindCertInfo(fadadaProperties.getAppId(),fadadaProperties.getAppSecret(),fadadaProperties.getVersion(),getFddServerHost(person.getMiniappId(),fadadaProperties.getServeHost()));
123
         String verified_serialno = taContractUser.getCertifiedSerialNumber();
144
         String verified_serialno = taContractUser.getCertifiedSerialNumber();
124
         String result = personCertInfo.invokeFindPersonCert(verified_serialno,
145
         String result = personCertInfo.invokeFindPersonCert(verified_serialno,
125
                 "1");
146
                 "1");

+ 2
- 0
src/main/java/com/huiju/estateagents/entity/TaMiniapp.java 查看文件

59
 
59
 
60
     private String aesKey;
60
     private String aesKey;
61
 
61
 
62
+    private String fddServerHost;
63
+
62
     @TableField(exist = false)
64
     @TableField(exist = false)
63
     private List<TaMiniappTemplate> tpls;
65
     private List<TaMiniappTemplate> tpls;
64
 }
66
 }

+ 1
- 2
src/main/java/com/huiju/estateagents/entity/TaRaise.java 查看文件

170
     /**
170
     /**
171
      * 是否邀请制 1是 0否
171
      * 是否邀请制 1是 0否
172
      */
172
      */
173
-    @TableField(exist = false)
174
-    private Integer isInvite;
173
+    private Integer invite;
175
 
174
 
176
     /**
175
     /**
177
      * 被邀请电话号码
176
      * 被邀请电话号码

+ 24
- 13
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java 查看文件

118
     private TaPersonBuildingMapper taPersonBuildingMapper;
118
     private TaPersonBuildingMapper taPersonBuildingMapper;
119
 
119
 
120
     @Autowired
120
     @Autowired
121
-    private ITaRaiseInviteService iTaRaiseInviteService;
121
+    private ITaRaiseService iTaRaiseService;
122
 
122
 
123
     @Autowired
123
     @Autowired
124
     private ITaPersonService iTaPersonService;
124
     private ITaPersonService iTaPersonService;
125
 
125
 
126
+    @Autowired
127
+    private ITaRaiseInviteService iTaRaiseInviteService;
128
+
126
     @Override
129
     @Override
127
     public ResponseBean buildingList(Integer pageNum, Integer pageSize, String name, String code, LocalDateTime startDate, String buildingStatus, String marketStatus, Integer cityId, Integer isMain, Integer orgId, List<TaPersonBuilding> taPersonBuildingList) {
130
     public ResponseBean buildingList(Integer pageNum, Integer pageSize, String name, String code, LocalDateTime startDate, String buildingStatus, String marketStatus, Integer cityId, Integer isMain, Integer orgId, List<TaPersonBuilding> taPersonBuildingList) {
128
         Page<TaBuilding> page = new Page<>();
131
         Page<TaBuilding> page = new Page<>();
346
         List<TaSalesBatch> resultSalesBatchList = new ArrayList<>();
349
         List<TaSalesBatch> resultSalesBatchList = new ArrayList<>();
347
         taSalesBatch.stream().forEach(record -> {
350
         taSalesBatch.stream().forEach(record -> {
348
             // 查询批次下认筹是否开启邀请制
351
             // 查询批次下认筹是否开启邀请制
349
-            QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
350
-            taRaiseInviteQueryWrapper.eq("org_id", orgId);
351
-            taRaiseInviteQueryWrapper.eq("sales_batch_id", record.getSalesBatchId());
352
-            TaRaiseInvite taRaiseInvite = iTaRaiseInviteService.getOne(taRaiseInviteQueryWrapper);
353
-            if (taRaiseInvite == null) {
352
+            QueryWrapper<TaRaise> taRaiseQueryWrapper = new QueryWrapper<>();
353
+            taRaiseQueryWrapper.eq("org_id", orgId);
354
+            taRaiseQueryWrapper.eq("sales_batch_id", record.getSalesBatchId());
355
+            taRaiseQueryWrapper.eq("status", CommConstant.STATUS_NORMAL);
356
+            TaRaise taRaise = iTaRaiseService.getOne(taRaiseQueryWrapper);
357
+            if (taRaise == null) {
354
                 resultSalesBatchList.add(record);
358
                 resultSalesBatchList.add(record);
355
                 return;
359
                 return;
356
             }
360
             }
357
 
361
 
358
-            // 若开启邀请制,校验该用户是否在邀请列表中
359
-            taRaiseInviteQueryWrapper = new QueryWrapper<>();
360
-            taRaiseInviteQueryWrapper.eq("org_id", orgId);
361
-            taRaiseInviteQueryWrapper.eq("invite_tel", person.getTel());
362
-            taRaiseInviteQueryWrapper.eq("sales_batch_id", record.getSalesBatchId());
363
-            TaRaiseInvite taRaiseInvite2 = iTaRaiseInviteService.getOne(taRaiseInviteQueryWrapper);
364
-            if(taRaiseInvite2 != null){
362
+            // 未开启邀请制
363
+            if (CommConstant.STATUS_NORMAL != taRaise.getInvite()) {
365
                 resultSalesBatchList.add(record);
364
                 resultSalesBatchList.add(record);
366
                 return;
365
                 return;
367
             }
366
             }
367
+
368
+            if (CommConstant.STATUS_NORMAL == taRaise.getInvite()) {
369
+                // 若开启邀请制,校验该用户是否在邀请列表中
370
+                QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
371
+                taRaiseInviteQueryWrapper.eq("org_id", orgId);
372
+                taRaiseInviteQueryWrapper.eq("invite_tel", person.getTel());
373
+                taRaiseInviteQueryWrapper.eq("sales_batch_id", record.getSalesBatchId());
374
+                TaRaiseInvite taRaiseInvite = iTaRaiseInviteService.getOne(taRaiseInviteQueryWrapper);
375
+                if (taRaiseInvite != null) {
376
+                    resultSalesBatchList.add(record);
377
+                }
378
+            }
368
         });
379
         });
369
 
380
 
370
         building.setSalesBatch(resultSalesBatchList);
381
         building.setSalesBatch(resultSalesBatchList);

+ 1
- 2
src/main/java/com/huiju/estateagents/service/impl/TaRaiseRecordServiceImpl.java 查看文件

435
                         map.put("taContract", taContract);
435
                         map.put("taContract", taContract);
436
                     }
436
                     }
437
                 } else {
437
                 } else {
438
-                    taRaiseRecord.setShowContract(0);
438
+                    taRaiseRecord.setShowContract(1);
439
                 }
439
                 }
440
             } else {
440
             } else {
441
                 taRaiseRecord.setShowContract(0);
441
                 taRaiseRecord.setShowContract(0);
448
         map.put("taRaiseHouseList", taRaiseHouseList);
448
         map.put("taRaiseHouseList", taRaiseHouseList);
449
         map.put("houseList", houseList);
449
         map.put("houseList", houseList);
450
         map.put("taOrder", taOrder);
450
         map.put("taOrder", taOrder);
451
-
452
         map.put("taRaise", taRaise);
451
         map.put("taRaise", taRaise);
453
         responseBean.addSuccess(map);
452
         responseBean.addSuccess(map);
454
         return responseBean;
453
         return responseBean;

+ 14
- 17
src/main/java/com/huiju/estateagents/service/impl/TaRaiseServiceImpl.java 查看文件

114
             return responseBean;
114
             return responseBean;
115
         }
115
         }
116
 
116
 
117
-        // 获取邀请人数据
118
-        QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
119
-        taRaiseInviteQueryWrapper.eq("org_id", orgId);
120
-        taRaiseInviteQueryWrapper.eq("raise_id", taRaise.getRaiseId());
121
-        taRaiseInviteQueryWrapper.orderByAsc("create_date");
122
-        List<TaRaiseInvite> taRaiseInviteList = taRaiseInviteService.list(taRaiseInviteQueryWrapper);
123
-        StringBuilder inviteTelSb = new StringBuilder();
124
-        taRaiseInviteList.stream().forEach(record -> {
125
-            inviteTelSb.append(record.getInviteTel() + "\n");
126
-        });
127
-
128
-        if (CollectionUtils.isEmpty(taRaiseInviteList)) {
129
-            taRaise.setIsInvite(CommConstant.STATUS_UNACCALIMED);
130
-        } else {
131
-            taRaise.setIsInvite(CommConstant.STATUS_NORMAL);
117
+        if (taRaise.getInvite() != null && CommConstant.STATUS_NORMAL == taRaise.getInvite()) {
118
+            // 获取邀请人数据
119
+            QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
120
+            taRaiseInviteQueryWrapper.eq("org_id", orgId);
121
+            taRaiseInviteQueryWrapper.eq("raise_id", taRaise.getRaiseId());
122
+            taRaiseInviteQueryWrapper.orderByAsc("create_date");
123
+            List<TaRaiseInvite> taRaiseInviteList = taRaiseInviteService.list(taRaiseInviteQueryWrapper);
124
+            StringBuilder inviteTelSb = new StringBuilder();
125
+            taRaiseInviteList.stream().forEach(record -> {
126
+                inviteTelSb.append(record.getInviteTel() + "\n");
127
+            });
132
             taRaise.setInviteTel(inviteTelSb.toString());
128
             taRaise.setInviteTel(inviteTelSb.toString());
133
         }
129
         }
130
+
134
         taRaise.setRaisePrice(taRaise.getRaisePrice() == null ? null : taRaise.getRaisePrice());
131
         taRaise.setRaisePrice(taRaise.getRaisePrice() == null ? null : taRaise.getRaisePrice());
135
         responseBean.addSuccess(taRaise);
132
         responseBean.addSuccess(taRaise);
136
         return responseBean;
133
         return responseBean;
189
         String[] inviteTelArr = StringUtils.isEmpty(taRaise.getInviteTel()) ?
186
         String[] inviteTelArr = StringUtils.isEmpty(taRaise.getInviteTel()) ?
190
                 new String[]{} : taRaise.getInviteTel().split("\n");
187
                 new String[]{} : taRaise.getInviteTel().split("\n");
191
 
188
 
192
-        Arrays.asList(inviteTelArr).stream().forEach(record -> {
189
+        Arrays.asList(inviteTelArr).stream().distinct().forEach(record -> {
193
             TaRaiseInvite taRaiseInvite = new TaRaiseInvite();
190
             TaRaiseInvite taRaiseInvite = new TaRaiseInvite();
194
             taRaiseInvite.setOrgId(orgId);
191
             taRaiseInvite.setOrgId(orgId);
195
             taRaiseInvite.setRaiseId(taRaise.getRaiseId());
192
             taRaiseInvite.setRaiseId(taRaise.getRaiseId());
204
             } else {
201
             } else {
205
                 QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
202
                 QueryWrapper<TaRaiseInvite> taRaiseInviteQueryWrapper = new QueryWrapper<>();
206
                 taRaiseInviteQueryWrapper.eq("org_id", orgId);
203
                 taRaiseInviteQueryWrapper.eq("org_id", orgId);
207
-                taRaiseInviteQueryWrapper.eq("org_id", taRaise.getRaiseId());
204
+                taRaiseInviteQueryWrapper.eq("raise_id", taRaise.getRaiseId());
208
                 taRaiseInviteQueryWrapper.eq("invite_tel", record);
205
                 taRaiseInviteQueryWrapper.eq("invite_tel", record);
209
                 TaRaiseInvite queryResult = taRaiseInviteService.getOne(taRaiseInviteQueryWrapper);
206
                 TaRaiseInvite queryResult = taRaiseInviteService.getOne(taRaiseInviteQueryWrapper);
210
                 if (queryResult == null) {
207
                 if (queryResult == null) {

+ 4
- 2
src/main/resources/application-blue.yml 查看文件

83
   appId: "403057"
83
   appId: "403057"
84
   appSecret: "xcIaK36Vc09yXXRdinXYcXhW"
84
   appSecret: "xcIaK36Vc09yXXRdinXYcXhW"
85
   version: "2.0"
85
   version: "2.0"
86
-  serveHost: "https://testapi.fadada.com:8443/api/"
86
+  serveHost: "https://testapi08.fadada.com/api/"
87
   companyNotify: "https://dev.pawoma.cn/api/fadd/company"
87
   companyNotify: "https://dev.pawoma.cn/api/fadd/company"
88
-  signNotify: "https://dev.pawoma.cn/api/fadd/sign"
88
+  authReturnUrl: "http://localhost:8000/#/eContract/seal/detail?id="
89
+  authNotifyUrl: "https://dev.pawoma.cn/api/fadd/autoAuthCompanySeal"
90
+  signNotify: "https://dev.pawoma.cn/api/fadd/sign"

+ 3
- 1
src/main/resources/application-green.yml 查看文件

85
   version: "2.0"
85
   version: "2.0"
86
   serveHost: "https://testapi.fadada.com:8443/api/"
86
   serveHost: "https://testapi.fadada.com:8443/api/"
87
   companyNotify: "https://dev.pawoma.cn/api/fadd/company"
87
   companyNotify: "https://dev.pawoma.cn/api/fadd/company"
88
-  signNotify: "https://dev.pawoma.cn/api/fadd/sign"
88
+  authReturnUrl: "http://localhost:8000/#/eContract/seal/detail?id="
89
+  authNotifyUrl: "https://dev.pawoma.cn/api/fadd/autoAuthCompanySeal"
90
+  signNotify: "https://dev.pawoma.cn/api/fadd/sign"

+ 6
- 0
src/main/resources/mapper/eContract/TaCompanyMapper.xml 查看文件

2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
 <mapper namespace="com.huiju.estateagents.eContract.mapper.TaCompanyMapper">
3
 <mapper namespace="com.huiju.estateagents.eContract.mapper.TaCompanyMapper">
4
 
4
 
5
+    <select id="getCompanyAndContractInfo" resultType="com.huiju.estateagents.eContract.entity.TaCompany">
6
+        select *,a.contract_id From ta_company t
7
+        left join ta_contract a on t.company_id = a.company_id and a.target_type = 'auth' and a.status = 1
8
+        where t.company_id = #{companyId}
9
+    </select>
10
+
5
 </mapper>
11
 </mapper>

+ 1
- 1
src/main/resources/mapper/eContract/TaContractMapper.xml 查看文件

110
         SELECT
110
         SELECT
111
             t.*,
111
             t.*,
112
             c.contract_template_address,
112
             c.contract_template_address,
113
-            s.signatrue_id,
113
+            s.signature_id,
114
             d.fadada_code
114
             d.fadada_code
115
         FROM
115
         FROM
116
             ta_contract_business t
116
             ta_contract_business t