姜永辉 1 год назад
Родитель
Сommit
4ac22dda06

+ 11 - 0
src/main/java/com/dk/oauth/controller/CompanyController.java

@@ -115,6 +115,17 @@ public class CompanyController {
     }
 
     /**
+     * @desc   : 功能包保存
+     * @author : jyh
+     * @date   : 2024/5/17 14:55
+     */
+    @ApiOperation( value = "功能包保存", notes = "功能包保存" )
+    @PostMapping(value = "/save_func")
+    public ResponseResultVO<?> saveFunc(@RequestBody CompanyVO companyVO) {
+        return companyService.saveFunc(companyVO);
+    }
+
+    /**
      * @desc   : 保存功能频率
      * @author : admin
      * @date   : 2024/3/28 14:55

+ 8 - 0
src/main/java/com/dk/oauth/entity/CompanyVO.java

@@ -22,6 +22,7 @@ import java.io.Serializable;
 import java.math.BigDecimal;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
+import java.util.List;
 
 /**
  * 企业
@@ -338,6 +339,13 @@ public class CompanyVO extends PageInfo<CompanyVO> implements Serializable {
      */
     private Boolean vip;
 
+    /**
+     * @desc   : 功能包
+     * @author : 姜永辉
+     * @date   : 2024/07/03 14:33
+     */
+    private List<Activity> funPackage;
+
     /*
      * 相关属性
      * @TableField(exist = false)

+ 2 - 0
src/main/java/com/dk/oauth/service/ICompanyService.java

@@ -21,6 +21,8 @@ public interface ICompanyService  extends IService<Company> {
 
     ResponseResultVO reNewCompany(CompanyVO companyVO);
 
+    ResponseResultVO saveFunc(CompanyVO companyVO);
+
     ResponseResultVO selectById(Integer id);
 
     ResponseResultVO updateWxUserCompany(Map<String,Object> map);

+ 37 - 0
src/main/java/com/dk/oauth/service/impl/CompanyServiceImpl.java

@@ -509,6 +509,43 @@ public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> impl
     }
 
     /**
+     * @desc : 功能包保存
+     * @author : 姜永辉
+     * @date : 2024-05-17 13:55
+     */
+    @Transactional(rollbackFor = Exception.class)
+    public ResponseResultVO saveFunc(CompanyVO companyVO) {
+        // 转实体
+        Company company = companyConvert.convertToPo(companyVO);
+        // 生成临时license授权
+        Map<String, Object> licenseMap = new HashMap<>();
+        licenseMap.put("grade_code", company.getGradeCode());
+        licenseMap.put("end_date", company.getEndDate());
+        licenseMap.put("user_end_date", companyVO.getUserEndDate());
+        licenseMap.put("web_max_num", companyVO.getWebMaxNum());
+        licenseMap.put("wx_max_num", companyVO.getWxMaxNum());
+        licenseMap.put("vip", companyVO.getVip());
+        licenseMap.put("fun_package", companyVO.getFunPackage());
+        company.setLicenseSocial(AESUtil.aesEncrypt(JSON.toJSONString(licenseMap)));
+        companyMapper.updateById(company);
+        // 生成交易记录
+        Trade trade = new Trade();
+        trade.setTradeNo(companyVO.getTradeNo());
+        trade.setCpId(companyVO.getCpId());
+        trade.setWxUserId(companyVO.getWxUserId());
+        trade.setTradeAmount(companyVO.getTradeAmount());
+        trade.setTradeType(Constant.TradeType.FUNTION.getName());
+        trade.setBuyLong(companyVO.getBuyLong());
+        trade.setBuyBeginDate(companyVO.getBuyBeginDate());
+        trade.setBuyEndDate(companyVO.getBuyEndDate());
+        trade.setExtendDays(companyVO.getExtendDays());
+        trade.setBuyGradeCode(companyVO.getGradeCode());
+        trade.setTradeStatus(Constant.TradeStatus.INEFFECTIVE.getName());
+        tradeMapper.insert(trade);
+        return ResponseResultUtil.success(trade);
+    }
+
+    /**
      * @desc : 保存用户功能频率表
      * @author : 周兴
      * @date : 2024/3/28 9:39

+ 2 - 0
src/main/resources/mapper/ActivityMapper.xml

@@ -75,6 +75,8 @@
             ti.wx_price  AS "wxPrice",
             ti.valid_long  AS "validLong",
             ti.extra_long AS "extraLong",
+            T.fun_ids  AS "funUuids",
+            (SELECT json_agg(m.*)  from sys.t_app_menu m where fun_uuid = ANY(T.fun_ids::uuid[])) AS "funIds",
             T.activity_type AS "activityType"
         FROM
             dkic_a.t_mst_activity_item ti