lzj %!s(int64=4) %!d(string=hai) anos
pai
achega
f3ef7bc6f0

+ 20 - 0
provider-demo/src/main/java/com/tsf/demo/provider/bean/extend/CityExtend.java

@@ -0,0 +1,20 @@
+package com.tsf.demo.provider.bean.extend;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09- 18:46
+ */
+@Getter
+@Setter
+public class CityExtend {
+
+    private String code;
+    private String name;
+    private String parentCode;
+    private int level;
+
+
+}

+ 35 - 0
provider-demo/src/main/java/com/tsf/demo/provider/bean/extend/DictltemExtend.java

@@ -0,0 +1,35 @@
+package com.tsf.demo.provider.bean.extend;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09- 15:44
+ */
+public class DictltemExtend {
+
+    private String value;
+    private String label;
+
+    public DictltemExtend() {
+    }
+
+    public DictltemExtend(String value, String label) {
+        this.value = value;
+        this.label = label;
+    }
+
+    public String getValue() {
+        return value;
+    }
+
+    public void setValue(String value) {
+        this.value = value;
+    }
+
+    public String getLabel() {
+        return label;
+    }
+
+    public void setLabel(String label) {
+        this.label = label;
+    }
+}

+ 157 - 0
provider-demo/src/main/java/com/tsf/demo/provider/bean/po/DictItem.java

@@ -0,0 +1,157 @@
+package com.tsf.demo.provider.bean.po;
+
+import javax.persistence.*;
+import java.util.Objects;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09- 15:53
+ */
+@Entity
+@Table(schema = "ten_minsheng", catalog = "")
+public class DictItem {
+    private long id;
+    private String dictTypeCode;
+    private String dictCode;
+    private String dictValue;
+    private String dictParentCode;
+    private String dictValueExtra;
+    private long createBy;
+    private long createTime;
+    private long updateBy;
+    private long updateTime;
+    private byte deleteFlag;
+
+    @Id
+    @Column(name = "id")
+    public long getId() {
+        return id;
+    }
+
+    public void setId(long id) {
+        this.id = id;
+    }
+
+    @Basic
+    @Column(name = "dict_type_code")
+    public String getDictTypeCode() {
+        return dictTypeCode;
+    }
+
+    public void setDictTypeCode(String dictTypeCode) {
+        this.dictTypeCode = dictTypeCode;
+    }
+
+    @Basic
+    @Column(name = "dict_code")
+    public String getDictCode() {
+        return dictCode;
+    }
+
+    public void setDictCode(String dictCode) {
+        this.dictCode = dictCode;
+    }
+
+    @Basic
+    @Column(name = "dict_value")
+    public String getDictValue() {
+        return dictValue;
+    }
+
+    public void setDictValue(String dictValue) {
+        this.dictValue = dictValue;
+    }
+
+    @Basic
+    @Column(name = "dict_parent_code")
+    public String getDictParentCode() {
+        return dictParentCode;
+    }
+
+    public void setDictParentCode(String dictParentCode) {
+        this.dictParentCode = dictParentCode;
+    }
+
+    @Basic
+    @Column(name = "dict_value_extra")
+    public String getDictValueExtra() {
+        return dictValueExtra;
+    }
+
+    public void setDictValueExtra(String dictValueExtra) {
+        this.dictValueExtra = dictValueExtra;
+    }
+
+    @Basic
+    @Column(name = "create_by")
+    public long getCreateBy() {
+        return createBy;
+    }
+
+    public void setCreateBy(long createBy) {
+        this.createBy = createBy;
+    }
+
+    @Basic
+    @Column(name = "create_time")
+    public long getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(long createTime) {
+        this.createTime = createTime;
+    }
+
+    @Basic
+    @Column(name = "update_by")
+    public long getUpdateBy() {
+        return updateBy;
+    }
+
+    public void setUpdateBy(long updateBy) {
+        this.updateBy = updateBy;
+    }
+
+    @Basic
+    @Column(name = "update_time")
+    public long getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(long updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    @Basic
+    @Column(name = "delete_flag")
+    public byte getDeleteFlag() {
+        return deleteFlag;
+    }
+
+    public void setDeleteFlag(byte deleteFlag) {
+        this.deleteFlag = deleteFlag;
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+        DictItem dictItem = (DictItem) o;
+        return id == dictItem.id &&
+                createBy == dictItem.createBy &&
+                createTime == dictItem.createTime &&
+                updateBy == dictItem.updateBy &&
+                updateTime == dictItem.updateTime &&
+                deleteFlag == dictItem.deleteFlag &&
+                Objects.equals(dictTypeCode, dictItem.dictTypeCode) &&
+                Objects.equals(dictCode, dictItem.dictCode) &&
+                Objects.equals(dictValue, dictItem.dictValue) &&
+                Objects.equals(dictParentCode, dictItem.dictParentCode) &&
+                Objects.equals(dictValueExtra, dictItem.dictValueExtra);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, dictTypeCode, dictCode, dictValue, dictParentCode, dictValueExtra, createBy, createTime, updateBy, updateTime, deleteFlag);
+    }
+}

+ 61 - 22
provider-demo/src/main/java/com/tsf/demo/provider/bean/po/MpBehalf.java

@@ -1,34 +1,73 @@
 package com.tsf.demo.provider.bean.po;
 
-import lombok.Getter;
-import lombok.Setter;
-
 import javax.persistence.*;
+import java.util.Objects;
 
 /**
- * 代办实体
+ * @author LiuZhenJi
+ * @since 2021-09- 15:46
  */
 @Entity
-@Table(name = "mp_behalf")
-@Getter
-@Setter
+@Table(name = "mp_behalf", schema = "ten_minsheng", catalog = "")
 public class MpBehalf {
+    private long id;
+    private long identificationId;
+    private String relationCode;
+    private byte isIdCard;
+
     @Id
-    @GeneratedValue(strategy = GenerationType.IDENTITY)
-    private Long id;
+    @Column(name = "id")
+    public long getId() {
+        return id;
+    }
+
+    public void setId(long id) {
+        this.id = id;
+    }
+
+    @Basic
     @Column(name = "identification_id")
-    /**
-     * 代办人实名认证主键
-     */
-    private Long identificationId;
-    /**
-     * 代办人和申领人关系编码
-     */
-    @Column(name = "relation_code")
-    private String relationCode;
-    /**
-     * 代领证件类别 0 身份证 1户口页
-     */
+    public long getIdentificationId() {
+        return identificationId;
+    }
+
+    public void setIdentificationId(long identificationId) {
+        this.identificationId = identificationId;
+    }
+
+    @Basic
     @Column(name = "relation_code")
-    private Integer isIDCard;
+    public String getRelationCode() {
+        return relationCode;
+    }
+
+    public void setRelationCode(String relationCode) {
+        this.relationCode = relationCode;
+    }
+
+    @Basic
+    @Column(name = "isIDCard")
+    public byte getIsIdCard() {
+        return isIdCard;
+    }
+
+    public void setIsIdCard(byte isIdCard) {
+        this.isIdCard = isIdCard;
+    }
+
+    @Override
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+        MpBehalf mpBehalf = (MpBehalf) o;
+        return id == mpBehalf.id &&
+                identificationId == mpBehalf.identificationId &&
+                isIdCard == mpBehalf.isIdCard &&
+                Objects.equals(relationCode, mpBehalf.relationCode);
+    }
+
+    @Override
+    public int hashCode() {
+        return Objects.hash(id, identificationId, relationCode, isIdCard);
+    }
 }

+ 4 - 0
provider-demo/src/main/java/com/tsf/demo/provider/bean/po/MpMsCardApplicationLog.java

@@ -60,4 +60,8 @@ public class MpMsCardApplicationLog {
             private Timestamp updatedTime;
             @Column(name = "behalf_id")
             private Long behalfId;
+            @Transient
+            private MpBehalf mpBehalf;
+
+
 }

+ 54 - 0
provider-demo/src/main/java/com/tsf/demo/provider/controller/DictItemController.java

@@ -0,0 +1,54 @@
+package com.tsf.demo.provider.controller;
+
+import com.tsf.demo.provider.common.R;
+import com.tsf.demo.provider.service.DictItemService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.awt.print.Pageable;
+
+/**
+ * 字典项功能入口
+ *
+ * @author LiuZhenJi
+ * @since 2021-09-8 15:37
+ */
+@RestController
+@RequestMapping("/dictItem")
+@CrossOrigin
+@Api(value = "字典项表", tags = "字典项表接口")
+public class DictItemController {
+    @Autowired
+    DictItemService dictItemService;
+
+    @PostMapping("/queryByDictTypeCode")
+    @ApiOperation(value = "根据编码查询字典项", notes = "根据编码查询字典项")
+    public R queryByDictTypeCode(@RequestParam("dictTypeCode") String dictTypeCode){
+        return dictItemService.queryByBankName(dictTypeCode);
+    }
+
+    @PostMapping("/queryAllProvince")
+    @ApiOperation(value = "查询省份及直辖市", notes = "")
+    public R queryAllProvince(){
+        return dictItemService.queryAllProvince();
+    }
+
+    @PostMapping("/queryAllCity")
+    @ApiOperation(value = "查询市区", notes = "")
+    public R queryAllCity(){
+        return dictItemService.queryAllCity();
+    }
+
+    @PostMapping("/queryAllArea")
+    @ApiOperation(value = "查询区县", notes = "")
+    public R queryAllArea(){
+        return dictItemService.queryAllArea();
+    }
+
+
+
+
+
+}

+ 33 - 0
provider-demo/src/main/java/com/tsf/demo/provider/controller/MpMsCardApplicationController.java

@@ -0,0 +1,33 @@
+package com.tsf.demo.provider.controller;
+
+import com.tsf.demo.provider.common.R;
+import com.tsf.demo.provider.service.MpMsCardApplicationService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09-10 15:55
+ */
+@RestController
+@RequestMapping("/mpCardApplication")
+@CrossOrigin
+@Api(value = "小程序端实体卡申领表", tags = "小程序端实体卡申领接口")
+public class MpMsCardApplicationController {
+    @Autowired
+    private MpMsCardApplicationService mpMsCardApplicationService;
+
+    /**
+     * 查询用户申领以及代申领的实体卡
+     * @param userId   用户id
+     * @return
+     */
+    @PostMapping("/queryUserCard")
+    @ApiOperation(value = "查询用户申领以及代申领的实体卡", notes = "查询用户申领以及代申领的实体卡")
+    public R queryUserCard(@RequestParam("userId") Long userId){
+        return mpMsCardApplicationService.queryUserCard(userId);
+    }
+
+}

+ 39 - 0
provider-demo/src/main/java/com/tsf/demo/provider/dao/DictItemDao.java

@@ -0,0 +1,39 @@
+package com.tsf.demo.provider.dao;
+
+import com.tsf.demo.provider.bean.po.DictItem;
+import com.tsf.demo.provider.common.R;
+import org.mapstruct.Mapper;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+
+import java.awt.print.Pageable;
+import java.util.List;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09-8 15:46
+ */
+@Mapper
+public interface DictItemDao extends JpaRepository<DictItem,Long> {
+
+
+    List<DictItem> findByDictTypeCodeEquals(String dictTypeCode);
+
+//    @Query(value="select * from dict_item where dict_type_code = 'area' and  dict_code like '110%'" ,nativeQuery=true)
+//    List<DictItem> findArea();
+
+    @Query(value="select * from dict_item where dict_type_code = 'area' and  dict_code like '%0000'" ,nativeQuery=true)
+    List<DictItem> queryAllProvince();
+
+    @Query(value="select * from dict_item where dict_type_code = 'area' and ( (dict_code like '%000') or (dict_code like '%00')) and dict_parent_code !='' " ,nativeQuery=true)
+    List<DictItem> queryAllCity();
+
+    @Query(value="select * from dict_item where dict_type_code = 'area' and  ((dict_parent_code like '%000' ) or  (dict_parent_code like '%00'))  and ((dict_value like '%县') or  (dict_value like '%区') )" ,nativeQuery=true)
+    List<DictItem> queryAllArea();
+
+//
+//    List<DictItem> findByDictTypeCodeAndDictParentCode(String dictTypeCode,String dictParentCode);
+
+
+
+}

+ 21 - 0
provider-demo/src/main/java/com/tsf/demo/provider/dao/MpBehalfDao.java

@@ -1,7 +1,28 @@
 package com.tsf.demo.provider.dao;
 
 import com.tsf.demo.provider.bean.po.MpBehalf;
+import com.tsf.demo.provider.bean.po.MpMsCardApplicationLog;
 import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
 
+import java.util.List;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09- 16:05
+ */
 public interface MpBehalfDao extends JpaRepository<MpBehalf,Long> {
+
+    @Query(value=
+            "select behalf.* from " +
+                    "mp_behalf as behalf " +
+            "inner join " +
+                    "mp_ms_card_application_log as log " +
+            "on " +
+                    "behalf.id=log.behalf_id " +
+            "where " +
+                    "log.mp_user_id = :userId"
+            ,nativeQuery=true)
+    List<MpBehalf> queryUserBehalfCard(@Param("userId") Long userId);
 }

+ 25 - 0
provider-demo/src/main/java/com/tsf/demo/provider/dao/MpMsCardApplicationDao.java

@@ -0,0 +1,25 @@
+package com.tsf.demo.provider.dao;
+
+import com.tsf.demo.provider.bean.po.MpMsCardApplicationLog;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.data.jpa.repository.Query;
+import org.springframework.data.repository.query.Param;
+
+import java.util.List;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09- 15:59
+ */
+public interface MpMsCardApplicationDao extends JpaRepository<MpMsCardApplicationLog,Long> {
+
+    @Query(value=
+            "select log.* from " +
+                    "mp_ms_card_application_log as log " +
+            "where " +
+                    "log.mp_user_id = :userId"
+            ,nativeQuery=true)
+    List<MpMsCardApplicationLog> queryUserCard(@Param("userId") Long userId);
+
+
+}

+ 12 - 0
provider-demo/src/main/java/com/tsf/demo/provider/service/MpMsCardApplicationService.java

@@ -0,0 +1,12 @@
+package com.tsf.demo.provider.service;
+
+import com.tsf.demo.provider.common.R;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09- 15:59
+ */
+public interface MpMsCardApplicationService {
+
+    R queryUserCard(Long userId);
+}

+ 75 - 0
provider-demo/src/main/java/com/tsf/demo/provider/service/impl/DictItemServiceImpl.java

@@ -0,0 +1,75 @@
+package com.tsf.demo.provider.service.impl;
+
+import com.tsf.demo.provider.bean.extend.CityExtend;
+import com.tsf.demo.provider.bean.po.DictItem;
+import com.tsf.demo.provider.bean.extend.DictltemExtend;
+import com.tsf.demo.provider.common.R;
+import com.tsf.demo.provider.dao.DictItemDao;
+import com.tsf.demo.provider.service.DictItemService;
+import org.apache.commons.collections4.CollectionUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09-8 15:45
+ */
+@Service
+public class DictItemServiceImpl implements DictItemService {
+
+    @Autowired
+    private DictItemDao dictItemDao;
+
+    @Override
+    public R queryByBankName(String dictTypeCode) {
+        List<DictItem> dictItemList = dictItemDao.findByDictTypeCodeEquals(dictTypeCode);
+
+        if (CollectionUtils.isEmpty(dictItemList)) {
+            return R.fail("无数据");
+        }
+        List<DictltemExtend> dictltemExtendList = new ArrayList<>();
+        for (DictItem dictItem : dictItemList) {
+            dictltemExtendList.add(new DictltemExtend(dictItem.getDictCode(),dictItem.getDictValue()));
+        }
+
+        return R.data(dictltemExtendList);
+    }
+
+    @Override
+    public List<CityExtend> dictItemToCityExtend(List<DictItem> dictItemList) {
+        List<CityExtend> cityExtendList = new ArrayList<>();
+        for (DictItem dictItem : dictItemList) {
+            CityExtend cityExtend = new CityExtend();
+            cityExtend.setCode(dictItem.getDictCode());
+            cityExtend.setName(dictItem.getDictValue());
+            cityExtend.setParentCode(dictItem.getDictParentCode());
+            cityExtend.setLevel(0);
+            cityExtendList.add(cityExtend);
+        }
+        return cityExtendList;
+    }
+
+    @Override
+    public R queryAllProvince() {
+        List<DictItem> dictItemList = dictItemDao.queryAllProvince();
+        List<CityExtend> cityExtendList = this.dictItemToCityExtend(dictItemList);
+        return R.data(cityExtendList);
+    }
+
+    @Override
+    public R queryAllCity() {
+        List<DictItem> dictItemList = dictItemDao.queryAllCity();
+        List<CityExtend> cityExtendList = this.dictItemToCityExtend(dictItemList);
+        return R.data(cityExtendList);
+    }
+
+    @Override
+    public R queryAllArea() {
+        List<DictItem> dictItemList = dictItemDao.queryAllArea();
+        List<CityExtend> cityExtendList = this.dictItemToCityExtend(dictItemList);
+        return R.data(cityExtendList);
+    }
+}

+ 45 - 0
provider-demo/src/main/java/com/tsf/demo/provider/service/impl/MpMsCardApplicationImpl.java

@@ -0,0 +1,45 @@
+package com.tsf.demo.provider.service.impl;
+
+import com.tsf.demo.provider.bean.po.MpBehalf;
+import com.tsf.demo.provider.bean.po.MpMsCardApplicationLog;
+import com.tsf.demo.provider.common.R;
+import com.tsf.demo.provider.dao.MpBehalfDao;
+import com.tsf.demo.provider.dao.MpMsCardApplicationDao;
+import com.tsf.demo.provider.service.MpMsCardApplicationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * @author LiuZhenJi
+ * @since 2021-09- 15:59
+ */
+@Service
+public class MpMsCardApplicationImpl implements MpMsCardApplicationService {
+    @Autowired
+    private MpMsCardApplicationDao mpMsCardApplicationDao;
+    @Autowired
+    private MpBehalfDao behalfDao;
+
+    @Override
+    public R queryUserCard(Long userId) {
+        //用户领卡集合
+        List<MpMsCardApplicationLog> mpMsCardApplicationLogs = mpMsCardApplicationDao.queryUserCard(userId);
+        //用户代领课集合
+        List<MpBehalf> mpBehalves = behalfDao.queryUserBehalfCard(userId);
+        int flag = -1;
+        for (MpMsCardApplicationLog mpMsCardApplicationLog : mpMsCardApplicationLogs) {
+            for (MpBehalf mpBehalf : mpBehalves) {
+                flag++;
+                if (mpMsCardApplicationLog.getBehalfId().equals(mpBehalf.getId())) {
+                    mpMsCardApplicationLog.setMpBehalf(mpBehalf);
+                    mpBehalves.remove(flag);
+                    break;
+                }
+            }
+            flag=-1;
+        }
+        return R.data(mpMsCardApplicationLogs);
+    }
+}