yangyj vor 3 Jahren
Ursprung
Commit
37e685b96a

+ 22 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/entity/FormulaBase.java

@@ -0,0 +1,22 @@
+package org.springblade.manager.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.mp.base.BaseEntity;
+
+/**
+ * @author yangyj
+ * @Date 2022/6/2 17:30
+ * @description TODO
+ */
+@Data
+@TableName("formula_base")
+@EqualsAndHashCode(callSuper = true)
+public class FormulaBase extends BaseEntity {
+    private String name;
+    private String template;
+    private Integer type;
+    private String typeName;
+    private String example;
+}

+ 16 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/vo/FormulaBaseVo.java

@@ -0,0 +1,16 @@
+package org.springblade.manager.vo;
+
+import lombok.Data;
+
+/**
+ * @author yangyj
+ * @Date 2022/6/6 18:04
+ * @description TODO
+ */
+@Data
+public class FormulaBaseVo {
+    private String name;
+    private String template;
+    private Integer type;
+    private String example;
+}

+ 16 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/vo/FormulaType.java

@@ -0,0 +1,16 @@
+package org.springblade.manager.vo;
+
+public enum FormulaType {
+    STATISTICS(0,"统计"),
+    Arithmetic(1,"基础运算"),
+    STR(2,"字符串"),
+    DATE(3,"时间相关"),
+    COLLECT(4,"数组、集合"),
+    logic(5,"逻辑");
+    private String name;
+    private int index;
+    private FormulaType(int index ,String name ) {
+        this.name = name;
+        this.index = index;
+    }
+}

+ 5 - 6
blade-service/blade-business/src/main/java/org/springblade/business/utils/FunctionMain.java

@@ -3,17 +3,14 @@ package org.springblade.business.utils;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
-import java.io.UnsupportedEncodingException;
 import java.lang.reflect.Field;
 import java.lang.reflect.Modifier;
-import java.lang.reflect.Proxy;
 import java.util.*;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
 
 import com.alibaba.fastjson.JSON;
-import net.bytebuddy.description.annotation.AnnotationDescription;
 import org.apache.http.Consts;
 import org.apache.http.HttpResponse;
 import org.apache.http.NameValuePair;
@@ -22,9 +19,9 @@ import org.apache.http.client.entity.UrlEncodedFormEntity;
 import org.apache.http.client.methods.HttpPost;
 import org.apache.http.impl.client.HttpClientBuilder;
 import org.apache.http.message.BasicNameValuePair;
-import org.springblade.business.entity.MileagePart;
-import org.springblade.business.entity.Mileagexy;
 import com.baomidou.mybatisplus.annotation.TableName;
+import org.springblade.manager.entity.FormulaBase;
+
 import javax.validation.constraints.Size;
 
 
@@ -172,8 +169,10 @@ public class FunctionMain {
     }
 
     public static void main(String[] args)  {
-//        createTable(Mileagexy.class,"");
+//        createTable(FormulaBase.class,"基础公式");
+//        System.out.println(builder(FormulaBase.class));
           getToken();
     }
 
+
 }

+ 83 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/FormulaBaseController.java

@@ -0,0 +1,83 @@
+package org.springblade.manager.controller;
+
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.secure.annotation.PreAuth;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.constant.RoleConstant;
+import org.springblade.core.tool.utils.Func;
+import org.springblade.manager.entity.FormulaBase;
+import org.springblade.manager.service.impl.FormulaBaseService;
+import org.springblade.manager.vo.FormulaBaseVo;
+import org.springframework.web.bind.annotation.*;
+
+
+import java.util.List;
+import java.util.Map;
+
+
+/**
+ * @author yangyj
+ * @Date 2022/6/6 15:31
+ * @description TODO
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/fb")
+@Api(value = "基础公式", tags = "基础公式")
+public class FormulaBaseController extends BladeController {
+
+    private final FormulaBaseService service;
+    /**
+     * 新增或修改
+     */
+    @PostMapping("/save")
+    @ApiOperationSupport(order = 4)
+    @ApiOperation(value = "新增或修改", notes = "传入")
+    public R save(FormulaBase fb) {
+        return R.status(service.save(fb));
+    }
+
+    /**
+     * 修改
+     */
+    @PostMapping("/update")
+    @ApiOperationSupport(order = 5)
+    @ApiOperation(value = "修改", notes = "传入脚本")
+    public R update( FormulaBase fb) {
+        return R.status(service.updateById(fb));
+    }
+
+    /**
+     * 删除
+     */
+    @PostMapping("/remove")
+    @ApiOperationSupport(order = 6)
+    @ApiOperation(value = "删除", notes = "传入id集合")
+    public R remove(@RequestParam String ids) {
+        return R.status(this.service.deleteLogic(Func.toLongList(ids)));
+    }
+    /**
+     * 查询单条
+     */
+    @ApiOperationSupport(order =7)
+    @ApiOperation(value = "查看详情", notes = "传入id")
+    @GetMapping("/detail")
+    public R<FormulaBase> detail(FormulaBase fb) {
+        FormulaBase detail = service.getOne(Condition.getQueryWrapper(fb));
+        return R.data(detail);
+    }
+
+    @ApiOperationSupport(order = 8)
+    @ApiOperation(value = "按类型获取基础公式", notes = "传入id")
+    @GetMapping("/getTypeMap")
+    public R<Map<Integer, List<FormulaBaseVo>>> getTypeMap() {
+        return R.data(this.service.getTypeMap());
+    }
+
+
+}

+ 12 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/FormulaBaseMapper.java

@@ -0,0 +1,12 @@
+package org.springblade.manager.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.springblade.manager.entity.FormulaBase;
+
+/**
+ * @author yangyj
+ * @Date 2022/6/6 14:01
+ * @description TODO
+ */
+public interface FormulaBaseMapper extends BaseMapper<FormulaBase> {
+}

+ 19 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/FormulaBaseMapper.xml

@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.manager.mapper.FormulaBaseMapper">
+    <resultMap id="BaseFormulaResultMap" type="org.springblade.manager.entity.FormulaBase">
+        <result column="id" property="id"/>
+        <result column="createUser" property="create_user"/>
+        <result column="createDept" property="create_dept"/>
+        <result column="createTime" property="create_time"/>
+        <result column="updateUser" property="update_user"/>
+        <result column="updateTime" property="update_time"/>
+        <result column="status" property="status"/>
+        <result column="isDeleted" property="is_deleted"/>
+        <result column="name" property="name"/>
+        <result column="template" property="template"/>
+        <result column="type" property="type"/>
+        <result column="example" property="example"/>
+    </resultMap>
+
+</mapper>

+ 31 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaBaseService.java

@@ -0,0 +1,31 @@
+package org.springblade.manager.service.impl;
+
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.core.tool.utils.CollectionUtil;
+import org.springblade.manager.entity.FormulaBase;
+import org.springblade.manager.mapper.FormulaBaseMapper;
+import org.springblade.manager.vo.FormulaBaseVo;
+import org.springblade.manager.vo.FormulaType;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+/**
+ * @author yangyj
+ * @Date 2022/6/6 14:26
+ * @description TODO
+ */
+@Service
+public class FormulaBaseService extends BaseServiceImpl<FormulaBaseMapper, FormulaBase> {
+   public Map<Integer, List<FormulaBaseVo>> getTypeMap(){
+        List<FormulaBase> list = this.list();
+        if(CollectionUtil.isNotEmpty(list)){
+          return  list.stream().map(e->{FormulaBaseVo fb =new FormulaBaseVo();BeanUtils.copyProperties(e,fb);return fb;}).collect(Collectors.groupingBy(FormulaBaseVo::getType));
+        }
+        return null;
+    }
+
+}