luodangjia
2024-10-18 06ea0fe23faf2238d9d1141826ecb404367aecec
ruoyi-service/ruoyi-other/src/main/java/com/ruoyi/other/controller/TIntegralRuleController.java
@@ -1,9 +1,24 @@
package com.ruoyi.other.controller;
import java.time.LocalDateTime;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.web.domain.AjaxResult;
import com.ruoyi.common.log.annotation.Log;
import com.ruoyi.common.log.enums.BusinessType;
import com.ruoyi.other.api.domain.THtml;
import com.ruoyi.other.api.domain.TIntegralRule;
import com.ruoyi.other.api.dto.SaveHtml;
import com.ruoyi.other.service.THtmlService;
import com.ruoyi.other.service.TIntegralRuleService;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
 * <p>
@@ -14,8 +29,98 @@
 * @since 2024-08-06
 */
@RestController
@RequestMapping("/t-integral-rule")
@RequestMapping("/integral")
public class TIntegralRuleController {
    @Autowired
    private THtmlService htmlService;
    @Autowired
    private TIntegralRuleService integralRuleService;
    /**
     * 远程调用 获取首次添加车辆可获得积分
     * @return
     */
    @PostMapping("/getAddCarIntegral")
    public R<Integer> getAddCarIntegral() {
        TIntegralRule one = integralRuleService.getOne(null);
        String addVehiclesEarnsPoints = one.getAddVehiclesEarnsPoints();
        JSONObject jsonObject = JSON.parseObject(addVehiclesEarnsPoints);
        Integer point = 0;
        //增加车牌50分,必填
        point += jsonObject.getInteger("num1");
        point += jsonObject.getInteger("num2");
        point += jsonObject.getInteger("num3");
        point += jsonObject.getInteger("num4");
        return R.ok(point);
    }
    @GetMapping("/getSet")
    @ApiOperation(tags = {"管理后台-积分管理","小程序-个人中心-签到"},value = "获取积分设置")
    public R<TIntegralRule> getSet() {
        TIntegralRule res = integralRuleService.getOne(new QueryWrapper<>());
        return R.ok(res);
    }
    @PostMapping("/saveSet")
    @ApiOperation(tags = {"管理后台-积分管理"},value = "保存积分设置")
    @Log(title = "【积分管理】保存积分设置", businessType = BusinessType.INSERT)
    public R saveSet(@RequestBody TIntegralRule dto) {
        TIntegralRule one = integralRuleService.getOne(null);
        if (one!=null){
            dto.setId(one.getId());
            integralRuleService.saveOrUpdate(dto);
        }else{
            integralRuleService.saveOrUpdate(dto);
        }
        return R.ok();
    }
    @GetMapping("/getInfo")
    @ApiOperation(tags = {"管理后台-积分管理"},value = "type 1=积分规则说明," +
            "2=会员折扣说明," +
            "3=优惠券说明," +
            "4=双倍积分说明," +
            "5=商城专享价说明," +
            "6=会员协议," +
            "7=用户协议," +
            "8=隐私协议," +
            "9=邀请好友说明," +
            "10=资质证明," +
            "11=开票说明")
    public R<String> getInfo(Integer type) {
        THtml g = htmlService.getOne(new QueryWrapper<THtml>().eq("type",type));
        if (g == null){
            return R.ok("");
        }
        return R.ok(g.getContent());
    }
    @PostMapping("/saveInfo")
    @ApiOperation(tags = {"管理后台-积分管理"},value = "保存积分说明")
    @Log(title = "【积分管理】保存积分说明", businessType = BusinessType.INSERT)
    public R saveInfo(@RequestBody SaveHtml dto) {
        THtml g = htmlService.getOne(new QueryWrapper<THtml>().eq("type",dto.getType()));
        if (g == null){
            THtml tHtml = new THtml();
            tHtml.setType(dto.getType());
            tHtml.setContent(dto.getInfo());
            htmlService.save(tHtml);
        }else{
            g.setContent(dto.getInfo());
            htmlService.updateById(g);
        }
        return R.ok();
    }
    @GetMapping("/getIntegralRule")
    @ApiOperation(tags = {"小程序-充电记录"},value = "获取积分规则设置")
    public AjaxResult<String> getIntegralRule(){
        TIntegralRule one = integralRuleService.getOne(null);
        return AjaxResult.success(one);
    }
}