Explorar o código

添加数字喜用

zhangbin hai 1 ano
pai
achega
784f50d3cc

+ 11 - 53
xpgx-admin/src/main/java/com/miaxis/app/controller/gan/GanZhiController.java

@@ -11,6 +11,7 @@ import com.miaxis.gan.domain.GanZhi;
 import com.miaxis.gan.dto.GanZhiDto;
 import com.miaxis.gan.service.IGanZhiService;
 import com.miaxis.gan.vo.*;
+import com.miaxis.number.domain.NumberYun;
 import com.nlf.calendar.Lunar;
 import io.swagger.annotations.*;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -77,14 +78,12 @@ public class GanZhiController extends BaseController{
         ganZhiDto.setTimeZhi(lunar.getTimeZhi());
 
 
-        Integer score = ganZhiService.getRiYuanQr(ganZhiDto);
-
-
         List<GanZhiRowVo> ganZhiRowVoList = ganZhiService.selectGanZhiRowVoList(ganZhiDto);
         Map<String,Integer> fiveCountMap = ganZhiService.getGanZhiRowVoCount(ganZhiDto);
         List<GanZhiNaYinVo> ganZhiNaYinVoList = ganZhiService.selectGanZhiNaYinList(ganZhiDto);
         List<GanZhiKongWangVo> ganZhiKongWangVoList = ganZhiService.selectGanZhiKongWangList(ganZhiDto);
-
+        Map<String,Object> riYuanQrMap = ganZhiService.getRiYuanQr(ganZhiDto);
+        Map<String,Object> numberYunMap = ganZhiService.getNumberYun(riYuanQrMap);
 
         GanZhiVo ganZhiVo = new GanZhiVo();
         ganZhiVo.setNongDay(lunar.getYear()+"年(生肖"+lunar.getYearShengXiao()+")"+lunar.getMonth()+"月"+lunar.getDay()+"日"+lunar.getTime()+"时");
@@ -94,30 +93,20 @@ public class GanZhiController extends BaseController{
         ganZhiVo.setGanZhiNaYinVoList(ganZhiNaYinVoList);
         ganZhiVo.setGanZhiKongWangVoList(ganZhiKongWangVoList);
 
-        ganZhiVo.setUsername(ganZhiDto.getUsename());
+        ganZhiVo.setUsername(ganZhiDto.getUsername());
         ganZhiVo.setSex(ganZhiDto.getSex());
-        ganZhiVo.setScore(score);
-        if(score>50){
-            ganZhiVo.setRiYuan("身强");
-        } else {
-            ganZhiVo.setRiYuan("身弱");
-        }
+        ganZhiVo.setRiYuan(riYuanQrMap);
+        ganZhiVo.setNumberYunMap(numberYunMap);
 
         // 输出结果
         return Response.success(ganZhiVo);
     }
 
-    
-    /**
-     * 导出天干地支列表
-     */
-    @GetMapping("/export")
-    @ApiOperation("导出天干地支列表Excel")
-    public Response<String> export(@ModelAttribute GanZhi ganZhi){
-        List<GanZhi> list = ganZhiService.selectGanZhiList(ganZhi);
-        ExcelUtil<GanZhi> util = new ExcelUtil<GanZhi>(GanZhi.class);
-        return util.exportExcel(list, "zhi");
-    }
+
+
+
+
+
 
     /**
      * 获取天干地支详细信息
@@ -131,36 +120,5 @@ public class GanZhiController extends BaseController{
         return Response.success(ganZhiService.getById(id));
     }
 
-    /**
-     * 新增天干地支
-     */
-    @Log(title = "天干地支", businessType = BusinessTypeEnum.INSERT)
-    @PostMapping
-    @ApiOperation("新增天干地支")
-    public Response<Integer> add(@RequestBody GanZhi ganZhi){
-        return toResponse(ganZhiService.save(ganZhi) ? 1 : 0);
-    }
 
-    /**
-     * 修改天干地支
-     */
-    @Log(title = "天干地支", businessType = BusinessTypeEnum.UPDATE)
-    @PutMapping
-    @ApiOperation("修改天干地支")
-    public Response<Integer> edit(@RequestBody GanZhi ganZhi){
-        return toResponse(ganZhiService.updateById(ganZhi) ? 1 : 0);
-    }
-
-    /**
-     * 删除天干地支
-     */
-    @Log(title = "天干地支", businessType = BusinessTypeEnum.DELETE)
-	@DeleteMapping("/{ids}")
-    @ApiOperation("删除天干地支")
-    public  Response<Integer> remove(
-            @ApiParam(name = "ids", value = "天干地支ids参数", required = true)
-            @PathVariable Long[] ids
-    ){
-        return toResponse(ganZhiService.removeByIds(Arrays.asList(ids)) ? 1 : 0);
-    }
 }

+ 51 - 0
xpgx-admin/src/test/java/com/miaxis/test/NumberTest.java

@@ -0,0 +1,51 @@
+package com.miaxis.test;
+
+import com.miaxis.XpgxApplication;
+import com.miaxis.number.domain.NumberYun;
+import com.miaxis.number.service.INumberYunService;
+import com.miaxis.wx.dto.WxacodeUnlimitDTO;
+import com.miaxis.wx.service.IWxService;
+import com.miaxis.wx.service.IWxXcxService;
+import feign.Response;
+import org.apache.commons.io.IOUtils;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.test.context.junit4.SpringRunner;
+
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Base64;
+import java.util.List;
+
+@SpringBootTest(classes = XpgxApplication.class)
+@RunWith(SpringRunner.class)
+public class NumberTest {
+
+    @Autowired
+    private INumberYunService numberYunService;
+
+
+
+    @Test
+    public void getLocation() throws IOException {
+
+        List<String> list = new ArrayList<String>();
+
+        list.add("1");
+        list.add("4");
+        list.add("5");
+
+        List<NumberYun> numberYunList = numberYunService.getNumberYunByIds(list);
+
+
+        System.out.println(numberYunList);
+    }
+
+
+
+}
+

+ 27 - 6
xpgx-common/src/main/java/com/miaxis/common/config/ShiShenConfig.java

@@ -58,8 +58,10 @@ public class ShiShenConfig {
     private Map<String, List> xiYong = new TreeMap<String, List>();
 
     //喜用的数字
-    private Map<String, String> xiNumber = new TreeMap<String, String>();
+    private Map<String, List> xiNumber = new TreeMap<String, List>();
 
+    //数字文案
+    private Map<String, String> numberWenAn = new TreeMap<String, String>();
 
     @PostConstruct
     public void init() {
@@ -468,11 +470,30 @@ public class ShiShenConfig {
         xiYong.put("水弱",shuiR);
 
         //喜用的号码
-        xiNumber.put("水","1,6");
-        xiNumber.put("火","2,7");
-        xiNumber.put("木","3,8");
-        xiNumber.put("金","4,9");
-        xiNumber.put("土","5,0");
+        List<String> numberShui = new ArrayList<String>();
+        numberShui.add("1");
+        numberShui.add("6");
+        xiNumber.put("水",numberShui);
+
+        List<String> numberHuo = new ArrayList<String>();
+        numberHuo.add("2");
+        numberHuo.add("7");
+        xiNumber.put("火",numberHuo);
+
+        List<String> numberMu = new ArrayList<String>();
+        numberMu.add("3");
+        numberMu.add("8");
+        xiNumber.put("木",numberMu);
+
+        List<String> numberJin = new ArrayList<String>();
+        numberJin.add("4");
+        numberJin.add("9");
+        xiNumber.put("金",numberJin);
+
+        List<String> numberTu = new ArrayList<String>();
+        numberTu.add("5");
+        numberTu.add("0");
+        xiNumber.put("土",numberTu);
 
 
     }

+ 1 - 1
xpgx-service/src/main/java/com/miaxis/gan/dto/GanZhiDto.java

@@ -19,7 +19,7 @@ public class GanZhiDto {
 
 
     @ApiModelProperty(value = "姓名")
-    private String usename;
+    private String username;
 
     @ApiModelProperty(value = "性别 1:男  2:女")
     private Integer sex;

+ 20 - 6
xpgx-service/src/main/java/com/miaxis/gan/service/IGanZhiService.java

@@ -1,16 +1,15 @@
 package com.miaxis.gan.service;
 
-import java.util.List;
-import java.util.Map;
-
-import com.miaxis.gan.domain.GanZhi;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.miaxis.gan.domain.GanZhi;
 import com.miaxis.gan.dto.GanZhiDto;
-import com.miaxis.gan.vo.GanZhiFiveVo;
 import com.miaxis.gan.vo.GanZhiKongWangVo;
 import com.miaxis.gan.vo.GanZhiNaYinVo;
 import com.miaxis.gan.vo.GanZhiRowVo;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * 天干地支Service接口
  *
@@ -32,7 +31,22 @@ public interface IGanZhiService extends IService<GanZhi>{
 
     List<GanZhiKongWangVo> selectGanZhiKongWangList(GanZhiDto ganZhiDto);
 
-    Integer getRiYuanQr(GanZhiDto ganZhiDto);
+
+    /**
+     * 日元的强
+     * @param ganZhiDto
+     * @return
+     */
+    Map<String,Object> getRiYuanQr(GanZhiDto ganZhiDto);
+
+    Map<String, Object> getBinZheng(GanZhiDto ganZhiDto);
+
+    /**
+     * 返回喜用数字
+     * @param qr 日元强弱MAP
+     * @return
+     */
+    Map<String, Object> getNumberYun(Map<String, Object> qr);
 
     Map<String,Integer> getGanZhiRowVoCount(GanZhiDto ganZhiDto);
 }

+ 70 - 8
xpgx-service/src/main/java/com/miaxis/gan/service/impl/GanZhiServiceImpl.java

@@ -1,15 +1,15 @@
 package com.miaxis.gan.service.impl;
 
 import java.util.*;
-import java.util.concurrent.atomic.AtomicBoolean;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.miaxis.common.config.ShiShenConfig;
 import com.miaxis.gan.dto.GanZhiDto;
-import com.miaxis.gan.vo.GanZhiFiveVo;
 import com.miaxis.gan.vo.GanZhiKongWangVo;
 import com.miaxis.gan.vo.GanZhiNaYinVo;
 import com.miaxis.gan.vo.GanZhiRowVo;
+import com.miaxis.number.domain.NumberYun;
+import com.miaxis.number.mapper.NumberYunMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.apache.commons.lang3.StringUtils;
@@ -28,6 +28,9 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
     @Autowired
     private GanZhiMapper ganZhiMapper;
 
+    @Autowired
+    private NumberYunMapper numberYunMapper;
+
     @Autowired
     private ShiShenConfig shiShenConfig;
 
@@ -268,7 +271,6 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
         }
         /*-----------------------十神 结束-------------------*/
 
-
         return list;
     }
 
@@ -343,7 +345,7 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
     }
 
     @Override
-    public Integer getRiYuanQr(GanZhiDto ganZhiDto) {
+    public Map<String,Object> getRiYuanQr(GanZhiDto ganZhiDto) {
         /*-------------------日元身强身弱---------------------*/
         List<GanZhiRowVo> list = this.getGanZhiRowVoList(ganZhiDto);
         int yearGanQR = ShiShenConfig.generateRelationship(list.get(4).getFive(), list.get(0).getFive());
@@ -379,17 +381,17 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
         }
 
         List<String> xiYong = null;
+        String fiveQr = null;
         if (score > 50) {
-            String fiveQr = list.get(4).getFive() + "强";
+            fiveQr = list.get(4).getFive() + "强";
             xiYong = shiShenConfig.getXiYong().get(fiveQr);
         } else {
-            String fiveQr = list.get(4).getFive() + "弱";
+            fiveQr = list.get(4).getFive() + "弱";
             xiYong = shiShenConfig.getXiYong().get(fiveQr);
         }
         String xi1 = xiYong.get(0);
         String xi2 = xiYong.get(1);
 
-
         Map<String,Integer> fiveCountMap = this.getGanZhiRowVoCount(ganZhiDto);
         int xi1Count = fiveCountMap.get(xi1);
         int xi2Count = fiveCountMap.get(xi2);
@@ -403,13 +405,73 @@ public class GanZhiServiceImpl extends ServiceImpl<GanZhiMapper, GanZhi> impleme
 
         System.out.println("喜用:" + xiYong);
 
+        Map<String,Object> qr = new TreeMap<String,Object>();
+        qr.put("score",score);
+        qr.put("qr",fiveQr);
+        qr.put("xiYong",xiYong);
+
+        return qr;
+    }
+
+
+    @Override
+    public Map<String, Object> getBinZheng(GanZhiDto ganZhiDto){
+        List<GanZhiRowVo> ganZhiRowVoList = this.selectGanZhiRowVoList(ganZhiDto);
+        String sex = ganZhiRowVoList.get(4).getShiShen1();
+
+        if("元男".equals(sex)){  //男性疾病
+
+        } else if ("元女".equals(sex)){  //女性疾病
+
+        }
+
+
+        ganZhiRowVoList.get(0); //头
+        ganZhiRowVoList.get(1); //脖子
+        ganZhiRowVoList.get(2); //胸部
+        ganZhiRowVoList.get(3); //腹部
+        ganZhiRowVoList.get(4); //小腹
+        ganZhiRowVoList.get(5); //屁股
+        ganZhiRowVoList.get(6); //大腿
+        ganZhiRowVoList.get(7); //小腿脚部
 
+        return null;
+    }
+
+
+    @Override
+    public Map<String, Object> getNumberYun(Map<String, Object> qr) {
+
+        List<String> numberList = new ArrayList<String>();
+        List<String> xiYong = (List<String>) qr.get("xiYong");
+
+        for (int i = 0; i < xiYong.size() ; i++) {
+            List<String> numList = shiShenConfig.getXiNumber().get(xiYong.get(i));
+            numberList.addAll(numList);
+        }
+
+        List<NumberYun> numberYunList = numberYunMapper.getNumberYunByIds(numberList);
 
 
-        return score;
+        //转字符串
+        StringJoiner joiner = new StringJoiner(",");
+        for (String number : numberList) {
+            joiner.add(number);
+        }
+        String numbers = joiner.toString();
+
+
+        Map<String,Object> resultMap = new TreeMap<String,Object>();
+        resultMap.put("numberYuns",numbers);
+        resultMap.put("numberYunList",numberYunList);
+
+        return resultMap;
     }
 
 
+
+
+
     /**
      * 干支组装
      *

+ 5 - 3
xpgx-service/src/main/java/com/miaxis/gan/vo/GanZhiVo.java

@@ -1,6 +1,7 @@
 package com.miaxis.gan.vo;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.miaxis.number.domain.NumberYun;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
@@ -33,11 +34,12 @@ public class GanZhiVo {
     @ApiModelProperty(value = "(农历)出生日期")
     private String nongDay;
 
-    @ApiModelProperty(value = "日元强弱分")
-    private Integer score;
 
     @ApiModelProperty(value = "日元强弱")
-    private String riYuan;
+    private Map<String,Object> riYuan;
+
+    @ApiModelProperty(value = "喜用数字")
+    private Map<String,Object> numberYunMap;
 
     @ApiModelProperty(value = "八字五行集合")
     private List<GanZhiRowVo> ganZhiRowVoList;

+ 45 - 0
xpgx-service/src/main/java/com/miaxis/number/domain/NumberYun.java

@@ -0,0 +1,45 @@
+package com.miaxis.number.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.miaxis.common.annotation.Excel;
+import com.miaxis.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.miaxis.common.core.domain.BaseBusinessEntity;
+import lombok.Data;
+/**
+ * 数字运势对象 number_yun
+ *
+ * @author miaxis
+ * @date 2023-11-23
+ */
+@Data
+@TableName("number_yun")
+@ApiModel(value = "NumberYun", description = "数字运势对象 number_yun")
+public class NumberYun {
+    private static final long serialVersionUID = 1L;
+
+    /** id 数字 */
+    @TableId(value = "id")
+    @ApiModelProperty(value = "id 数字")
+    private String id;
+
+    /** 财运 */
+    @Excel(name = "财运")
+    @TableField("cai_yun")
+    @ApiModelProperty(value = "财运")
+    private String caiYun;
+
+    /** 桃花 */
+    @Excel(name = "桃花")
+    @TableField("tao_hua")
+    @ApiModelProperty(value = "桃花")
+    private String taoHua;
+
+
+}

+ 24 - 0
xpgx-service/src/main/java/com/miaxis/number/mapper/NumberYunMapper.java

@@ -0,0 +1,24 @@
+package com.miaxis.number.mapper;
+
+import java.util.List;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.miaxis.number.domain.NumberYun;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 数字运势Mapper接口
+ *
+ * @author miaxis
+ * @date 2023-11-23
+ */
+public interface NumberYunMapper extends BaseMapper<NumberYun> {
+    /**
+     * 查询数字运势列表
+     *
+     * @param numberYun 数字运势
+     * @return 数字运势集合
+     */
+    List<NumberYun> selectNumberYunList(NumberYun numberYun);
+
+    List<NumberYun> getNumberYunByIds(@Param("ids")List<String> ids);
+}

+ 30 - 0
xpgx-service/src/main/java/com/miaxis/number/service/INumberYunService.java

@@ -0,0 +1,30 @@
+package com.miaxis.number.service;
+
+import java.util.List;
+import com.miaxis.number.domain.NumberYun;
+import com.baomidou.mybatisplus.extension.service.IService;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 数字运势Service接口
+ *
+ * @author miaxis
+ * @date 2023-11-23
+ */
+public interface INumberYunService extends IService<NumberYun>{
+    /**
+     * 查询数字运势列表
+     *
+     * @param numberYun 数字运势
+     * @return 数字运势集合
+     */
+    List<NumberYun> selectNumberYunList(NumberYun numberYun);
+
+
+    /**
+     * 根据数字获取对象
+     * @param ids
+     * @return
+     */
+    List<NumberYun> getNumberYunByIds(List<String> ids);
+}

+ 42 - 0
xpgx-service/src/main/java/com/miaxis/number/service/impl/NumberYunServiceImpl.java

@@ -0,0 +1,42 @@
+package com.miaxis.number.service.impl;
+
+import java.util.List;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.miaxis.common.utils.DateUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.apache.commons.lang3.StringUtils;
+import com.miaxis.number.mapper.NumberYunMapper;
+import com.miaxis.number.domain.NumberYun;
+import com.miaxis.number.service.INumberYunService;
+
+/**
+ * 数字运势Service业务层处理
+ *
+ * @author miaxis
+ * @date 2023-11-23
+ */
+@Service
+public class NumberYunServiceImpl extends ServiceImpl<NumberYunMapper, NumberYun> implements INumberYunService {
+    @Autowired
+    private NumberYunMapper numberYunMapper;
+
+    /**
+     * 查询数字运势列表
+     *
+     * @param numberYun 数字运势
+     * @return 数字运势
+     */
+    @Override
+    public List<NumberYun> selectNumberYunList(NumberYun numberYun){
+        return numberYunMapper.selectNumberYunList(numberYun);
+    }
+
+
+    @Override
+    public List<NumberYun> getNumberYunByIds(List<String> ids) {
+        return numberYunMapper.getNumberYunByIds(ids);
+    }
+}

+ 39 - 0
xpgx-service/src/main/resources/mapper/number/NumberYunMapper.xml

@@ -0,0 +1,39 @@
+<?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="com.miaxis.number.mapper.NumberYunMapper">
+
+    <resultMap type="NumberYun" id="NumberYunResult">
+        <result property="id"    column="id"    />
+        <result property="caiYun"    column="cai_yun"    />
+        <result property="taoHua"    column="tao_hua"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="updateTime"    column="update_time"    />
+    </resultMap>
+
+    <sql id="selectNumberYunVo">
+        select * from number_yun
+    </sql>
+
+    <select id="selectNumberYunList" parameterType="NumberYun" resultMap="NumberYunResult">
+        <include refid="selectNumberYunVo"/>
+        <where>
+            <if test="caiYun != null  and caiYun != ''"> and cai_yun = #{caiYun}</if>
+            <if test="taoHua != null  and taoHua != ''"> and tao_hua = #{taoHua}</if>
+        </where>
+    </select>
+
+
+    <select id="getNumberYunByIds" parameterType="ArrayList" resultMap="NumberYunResult">
+        <include refid="selectNumberYunVo"/>
+        <where>
+            id in
+            <foreach item="num" index="index" collection="ids" open="(" separator="," close=")">
+                #{num}
+            </foreach>
+        </where>
+        order by id
+    </select>
+
+</mapper>