소스 검색

Merge remote-tracking branch 'origin/master'

qiubo 4 년 전
부모
커밋
5476055c57
41개의 변경된 파일5207개의 추가작업 그리고 290개의 파일을 삭제
  1. 36 0
      forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/mapper/UmsMemberOriginMapper.java
  2. 36 0
      forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/mapper/UmsMemberOriginProductMapper.java
  3. 343 0
      forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/model/UmsMemberOrigin.java
  4. 1581 0
      forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/model/UmsMemberOriginExample.java
  5. 164 0
      forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/model/UmsMemberOriginProduct.java
  6. 901 0
      forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/model/UmsMemberOriginProductExample.java
  7. 627 0
      forest-admin/admin-mbg/src/main/resources/com/hwrj/cloud/admin/mapper/UmsMemberOriginMapper.xml
  8. 369 0
      forest-admin/admin-mbg/src/main/resources/com/hwrj/cloud/admin/mapper/UmsMemberOriginProductMapper.xml
  9. 0 257
      forest-admin/admin-server/admin-server.iml
  10. 2 1
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/AdminApplication.java
  11. 4 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/bo/AdminUserDetails.java
  12. 18 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/config/WebMvcConfig.java
  13. 43 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/PmsProductBigDataController.java
  14. 16 5
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/PmsProductController.java
  15. 87 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/UmsMemberOriginController.java
  16. 85 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/UmsMemberOriginProductController.java
  17. 7 1
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dao/PmsProductExcelDao.java
  18. 20 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dao/UmsMemberOriginDao.java
  19. 17 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dao/UmsMemberOriginProductDao.java
  20. 64 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/UmsMemberOriginProductParam.java
  21. 41 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/BigDataListInfoVo.java
  22. 17 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/BigDataListParam.java
  23. 25 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/BigDataListVo.java
  24. 24 2
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/PmsProductExcel.java
  25. 14 12
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/PmsProductParam.java
  26. 9 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/SelectVo.java
  27. 121 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/excelEntity/UmsMemberOriginExcel.java
  28. 47 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/listener/ImportExcelEventListener.java
  29. 20 4
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/listener/PmsProductExcelListener.java
  30. 10 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/PmsProductService.java
  31. 23 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/UmsMemberOriginProductService.java
  32. 15 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/UmsMemberOriginService.java
  33. 1 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/CmsSubjectServiceImpl.java
  34. 24 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/PmsProductServiceImpl.java
  35. 103 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/UmsMemberOriginProductServiceImpl.java
  36. 115 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/UmsMemberOriginServiceImpl.java
  37. 59 0
      forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/util/CurrUserUtil.java
  38. 55 4
      forest-admin/admin-server/src/main/resources/dao/ProductExcelDao.xml
  39. 11 0
      forest-admin/admin-server/src/main/resources/dao/UmsMemberOriginDao.xml
  40. 17 0
      forest-admin/admin-server/src/main/resources/dao/UmsMemberOriginProductDao.xml
  41. 36 4
      forest-common/src/main/java/com/hwrj/cloud/common/exception/GlobalExceptionHandler.java

+ 36 - 0
forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/mapper/UmsMemberOriginMapper.java

@@ -0,0 +1,36 @@
+package com.hwrj.cloud.admin.mapper;
+
+import com.hwrj.cloud.admin.model.UmsMemberOrigin;
+import com.hwrj.cloud.admin.model.UmsMemberOriginExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface UmsMemberOriginMapper {
+    long countByExample(UmsMemberOriginExample example);
+
+    int deleteByExample(UmsMemberOriginExample example);
+
+    int deleteByPrimaryKey(Long id);
+
+    int insert(UmsMemberOrigin record);
+
+    int insertSelective(UmsMemberOrigin record);
+
+    List<UmsMemberOrigin> selectByExampleWithBLOBs(UmsMemberOriginExample example);
+
+    List<UmsMemberOrigin> selectByExample(UmsMemberOriginExample example);
+
+    UmsMemberOrigin selectByPrimaryKey(Long id);
+
+    int updateByExampleSelective(@Param("record") UmsMemberOrigin record, @Param("example") UmsMemberOriginExample example);
+
+    int updateByExampleWithBLOBs(@Param("record") UmsMemberOrigin record, @Param("example") UmsMemberOriginExample example);
+
+    int updateByExample(@Param("record") UmsMemberOrigin record, @Param("example") UmsMemberOriginExample example);
+
+    int updateByPrimaryKeySelective(UmsMemberOrigin record);
+
+    int updateByPrimaryKeyWithBLOBs(UmsMemberOrigin record);
+
+    int updateByPrimaryKey(UmsMemberOrigin record);
+}

+ 36 - 0
forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/mapper/UmsMemberOriginProductMapper.java

@@ -0,0 +1,36 @@
+package com.hwrj.cloud.admin.mapper;
+
+import com.hwrj.cloud.admin.model.UmsMemberOriginProduct;
+import com.hwrj.cloud.admin.model.UmsMemberOriginProductExample;
+import java.util.List;
+import org.apache.ibatis.annotations.Param;
+
+public interface UmsMemberOriginProductMapper {
+    long countByExample(UmsMemberOriginProductExample example);
+
+    int deleteByExample(UmsMemberOriginProductExample example);
+
+    int deleteByPrimaryKey(Long id);
+
+    int insert(UmsMemberOriginProduct record);
+
+    int insertSelective(UmsMemberOriginProduct record);
+
+    List<UmsMemberOriginProduct> selectByExampleWithBLOBs(UmsMemberOriginProductExample example);
+
+    List<UmsMemberOriginProduct> selectByExample(UmsMemberOriginProductExample example);
+
+    UmsMemberOriginProduct selectByPrimaryKey(Long id);
+
+    int updateByExampleSelective(@Param("record") UmsMemberOriginProduct record, @Param("example") UmsMemberOriginProductExample example);
+
+    int updateByExampleWithBLOBs(@Param("record") UmsMemberOriginProduct record, @Param("example") UmsMemberOriginProductExample example);
+
+    int updateByExample(@Param("record") UmsMemberOriginProduct record, @Param("example") UmsMemberOriginProductExample example);
+
+    int updateByPrimaryKeySelective(UmsMemberOriginProduct record);
+
+    int updateByPrimaryKeyWithBLOBs(UmsMemberOriginProduct record);
+
+    int updateByPrimaryKey(UmsMemberOriginProduct record);
+}

+ 343 - 0
forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/model/UmsMemberOrigin.java

@@ -0,0 +1,343 @@
+package com.hwrj.cloud.admin.model;
+
+import io.swagger.annotations.ApiModelProperty;
+import java.io.Serializable;
+import java.util.Date;
+
+public class UmsMemberOrigin implements Serializable {
+    @ApiModelProperty(value = "主键")
+    private Long id;
+
+    @ApiModelProperty(value = "供应商id (供应商信息表 ums_company_info -> id)")
+    private Long fkCompanyInfoId;
+
+    @ApiModelProperty(value = "供应商名称")
+    private String compName;
+
+    @ApiModelProperty(value = "生产地名称")
+    private String originName;
+
+    @ApiModelProperty(value = "生产地面积(亩)")
+    private Double originArea;
+
+    @ApiModelProperty(value = "人数")
+    private Integer peopleNum;
+
+    @ApiModelProperty(value = "建立日期(年)")
+    private String foundDate;
+
+    @ApiModelProperty(value = "联系人")
+    private String linkUser;
+
+    @ApiModelProperty(value = "联系方式")
+    private String linkPhone;
+
+    @ApiModelProperty(value = "省")
+    private String provinceName;
+
+    @ApiModelProperty(value = "市")
+    private String cityName;
+
+    @ApiModelProperty(value = "县")
+    private String countyName;
+
+    @ApiModelProperty(value = "详细地址")
+    private String detailAddress;
+
+    private String altitude;
+
+    @ApiModelProperty(value = "经度")
+    private String longitude;
+
+    @ApiModelProperty(value = "纬度")
+    private String latitude;
+
+    @ApiModelProperty(value = "状态 0:可用,1:禁用,2:删除")
+    private Integer state;
+
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    @ApiModelProperty(value = "创建人")
+    private Integer createId;
+
+    @ApiModelProperty(value = "修改时间")
+    private Date updateTime;
+
+    @ApiModelProperty(value = "修改人id")
+    private Integer updateId;
+
+    @ApiModelProperty(value = "生产地图片")
+    private String imgUrl;
+
+    @ApiModelProperty(value = "生产地宣传视频地址")
+    private String videoUrl;
+
+    @ApiModelProperty(value = "vr地址")
+    private String vrUrl;
+
+    @ApiModelProperty(value = "实时监控视频地址")
+    private String cameraUrl;
+
+    @ApiModelProperty(value = "简介")
+    private String summary;
+
+    @ApiModelProperty(value = "备注")
+    private String remark;
+
+    private static final long serialVersionUID = 1L;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getFkCompanyInfoId() {
+        return fkCompanyInfoId;
+    }
+
+    public void setFkCompanyInfoId(Long fkCompanyInfoId) {
+        this.fkCompanyInfoId = fkCompanyInfoId;
+    }
+
+    public String getCompName() {
+        return compName;
+    }
+
+    public void setCompName(String compName) {
+        this.compName = compName;
+    }
+
+    public String getOriginName() {
+        return originName;
+    }
+
+    public void setOriginName(String originName) {
+        this.originName = originName;
+    }
+
+    public Double getOriginArea() {
+        return originArea;
+    }
+
+    public void setOriginArea(Double originArea) {
+        this.originArea = originArea;
+    }
+
+    public Integer getPeopleNum() {
+        return peopleNum;
+    }
+
+    public void setPeopleNum(Integer peopleNum) {
+        this.peopleNum = peopleNum;
+    }
+
+    public String getFoundDate() {
+        return foundDate;
+    }
+
+    public void setFoundDate(String foundDate) {
+        this.foundDate = foundDate;
+    }
+
+    public String getLinkUser() {
+        return linkUser;
+    }
+
+    public void setLinkUser(String linkUser) {
+        this.linkUser = linkUser;
+    }
+
+    public String getLinkPhone() {
+        return linkPhone;
+    }
+
+    public void setLinkPhone(String linkPhone) {
+        this.linkPhone = linkPhone;
+    }
+
+    public String getProvinceName() {
+        return provinceName;
+    }
+
+    public void setProvinceName(String provinceName) {
+        this.provinceName = provinceName;
+    }
+
+    public String getCityName() {
+        return cityName;
+    }
+
+    public void setCityName(String cityName) {
+        this.cityName = cityName;
+    }
+
+    public String getCountyName() {
+        return countyName;
+    }
+
+    public void setCountyName(String countyName) {
+        this.countyName = countyName;
+    }
+
+    public String getDetailAddress() {
+        return detailAddress;
+    }
+
+    public void setDetailAddress(String detailAddress) {
+        this.detailAddress = detailAddress;
+    }
+
+    public String getAltitude() {
+        return altitude;
+    }
+
+    public void setAltitude(String altitude) {
+        this.altitude = altitude;
+    }
+
+    public String getLongitude() {
+        return longitude;
+    }
+
+    public void setLongitude(String longitude) {
+        this.longitude = longitude;
+    }
+
+    public String getLatitude() {
+        return latitude;
+    }
+
+    public void setLatitude(String latitude) {
+        this.latitude = latitude;
+    }
+
+    public Integer getState() {
+        return state;
+    }
+
+    public void setState(Integer state) {
+        this.state = state;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Integer getCreateId() {
+        return createId;
+    }
+
+    public void setCreateId(Integer createId) {
+        this.createId = createId;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public Integer getUpdateId() {
+        return updateId;
+    }
+
+    public void setUpdateId(Integer updateId) {
+        this.updateId = updateId;
+    }
+
+    public String getImgUrl() {
+        return imgUrl;
+    }
+
+    public void setImgUrl(String imgUrl) {
+        this.imgUrl = imgUrl;
+    }
+
+    public String getVideoUrl() {
+        return videoUrl;
+    }
+
+    public void setVideoUrl(String videoUrl) {
+        this.videoUrl = videoUrl;
+    }
+
+    public String getVrUrl() {
+        return vrUrl;
+    }
+
+    public void setVrUrl(String vrUrl) {
+        this.vrUrl = vrUrl;
+    }
+
+    public String getCameraUrl() {
+        return cameraUrl;
+    }
+
+    public void setCameraUrl(String cameraUrl) {
+        this.cameraUrl = cameraUrl;
+    }
+
+    public String getSummary() {
+        return summary;
+    }
+
+    public void setSummary(String summary) {
+        this.summary = summary;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", fkCompanyInfoId=").append(fkCompanyInfoId);
+        sb.append(", compName=").append(compName);
+        sb.append(", originName=").append(originName);
+        sb.append(", originArea=").append(originArea);
+        sb.append(", peopleNum=").append(peopleNum);
+        sb.append(", foundDate=").append(foundDate);
+        sb.append(", linkUser=").append(linkUser);
+        sb.append(", linkPhone=").append(linkPhone);
+        sb.append(", provinceName=").append(provinceName);
+        sb.append(", cityName=").append(cityName);
+        sb.append(", countyName=").append(countyName);
+        sb.append(", detailAddress=").append(detailAddress);
+        sb.append(", altitude=").append(altitude);
+        sb.append(", longitude=").append(longitude);
+        sb.append(", latitude=").append(latitude);
+        sb.append(", state=").append(state);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", createId=").append(createId);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append(", updateId=").append(updateId);
+        sb.append(", imgUrl=").append(imgUrl);
+        sb.append(", videoUrl=").append(videoUrl);
+        sb.append(", vrUrl=").append(vrUrl);
+        sb.append(", cameraUrl=").append(cameraUrl);
+        sb.append(", summary=").append(summary);
+        sb.append(", remark=").append(remark);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

파일 크기가 너무 크기때문에 변경 상태를 표시하지 않습니다.
+ 1581 - 0
forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/model/UmsMemberOriginExample.java


+ 164 - 0
forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/model/UmsMemberOriginProduct.java

@@ -0,0 +1,164 @@
+package com.hwrj.cloud.admin.model;
+
+import io.swagger.annotations.ApiModelProperty;
+import java.io.Serializable;
+import java.util.Date;
+
+public class UmsMemberOriginProduct implements Serializable {
+    @ApiModelProperty(value = "主键")
+    private Long id;
+
+    @ApiModelProperty(value = "生产地id (生产地信息表 ums_member_origin -> id)")
+    private Long fkOriginId;
+
+    @ApiModelProperty(value = "产品名称")
+    private String productName;
+
+    @ApiModelProperty(value = "产出物种植面积(亩)")
+    private String plantArea;
+
+    @ApiModelProperty(value = "产出物总产量(吨)")
+    private String outputNum;
+
+    @ApiModelProperty(value = "产出物亩产值(万元)")
+    private String outputValue;
+
+    @ApiModelProperty(value = "状态 0:可用,1:禁用,2:删除")
+    private Integer state;
+
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    @ApiModelProperty(value = "创建人")
+    private Integer createId;
+
+    @ApiModelProperty(value = "修改时间")
+    private Date updateTime;
+
+    @ApiModelProperty(value = "修改人id")
+    private Integer updateId;
+
+    @ApiModelProperty(value = "备注")
+    private String remark;
+
+    private static final long serialVersionUID = 1L;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getFkOriginId() {
+        return fkOriginId;
+    }
+
+    public void setFkOriginId(Long fkOriginId) {
+        this.fkOriginId = fkOriginId;
+    }
+
+    public String getProductName() {
+        return productName;
+    }
+
+    public void setProductName(String productName) {
+        this.productName = productName;
+    }
+
+    public String getPlantArea() {
+        return plantArea;
+    }
+
+    public void setPlantArea(String plantArea) {
+        this.plantArea = plantArea;
+    }
+
+    public String getOutputNum() {
+        return outputNum;
+    }
+
+    public void setOutputNum(String outputNum) {
+        this.outputNum = outputNum;
+    }
+
+    public String getOutputValue() {
+        return outputValue;
+    }
+
+    public void setOutputValue(String outputValue) {
+        this.outputValue = outputValue;
+    }
+
+    public Integer getState() {
+        return state;
+    }
+
+    public void setState(Integer state) {
+        this.state = state;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Integer getCreateId() {
+        return createId;
+    }
+
+    public void setCreateId(Integer createId) {
+        this.createId = createId;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+    public Integer getUpdateId() {
+        return updateId;
+    }
+
+    public void setUpdateId(Integer updateId) {
+        this.updateId = updateId;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    @Override
+    public String toString() {
+        StringBuilder sb = new StringBuilder();
+        sb.append(getClass().getSimpleName());
+        sb.append(" [");
+        sb.append("Hash = ").append(hashCode());
+        sb.append(", id=").append(id);
+        sb.append(", fkOriginId=").append(fkOriginId);
+        sb.append(", productName=").append(productName);
+        sb.append(", plantArea=").append(plantArea);
+        sb.append(", outputNum=").append(outputNum);
+        sb.append(", outputValue=").append(outputValue);
+        sb.append(", state=").append(state);
+        sb.append(", createTime=").append(createTime);
+        sb.append(", createId=").append(createId);
+        sb.append(", updateTime=").append(updateTime);
+        sb.append(", updateId=").append(updateId);
+        sb.append(", remark=").append(remark);
+        sb.append(", serialVersionUID=").append(serialVersionUID);
+        sb.append("]");
+        return sb.toString();
+    }
+}

+ 901 - 0
forest-admin/admin-mbg/src/main/java/com/hwrj/cloud/admin/model/UmsMemberOriginProductExample.java

@@ -0,0 +1,901 @@
+package com.hwrj.cloud.admin.model;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+public class UmsMemberOriginProductExample {
+    protected String orderByClause;
+
+    protected boolean distinct;
+
+    protected List<Criteria> oredCriteria;
+
+    public UmsMemberOriginProductExample() {
+        oredCriteria = new ArrayList<Criteria>();
+    }
+
+    public void setOrderByClause(String orderByClause) {
+        this.orderByClause = orderByClause;
+    }
+
+    public String getOrderByClause() {
+        return orderByClause;
+    }
+
+    public void setDistinct(boolean distinct) {
+        this.distinct = distinct;
+    }
+
+    public boolean isDistinct() {
+        return distinct;
+    }
+
+    public List<Criteria> getOredCriteria() {
+        return oredCriteria;
+    }
+
+    public void or(Criteria criteria) {
+        oredCriteria.add(criteria);
+    }
+
+    public Criteria or() {
+        Criteria criteria = createCriteriaInternal();
+        oredCriteria.add(criteria);
+        return criteria;
+    }
+
+    public Criteria createCriteria() {
+        Criteria criteria = createCriteriaInternal();
+        if (oredCriteria.size() == 0) {
+            oredCriteria.add(criteria);
+        }
+        return criteria;
+    }
+
+    protected Criteria createCriteriaInternal() {
+        Criteria criteria = new Criteria();
+        return criteria;
+    }
+
+    public void clear() {
+        oredCriteria.clear();
+        orderByClause = null;
+        distinct = false;
+    }
+
+    protected abstract static class GeneratedCriteria {
+        protected List<Criterion> criteria;
+
+        protected GeneratedCriteria() {
+            super();
+            criteria = new ArrayList<Criterion>();
+        }
+
+        public boolean isValid() {
+            return criteria.size() > 0;
+        }
+
+        public List<Criterion> getAllCriteria() {
+            return criteria;
+        }
+
+        public List<Criterion> getCriteria() {
+            return criteria;
+        }
+
+        protected void addCriterion(String condition) {
+            if (condition == null) {
+                throw new RuntimeException("Value for condition cannot be null");
+            }
+            criteria.add(new Criterion(condition));
+        }
+
+        protected void addCriterion(String condition, Object value, String property) {
+            if (value == null) {
+                throw new RuntimeException("Value for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value));
+        }
+
+        protected void addCriterion(String condition, Object value1, Object value2, String property) {
+            if (value1 == null || value2 == null) {
+                throw new RuntimeException("Between values for " + property + " cannot be null");
+            }
+            criteria.add(new Criterion(condition, value1, value2));
+        }
+
+        public Criteria andIdIsNull() {
+            addCriterion("id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIsNotNull() {
+            addCriterion("id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdEqualTo(Long value) {
+            addCriterion("id =", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotEqualTo(Long value) {
+            addCriterion("id <>", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThan(Long value) {
+            addCriterion("id >", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("id >=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThan(Long value) {
+            addCriterion("id <", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdLessThanOrEqualTo(Long value) {
+            addCriterion("id <=", value, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdIn(List<Long> values) {
+            addCriterion("id in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotIn(List<Long> values) {
+            addCriterion("id not in", values, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdBetween(Long value1, Long value2) {
+            addCriterion("id between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andIdNotBetween(Long value1, Long value2) {
+            addCriterion("id not between", value1, value2, "id");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdIsNull() {
+            addCriterion("fk_origin_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdIsNotNull() {
+            addCriterion("fk_origin_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdEqualTo(Long value) {
+            addCriterion("fk_origin_id =", value, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdNotEqualTo(Long value) {
+            addCriterion("fk_origin_id <>", value, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdGreaterThan(Long value) {
+            addCriterion("fk_origin_id >", value, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdGreaterThanOrEqualTo(Long value) {
+            addCriterion("fk_origin_id >=", value, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdLessThan(Long value) {
+            addCriterion("fk_origin_id <", value, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdLessThanOrEqualTo(Long value) {
+            addCriterion("fk_origin_id <=", value, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdIn(List<Long> values) {
+            addCriterion("fk_origin_id in", values, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdNotIn(List<Long> values) {
+            addCriterion("fk_origin_id not in", values, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdBetween(Long value1, Long value2) {
+            addCriterion("fk_origin_id between", value1, value2, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andFkOriginIdNotBetween(Long value1, Long value2) {
+            addCriterion("fk_origin_id not between", value1, value2, "fkOriginId");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameIsNull() {
+            addCriterion("product_name is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameIsNotNull() {
+            addCriterion("product_name is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameEqualTo(String value) {
+            addCriterion("product_name =", value, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameNotEqualTo(String value) {
+            addCriterion("product_name <>", value, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameGreaterThan(String value) {
+            addCriterion("product_name >", value, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameGreaterThanOrEqualTo(String value) {
+            addCriterion("product_name >=", value, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameLessThan(String value) {
+            addCriterion("product_name <", value, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameLessThanOrEqualTo(String value) {
+            addCriterion("product_name <=", value, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameLike(String value) {
+            addCriterion("product_name like", value, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameNotLike(String value) {
+            addCriterion("product_name not like", value, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameIn(List<String> values) {
+            addCriterion("product_name in", values, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameNotIn(List<String> values) {
+            addCriterion("product_name not in", values, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameBetween(String value1, String value2) {
+            addCriterion("product_name between", value1, value2, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andProductNameNotBetween(String value1, String value2) {
+            addCriterion("product_name not between", value1, value2, "productName");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaIsNull() {
+            addCriterion("plant_area is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaIsNotNull() {
+            addCriterion("plant_area is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaEqualTo(String value) {
+            addCriterion("plant_area =", value, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaNotEqualTo(String value) {
+            addCriterion("plant_area <>", value, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaGreaterThan(String value) {
+            addCriterion("plant_area >", value, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaGreaterThanOrEqualTo(String value) {
+            addCriterion("plant_area >=", value, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaLessThan(String value) {
+            addCriterion("plant_area <", value, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaLessThanOrEqualTo(String value) {
+            addCriterion("plant_area <=", value, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaLike(String value) {
+            addCriterion("plant_area like", value, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaNotLike(String value) {
+            addCriterion("plant_area not like", value, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaIn(List<String> values) {
+            addCriterion("plant_area in", values, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaNotIn(List<String> values) {
+            addCriterion("plant_area not in", values, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaBetween(String value1, String value2) {
+            addCriterion("plant_area between", value1, value2, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andPlantAreaNotBetween(String value1, String value2) {
+            addCriterion("plant_area not between", value1, value2, "plantArea");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumIsNull() {
+            addCriterion("output_num is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumIsNotNull() {
+            addCriterion("output_num is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumEqualTo(String value) {
+            addCriterion("output_num =", value, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumNotEqualTo(String value) {
+            addCriterion("output_num <>", value, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumGreaterThan(String value) {
+            addCriterion("output_num >", value, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumGreaterThanOrEqualTo(String value) {
+            addCriterion("output_num >=", value, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumLessThan(String value) {
+            addCriterion("output_num <", value, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumLessThanOrEqualTo(String value) {
+            addCriterion("output_num <=", value, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumLike(String value) {
+            addCriterion("output_num like", value, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumNotLike(String value) {
+            addCriterion("output_num not like", value, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumIn(List<String> values) {
+            addCriterion("output_num in", values, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumNotIn(List<String> values) {
+            addCriterion("output_num not in", values, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumBetween(String value1, String value2) {
+            addCriterion("output_num between", value1, value2, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputNumNotBetween(String value1, String value2) {
+            addCriterion("output_num not between", value1, value2, "outputNum");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueIsNull() {
+            addCriterion("output_value is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueIsNotNull() {
+            addCriterion("output_value is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueEqualTo(String value) {
+            addCriterion("output_value =", value, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueNotEqualTo(String value) {
+            addCriterion("output_value <>", value, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueGreaterThan(String value) {
+            addCriterion("output_value >", value, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueGreaterThanOrEqualTo(String value) {
+            addCriterion("output_value >=", value, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueLessThan(String value) {
+            addCriterion("output_value <", value, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueLessThanOrEqualTo(String value) {
+            addCriterion("output_value <=", value, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueLike(String value) {
+            addCriterion("output_value like", value, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueNotLike(String value) {
+            addCriterion("output_value not like", value, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueIn(List<String> values) {
+            addCriterion("output_value in", values, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueNotIn(List<String> values) {
+            addCriterion("output_value not in", values, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueBetween(String value1, String value2) {
+            addCriterion("output_value between", value1, value2, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andOutputValueNotBetween(String value1, String value2) {
+            addCriterion("output_value not between", value1, value2, "outputValue");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateIsNull() {
+            addCriterion("state is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateIsNotNull() {
+            addCriterion("state is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateEqualTo(Integer value) {
+            addCriterion("state =", value, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateNotEqualTo(Integer value) {
+            addCriterion("state <>", value, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateGreaterThan(Integer value) {
+            addCriterion("state >", value, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateGreaterThanOrEqualTo(Integer value) {
+            addCriterion("state >=", value, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateLessThan(Integer value) {
+            addCriterion("state <", value, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateLessThanOrEqualTo(Integer value) {
+            addCriterion("state <=", value, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateIn(List<Integer> values) {
+            addCriterion("state in", values, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateNotIn(List<Integer> values) {
+            addCriterion("state not in", values, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateBetween(Integer value1, Integer value2) {
+            addCriterion("state between", value1, value2, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andStateNotBetween(Integer value1, Integer value2) {
+            addCriterion("state not between", value1, value2, "state");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNull() {
+            addCriterion("create_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIsNotNull() {
+            addCriterion("create_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeEqualTo(Date value) {
+            addCriterion("create_time =", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotEqualTo(Date value) {
+            addCriterion("create_time <>", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThan(Date value) {
+            addCriterion("create_time >", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("create_time >=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThan(Date value) {
+            addCriterion("create_time <", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("create_time <=", value, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeIn(List<Date> values) {
+            addCriterion("create_time in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotIn(List<Date> values) {
+            addCriterion("create_time not in", values, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeBetween(Date value1, Date value2) {
+            addCriterion("create_time between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("create_time not between", value1, value2, "createTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdIsNull() {
+            addCriterion("create_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdIsNotNull() {
+            addCriterion("create_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdEqualTo(Integer value) {
+            addCriterion("create_id =", value, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdNotEqualTo(Integer value) {
+            addCriterion("create_id <>", value, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdGreaterThan(Integer value) {
+            addCriterion("create_id >", value, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("create_id >=", value, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdLessThan(Integer value) {
+            addCriterion("create_id <", value, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdLessThanOrEqualTo(Integer value) {
+            addCriterion("create_id <=", value, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdIn(List<Integer> values) {
+            addCriterion("create_id in", values, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdNotIn(List<Integer> values) {
+            addCriterion("create_id not in", values, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdBetween(Integer value1, Integer value2) {
+            addCriterion("create_id between", value1, value2, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andCreateIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("create_id not between", value1, value2, "createId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNull() {
+            addCriterion("update_time is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIsNotNull() {
+            addCriterion("update_time is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeEqualTo(Date value) {
+            addCriterion("update_time =", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotEqualTo(Date value) {
+            addCriterion("update_time <>", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThan(Date value) {
+            addCriterion("update_time >", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
+            addCriterion("update_time >=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThan(Date value) {
+            addCriterion("update_time <", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
+            addCriterion("update_time <=", value, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeIn(List<Date> values) {
+            addCriterion("update_time in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotIn(List<Date> values) {
+            addCriterion("update_time not in", values, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
+            addCriterion("update_time between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
+            addCriterion("update_time not between", value1, value2, "updateTime");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdIsNull() {
+            addCriterion("update_id is null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdIsNotNull() {
+            addCriterion("update_id is not null");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdEqualTo(Integer value) {
+            addCriterion("update_id =", value, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdNotEqualTo(Integer value) {
+            addCriterion("update_id <>", value, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdGreaterThan(Integer value) {
+            addCriterion("update_id >", value, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdGreaterThanOrEqualTo(Integer value) {
+            addCriterion("update_id >=", value, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdLessThan(Integer value) {
+            addCriterion("update_id <", value, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdLessThanOrEqualTo(Integer value) {
+            addCriterion("update_id <=", value, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdIn(List<Integer> values) {
+            addCriterion("update_id in", values, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdNotIn(List<Integer> values) {
+            addCriterion("update_id not in", values, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdBetween(Integer value1, Integer value2) {
+            addCriterion("update_id between", value1, value2, "updateId");
+            return (Criteria) this;
+        }
+
+        public Criteria andUpdateIdNotBetween(Integer value1, Integer value2) {
+            addCriterion("update_id not between", value1, value2, "updateId");
+            return (Criteria) this;
+        }
+    }
+
+    public static class Criteria extends GeneratedCriteria {
+
+        protected Criteria() {
+            super();
+        }
+    }
+
+    public static class Criterion {
+        private String condition;
+
+        private Object value;
+
+        private Object secondValue;
+
+        private boolean noValue;
+
+        private boolean singleValue;
+
+        private boolean betweenValue;
+
+        private boolean listValue;
+
+        private String typeHandler;
+
+        public String getCondition() {
+            return condition;
+        }
+
+        public Object getValue() {
+            return value;
+        }
+
+        public Object getSecondValue() {
+            return secondValue;
+        }
+
+        public boolean isNoValue() {
+            return noValue;
+        }
+
+        public boolean isSingleValue() {
+            return singleValue;
+        }
+
+        public boolean isBetweenValue() {
+            return betweenValue;
+        }
+
+        public boolean isListValue() {
+            return listValue;
+        }
+
+        public String getTypeHandler() {
+            return typeHandler;
+        }
+
+        protected Criterion(String condition) {
+            super();
+            this.condition = condition;
+            this.typeHandler = null;
+            this.noValue = true;
+        }
+
+        protected Criterion(String condition, Object value, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.typeHandler = typeHandler;
+            if (value instanceof List<?>) {
+                this.listValue = true;
+            } else {
+                this.singleValue = true;
+            }
+        }
+
+        protected Criterion(String condition, Object value) {
+            this(condition, value, null);
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
+            super();
+            this.condition = condition;
+            this.value = value;
+            this.secondValue = secondValue;
+            this.typeHandler = typeHandler;
+            this.betweenValue = true;
+        }
+
+        protected Criterion(String condition, Object value, Object secondValue) {
+            this(condition, value, secondValue, null);
+        }
+    }
+}

+ 627 - 0
forest-admin/admin-mbg/src/main/resources/com/hwrj/cloud/admin/mapper/UmsMemberOriginMapper.xml

@@ -0,0 +1,627 @@
+<?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.hwrj.cloud.admin.mapper.UmsMemberOriginMapper">
+  <resultMap id="BaseResultMap" type="com.hwrj.cloud.admin.model.UmsMemberOrigin">
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="fk_company_info_id" jdbcType="BIGINT" property="fkCompanyInfoId" />
+    <result column="comp_name" jdbcType="VARCHAR" property="compName" />
+    <result column="origin_name" jdbcType="VARCHAR" property="originName" />
+    <result column="origin_area" jdbcType="DOUBLE" property="originArea" />
+    <result column="people_num" jdbcType="INTEGER" property="peopleNum" />
+    <result column="found_date" jdbcType="VARCHAR" property="foundDate" />
+    <result column="link_user" jdbcType="VARCHAR" property="linkUser" />
+    <result column="link_phone" jdbcType="VARCHAR" property="linkPhone" />
+    <result column="province_name" jdbcType="VARCHAR" property="provinceName" />
+    <result column="city_name" jdbcType="VARCHAR" property="cityName" />
+    <result column="county_name" jdbcType="VARCHAR" property="countyName" />
+    <result column="detail_address" jdbcType="VARCHAR" property="detailAddress" />
+    <result column="altitude" jdbcType="VARCHAR" property="altitude" />
+    <result column="longitude" jdbcType="VARCHAR" property="longitude" />
+    <result column="latitude" jdbcType="VARCHAR" property="latitude" />
+    <result column="state" jdbcType="INTEGER" property="state" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="create_id" jdbcType="INTEGER" property="createId" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="update_id" jdbcType="INTEGER" property="updateId" />
+  </resultMap>
+  <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.hwrj.cloud.admin.model.UmsMemberOrigin">
+    <result column="img_url" jdbcType="LONGVARCHAR" property="imgUrl" />
+    <result column="video_url" jdbcType="LONGVARCHAR" property="videoUrl" />
+    <result column="vr_url" jdbcType="LONGVARCHAR" property="vrUrl" />
+    <result column="camera_url" jdbcType="LONGVARCHAR" property="cameraUrl" />
+    <result column="summary" jdbcType="LONGVARCHAR" property="summary" />
+    <result column="remark" jdbcType="LONGVARCHAR" property="remark" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, fk_company_info_id, comp_name, origin_name, origin_area, people_num, found_date, 
+    link_user, link_phone, province_name, city_name, county_name, detail_address, altitude, 
+    longitude, latitude, state, create_time, create_id, update_time, update_id
+  </sql>
+  <sql id="Blob_Column_List">
+    img_url, video_url, vr_url, camera_url, summary, remark
+  </sql>
+  <select id="selectByExampleWithBLOBs" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginExample" resultMap="ResultMapWithBLOBs">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from ums_member_origin
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByExample" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from ums_member_origin
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="ResultMapWithBLOBs">
+    select 
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from ums_member_origin
+    where id = #{id,jdbcType=BIGINT}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
+    delete from ums_member_origin
+    where id = #{id,jdbcType=BIGINT}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginExample">
+    delete from ums_member_origin
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.hwrj.cloud.admin.model.UmsMemberOrigin">
+    <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
+      SELECT LAST_INSERT_ID()
+    </selectKey>
+    insert into ums_member_origin (fk_company_info_id, comp_name, origin_name, 
+      origin_area, people_num, found_date, 
+      link_user, link_phone, province_name, 
+      city_name, county_name, detail_address, 
+      altitude, longitude, latitude, 
+      state, create_time, create_id, 
+      update_time, update_id, img_url, 
+      video_url, vr_url, camera_url, 
+      summary, remark)
+    values (#{fkCompanyInfoId,jdbcType=BIGINT}, #{compName,jdbcType=VARCHAR}, #{originName,jdbcType=VARCHAR}, 
+      #{originArea,jdbcType=DOUBLE}, #{peopleNum,jdbcType=INTEGER}, #{foundDate,jdbcType=VARCHAR}, 
+      #{linkUser,jdbcType=VARCHAR}, #{linkPhone,jdbcType=VARCHAR}, #{provinceName,jdbcType=VARCHAR}, 
+      #{cityName,jdbcType=VARCHAR}, #{countyName,jdbcType=VARCHAR}, #{detailAddress,jdbcType=VARCHAR}, 
+      #{altitude,jdbcType=VARCHAR}, #{longitude,jdbcType=VARCHAR}, #{latitude,jdbcType=VARCHAR}, 
+      #{state,jdbcType=INTEGER}, #{createTime,jdbcType=TIMESTAMP}, #{createId,jdbcType=INTEGER}, 
+      #{updateTime,jdbcType=TIMESTAMP}, #{updateId,jdbcType=INTEGER}, #{imgUrl,jdbcType=LONGVARCHAR}, 
+      #{videoUrl,jdbcType=LONGVARCHAR}, #{vrUrl,jdbcType=LONGVARCHAR}, #{cameraUrl,jdbcType=LONGVARCHAR}, 
+      #{summary,jdbcType=LONGVARCHAR}, #{remark,jdbcType=LONGVARCHAR})
+  </insert>
+  <insert id="insertSelective" parameterType="com.hwrj.cloud.admin.model.UmsMemberOrigin">
+    <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
+      SELECT LAST_INSERT_ID()
+    </selectKey>
+    insert into ums_member_origin
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="fkCompanyInfoId != null">
+        fk_company_info_id,
+      </if>
+      <if test="compName != null">
+        comp_name,
+      </if>
+      <if test="originName != null">
+        origin_name,
+      </if>
+      <if test="originArea != null">
+        origin_area,
+      </if>
+      <if test="peopleNum != null">
+        people_num,
+      </if>
+      <if test="foundDate != null">
+        found_date,
+      </if>
+      <if test="linkUser != null">
+        link_user,
+      </if>
+      <if test="linkPhone != null">
+        link_phone,
+      </if>
+      <if test="provinceName != null">
+        province_name,
+      </if>
+      <if test="cityName != null">
+        city_name,
+      </if>
+      <if test="countyName != null">
+        county_name,
+      </if>
+      <if test="detailAddress != null">
+        detail_address,
+      </if>
+      <if test="altitude != null">
+        altitude,
+      </if>
+      <if test="longitude != null">
+        longitude,
+      </if>
+      <if test="latitude != null">
+        latitude,
+      </if>
+      <if test="state != null">
+        state,
+      </if>
+        create_time,
+      <if test="createId != null">
+        create_id,
+      </if>
+      <if test="updateTime != null">
+        update_time,
+      </if>
+      <if test="updateId != null">
+        update_id,
+      </if>
+      <if test="imgUrl != null">
+        img_url,
+      </if>
+      <if test="videoUrl != null">
+        video_url,
+      </if>
+      <if test="vrUrl != null">
+        vr_url,
+      </if>
+      <if test="cameraUrl != null">
+        camera_url,
+      </if>
+      <if test="summary != null">
+        summary,
+      </if>
+      <if test="remark != null">
+        remark,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="fkCompanyInfoId != null">
+        #{fkCompanyInfoId,jdbcType=BIGINT},
+      </if>
+      <if test="compName != null">
+        #{compName,jdbcType=VARCHAR},
+      </if>
+      <if test="originName != null">
+        #{originName,jdbcType=VARCHAR},
+      </if>
+      <if test="originArea != null">
+        #{originArea,jdbcType=DOUBLE},
+      </if>
+      <if test="peopleNum != null">
+        #{peopleNum,jdbcType=INTEGER},
+      </if>
+      <if test="foundDate != null">
+        #{foundDate,jdbcType=VARCHAR},
+      </if>
+      <if test="linkUser != null">
+        #{linkUser,jdbcType=VARCHAR},
+      </if>
+      <if test="linkPhone != null">
+        #{linkPhone,jdbcType=VARCHAR},
+      </if>
+      <if test="provinceName != null">
+        #{provinceName,jdbcType=VARCHAR},
+      </if>
+      <if test="cityName != null">
+        #{cityName,jdbcType=VARCHAR},
+      </if>
+      <if test="countyName != null">
+        #{countyName,jdbcType=VARCHAR},
+      </if>
+      <if test="detailAddress != null">
+        #{detailAddress,jdbcType=VARCHAR},
+      </if>
+      <if test="altitude != null">
+        #{altitude,jdbcType=VARCHAR},
+      </if>
+      <if test="longitude != null">
+        #{longitude,jdbcType=VARCHAR},
+      </if>
+      <if test="latitude != null">
+        #{latitude,jdbcType=VARCHAR},
+      </if>
+      <if test="state != null">
+        #{state,jdbcType=INTEGER},
+      </if>
+        NOW(),
+      <if test="createId != null">
+        #{createId,jdbcType=INTEGER},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateId != null">
+        #{updateId,jdbcType=INTEGER},
+      </if>
+      <if test="imgUrl != null">
+        #{imgUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="videoUrl != null">
+        #{videoUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="vrUrl != null">
+        #{vrUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="cameraUrl != null">
+        #{cameraUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="summary != null">
+        #{summary,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="remark != null">
+        #{remark,jdbcType=LONGVARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginExample" resultType="java.lang.Long">
+    select count(*) from ums_member_origin
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update ums_member_origin
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=BIGINT},
+      </if>
+      <if test="record.fkCompanyInfoId != null">
+        fk_company_info_id = #{record.fkCompanyInfoId,jdbcType=BIGINT},
+      </if>
+      <if test="record.compName != null">
+        comp_name = #{record.compName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.originName != null">
+        origin_name = #{record.originName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.originArea != null">
+        origin_area = #{record.originArea,jdbcType=DOUBLE},
+      </if>
+      <if test="record.peopleNum != null">
+        people_num = #{record.peopleNum,jdbcType=INTEGER},
+      </if>
+      <if test="record.foundDate != null">
+        found_date = #{record.foundDate,jdbcType=VARCHAR},
+      </if>
+      <if test="record.linkUser != null">
+        link_user = #{record.linkUser,jdbcType=VARCHAR},
+      </if>
+      <if test="record.linkPhone != null">
+        link_phone = #{record.linkPhone,jdbcType=VARCHAR},
+      </if>
+      <if test="record.provinceName != null">
+        province_name = #{record.provinceName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.cityName != null">
+        city_name = #{record.cityName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.countyName != null">
+        county_name = #{record.countyName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.detailAddress != null">
+        detail_address = #{record.detailAddress,jdbcType=VARCHAR},
+      </if>
+      <if test="record.altitude != null">
+        altitude = #{record.altitude,jdbcType=VARCHAR},
+      </if>
+      <if test="record.longitude != null">
+        longitude = #{record.longitude,jdbcType=VARCHAR},
+      </if>
+      <if test="record.latitude != null">
+        latitude = #{record.latitude,jdbcType=VARCHAR},
+      </if>
+      <if test="record.state != null">
+        state = #{record.state,jdbcType=INTEGER},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.createId != null">
+        create_id = #{record.createId,jdbcType=INTEGER},
+      </if>
+      <if test="record.updateTime != null">
+        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.updateId != null">
+        update_id = #{record.updateId,jdbcType=INTEGER},
+      </if>
+      <if test="record.imgUrl != null">
+        img_url = #{record.imgUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="record.videoUrl != null">
+        video_url = #{record.videoUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="record.vrUrl != null">
+        vr_url = #{record.vrUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="record.cameraUrl != null">
+        camera_url = #{record.cameraUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="record.summary != null">
+        summary = #{record.summary,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="record.remark != null">
+        remark = #{record.remark,jdbcType=LONGVARCHAR},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExampleWithBLOBs" parameterType="map">
+    update ums_member_origin
+    set id = #{record.id,jdbcType=BIGINT},
+      fk_company_info_id = #{record.fkCompanyInfoId,jdbcType=BIGINT},
+      comp_name = #{record.compName,jdbcType=VARCHAR},
+      origin_name = #{record.originName,jdbcType=VARCHAR},
+      origin_area = #{record.originArea,jdbcType=DOUBLE},
+      people_num = #{record.peopleNum,jdbcType=INTEGER},
+      found_date = #{record.foundDate,jdbcType=VARCHAR},
+      link_user = #{record.linkUser,jdbcType=VARCHAR},
+      link_phone = #{record.linkPhone,jdbcType=VARCHAR},
+      province_name = #{record.provinceName,jdbcType=VARCHAR},
+      city_name = #{record.cityName,jdbcType=VARCHAR},
+      county_name = #{record.countyName,jdbcType=VARCHAR},
+      detail_address = #{record.detailAddress,jdbcType=VARCHAR},
+      altitude = #{record.altitude,jdbcType=VARCHAR},
+      longitude = #{record.longitude,jdbcType=VARCHAR},
+      latitude = #{record.latitude,jdbcType=VARCHAR},
+      state = #{record.state,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      create_id = #{record.createId,jdbcType=INTEGER},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      update_id = #{record.updateId,jdbcType=INTEGER},
+      img_url = #{record.imgUrl,jdbcType=LONGVARCHAR},
+      video_url = #{record.videoUrl,jdbcType=LONGVARCHAR},
+      vr_url = #{record.vrUrl,jdbcType=LONGVARCHAR},
+      camera_url = #{record.cameraUrl,jdbcType=LONGVARCHAR},
+      summary = #{record.summary,jdbcType=LONGVARCHAR},
+      remark = #{record.remark,jdbcType=LONGVARCHAR}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update ums_member_origin
+    set id = #{record.id,jdbcType=BIGINT},
+      fk_company_info_id = #{record.fkCompanyInfoId,jdbcType=BIGINT},
+      comp_name = #{record.compName,jdbcType=VARCHAR},
+      origin_name = #{record.originName,jdbcType=VARCHAR},
+      origin_area = #{record.originArea,jdbcType=DOUBLE},
+      people_num = #{record.peopleNum,jdbcType=INTEGER},
+      found_date = #{record.foundDate,jdbcType=VARCHAR},
+      link_user = #{record.linkUser,jdbcType=VARCHAR},
+      link_phone = #{record.linkPhone,jdbcType=VARCHAR},
+      province_name = #{record.provinceName,jdbcType=VARCHAR},
+      city_name = #{record.cityName,jdbcType=VARCHAR},
+      county_name = #{record.countyName,jdbcType=VARCHAR},
+      detail_address = #{record.detailAddress,jdbcType=VARCHAR},
+      altitude = #{record.altitude,jdbcType=VARCHAR},
+      longitude = #{record.longitude,jdbcType=VARCHAR},
+      latitude = #{record.latitude,jdbcType=VARCHAR},
+      state = #{record.state,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      create_id = #{record.createId,jdbcType=INTEGER},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      update_id = #{record.updateId,jdbcType=INTEGER}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.hwrj.cloud.admin.model.UmsMemberOrigin">
+    update ums_member_origin
+    <set>
+      <if test="fkCompanyInfoId != null">
+        fk_company_info_id = #{fkCompanyInfoId,jdbcType=BIGINT},
+      </if>
+      <if test="compName != null">
+        comp_name = #{compName,jdbcType=VARCHAR},
+      </if>
+      <if test="originName != null">
+        origin_name = #{originName,jdbcType=VARCHAR},
+      </if>
+      <if test="originArea != null">
+        origin_area = #{originArea,jdbcType=DOUBLE},
+      </if>
+      <if test="peopleNum != null">
+        people_num = #{peopleNum,jdbcType=INTEGER},
+      </if>
+      <if test="foundDate != null">
+        found_date = #{foundDate,jdbcType=VARCHAR},
+      </if>
+      <if test="linkUser != null">
+        link_user = #{linkUser,jdbcType=VARCHAR},
+      </if>
+      <if test="linkPhone != null">
+        link_phone = #{linkPhone,jdbcType=VARCHAR},
+      </if>
+      <if test="provinceName != null">
+        province_name = #{provinceName,jdbcType=VARCHAR},
+      </if>
+      <if test="cityName != null">
+        city_name = #{cityName,jdbcType=VARCHAR},
+      </if>
+      <if test="countyName != null">
+        county_name = #{countyName,jdbcType=VARCHAR},
+      </if>
+      <if test="detailAddress != null">
+        detail_address = #{detailAddress,jdbcType=VARCHAR},
+      </if>
+      <if test="altitude != null">
+        altitude = #{altitude,jdbcType=VARCHAR},
+      </if>
+      <if test="longitude != null">
+        longitude = #{longitude,jdbcType=VARCHAR},
+      </if>
+      <if test="latitude != null">
+        latitude = #{latitude,jdbcType=VARCHAR},
+      </if>
+      <if test="state != null">
+        state = #{state,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="createId != null">
+        create_id = #{createId,jdbcType=INTEGER},
+      </if>
+      <if test="updateTime != null">
+        update_time = #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateId != null">
+        update_id = #{updateId,jdbcType=INTEGER},
+      </if>
+      <if test="imgUrl != null">
+        img_url = #{imgUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="videoUrl != null">
+        video_url = #{videoUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="vrUrl != null">
+        vr_url = #{vrUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="cameraUrl != null">
+        camera_url = #{cameraUrl,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="summary != null">
+        summary = #{summary,jdbcType=LONGVARCHAR},
+      </if>
+      <if test="remark != null">
+        remark = #{remark,jdbcType=LONGVARCHAR},
+      </if>
+    </set>
+    where id = #{id,jdbcType=BIGINT}
+  </update>
+  <update id="updateByPrimaryKeyWithBLOBs" parameterType="com.hwrj.cloud.admin.model.UmsMemberOrigin">
+    update ums_member_origin
+    set fk_company_info_id = #{fkCompanyInfoId,jdbcType=BIGINT},
+      comp_name = #{compName,jdbcType=VARCHAR},
+      origin_name = #{originName,jdbcType=VARCHAR},
+      origin_area = #{originArea,jdbcType=DOUBLE},
+      people_num = #{peopleNum,jdbcType=INTEGER},
+      found_date = #{foundDate,jdbcType=VARCHAR},
+      link_user = #{linkUser,jdbcType=VARCHAR},
+      link_phone = #{linkPhone,jdbcType=VARCHAR},
+      province_name = #{provinceName,jdbcType=VARCHAR},
+      city_name = #{cityName,jdbcType=VARCHAR},
+      county_name = #{countyName,jdbcType=VARCHAR},
+      detail_address = #{detailAddress,jdbcType=VARCHAR},
+      altitude = #{altitude,jdbcType=VARCHAR},
+      longitude = #{longitude,jdbcType=VARCHAR},
+      latitude = #{latitude,jdbcType=VARCHAR},
+      state = #{state,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      create_id = #{createId,jdbcType=INTEGER},
+      update_time = #{updateTime,jdbcType=TIMESTAMP},
+      update_id = #{updateId,jdbcType=INTEGER},
+      img_url = #{imgUrl,jdbcType=LONGVARCHAR},
+      video_url = #{videoUrl,jdbcType=LONGVARCHAR},
+      vr_url = #{vrUrl,jdbcType=LONGVARCHAR},
+      camera_url = #{cameraUrl,jdbcType=LONGVARCHAR},
+      summary = #{summary,jdbcType=LONGVARCHAR},
+      remark = #{remark,jdbcType=LONGVARCHAR}
+    where id = #{id,jdbcType=BIGINT}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.hwrj.cloud.admin.model.UmsMemberOrigin">
+    update ums_member_origin
+    set fk_company_info_id = #{fkCompanyInfoId,jdbcType=BIGINT},
+      comp_name = #{compName,jdbcType=VARCHAR},
+      origin_name = #{originName,jdbcType=VARCHAR},
+      origin_area = #{originArea,jdbcType=DOUBLE},
+      people_num = #{peopleNum,jdbcType=INTEGER},
+      found_date = #{foundDate,jdbcType=VARCHAR},
+      link_user = #{linkUser,jdbcType=VARCHAR},
+      link_phone = #{linkPhone,jdbcType=VARCHAR},
+      province_name = #{provinceName,jdbcType=VARCHAR},
+      city_name = #{cityName,jdbcType=VARCHAR},
+      county_name = #{countyName,jdbcType=VARCHAR},
+      detail_address = #{detailAddress,jdbcType=VARCHAR},
+      altitude = #{altitude,jdbcType=VARCHAR},
+      longitude = #{longitude,jdbcType=VARCHAR},
+      latitude = #{latitude,jdbcType=VARCHAR},
+      state = #{state,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      create_id = #{createId,jdbcType=INTEGER},
+      update_time = #{updateTime,jdbcType=TIMESTAMP},
+      update_id = #{updateId,jdbcType=INTEGER}
+    where id = #{id,jdbcType=BIGINT}
+  </update>
+</mapper>

+ 369 - 0
forest-admin/admin-mbg/src/main/resources/com/hwrj/cloud/admin/mapper/UmsMemberOriginProductMapper.xml

@@ -0,0 +1,369 @@
+<?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.hwrj.cloud.admin.mapper.UmsMemberOriginProductMapper">
+  <resultMap id="BaseResultMap" type="com.hwrj.cloud.admin.model.UmsMemberOriginProduct">
+    <id column="id" jdbcType="BIGINT" property="id" />
+    <result column="fk_origin_id" jdbcType="BIGINT" property="fkOriginId" />
+    <result column="product_name" jdbcType="VARCHAR" property="productName" />
+    <result column="plant_area" jdbcType="VARCHAR" property="plantArea" />
+    <result column="output_num" jdbcType="VARCHAR" property="outputNum" />
+    <result column="output_value" jdbcType="VARCHAR" property="outputValue" />
+    <result column="state" jdbcType="INTEGER" property="state" />
+    <result column="create_time" jdbcType="TIMESTAMP" property="createTime" />
+    <result column="create_id" jdbcType="INTEGER" property="createId" />
+    <result column="update_time" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="update_id" jdbcType="INTEGER" property="updateId" />
+  </resultMap>
+  <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.hwrj.cloud.admin.model.UmsMemberOriginProduct">
+    <result column="remark" jdbcType="LONGVARCHAR" property="remark" />
+  </resultMap>
+  <sql id="Example_Where_Clause">
+    <where>
+      <foreach collection="oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Update_By_Example_Where_Clause">
+    <where>
+      <foreach collection="example.oredCriteria" item="criteria" separator="or">
+        <if test="criteria.valid">
+          <trim prefix="(" prefixOverrides="and" suffix=")">
+            <foreach collection="criteria.criteria" item="criterion">
+              <choose>
+                <when test="criterion.noValue">
+                  and ${criterion.condition}
+                </when>
+                <when test="criterion.singleValue">
+                  and ${criterion.condition} #{criterion.value}
+                </when>
+                <when test="criterion.betweenValue">
+                  and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
+                </when>
+                <when test="criterion.listValue">
+                  and ${criterion.condition}
+                  <foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
+                    #{listItem}
+                  </foreach>
+                </when>
+              </choose>
+            </foreach>
+          </trim>
+        </if>
+      </foreach>
+    </where>
+  </sql>
+  <sql id="Base_Column_List">
+    id, fk_origin_id, product_name, plant_area, output_num, output_value, state, create_time, 
+    create_id, update_time, update_id
+  </sql>
+  <sql id="Blob_Column_List">
+    remark
+  </sql>
+  <select id="selectByExampleWithBLOBs" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProductExample" resultMap="ResultMapWithBLOBs">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from ums_member_origin_product
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByExample" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProductExample" resultMap="BaseResultMap">
+    select
+    <if test="distinct">
+      distinct
+    </if>
+    <include refid="Base_Column_List" />
+    from ums_member_origin_product
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+    <if test="orderByClause != null">
+      order by ${orderByClause}
+    </if>
+  </select>
+  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="ResultMapWithBLOBs">
+    select 
+    <include refid="Base_Column_List" />
+    ,
+    <include refid="Blob_Column_List" />
+    from ums_member_origin_product
+    where id = #{id,jdbcType=BIGINT}
+  </select>
+  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
+    delete from ums_member_origin_product
+    where id = #{id,jdbcType=BIGINT}
+  </delete>
+  <delete id="deleteByExample" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProductExample">
+    delete from ums_member_origin_product
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </delete>
+  <insert id="insert" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProduct">
+    <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
+      SELECT LAST_INSERT_ID()
+    </selectKey>
+    insert into ums_member_origin_product (fk_origin_id, product_name, plant_area, 
+      output_num, output_value, state, 
+      create_time, create_id, update_time, 
+      update_id, remark)
+    values (#{fkOriginId,jdbcType=BIGINT}, #{productName,jdbcType=VARCHAR}, #{plantArea,jdbcType=VARCHAR}, 
+      #{outputNum,jdbcType=VARCHAR}, #{outputValue,jdbcType=VARCHAR}, #{state,jdbcType=INTEGER}, 
+      #{createTime,jdbcType=TIMESTAMP}, #{createId,jdbcType=INTEGER}, #{updateTime,jdbcType=TIMESTAMP}, 
+      #{updateId,jdbcType=INTEGER}, #{remark,jdbcType=LONGVARCHAR})
+  </insert>
+  <insert id="insertSelective" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProduct">
+    <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
+      SELECT LAST_INSERT_ID()
+    </selectKey>
+    insert into ums_member_origin_product
+    <trim prefix="(" suffix=")" suffixOverrides=",">
+      <if test="fkOriginId != null">
+        fk_origin_id,
+      </if>
+      <if test="productName != null">
+        product_name,
+      </if>
+      <if test="plantArea != null">
+        plant_area,
+      </if>
+      <if test="outputNum != null">
+        output_num,
+      </if>
+      <if test="outputValue != null">
+        output_value,
+      </if>
+      <if test="state != null">
+        state,
+      </if>
+        create_time,
+      <if test="createId != null">
+        create_id,
+      </if>
+      <if test="updateTime != null">
+        update_time,
+      </if>
+      <if test="updateId != null">
+        update_id,
+      </if>
+      <if test="remark != null">
+        remark,
+      </if>
+    </trim>
+    <trim prefix="values (" suffix=")" suffixOverrides=",">
+      <if test="fkOriginId != null">
+        #{fkOriginId,jdbcType=BIGINT},
+      </if>
+      <if test="productName != null">
+        #{productName,jdbcType=VARCHAR},
+      </if>
+      <if test="plantArea != null">
+        #{plantArea,jdbcType=VARCHAR},
+      </if>
+      <if test="outputNum != null">
+        #{outputNum,jdbcType=VARCHAR},
+      </if>
+      <if test="outputValue != null">
+        #{outputValue,jdbcType=VARCHAR},
+      </if>
+      <if test="state != null">
+        #{state,jdbcType=INTEGER},
+      </if>
+      NOW(),
+      <if test="createId != null">
+        #{createId,jdbcType=INTEGER},
+      </if>
+      <if test="updateTime != null">
+        #{updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="updateId != null">
+        #{updateId,jdbcType=INTEGER},
+      </if>
+      <if test="remark != null">
+        #{remark,jdbcType=LONGVARCHAR},
+      </if>
+    </trim>
+  </insert>
+  <select id="countByExample" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProductExample" resultType="java.lang.Long">
+    select count(*) from ums_member_origin_product
+    <if test="_parameter != null">
+      <include refid="Example_Where_Clause" />
+    </if>
+  </select>
+  <update id="updateByExampleSelective" parameterType="map">
+    update ums_member_origin_product
+    <set>
+      <if test="record.id != null">
+        id = #{record.id,jdbcType=BIGINT},
+      </if>
+      <if test="record.fkOriginId != null">
+        fk_origin_id = #{record.fkOriginId,jdbcType=BIGINT},
+      </if>
+      <if test="record.productName != null">
+        product_name = #{record.productName,jdbcType=VARCHAR},
+      </if>
+      <if test="record.plantArea != null">
+        plant_area = #{record.plantArea,jdbcType=VARCHAR},
+      </if>
+      <if test="record.outputNum != null">
+        output_num = #{record.outputNum,jdbcType=VARCHAR},
+      </if>
+      <if test="record.outputValue != null">
+        output_value = #{record.outputValue,jdbcType=VARCHAR},
+      </if>
+      <if test="record.state != null">
+        state = #{record.state,jdbcType=INTEGER},
+      </if>
+      <if test="record.createTime != null">
+        create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.createId != null">
+        create_id = #{record.createId,jdbcType=INTEGER},
+      </if>
+      <if test="record.updateTime != null">
+        update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="record.updateId != null">
+        update_id = #{record.updateId,jdbcType=INTEGER},
+      </if>
+      <if test="record.remark != null">
+        remark = #{record.remark,jdbcType=LONGVARCHAR},
+      </if>
+    </set>
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExampleWithBLOBs" parameterType="map">
+    update ums_member_origin_product
+    set id = #{record.id,jdbcType=BIGINT},
+      fk_origin_id = #{record.fkOriginId,jdbcType=BIGINT},
+      product_name = #{record.productName,jdbcType=VARCHAR},
+      plant_area = #{record.plantArea,jdbcType=VARCHAR},
+      output_num = #{record.outputNum,jdbcType=VARCHAR},
+      output_value = #{record.outputValue,jdbcType=VARCHAR},
+      state = #{record.state,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      create_id = #{record.createId,jdbcType=INTEGER},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      update_id = #{record.updateId,jdbcType=INTEGER},
+      remark = #{record.remark,jdbcType=LONGVARCHAR}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByExample" parameterType="map">
+    update ums_member_origin_product
+    set id = #{record.id,jdbcType=BIGINT},
+      fk_origin_id = #{record.fkOriginId,jdbcType=BIGINT},
+      product_name = #{record.productName,jdbcType=VARCHAR},
+      plant_area = #{record.plantArea,jdbcType=VARCHAR},
+      output_num = #{record.outputNum,jdbcType=VARCHAR},
+      output_value = #{record.outputValue,jdbcType=VARCHAR},
+      state = #{record.state,jdbcType=INTEGER},
+      create_time = #{record.createTime,jdbcType=TIMESTAMP},
+      create_id = #{record.createId,jdbcType=INTEGER},
+      update_time = #{record.updateTime,jdbcType=TIMESTAMP},
+      update_id = #{record.updateId,jdbcType=INTEGER}
+    <if test="_parameter != null">
+      <include refid="Update_By_Example_Where_Clause" />
+    </if>
+  </update>
+  <update id="updateByPrimaryKeySelective" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProduct">
+    update ums_member_origin_product
+    <set>
+      <if test="fkOriginId != null">
+        fk_origin_id = #{fkOriginId,jdbcType=BIGINT},
+      </if>
+      <if test="productName != null">
+        product_name = #{productName,jdbcType=VARCHAR},
+      </if>
+      <if test="plantArea != null">
+        plant_area = #{plantArea,jdbcType=VARCHAR},
+      </if>
+      <if test="outputNum != null">
+        output_num = #{outputNum,jdbcType=VARCHAR},
+      </if>
+      <if test="outputValue != null">
+        output_value = #{outputValue,jdbcType=VARCHAR},
+      </if>
+      <if test="state != null">
+        state = #{state,jdbcType=INTEGER},
+      </if>
+      <if test="createTime != null">
+        create_time = #{createTime,jdbcType=TIMESTAMP},
+      </if>
+      <if test="createId != null">
+        create_id = #{createId,jdbcType=INTEGER},
+      </if>
+        update_time = NOW(),
+      <if test="updateId != null">
+        update_id = #{updateId,jdbcType=INTEGER},
+      </if>
+      <if test="remark != null">
+        remark = #{remark,jdbcType=LONGVARCHAR},
+      </if>
+    </set>
+    where id = #{id,jdbcType=BIGINT}
+  </update>
+  <update id="updateByPrimaryKeyWithBLOBs" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProduct">
+    update ums_member_origin_product
+    set fk_origin_id = #{fkOriginId,jdbcType=BIGINT},
+      product_name = #{productName,jdbcType=VARCHAR},
+      plant_area = #{plantArea,jdbcType=VARCHAR},
+      output_num = #{outputNum,jdbcType=VARCHAR},
+      output_value = #{outputValue,jdbcType=VARCHAR},
+      state = #{state,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      create_id = #{createId,jdbcType=INTEGER},
+      update_time = #{updateTime,jdbcType=TIMESTAMP},
+      update_id = #{updateId,jdbcType=INTEGER},
+      remark = #{remark,jdbcType=LONGVARCHAR}
+    where id = #{id,jdbcType=BIGINT}
+  </update>
+  <update id="updateByPrimaryKey" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProduct">
+    update ums_member_origin_product
+    set fk_origin_id = #{fkOriginId,jdbcType=BIGINT},
+      product_name = #{productName,jdbcType=VARCHAR},
+      plant_area = #{plantArea,jdbcType=VARCHAR},
+      output_num = #{outputNum,jdbcType=VARCHAR},
+      output_value = #{outputValue,jdbcType=VARCHAR},
+      state = #{state,jdbcType=INTEGER},
+      create_time = #{createTime,jdbcType=TIMESTAMP},
+      create_id = #{createId,jdbcType=INTEGER},
+      update_time = #{updateTime,jdbcType=TIMESTAMP},
+      update_id = #{updateId,jdbcType=INTEGER}
+    where id = #{id,jdbcType=BIGINT}
+  </update>
+</mapper>

+ 0 - 257
forest-admin/admin-server/admin-server.iml

@@ -1,257 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4">
-  <component name="FacetManager">
-    <facet type="Spring" name="Spring">
-      <configuration />
-    </facet>
-    <facet type="web" name="Web">
-      <configuration>
-        <webroots />
-        <sourceRoots>
-          <root url="file://$MODULE_DIR$/src/main/java" />
-          <root url="file://$MODULE_DIR$/src/main/resources" />
-        </sourceRoots>
-      </configuration>
-    </facet>
-  </component>
-  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
-    <output url="file://$MODULE_DIR$/target/classes" />
-    <output-test url="file://$MODULE_DIR$/target/test-classes" />
-    <content url="file://$MODULE_DIR$">
-      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
-      <excludeFolder url="file://$MODULE_DIR$/target" />
-    </content>
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-    <orderEntry type="module" module-name="forest-common" />
-    <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper-spring-boot-starter:1.2.10" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-jdbc:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: com.zaxxer:HikariCP:3.2.0" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-jdbc:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis.spring.boot:mybatis-spring-boot-autoconfigure:1.3.2" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis:mybatis:3.4.6" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis:mybatis-spring:1.3.2" level="project" />
-    <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper-spring-boot-autoconfigure:1.2.10" level="project" />
-    <orderEntry type="library" name="Maven: com.github.pagehelper:pagehelper:5.1.8" level="project" />
-    <orderEntry type="library" name="Maven: com.github.jsqlparser:jsqlparser:1.2" level="project" />
-    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger2:2.9.2" level="project" />
-    <orderEntry type="library" name="Maven: io.swagger:swagger-annotations:1.6.0" level="project" />
-    <orderEntry type="library" name="Maven: io.swagger:swagger-models:1.6.0" level="project" />
-    <orderEntry type="library" name="Maven: io.springfox:springfox-spi:2.9.2" level="project" />
-    <orderEntry type="library" name="Maven: io.springfox:springfox-core:2.9.2" level="project" />
-    <orderEntry type="library" name="Maven: io.springfox:springfox-schema:2.9.2" level="project" />
-    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger-common:2.9.2" level="project" />
-    <orderEntry type="library" name="Maven: io.springfox:springfox-spring-web:2.9.2" level="project" />
-    <orderEntry type="library" name="Maven: com.google.guava:guava:25.1-jre" level="project" />
-    <orderEntry type="library" name="Maven: com.google.code.findbugs:jsr305:3.0.2" level="project" />
-    <orderEntry type="library" name="Maven: org.checkerframework:checker-qual:2.0.0" level="project" />
-    <orderEntry type="library" name="Maven: com.google.errorprone:error_prone_annotations:2.1.3" level="project" />
-    <orderEntry type="library" name="Maven: com.google.j2objc:j2objc-annotations:1.1" level="project" />
-    <orderEntry type="library" name="Maven: org.codehaus.mojo:animal-sniffer-annotations:1.14" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml:classmate:1.4.0" level="project" />
-    <orderEntry type="library" name="Maven: org.slf4j:slf4j-api:1.7.30" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-core:1.2.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.plugin:spring-plugin-metadata:1.2.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.mapstruct:mapstruct:1.2.0.Final" level="project" />
-    <orderEntry type="library" name="Maven: io.springfox:springfox-swagger-ui:2.9.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-commons:2.1.3.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-beans:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.projectlombok:lombok:1.18.12" level="project" />
-    <orderEntry type="library" name="Maven: io.jsonwebtoken:jjwt:0.9.0" level="project" />
-    <orderEntry type="library" name="Maven: cn.hutool:hutool-all:4.5.7" level="project" />
-    <orderEntry type="library" name="Maven: com.aliyun:aliyun-java-sdk-core:4.0.3" level="project" />
-    <orderEntry type="library" name="Maven: com.google.code.gson:gson:2.8.6" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpclient:4.5.11" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.httpcomponents:httpcore:4.4.13" level="project" />
-    <orderEntry type="library" name="Maven: javax.xml.bind:jaxb-api:2.3.1" level="project" />
-    <orderEntry type="library" name="Maven: javax.activation:javax.activation-api:1.2.0" level="project" />
-    <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-core:2.1.14" level="project" />
-    <orderEntry type="library" name="Maven: com.sun.xml.bind:jaxb-impl:2.1" level="project" />
-    <orderEntry type="library" name="Maven: javax.activation:activation:1.1.1" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-web:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba:fastjson:1.2.73" level="project" />
-    <orderEntry type="module" module-name="admin-common" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-openfeign:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-rsa:1.0.7.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.bouncycastle:bcpkix-jdk15on:1.60" level="project" />
-    <orderEntry type="library" name="Maven: org.bouncycastle:bcprov-jdk15on:1.60" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-openfeign-core:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: io.github.openfeign.form:feign-form-spring:3.5.0" level="project" />
-    <orderEntry type="library" name="Maven: io.github.openfeign.form:feign-form:3.5.0" level="project" />
-    <orderEntry type="library" name="Maven: commons-fileupload:commons-fileupload:1.3.3" level="project" />
-    <orderEntry type="library" name="Maven: io.github.openfeign:feign-core:10.1.0" level="project" />
-    <orderEntry type="library" name="Maven: io.github.openfeign:feign-slf4j:10.1.0" level="project" />
-    <orderEntry type="library" name="Maven: io.github.openfeign:feign-hystrix:10.1.0" level="project" />
-    <orderEntry type="library" name="Maven: com.netflix.archaius:archaius-core:0.7.6" level="project" />
-    <orderEntry type="library" name="Maven: com.netflix.hystrix:hystrix-core:1.5.18" level="project" />
-    <orderEntry type="module" module-name="forest-security" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-security:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-config:5.1.8.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-core:5.1.8.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-web:5.1.8.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-data-redis:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-redis:2.1.16.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.data:spring-data-keyvalue:2.1.16.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-tx:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-oxm:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-context-support:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: io.lettuce:lettuce-core:5.1.8.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: io.netty:netty-common:4.1.45.Final" level="project" />
-    <orderEntry type="library" name="Maven: io.netty:netty-handler:4.1.45.Final" level="project" />
-    <orderEntry type="library" name="Maven: io.netty:netty-buffer:4.1.45.Final" level="project" />
-    <orderEntry type="library" name="Maven: io.netty:netty-codec:4.1.45.Final" level="project" />
-    <orderEntry type="library" name="Maven: io.netty:netty-transport:4.1.45.Final" level="project" />
-    <orderEntry type="library" name="Maven: io.netty:netty-resolver:4.1.45.Final" level="project" />
-    <orderEntry type="library" name="Maven: io.projectreactor:reactor-core:3.2.15.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.reactivestreams:reactive-streams:1.0.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-web:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-autoconfigure:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-logging:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: ch.qos.logback:logback-classic:1.2.3" level="project" />
-    <orderEntry type="library" name="Maven: ch.qos.logback:logback-core:1.2.3" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-to-slf4j:2.11.2" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.logging.log4j:log4j-api:2.11.2" level="project" />
-    <orderEntry type="library" name="Maven: org.slf4j:jul-to-slf4j:1.7.30" level="project" />
-    <orderEntry type="library" name="Maven: javax.annotation:javax.annotation-api:1.3.2" level="project" />
-    <orderEntry type="library" name="Maven: org.yaml:snakeyaml:1.23" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-json:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.9.10" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.9.10" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.module:jackson-module-parameter-names:2.9.10" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-tomcat:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-core:9.0.31" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-el:9.0.31" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.tomcat.embed:tomcat-embed-websocket:9.0.31" level="project" />
-    <orderEntry type="library" name="Maven: org.hibernate.validator:hibernate-validator:6.0.18.Final" level="project" />
-    <orderEntry type="library" name="Maven: javax.validation:validation-api:2.0.1.Final" level="project" />
-    <orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.3.3.Final" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-webmvc:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-context:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-expression:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-discovery:2.1.2.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-client:1.2.1" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-common:1.2.1" level="project" />
-    <orderEntry type="library" name="Maven: commons-io:commons-io:2.2" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.commons:commons-lang3:3.8.1" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba.nacos:nacos-api:1.2.1" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-core:2.9.10" level="project" />
-    <orderEntry type="library" name="Maven: io.prometheus:simpleclient:0.5.0" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba.spring:spring-context-support:1.0.6" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-commons:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.security:spring-security-crypto:5.1.8.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-context:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-ribbon:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-ribbon:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-netflix-archaius:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-netflix-archaius:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: commons-configuration:commons-configuration:1.8" level="project" />
-    <orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon:2.3.0" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.ribbon:ribbon-transport:2.3.0" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: io.reactivex:rxnetty-contexts:0.4.9" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: io.reactivex:rxnetty-servo:0.4.9" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: javax.inject:javax.inject:1" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: io.reactivex:rxnetty:0.4.9" level="project" />
-    <orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-core:2.3.0" level="project" />
-    <orderEntry type="library" name="Maven: commons-lang:commons-lang:2.6" level="project" />
-    <orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-httpclient:2.3.0" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: commons-collections:commons-collections:3.2.2" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey:jersey-client:1.19.1" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey:jersey-core:1.19.1" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: javax.ws.rs:jsr311-api:1.1.1" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: com.sun.jersey.contribs:jersey-apache-client4:1.19.1" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.servo:servo-core:0.12.21" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.netflix-commons:netflix-commons-util:0.3.0" level="project" />
-    <orderEntry type="library" name="Maven: com.netflix.ribbon:ribbon-loadbalancer:2.3.0" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: com.netflix.netflix-commons:netflix-statistics:0.1.1" level="project" />
-    <orderEntry type="library" name="Maven: io.reactivex:rxjava:1.3.8" level="project" />
-    <orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter:5.5.2" level="project" />
-    <orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter-api:5.3.2" level="project" />
-    <orderEntry type="library" name="Maven: org.apiguardian:apiguardian-api:1.0.0" level="project" />
-    <orderEntry type="library" name="Maven: org.opentest4j:opentest4j:1.1.1" level="project" />
-    <orderEntry type="library" name="Maven: org.junit.platform:junit-platform-commons:1.3.2" level="project" />
-    <orderEntry type="library" name="Maven: org.junit.jupiter:junit-jupiter-params:5.3.2" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.3.2" level="project" />
-    <orderEntry type="library" scope="RUNTIME" name="Maven: org.junit.platform:junit-platform-engine:1.3.2" level="project" />
-    <orderEntry type="library" name="Maven: org.mockito:mockito-junit-jupiter:2.23.4" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba.cloud:spring-cloud-starter-alibaba-nacos-config:2.1.2.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-zipkin:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-starter-sleuth:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-sleuth-core:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.aspectj:aspectjrt:1.9.5" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-context-log4j2:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-spring-web:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-http:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-spring-rabbit:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-kafka-clients:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-httpclient:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-httpasyncclient:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-spring-webmvc:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-servlet:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.brave:brave-instrumentation-jms:5.6.1" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.cloud:spring-cloud-sleuth-zipkin:2.1.0.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.zipkin2:zipkin:2.12.0" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.reporter2:zipkin-reporter:2.7.14" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.reporter2:zipkin-sender-kafka11:2.7.14" level="project" />
-    <orderEntry type="library" name="Maven: io.zipkin.reporter2:zipkin-sender-amqp-client:2.7.14" level="project" />
-    <orderEntry type="library" name="Maven: de.codecentric:spring-boot-admin-starter-client:2.1.6" level="project" />
-    <orderEntry type="library" name="Maven: de.codecentric:spring-boot-admin-client:2.1.6" level="project" />
-    <orderEntry type="library" name="Maven: org.jolokia:jolokia-core:1.6.2" level="project" />
-    <orderEntry type="library" name="Maven: com.googlecode.json-simple:json-simple:1.1.1" level="project" />
-    <orderEntry type="library" name="Maven: net.logstash.logback:logstash-logback-encoder:5.2" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-databind:2.9.10.3" level="project" />
-    <orderEntry type="library" name="Maven: com.fasterxml.jackson.core:jackson-annotations:2.9.10" level="project" />
-    <orderEntry type="module" module-name="admin-mbg" />
-    <orderEntry type="library" name="Maven: com.alibaba:druid-spring-boot-starter:1.1.10" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba:druid:1.1.10" level="project" />
-    <orderEntry type="library" name="Maven: org.mybatis.generator:mybatis-generator-core:1.3.7" level="project" />
-    <orderEntry type="library" name="Maven: mysql:mysql-connector-java:8.0.16" level="project" />
-    <orderEntry type="library" name="Maven: com.google.protobuf:protobuf-java:3.6.1" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.poi:poi:3.17" level="project" />
-    <orderEntry type="library" name="Maven: commons-codec:commons-codec:1.11" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.commons:commons-collections4:4.1" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml:3.17" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.poi:poi-ooxml-schemas:3.17" level="project" />
-    <orderEntry type="library" name="Maven: org.apache.xmlbeans:xmlbeans:2.6.0" level="project" />
-    <orderEntry type="library" name="Maven: stax:stax-api:1.0.1" level="project" />
-    <orderEntry type="library" name="Maven: com.github.virtuald:curvesapi:1.04" level="project" />
-    <orderEntry type="library" name="Maven: com.alibaba:easyexcel:1.1.2-beat1" level="project" />
-    <orderEntry type="library" name="Maven: cglib:cglib:3.1" level="project" />
-    <orderEntry type="library" name="Maven: org.ow2.asm:asm:4.2" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-actuator:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator-autoconfigure:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-actuator:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: io.micrometer:micrometer-core:1.1.10" level="project" />
-    <orderEntry type="library" name="Maven: org.hdrhistogram:HdrHistogram:2.1.9" level="project" />
-    <orderEntry type="library" name="Maven: org.latencyutils:LatencyUtils:2.0.3" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework.boot:spring-boot-starter-aop:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-aop:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.9.5" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-starter-test:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.springframework.boot:spring-boot-test-autoconfigure:2.1.13.RELEASE" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: com.jayway.jsonpath:json-path:2.4.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: net.minidev:json-smart:2.3" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: net.minidev:accessors-smart:1.2" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.assertj:assertj-core:3.11.1" level="project" />
-    <orderEntry type="library" name="Maven: org.mockito:mockito-core:2.23.4" level="project" />
-    <orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy:1.9.16" level="project" />
-    <orderEntry type="library" name="Maven: net.bytebuddy:byte-buddy-agent:1.9.16" level="project" />
-    <orderEntry type="library" name="Maven: org.objenesis:objenesis:2.6" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-library:1.3" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.skyscreamer:jsonassert:1.5.0" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: com.vaadin.external.google:android-json:0.0.20131108.vaadin1" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-core:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" name="Maven: org.springframework:spring-jcl:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.springframework:spring-test:5.1.14.RELEASE" level="project" />
-    <orderEntry type="library" scope="TEST" name="Maven: org.xmlunit:xmlunit-core:2.6.3" level="project" />
-  </component>
-</module>

+ 2 - 1
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/AdminApplication.java

@@ -3,8 +3,9 @@ package com.hwrj.cloud.admin;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 import org.springframework.context.annotation.ComponentScan;
+import org.springframework.scheduling.annotation.EnableAsync;
 
-
+@EnableAsync
 @SpringBootApplication
 @ComponentScan(basePackages = {"com.hwrj.cloud"})
 public class AdminApplication {

+ 4 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/bo/AdminUserDetails.java

@@ -59,4 +59,8 @@ public class AdminUserDetails implements UserDetails {
     public boolean isEnabled() {
         return umsAdmin.getStatus().equals(1);
     }
+
+    public UmsAdmin getUmsAdmin(){
+        return umsAdmin;
+    }
 }

+ 18 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/config/WebMvcConfig.java

@@ -0,0 +1,18 @@
+package com.hwrj.cloud.admin.config;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.CorsRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
+
+@Configuration
+public class WebMvcConfig extends WebMvcConfigurationSupport {
+
+    @Override
+    public void addCorsMappings(CorsRegistry registry) {
+        registry.addMapping("/**")
+                .allowedOrigins("*")
+                .allowedMethods("POST", "GET", "PUT", "OPTIONS", "DELETE")
+                .maxAge(3600)
+                .allowCredentials(true);
+    }
+}

+ 43 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/PmsProductBigDataController.java

@@ -0,0 +1,43 @@
+package com.hwrj.cloud.admin.controller;
+
+import com.hwrj.cloud.admin.dto.param.BigDataListInfoVo;
+import com.hwrj.cloud.admin.dto.param.BigDataListParam;
+import com.hwrj.cloud.admin.dto.param.BigDataListVo;
+import com.hwrj.cloud.admin.dto.param.SelectVo;
+import com.hwrj.cloud.admin.service.PmsProductService;
+import com.hwrj.cloud.common.api.CommonPage;
+import com.hwrj.cloud.common.api.CommonResult;
+import io.swagger.annotations.Api;
+import net.sf.jsqlparser.statement.select.SelectBody;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.io.IOException;
+import java.util.List;
+
+@RestController
+@RequestMapping("/bigData")
+public class PmsProductBigDataController {
+    @Autowired
+    private PmsProductService productService;
+
+    @GetMapping(value = "/product/list")
+    public CommonResult<CommonPage<BigDataListVo>> bigDataList(BigDataListParam bigDataListParam) throws IOException {
+        List<BigDataListVo> list = productService.bigDataList(bigDataListParam);
+        return CommonResult.success(CommonPage.restPage(list));
+    }
+
+    @GetMapping(value = "/product/type")
+    public CommonResult<List<SelectVo> > bigDataType() throws IOException {
+        List<SelectVo> list = productService.bigDataType();
+        return CommonResult.success(list);
+    }
+
+    @GetMapping(value = "/product/info")
+    public CommonResult<BigDataListInfoVo> bigDatainfo(Long id) {
+        BigDataListInfoVo bigDataListInfoVo = productService.bigDatainfo(id);
+        return CommonResult.success(bigDataListInfoVo);
+    }
+}

+ 16 - 5
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/PmsProductController.java

@@ -2,10 +2,11 @@ package com.hwrj.cloud.admin.controller;
 
 
 import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.ExcelReader;
+import com.alibaba.excel.read.metadata.ReadSheet;
 import com.hwrj.cloud.admin.common.PmsProductOutput;
 import com.hwrj.cloud.admin.dao.PmsProductExcelDao;
-import com.hwrj.cloud.admin.dto.param.PmsProductExcel;
-import com.hwrj.cloud.admin.dto.param.PmsProductParam;
+import com.hwrj.cloud.admin.dto.param.*;
 import com.hwrj.cloud.admin.listener.PmsProductExcelListener;
 import com.hwrj.cloud.common.api.CommonPage;
 import com.hwrj.cloud.common.api.CommonResult;
@@ -166,9 +167,19 @@ public class PmsProductController {
     @PostMapping(value = "/import")
     public CommonResult importBasic(MultipartFile file) throws IOException {
         PmsProductExcelListener basicExcelListener = new PmsProductExcelListener(productExcelDao);
-        EasyExcel.read(file.getInputStream(), PmsProductExcel.class, basicExcelListener).headRowNumber(1).sheet().doRead();
+        ExcelReader excelReader = null;
+        try {
+            excelReader = EasyExcel.read(file.getInputStream()).build();
+            ReadSheet readSheet3 =
+                    EasyExcel.readSheet(2).head(PmsProductExcel.class).registerReadListener(basicExcelListener).headRowNumber(2).build();
+            // 这里注意 一定要把sheet1 sheet2 一起传进去,不然有个问题就是03版的excel 会读取多次,浪费性能
+            excelReader.read(readSheet3);
+        } finally {
+            if (excelReader != null) {
+                // 这里千万别忘记关闭,读的时候会创建临时文件,到时磁盘会崩的
+                excelReader.finish();
+            }
+        }
         return CommonResult.success();
     }
-
-
 }

+ 87 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/UmsMemberOriginController.java

@@ -0,0 +1,87 @@
+package com.hwrj.cloud.admin.controller;
+
+import com.hwrj.cloud.admin.excelEntity.UmsMemberOriginExcel;
+import com.hwrj.cloud.admin.listener.ImportExcelEventListener;
+import com.hwrj.cloud.admin.service.UmsMemberOriginService;
+import com.hwrj.cloud.admin.util.CurrUserUtil;
+import com.hwrj.cloud.admin.util.EasyExcelUtil;
+import com.hwrj.cloud.common.api.CommonResult;
+import com.hwrj.cloud.common.exception.GlobalException;
+import io.swagger.annotations.Api;
+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.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.IOException;
+import java.security.Principal;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @className:
+ * @description: 生产地信息表
+ * @author: lym
+ * @date: 2020/9/5 10:38
+ */
+@RestController
+@Api(description = "生产地信息管理")
+@RequestMapping("/origin")
+public class UmsMemberOriginController {
+
+    @Autowired
+    private UmsMemberOriginService umsMemberOriginService;
+    @Autowired
+    private ImportExcelEventListener importExcelEventListener;
+
+    @ApiOperation(value = "导入生产地信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "file",value = "导入文件",required = true,paramType = "MultipartFile" )
+    })
+    @GetMapping("/import")
+    public CommonResult importExcel(@RequestParam("file") MultipartFile file, Principal principal){
+        List<UmsMemberOriginExcel> listAll = new ArrayList<>();
+        if(file != null){
+            List<Object> list = null;
+            try {
+                list = EasyExcelUtil.readExcel(file, new UmsMemberOriginExcel(),2,2);
+            } catch (IOException e) {
+                //e.printStackTrace();
+                throw new GlobalException(1,"上传文件错误");
+            }
+            if(list != null && list.size() > 0){
+                for(Object obj : list){
+                    UmsMemberOriginExcel excel = (UmsMemberOriginExcel) obj;
+                    excel.setCreateId(CurrUserUtil.getUserId());
+                    excel.setState(0);
+                    listAll.add(excel);
+                }
+            }
+        }
+        int saveNum = 0;
+        if (listAll != null && listAll.size() > 0){
+            int batchNum = 500;
+            if (listAll.size() > batchNum){
+                List<UmsMemberOriginExcel> list = listAll.subList(0,batchNum);
+                saveNum = umsMemberOriginService.batchSave(list);
+                //if (saveNum > 0){ //存在前面数据已存在情况
+                    //异步导入
+                    importExcelEventListener.batchSaveOriginExcel(listAll.subList(batchNum,listAll.size()));
+                    return CommonResult.success(null,"正在导入数据,请稍后刷新!");
+                //}
+            }
+            saveNum = umsMemberOriginService.batchSave(listAll);
+            if (saveNum < 1){
+                return CommonResult.success(null,"导入数据已存在,请勿重复导入");
+            }
+        }
+
+        return CommonResult.success();
+    }
+
+}

+ 85 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/controller/UmsMemberOriginProductController.java

@@ -0,0 +1,85 @@
+package com.hwrj.cloud.admin.controller;
+
+import com.hwrj.cloud.admin.dto.UmsMemberOriginProductParam;
+import com.hwrj.cloud.admin.model.UmsMemberOriginProduct;
+import com.hwrj.cloud.admin.service.UmsMemberOriginProductService;
+import com.hwrj.cloud.common.api.CommonPage;
+import com.hwrj.cloud.common.api.CommonResult;
+import com.hwrj.cloud.common.exception.GlobalException;
+import io.swagger.annotations.Api;
+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.util.StringUtils;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.List;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/7 9:57
+ */
+@RestController
+@RequestMapping("/originProduct")
+@Api(description = "生产地产出物管理")
+public class UmsMemberOriginProductController {
+
+    @Autowired
+    private UmsMemberOriginProductService umsMemberOriginProductService;
+
+    @ApiOperation(value = "查询列表",notes = "查询列表")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "originProduct",value = "",required = true,paramType = "UmsMemberOriginProductParam")
+    })
+    @PostMapping("/list")
+    public CommonResult list(@RequestBody UmsMemberOriginProductParam originProduct){
+        List<UmsMemberOriginProduct> list = umsMemberOriginProductService.list(originProduct);
+        return CommonResult.success(CommonPage.restPage(list));
+    }
+
+    @ApiOperation(value = "添加产出物信息",notes = "添加产出物信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "originProduct",value = "产出物信息",required = true,paramType = "UmsMemberOriginProductParam")
+    })
+    @PostMapping("/save")
+    public CommonResult save(@RequestBody @Valid UmsMemberOriginProductParam originProduct){
+        int i = umsMemberOriginProductService.save(originProduct);
+        if (i > 0){
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+
+    @ApiOperation(value = "修改产出物信息",notes = "修改产出物信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "originProduct",value = "产出物信息",required = true,paramType = "UmsMemberOriginProductParam")
+    })
+    @PostMapping("/update")
+    public CommonResult update(@RequestBody @Valid UmsMemberOriginProductParam originProduct){
+        if (StringUtils.isEmpty(originProduct.getId())){
+            throw new GlobalException(500,"主键不为空!");
+        }
+        int i = umsMemberOriginProductService.update(originProduct);
+        if (i > 0){
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+
+    @ApiOperation(value = "删除产出物信息",notes = "删除产出物信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "id",value = "主键",required = true,paramType = "String")
+    })
+    @GetMapping("/delete")
+    public CommonResult delete(@RequestParam("id") long id){
+        int i = umsMemberOriginProductService.delete(id);
+        if (i > 0){
+            return CommonResult.success();
+        }
+        return CommonResult.failed();
+    }
+}

+ 7 - 1
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dao/PmsProductExcelDao.java

@@ -1,6 +1,6 @@
 package com.hwrj.cloud.admin.dao;
 
-import com.hwrj.cloud.admin.dto.param.PmsProductParam;
+import com.hwrj.cloud.admin.dto.param.*;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -8,4 +8,10 @@ import java.util.List;
 @Mapper
 public interface PmsProductExcelDao {
     void saveData(@Param("list") List<PmsProductParam> list);
+
+    List<BigDataListVo> bigDataList(BigDataListParam bigDataListParam);
+
+    BigDataListInfoVo bigDatainfo(@Param("id")Long id);
+
+    List<SelectVo> bigDataType();
 }

+ 20 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dao/UmsMemberOriginDao.java

@@ -0,0 +1,20 @@
+package com.hwrj.cloud.admin.dao;
+
+import com.hwrj.cloud.admin.model.UmsMemberOrigin;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/6 17:39
+ */
+public interface UmsMemberOriginDao {
+
+    /**
+     * 检验是否存在
+     * lym
+     * @param umsMemberOrigin
+     * @return
+     */
+    int isExist(UmsMemberOrigin umsMemberOrigin);
+}

+ 17 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dao/UmsMemberOriginProductDao.java

@@ -0,0 +1,17 @@
+package com.hwrj.cloud.admin.dao;
+
+import com.hwrj.cloud.admin.model.UmsMemberOriginProduct;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/6 11:27
+ */
+public interface UmsMemberOriginProductDao {
+
+    int batchSave(@Param("list") List<UmsMemberOriginProduct> list);
+}

+ 64 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/UmsMemberOriginProductParam.java

@@ -0,0 +1,64 @@
+package com.hwrj.cloud.admin.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotEmpty;
+import javax.validation.constraints.NotNull;
+import java.util.Date;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/7 14:59
+ */
+@Data
+@ApiModel("生产地产物信息")
+public class UmsMemberOriginProductParam {
+    @ApiModelProperty(value = "主键")
+    private Long id;
+
+    @ApiModelProperty(value = "生产地id (生产地信息表 ums_member_origin -> id)")
+    @NotNull(message = "请选择生产地!")
+    private Long fkOriginId;
+
+    @ApiModelProperty(value = "产品名称")
+    @NotEmpty(message = "产品名称不能为空!")
+    private String productName;
+
+    @ApiModelProperty(value = "产出物种植面积(亩)")
+    @NotEmpty(message = "产出物种植面积不能为空!")
+    private String plantArea;
+
+    @ApiModelProperty(value = "产出物总产量(吨)")
+    @NotEmpty(message = "产出物总产量不能为空!")
+    private String outputNum;
+
+    @ApiModelProperty(value = "产出物亩产值(万元)")
+    @NotEmpty(message = "产出物亩产值不能为空!")
+    private String outputValue;
+
+    @ApiModelProperty(value = "状态 0:可用,1:禁用,2:删除")
+    private Integer state;
+
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    @ApiModelProperty(value = "创建人")
+    private Integer createId;
+
+    @ApiModelProperty(value = "修改时间")
+    private Date updateTime;
+
+    @ApiModelProperty(value = "修改人id")
+    private Integer updateId;
+
+    @ApiModelProperty(value = "备注")
+    private String remark;
+
+    private Integer pageNum = 1;
+
+    private Integer pageSize = 10;
+}

+ 41 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/BigDataListInfoVo.java

@@ -0,0 +1,41 @@
+package com.hwrj.cloud.admin.dto.param;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class BigDataListInfoVo {
+    /*主键*/
+    private long id;
+    /**名称**/
+    private String name;
+    /**图片**/
+    private String pic;
+    /**
+     * 品牌名称
+     **/
+    private String brandName;
+    /**价格**/
+    private BigDecimal price;
+    /**
+     * 供应商
+     **/
+    private String umsCompanyInfo;
+    /**
+     * 规格
+     */
+    private String spec;
+    /**
+     * 保质期
+     */
+    private String qualityGuaranteePeriod;
+    /**
+     * 产地
+     */
+    private String placeOfProduction;
+    /**
+     * 产品简介
+     */
+    private String description;
+}

+ 17 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/BigDataListParam.java

@@ -0,0 +1,17 @@
+package com.hwrj.cloud.admin.dto.param;
+
+import lombok.Data;
+
+@Data
+public class BigDataListParam {
+    private Integer pageSize;
+    private Integer pageNum;
+    /**
+     * 搜索框
+     */
+    private String  search;
+    /**
+     * 类别id
+     */
+    private Long typeId;
+}

+ 25 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/BigDataListVo.java

@@ -0,0 +1,25 @@
+package com.hwrj.cloud.admin.dto.param;
+
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+public class BigDataListVo {
+    /*主键*/
+    private Long id;
+    /**名称**/
+    private String name;
+    /**图片**/
+    private String pic;
+    /**
+     * 品牌名称
+     **/
+    private String brandName;
+    /**价格**/
+    private BigDecimal price;
+    /**
+     * 供应商
+     **/
+    private String umsCompanyInfo;
+}

+ 24 - 2
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/PmsProductExcel.java

@@ -1,5 +1,6 @@
 package com.hwrj.cloud.admin.dto.param;
 
+import com.alibaba.excel.annotation.ExcelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
@@ -11,63 +12,84 @@ public class PmsProductExcel implements Serializable {
     /**
      * 商品名称
      */
+    @ExcelProperty("产品名称")
     private String name;
     /**
      * 品牌名称
      */
+    @ExcelProperty("产品品牌")
     private String brandName;
+    /**
+     * 类型名称
+     */
+    @ExcelProperty("类型")
+    private String productCategoryName;
     /**
      * 商品图片
      */
+    @ExcelProperty("产品图片")
     private String pic;
     /**
      *规格
      */
+    @ExcelProperty("产品规格")
     private String spec;
     /**
      * 单位
      */
+    @ExcelProperty("包装")
     private String unit;
 
     /**
      * 产品标准代号
      * */
-    private String productStandardCode;
+    @ExcelProperty("产品标准代号")
+    private String productSn;
     /**
      * 零售价格
      */
+    @ExcelProperty("零售价格(元)")
     private BigDecimal price;
     /**
      * 批发价
      */
+    @ExcelProperty("批发价格(元)")
     private BigDecimal tradePrice;
     /**
      * 生产日期
      */
-    private int dateOfManufacture;
+
+    @ExcelProperty("生产日期(年/月/日)")
+    private String dateOfManufacture;
     /**
      * 保质期
      */
+    @ExcelProperty("保质期")
     private String qualityGuaranteePeriod;
     /**
      * 生产地
      * */
+    @ExcelProperty("生产日期(年/月/日)")
     private String placeOfProduction;
     /**
      * 供应商
      */
+    @ExcelProperty("供应商")
     private String umsCompanyInfo;
     /**
      * 商品描述
      */
+    @ExcelProperty("产品简介")
     private String description;
 
     /**
      * 使用说明
      * */
+    @ExcelProperty("使用说明")
     private String instructions;
     /**
      * 注意事项
      * */
+    @ExcelProperty("注意事项")
     private String pointsForAttention;
 }

+ 14 - 12
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/PmsProductParam.java

@@ -2,7 +2,6 @@ package com.hwrj.cloud.admin.dto.param;
 
 import com.alibaba.excel.annotation.ExcelIgnore;
 import com.alibaba.excel.annotation.ExcelProperty;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.math.BigDecimal;
@@ -35,27 +34,27 @@ public class PmsProductParam {
      * 删除状态:0->未删除;1->已删除
      **/
     @ExcelProperty("删除状态:0->未删除;1->已删除")
-    private int deleteStatus;
+    private int deleteStatus=0;
     /**
      * 上架状态:0->下架;1->上架
      **/
     @ExcelProperty("上架状态:0->下架;1->上架")
-    private int publishStatus;
+    private int publishStatus=1;
     /**
      * 新品状态:0->不是新品;1->新品
      **/
     @ExcelProperty("新品状态:0->不是新品;1->新品")
-    private int newStatus;
+    private int newStatus=1;
     /**
      * 推荐状态;0->不推荐;1->推荐
      **/
     @ExcelProperty("推荐状态;0->不推荐;1->推荐")
-    private int recommandStatus;
+    private int recommandStatus=1;
     /**
      * 审核状态:0->未审核;1->审核通过
      **/
     @ExcelProperty("审核状态:0->未审核;1->审核通过")
-    private int verifyStatus;
+    private int verifyStatus=1;
     /**
      * 排序
      **/
@@ -207,16 +206,11 @@ public class PmsProductParam {
      **/
     @ExcelProperty("规格")
     private String spec;
-    /**
-     * 产品标准代号
-     **/
-    @ExcelProperty("产品标准代号")
-    private String productStandardCode;
     /**
      * 生产日期
      **/
     @ExcelProperty("生产日期")
-    private int dateOfManufacture;
+    private String dateOfManufacture;
     /**
      * 生产地id
      **/
@@ -242,4 +236,12 @@ public class PmsProductParam {
      **/
     @ExcelProperty("保质期")
     private String qualityGuaranteePeriod;
+    /**
+     * 创建人
+     */
+    private Long createUser;
+    /**
+     * 创建时间
+     */
+    private Date createTime;
 }

+ 9 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/dto/param/SelectVo.java

@@ -0,0 +1,9 @@
+package com.hwrj.cloud.admin.dto.param;
+
+import lombok.Data;
+
+@Data
+public class SelectVo<T> {
+    private T lable;
+    private String text;
+}

+ 121 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/excelEntity/UmsMemberOriginExcel.java

@@ -0,0 +1,121 @@
+package com.hwrj.cloud.admin.excelEntity;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.metadata.BaseRowModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/5 17:54
+ */
+@Data
+public class UmsMemberOriginExcel extends BaseRowModel {
+
+    @ExcelProperty(value = "生产地名称")
+    @ApiModelProperty(value = "生产地名称")
+    private String originName;
+
+    @ExcelProperty("生产地面积(亩)")
+    @ApiModelProperty(value = "生产地面积(亩)")
+    private Double originArea;
+
+    @ExcelProperty("生产地图片")
+    @ApiModelProperty(value = "生产地图片")
+    private String imgUrl;
+
+    @ExcelProperty("生产地宣传视频")
+    @ApiModelProperty(value = "生产地宣传视频地址")
+    private String videoUrl;
+
+    @ExcelProperty("生产地vr")
+    @ApiModelProperty(value = "vr地址")
+    private String vrUrl;
+
+    @ExcelProperty("实时监控视频")
+    @ApiModelProperty(value = "实时监控视频地址")
+    private String cameraUrl;
+
+    @ExcelProperty("人员数")
+    @ApiModelProperty(value = "人数")
+    private Integer peopleNum;
+
+    @ExcelProperty("建立日期(年)")
+    @ApiModelProperty(value = "建立日期(年)")
+    private String foundDate;
+
+    @ExcelProperty("联系人")
+    @ApiModelProperty(value = "联系人")
+    private String linkUser;
+
+    @ExcelProperty("联系方式")
+    @ApiModelProperty(value = "联系方式")
+    private String linkPhone;
+
+    @ExcelProperty("简介")
+    @ApiModelProperty(value = "简介")
+    private String summary;
+
+    @ExcelProperty("产出物")
+    @ApiModelProperty(value = "产品名称")
+    private String productName;
+
+    @ExcelProperty("产出物种植面积(亩)")
+    @ApiModelProperty(value = "产出物种植面积(亩)")
+    private String plantArea;
+
+    @ExcelProperty("产出物总产量(吨)")
+    @ApiModelProperty(value = "产出物总产量(吨)")
+    private String outputNum;
+
+    @ExcelProperty("产出物亩产值(万元)")
+    @ApiModelProperty(value = "产出物亩产值(万元)")
+    private String outputValue;
+
+    @ExcelProperty("所在省")
+    @ApiModelProperty(value = "省")
+    private String provinceName;
+
+    @ExcelProperty("所在市")
+    @ApiModelProperty(value = "市")
+    private String cityName;
+
+    @ExcelProperty("所在县")
+    @ApiModelProperty(value = "县")
+    private String countyName;
+
+    @ExcelProperty(value = "详细地址")
+    @ApiModelProperty(value = "详细地址")
+    private String detailAddress;
+
+    @ExcelProperty(value = "海拔")
+    @ApiModelProperty(value = "海拔")
+    private String altitude;
+
+    @ExcelProperty(value = "经度(°)")
+    @ApiModelProperty(value = "经度")
+    private String longitude;
+
+    @ExcelProperty(value = "纬度(°)")
+    @ApiModelProperty(value = "纬度")
+    private String latitude;
+
+    @ApiModelProperty(value = "状态 0:可用,1:禁用,2:删除")
+    private Integer state;
+
+    @ApiModelProperty(value = "创建人")
+    private Integer createId;
+
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    @ApiModelProperty(value = "修改人id")
+    private Integer updateId;
+
+    @ApiModelProperty(value = "修改时间")
+    private Date updateTime;
+}

+ 47 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/listener/ImportExcelEventListener.java

@@ -0,0 +1,47 @@
+package com.hwrj.cloud.admin.listener;
+
+import com.hwrj.cloud.admin.excelEntity.UmsMemberOriginExcel;
+import com.hwrj.cloud.admin.service.UmsMemberOriginService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @className:
+ * @description: 大批量导入异步事件
+ * @author: lym
+ * @date: 2020/9/6 15:24
+ */
+@Component
+public class ImportExcelEventListener {
+
+    @Autowired
+    private UmsMemberOriginService umsMemberOriginService;
+
+    /**
+     * 批量添加生产地信息
+     * lym
+     * @param list
+     */
+    @Async
+    public void batchSaveOriginExcel(List<UmsMemberOriginExcel> list){
+        if (list == null && list.size() < 1) return;
+        int total = list.size(),i = 0,saveNum = 500; //名次添加500
+        List<UmsMemberOriginExcel> saveList = new ArrayList<>();
+
+        while (total > saveNum) {
+            saveList = list.subList(i, i + saveNum);
+            i = i + saveNum;
+            total = total - saveNum;
+            umsMemberOriginService.batchSave(saveList);
+        }
+        if(total > 0) {
+            saveList = list.subList(i, i + total);
+            umsMemberOriginService.batchSave(saveList);
+        }
+    }
+
+}

+ 20 - 4
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/listener/PmsProductExcelListener.java

@@ -10,11 +10,15 @@ import com.hwrj.cloud.security.util.SpringUtil;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
+import sun.plugin2.util.SystemUtil;
 
 import java.io.File;
 import java.math.BigDecimal;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
 /*
  * 监听器批处理数据
@@ -50,8 +54,6 @@ public class PmsProductExcelListener extends AnalysisEventListener<PmsProductExc
         PmsProductParam pmsProductParam=new PmsProductParam();
         BeanUtils.copyProperties(pmsProductExcel,pmsProductParam);
 
-
-        pmsProductParam.setProductSn(pmsProductExcel.getProductStandardCode());
         String name = pmsProductExcel.getName();
         //标题
         pmsProductParam.setDetailTitle(name);
@@ -60,14 +62,14 @@ public class PmsProductExcelListener extends AnalysisEventListener<PmsProductExc
         //关键字
         pmsProductParam.setKeywords(name);
 
-        String description = pmsProductExcel.getDescription();
+        String description = replaceBlank(pmsProductExcel.getDescription());
 
         //商品描述
         pmsProductParam.setDescription(description);
         //简述
         pmsProductParam.setSubTitle(description);
         //使用说明
-        String instructions = pmsProductExcel.getInstructions();
+        String instructions = replaceBlank(pmsProductExcel.getInstructions());
         //默认文本
         pmsProductParam.setDetailDesc(instructions);
         //web网页显示
@@ -77,6 +79,10 @@ public class PmsProductExcelListener extends AnalysisEventListener<PmsProductExc
         BigDecimal price = pmsProductExcel.getPrice();
         //市场价
         pmsProductParam.setOriginalPrice(price);
+        //创建人 admin 1
+        pmsProductParam.setCreateUser((long) 1);
+        //创建时间
+        pmsProductParam.setCreateTime(new Date());
         list.add(pmsProductParam);
         if (list.size() >= BATCH_COUNT) {
             saveData();
@@ -104,4 +110,14 @@ public class PmsProductExcelListener extends AnalysisEventListener<PmsProductExc
         }
 
     }
+
+    public static String replaceBlank(String str) {
+        String dest = "";
+        if (str!=null) {
+            Pattern p = Pattern.compile("\\s*|\t|\r|\n");
+            Matcher m = p.matcher(str);
+            dest = m.replaceAll("");
+        }
+        return dest;
+    }
 }

+ 10 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/PmsProductService.java

@@ -4,6 +4,10 @@ import com.hwrj.cloud.admin.common.PmsProductOutput;
 import com.hwrj.cloud.admin.dto.PmsProductParam;
 import com.hwrj.cloud.admin.dto.PmsProductQueryParam;
 import com.hwrj.cloud.admin.dto.PmsProductResult;
+import com.hwrj.cloud.admin.dto.param.BigDataListInfoVo;
+import com.hwrj.cloud.admin.dto.param.BigDataListParam;
+import com.hwrj.cloud.admin.dto.param.BigDataListVo;
+import com.hwrj.cloud.admin.dto.param.SelectVo;
 import com.hwrj.cloud.admin.model.PmsProduct;
 import org.springframework.transaction.annotation.Isolation;
 import org.springframework.transaction.annotation.Propagation;
@@ -78,4 +82,10 @@ public interface PmsProductService {
      * @return
      */
     PmsProductOutput getProductByProductId(Long productId);
+
+    List<BigDataListVo> bigDataList(BigDataListParam bigDataListParam);
+
+    BigDataListInfoVo bigDatainfo(Long id);
+
+    List<SelectVo> bigDataType();
 }

+ 23 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/UmsMemberOriginProductService.java

@@ -0,0 +1,23 @@
+package com.hwrj.cloud.admin.service;
+
+import com.hwrj.cloud.admin.dto.UmsMemberOriginProductParam;
+import com.hwrj.cloud.admin.model.UmsMemberOriginProduct;
+
+import java.util.List;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/7 10:13
+ */
+public interface UmsMemberOriginProductService {
+
+    List<UmsMemberOriginProduct> list(UmsMemberOriginProductParam originProduct);
+
+    int save(UmsMemberOriginProductParam originProduct);
+
+    int update(UmsMemberOriginProductParam originProduct);
+
+    int delete(long id);
+}

+ 15 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/UmsMemberOriginService.java

@@ -0,0 +1,15 @@
+package com.hwrj.cloud.admin.service;
+
+import com.hwrj.cloud.admin.excelEntity.UmsMemberOriginExcel;
+
+import java.util.List;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/5 11:18
+ */
+public interface UmsMemberOriginService {
+    public int batchSave(List<UmsMemberOriginExcel> list);
+}

+ 1 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/CmsSubjectServiceImpl.java

@@ -66,6 +66,7 @@ public class CmsSubjectServiceImpl implements CmsSubjectService {
         CmsSubjectProductRelationExample subjectProductRelationExample = new CmsSubjectProductRelationExample();
         subjectProductRelationExample.createCriteria().andProductIdEqualTo(productId);
         subjectProductRelationMapper.deleteByExample(subjectProductRelationExample);
+
         subjectProductRelationDao.insertList(productRelationList);
     }
 

+ 24 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/PmsProductServiceImpl.java

@@ -6,6 +6,10 @@ import com.google.gson.Gson;
 import com.hwrj.cloud.admin.common.CmsPrefrenceAreaProductRelationInput;
 import com.hwrj.cloud.admin.common.CmsSubjectProductRelationInput;
 import com.hwrj.cloud.admin.common.PmsProductOutput;
+import com.hwrj.cloud.admin.dto.param.BigDataListInfoVo;
+import com.hwrj.cloud.admin.dto.param.BigDataListParam;
+import com.hwrj.cloud.admin.dto.param.BigDataListVo;
+import com.hwrj.cloud.admin.dto.param.SelectVo;
 import com.hwrj.cloud.admin.service.CmsPrefrenceAreaService;
 import com.hwrj.cloud.admin.service.CmsSubjectService;
 import com.hwrj.cloud.admin.dao.*;
@@ -20,6 +24,7 @@ import org.slf4j.LoggerFactory;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.StringUtils;
 
@@ -147,6 +152,7 @@ public class PmsProductServiceImpl implements PmsProductService {
     }
 
     @Override
+    @Transactional
     public int update(Long id, PmsProductParam productParam) {
         int count;
         //更新商品信息
@@ -337,6 +343,8 @@ public class PmsProductServiceImpl implements PmsProductService {
         return pmsProductOutput;
     }
 
+
+
     /**
      * 建立和插入关系表操作
      *
@@ -360,5 +368,21 @@ public class PmsProductServiceImpl implements PmsProductService {
             throw new RuntimeException(e.getMessage());
         }
     }
+    @Autowired
+    private PmsProductExcelDao productExcelDao;
+
+    @Override
+    public List<BigDataListVo> bigDataList(BigDataListParam bigDataListParam) {
+        PageHelper.startPage(bigDataListParam.getPageNum(), bigDataListParam.getPageSize());
+        return productExcelDao.bigDataList(bigDataListParam);
+    }
+    @Override
+    public BigDataListInfoVo bigDatainfo(Long id){
+        return productExcelDao.bigDatainfo(id);
+    }
+    @Override
+    public List<SelectVo> bigDataType(){
+        return productExcelDao.bigDataType();
+    }
 
 }

+ 103 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/UmsMemberOriginProductServiceImpl.java

@@ -0,0 +1,103 @@
+package com.hwrj.cloud.admin.service.impl;
+
+import com.github.pagehelper.PageHelper;
+import com.hwrj.cloud.admin.dto.UmsMemberOriginProductParam;
+import com.hwrj.cloud.admin.mapper.UmsMemberOriginProductMapper;
+import com.hwrj.cloud.admin.model.UmsMemberOriginProduct;
+import com.hwrj.cloud.admin.model.UmsMemberOriginProductExample;
+import com.hwrj.cloud.admin.service.UmsMemberOriginProductService;
+import com.hwrj.cloud.admin.util.CurrUserUtil;
+import com.hwrj.cloud.common.exception.GlobalException;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/7 10:24
+ */
+@Service
+public class UmsMemberOriginProductServiceImpl implements UmsMemberOriginProductService {
+
+    @Resource
+    private UmsMemberOriginProductMapper umsMemberOriginProductMapper;
+
+    @Override
+    public List<UmsMemberOriginProduct> list(UmsMemberOriginProductParam originProduct) {
+        PageHelper.startPage(originProduct.getPageNum(), originProduct.getPageSize());
+        UmsMemberOriginProductExample example = new UmsMemberOriginProductExample();
+        UmsMemberOriginProductExample.Criteria criteria = example.createCriteria();
+        if (!StringUtils.isEmpty(originProduct.getFkOriginId())) {
+            criteria.andFkOriginIdNotEqualTo(originProduct.getFkOriginId());
+        }
+        if (!StringUtils.isEmpty(originProduct.getProductName())) {
+            criteria.andProductNameLike(originProduct.getProductName());
+        }
+        if (!StringUtils.isEmpty(originProduct.getPlantArea())) {
+            criteria.andPlantAreaLike(originProduct.getPlantArea());
+        }
+        if (!StringUtils.isEmpty(originProduct.getOutputNum())) {
+            criteria.andOutputNumLike(originProduct.getOutputNum());
+        }
+        if (!StringUtils.isEmpty(originProduct.getOutputValue())) {
+            criteria.andOutputValueLike(originProduct.getOutputValue());
+        }
+        criteria.andStateEqualTo(0);
+        example.setOrderByClause("create_time desc");
+        return umsMemberOriginProductMapper.selectByExample(example);
+    }
+
+    @Override
+    public int save(UmsMemberOriginProductParam originProduct) {
+        isExist(originProduct); //检验唯一
+
+        UmsMemberOriginProduct product = new UmsMemberOriginProduct();
+        BeanUtils.copyProperties(originProduct,product);
+        product.setState(0);
+        product.setCreateId(CurrUserUtil.getUserId());
+        return umsMemberOriginProductMapper.insertSelective(product);
+    }
+
+    @Override
+    public int update(UmsMemberOriginProductParam originProduct) {
+        isExist(originProduct); //检验唯一
+
+        UmsMemberOriginProduct product = new UmsMemberOriginProduct();
+        BeanUtils.copyProperties(originProduct,product);
+        product.setUpdateId(CurrUserUtil.getUserId());
+        return umsMemberOriginProductMapper.updateByPrimaryKeySelective(product);
+    }
+
+    /**
+     * 检验唯一
+     * lym
+     * @param originProduct
+     */
+    private void isExist(UmsMemberOriginProductParam originProduct){
+        UmsMemberOriginProductExample example = new UmsMemberOriginProductExample();
+        UmsMemberOriginProductExample.Criteria criteria = example.createCriteria();
+        if (!StringUtils.isEmpty(originProduct.getId())){
+            criteria.andIdNotEqualTo(originProduct.getId());
+        }
+        criteria.andFkOriginIdEqualTo(originProduct.getFkOriginId());
+        criteria.andProductNameEqualTo(originProduct.getProductName());
+        criteria.andStateEqualTo(0);
+        long i = umsMemberOriginProductMapper.countByExample(example);
+        if (i > 0){
+            throw new GlobalException(500,"产出物已存在!");
+        }
+    }
+
+    @Override
+    public int delete(long id) {
+        UmsMemberOriginProduct product = new UmsMemberOriginProduct();
+        product.setId(id);
+        product.setState(2);
+        return umsMemberOriginProductMapper.updateByPrimaryKeySelective(product);
+    }
+}

+ 115 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/service/impl/UmsMemberOriginServiceImpl.java

@@ -0,0 +1,115 @@
+package com.hwrj.cloud.admin.service.impl;
+
+import com.hwrj.cloud.admin.dao.UmsMemberOriginDao;
+import com.hwrj.cloud.admin.dao.UmsMemberOriginProductDao;
+import com.hwrj.cloud.admin.excelEntity.UmsMemberOriginExcel;
+import com.hwrj.cloud.admin.mapper.UmsMemberOriginMapper;
+import com.hwrj.cloud.admin.model.UmsMemberOrigin;
+import com.hwrj.cloud.admin.model.UmsMemberOriginProduct;
+import com.hwrj.cloud.admin.service.UmsMemberOriginService;
+import com.hwrj.cloud.admin.util.CurrUserUtil;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * @className:
+ * @description:
+ * @author: lym
+ * @date: 2020/9/5 11:23
+ */
+@Service
+public class UmsMemberOriginServiceImpl implements UmsMemberOriginService {
+    @Resource
+    private UmsMemberOriginMapper umsMemberOriginMapper;
+    @Resource
+    private UmsMemberOriginProductDao umsMemberOriginProductDao;
+    @Resource
+    private UmsMemberOriginDao umsMemberOriginDao;
+
+    @Override
+    //@Transactional
+    public int batchSave(List<UmsMemberOriginExcel> list) {
+        UmsMemberOrigin origin = null;
+        List<UmsMemberOriginProduct> originProductList = new ArrayList<>();
+        int saveNum = 0;
+        for (UmsMemberOriginExcel excel:list){
+            origin = new UmsMemberOrigin();
+            BeanUtils.copyProperties(excel,origin);
+            //检验是否唯一
+            int i = umsMemberOriginDao.isExist(origin);
+            if (i > 0) continue; //已存在
+            i = umsMemberOriginMapper.insertSelective(origin); //添加生产地信息
+            if (i > 0){
+                saveNum ++;
+                getOriginProductList(excel,origin.getId(),originProductList);
+            }
+        }
+        if (originProductList != null && originProductList.size() > 0)
+            umsMemberOriginProductDao.batchSave(originProductList);
+        return saveNum;
+    }
+
+    /**
+     * 产地产出物
+     * lym
+     * @param excel
+     * @param originProductList
+     */
+    private void getOriginProductList(UmsMemberOriginExcel excel,long originId,List<UmsMemberOriginProduct> originProductList){
+            if (!StringUtils.isEmpty(excel.getProductName())){ //产出物不为空
+                List<String> productNames = new ArrayList<>(),plantAreas = new ArrayList<>(),
+                        outputNums = new ArrayList<>(),outputValues = new ArrayList<>();
+                UmsMemberOriginProduct originProduct = null;
+                String productName = excel.getProductName();
+                String plantArea = excel.getPlantArea(); //产出物种植面积(亩)
+                String outputNum = excel.getOutputNum(); //产出物总产量(吨)
+                String outputValue = excel.getOutputValue(); //产出物亩产值(万元)
+                if (productName.contains(";")){ //多产出物
+                    productNames = Arrays.asList(productName.split(";"));
+                    //产出物不为空,种植面积这些才有价值
+                    if (plantArea.contains(";")){
+                        plantAreas = Arrays.asList(plantArea.split(";"));
+                    }
+
+                    if (outputNum.contains(";")){
+                        outputNums = Arrays.asList(outputNum.split(";"));
+                    }
+
+                    if (outputValue.contains(";")){
+                        outputValues = Arrays.asList(outputValue.split(";"));
+                    }
+
+                    for (int i = 0;i < productNames.size();i++){ //产出物
+                        originProduct = new UmsMemberOriginProduct();
+                        originProduct.setFkOriginId(originId);
+                        originProduct.setProductName(productNames.get(i));
+                        if (plantAreas != null && plantAreas.size() > i)
+                            originProduct.setPlantArea(plantAreas.get(i));
+                        if (outputNums != null && outputNums.size() > i)
+                            originProduct.setOutputNum(outputNums.get(i));
+                        if (outputValues != null && outputValues.size() > i)
+                            originProduct.setOutputValue(outputValues.get(i));
+                        originProduct.setState(0);
+                        originProduct.setCreateId(CurrUserUtil.getUserId());
+                        originProductList.add(originProduct);
+                    }
+                }else {
+                    originProduct = new UmsMemberOriginProduct();
+                    originProduct.setFkOriginId(originId);
+                    originProduct.setProductName(productName);
+                    originProduct.setPlantArea(plantArea);
+                    originProduct.setOutputNum(outputNum);
+                    originProduct.setOutputValue(outputValue);
+                    originProduct.setState(0);
+                    originProduct.setCreateId(CurrUserUtil.getUserId());
+                    originProductList.add(originProduct);
+                }
+            }
+    }
+}

+ 59 - 0
forest-admin/admin-server/src/main/java/com/hwrj/cloud/admin/util/CurrUserUtil.java

@@ -0,0 +1,59 @@
+package com.hwrj.cloud.admin.util;
+
+import com.hwrj.cloud.admin.bo.AdminUserDetails;
+import com.hwrj.cloud.admin.model.UmsAdmin;
+import com.hwrj.cloud.common.api.ResultCode;
+import com.hwrj.cloud.common.exception.GlobalException;
+import org.springframework.security.core.Authentication;
+import org.springframework.security.core.context.SecurityContextHolder;
+import org.springframework.util.StringUtils;
+
+/**
+ * @className:
+ * @description: 当前登录用户
+ * @author: lym
+ * @date: 2020/9/6 16:16
+ */
+public class CurrUserUtil {
+
+    /**
+     * 获取Authentication
+     */
+    public static Authentication getAuthentication() {
+        return SecurityContextHolder.getContext().getAuthentication();
+    }
+
+    public static UmsAdmin getUmsAdmin(){
+        Authentication authentication = getAuthentication();
+        if (authentication == null) {
+            return null;
+        }
+        AdminUserDetails adminUserDetails = getLoginUser(authentication);
+        UmsAdmin umsAdmin = adminUserDetails.getUmsAdmin();
+        if (StringUtils.isEmpty(umsAdmin)) {
+            throw new GlobalException((int)ResultCode.UNAUTHORIZED.getCode(),ResultCode.UNAUTHORIZED.getMessage());
+        }
+        return umsAdmin;
+    }
+
+    /**
+     * 获取用户
+     */
+    public static AdminUserDetails getLoginUser(Authentication authentication) {
+        Object principal = authentication.getPrincipal();
+        if (principal instanceof AdminUserDetails) {
+            return (AdminUserDetails) principal;
+        }
+        throw new GlobalException((int)ResultCode.UNAUTHORIZED.getCode(),ResultCode.UNAUTHORIZED.getMessage());
+    }
+
+    /**
+     * 获取用户id
+     */
+    public static int getUserId() {
+        UmsAdmin umsAdmin = getUmsAdmin();
+        long userId = umsAdmin.getId();
+        return (int) userId;
+    }
+}
+

+ 55 - 4
forest-admin/admin-server/src/main/resources/dao/ProductExcelDao.xml

@@ -49,13 +49,14 @@
             ums_company_info,
             trade_price,
             spec,
-            product_standard_code,
             date_of_manufacture,
             place_of_production_id,
             place_of_production,
             instructions,
             points_for_attention,
-            quality_guarantee_period)
+            quality_guarantee_period,
+            create_user,
+            create_time)
         VALUES
         <foreach collection="list" item="item" index="index" separator=",">
          <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -104,14 +105,64 @@
              #{item.umsCompanyInfo},
              #{item.tradePrice},
              #{item.spec},
-             #{item.productStandardCode},
              #{item.dateOfManufacture},
              #{item.placeOfProductionId},
              #{item.placeOfProduction},
              #{item.instructions},
              #{item.pointsForAttention},
-             #{item.qualityGuaranteePeriod}
+             #{item.qualityGuaranteePeriod},
+             #{item.createUser},
+             #{item.createTime}
          </trim>
         </foreach>
     </insert>
+    <select id="bigDataList" resultType="com.hwrj.cloud.admin.dto.param.BigDataListVo">
+     SELECT
+        a.id,
+        a.`name` AS 'name',
+        a.pic AS pic,
+        a.brand_name AS brandName,
+        a.price AS price,
+        a.ums_company_info AS umsCompanyInfo
+    FROM
+        pms_product a
+        LEFT JOIN pms_product_category b on a.product_category_id=b.id
+        WHERE 1=1
+    <if test="typeId != null">
+        AND b.parent_id = #{typeId}
+    </if>
+    <if test="search != null and search != ''">
+        AND concat(a.`name`, a.brand_name) LIKE concat(concat('%', #{search}, '%'))
+    </if>
+    </select>
+
+    <select id="bigDatainfo" resultType="com.hwrj.cloud.admin.dto.param.BigDataListInfoVo" parameterType="java.lang.Long">
+        SELECT
+        a.id,
+        a.`name` AS 'name',
+        a.pic AS pic,
+        a.brand_name AS brandName,
+        a.price AS price,
+        a.spec AS spec,
+        a.quality_guarantee_period AS qualityGuaranteePeriod,
+        a.place_of_production AS placeOfProduction,
+        a.ums_company_info AS umsCompanyInfo,
+        a.description AS description
+        FROM
+        pms_product a
+        WHERE 1=1
+        <if test="id != null">
+            AND a.id = #{id}
+        </if>
+    </select>
+    <select id="bigDataType" resultType="com.hwrj.cloud.admin.dto.param.SelectVo">
+        SELECT
+        a.id AS lable,
+        a. NAME AS 'text'
+        FROM
+        pms_product_category a
+        WHERE
+        a.show_status = 1
+        AND a.parent_id = 0
+    </select>
 </mapper>

+ 11 - 0
forest-admin/admin-server/src/main/resources/dao/UmsMemberOriginDao.xml

@@ -0,0 +1,11 @@
+<?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.hwrj.cloud.admin.dao.UmsMemberOriginDao">
+    <select id="isExist" parameterType="com.hwrj.cloud.admin.model.UmsMemberOrigin" resultType="int">
+        SELECT COUNT(*) FROM ums_member_origin WHERE state = 0
+        <if test="id != null">
+            AND id != #{id}
+        </if>
+        AND origin_name = #{originName}
+    </select>
+</mapper>

+ 17 - 0
forest-admin/admin-server/src/main/resources/dao/UmsMemberOriginProductDao.xml

@@ -0,0 +1,17 @@
+<?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.hwrj.cloud.admin.dao.UmsMemberOriginProductDao">
+    <insert id="batchSave" parameterType="com.hwrj.cloud.admin.model.UmsMemberOriginProduct">
+        insert into ums_member_origin_product (fk_origin_id, product_name, plant_area,
+        output_num, output_value, state,
+        create_time, create_id, update_time,
+        update_id, remark)
+        values
+        <foreach collection="list" item="item" separator=",">
+        (#{item.fkOriginId,jdbcType=BIGINT}, #{item.productName,jdbcType=VARCHAR}, #{item.plantArea,jdbcType=VARCHAR},
+        #{item.outputNum,jdbcType=VARCHAR}, #{item.outputValue,jdbcType=VARCHAR}, #{item.state,jdbcType=INTEGER},
+        NOW(), #{item.createId,jdbcType=INTEGER}, #{item.updateTime,jdbcType=TIMESTAMP},
+        #{item.updateId,jdbcType=INTEGER}, #{item.remark,jdbcType=LONGVARCHAR})
+        </foreach>
+    </insert>
+</mapper>

+ 36 - 4
forest-common/src/main/java/com/hwrj/cloud/common/exception/GlobalExceptionHandler.java

@@ -2,18 +2,22 @@ package com.hwrj.cloud.common.exception;
 
 
 import com.hwrj.cloud.common.api.CommonResult;
-import org.springframework.web.bind.annotation.ControllerAdvice;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.validation.BindException;
+import org.springframework.web.bind.MethodArgumentNotValidException;
 import org.springframework.web.bind.annotation.ExceptionHandler;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestControllerAdvice;
 
 /**
  * 全局异常处理
  * Created by macro on 2020/2/27.
  */
-@ControllerAdvice
+@RestControllerAdvice
 public class GlobalExceptionHandler {
 
-    @ResponseBody
+    private static final Logger log = LoggerFactory.getLogger(GlobalExceptionHandler.class);
+
     @ExceptionHandler(value = ApiException.class)
     public CommonResult handle(ApiException e) {
         if (e.getErrorCode() != null) {
@@ -21,4 +25,32 @@ public class GlobalExceptionHandler {
         }
         return CommonResult.failed(e.getMessage());
     }
+
+    /**
+     * 自定义验证异常
+     */
+    @ExceptionHandler(BindException.class)
+    public CommonResult validatedBindException(BindException e){
+        log.error(e.getMessage(), e);
+        String message = e.getAllErrors().get(0).getDefaultMessage();
+        return CommonResult.failed(message);
+    }
+
+    /**
+     * 自定义验证异常
+     */
+    @ExceptionHandler(MethodArgumentNotValidException.class)
+    public Object validExceptionHandler(MethodArgumentNotValidException e){
+        log.error(e.getMessage(), e);
+        String message = e.getBindingResult().getFieldError().getDefaultMessage();
+        return CommonResult.failed(message);
+    }
+
+    /**
+     * 业务异常
+     */
+    @ExceptionHandler(GlobalException.class)
+    public CommonResult businessException(GlobalException e){
+         return CommonResult.failed(e.getMessage());
+    }
 }