Преглед изворни кода

Merge branch 'dev' of yeshijie/jw2.0 into dev

yeshijie пре 7 година
родитељ
комит
ebfada9842

+ 19 - 4
base/common-data-mysql/src/main/java/com/yihu/base/mysql/query/BaseJpaService.java

@ -4,6 +4,7 @@ import com.yihu.jw.restmodel.common.PageArg;
import com.yihu.jw.util.spring.SpringContext;
import org.hibernate.Query;
import org.hibernate.Session;
import org.springframework.beans.BeanUtils;
import org.springframework.data.domain.Sort;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.repository.PagingAndSortingRepository;
@ -22,10 +23,7 @@ import java.io.Serializable;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.text.ParseException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.UUID;
import java.util.*;
/**
 * Service基础类。此类基于Spring Data JPA进行封装(Spring Data JPA又是基于JPA封装,EHR平台使用Hibernate作为JPA实现者)。
@ -54,6 +52,23 @@ public class BaseJpaService<T, R> {
        }
    }
    /**
     * 将实体集合转换为模型集合。
     * @param sources
     * @param targets
     * @param targetCls
     * @param <T>
     * @return
     */
    public <T> List<T> convertToModels(Collection sources, List<T> targets, Class<T> targetCls){
        sources.forEach(one -> {
            T target = (T) BeanUtils.instantiate(targetCls);
            BeanUtils.copyProperties(one, target);
            targets.add(target);
        });
        return targets;
    }
    public String getCode() {
        return UUID.randomUUID().toString().replaceAll("-", "");
    }

+ 0 - 1
base/common-swagger/src/main/java/com/yihu/base/config/DefaultSwaggerConfig.java

@ -7,7 +7,6 @@ import io.github.swagger2markup.Swagger2MarkupConverter;
import io.github.swagger2markup.builder.Swagger2MarkupConfigBuilder;
import io.github.swagger2markup.markup.builder.MarkupLanguage;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;

+ 4 - 0
common/common-entity/pom.xml

@ -36,5 +36,9 @@
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
        </dependency>
        <dependency>
            <groupId>com.yihu.jw</groupId>
            <artifactId>common-rest-model</artifactId>
        </dependency>
    </dependencies>
</project>

+ 4 - 4
common/common-entity/src/main/java/com/yihu/jw/iot/company/IotCompanyDO.java

@ -1,7 +1,7 @@
package com.yihu.jw.iot.company;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.IdEntityWithOperation;
import com.yihu.jw.restmodel.iot.company.IotCompanyTypeVO;
import javax.persistence.Column;
import javax.persistence.Entity;
@ -59,7 +59,7 @@ public class IotCompanyDO extends IdEntityWithOperation implements Serializable
    private Integer del;//删除标志(1有效,0删除)
    @Transient
    private List<JSONObject> typeList;//类型
    private List<IotCompanyTypeVO> typeList;//类型
    public String getSaasId() {
        return saasId;
@ -213,11 +213,11 @@ public class IotCompanyDO extends IdEntityWithOperation implements Serializable
        this.del = del;
    }
    public List<JSONObject> getTypeList() {
    public List<IotCompanyTypeVO> getTypeList() {
        return typeList;
    }
    public void setTypeList(List<JSONObject> typeList) {
    public void setTypeList(List<IotCompanyTypeVO> typeList) {
        this.typeList = typeList;
    }
}

+ 11 - 17
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/common/Envelop.java

@ -69,15 +69,6 @@ public class Envelop<T> extends BaseEnvelop implements Serializable {
        this.detailModelList = detailModelList;
    }
    public String getErrorMsg() {
        return errorMsg;
    }
    public void setErrorMsg(String errorMsg) {
        this.errorMsg = errorMsg;
    }
    public int getPageSize() {
        return pageSize;
    }
@ -107,14 +98,6 @@ public class Envelop<T> extends BaseEnvelop implements Serializable {
        this.totalPage = totalPage;
    }
    public String getSuccessMsg() {
        return successMsg;
    }
    public void setSuccessMsg(String successMsg) {
        this.successMsg = successMsg;
    }
    public static Envelop getSuccess(String message) {
        Envelop envelop = new Envelop();
        envelop.setSuccessMsg(message);
@ -125,6 +108,7 @@ public class Envelop<T> extends BaseEnvelop implements Serializable {
        Envelop envelop = new Envelop();
        envelop.setSuccessMsg(message);
        envelop.setObj(obj);
        envelop.setStatus(200);
        return envelop;
    }
@ -134,6 +118,7 @@ public class Envelop<T> extends BaseEnvelop implements Serializable {
        envelop.setPageSize(size);
        envelop.setDetailModelList(detailModelList);
        envelop.setCurrPage(page);
        envelop.setStatus(200);
        envelop.setTotalCount(count.intValue());
        return envelop;
    }
@ -141,6 +126,14 @@ public class Envelop<T> extends BaseEnvelop implements Serializable {
    public static Envelop getError(String message, int errorCode) {
        Envelop envelop = new Envelop();
        envelop.setErrorMsg(message);
        envelop.setStatus(errorCode);
        return envelop;
    }
    public static Envelop getError(String message) {
        Envelop envelop = new Envelop();
        envelop.setErrorMsg(message);
        envelop.setStatus(-1);
        return envelop;
    }
@ -148,6 +141,7 @@ public class Envelop<T> extends BaseEnvelop implements Serializable {
        Envelop envelop = new Envelop();
        envelop.setSuccessMsg(message);
        envelop.setDetailModelList(objList);
        envelop.setStatus(200);
        return envelop;
    }
}

+ 35 - 1
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/common/EnvelopRestController.java

@ -8,7 +8,6 @@ import com.yihu.jw.util.date.DateUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.util.StringUtils;
@ -98,6 +97,41 @@ public class EnvelopRestController {
        return targets;
    }
    /**
     * 将实体集合转换为模型集合。
     * @param sources
     * @param targets
     * @param targetCls
     * @param <T>
     * @return
     */
    public <T> List<T> convertToModels(Collection sources, List<T> targets, Class<T> targetCls){
        sources.forEach(one -> {
            T target = (T) BeanUtils.instantiate(targetCls);
            BeanUtils.copyProperties(one, target);
            targets.add(target);
        });
        return targets;
    }
    /**
     * 将实体转换为模型。
     *
     * @param source
     * @param targetCls
     * @param properties
     * @param <T>
     * @return
     */
    public <T> T convertToModel(Object source, Class<T> targetCls, String... properties) {
        if (source == null) {
            return null;
        }
        T target = BeanUtils.instantiate(targetCls);
        BeanUtils.copyProperties(source, target, propertyDiffer(properties, targetCls));
        return target;
    }
    /**
     * 计算不在类中的属性。
     *

+ 10 - 0
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/common/base/BaseEnvelop.java

@ -11,6 +11,8 @@ public class BaseEnvelop {
    protected String successMsg;
    protected Integer status;
    public BaseEnvelop() {
    }
@ -19,6 +21,14 @@ public class BaseEnvelop {
        this.errorMsg = errorMsg;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public String getErrorMsg() {
        return errorMsg;
    }

+ 76 - 0
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/iot/common/BaseVO.java

@ -1,7 +1,83 @@
package com.yihu.jw.restmodel.iot.common;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.Date;
/**
 * @author yeshijie on 2018/1/17.
 */
public class BaseVO {
    protected String id;  // 非业务主键
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    protected Date createTime;
    protected String createUser;
    protected String createUserName;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    protected Date updateTime;
    protected String updateUser;
    protected String updateUserName;
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getCreateUser() {
        return createUser;
    }
    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }
    public String getCreateUserName() {
        return createUserName;
    }
    public void setCreateUserName(String createUserName) {
        this.createUserName = createUserName;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    public String getUpdateUser() {
        return updateUser;
    }
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
    public String getUpdateUserName() {
        return updateUserName;
    }
    public void setUpdateUserName(String updateUserName) {
        this.updateUserName = updateUserName;
    }
}

+ 22 - 33
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/iot/company/IotCompanyCertificateChangeRecordVO.java

@ -1,44 +1,33 @@
package com.yihu.jw.iot.company;
package com.yihu.jw.restmodel.iot.company;
import com.yihu.jw.IdEntityWithOperation;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;
/**
 * 企业三证变更记录表
 * @author yeshijie on 2018/1/16.
 */
@Entity
@Table(name = "iot_company_certificate_change_record")
public class IotCompanyCertificateChangeRecordDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saasId;//
    @Column(name = "company_name")
    private String companyName;//企业名称
    @Column(name = "company_id")
    private String companyId;//企业id
    @Column(name = "type")
    private String type;//类型
    @Column(name = "license_old")
    private String licenseOld;//原证书号码
    @Column(name = "certificate_old")
    private String certificateOld;//原证书扫描件
    @Column(name = "license_new")
    private String licenseNew;//新证书号码
    @Column(name = "certificate_new")
    private String certificateNew;//新证书扫描件
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@ApiModel(value = "ListResult", description = "企业三证变更记录")
public class IotCompanyCertificateChangeRecordVO implements Serializable {
    @ApiModelProperty("企业名称")
    private String companyName;
    @ApiModelProperty("企业id")
    private String companyId;
    @ApiModelProperty("类型")
    private String type;
    @ApiModelProperty("原证书号码")
    private String licenseOld;
    @ApiModelProperty("原证书扫描件")
    private String certificateOld;
    @ApiModelProperty("新证书号码")
    private String licenseNew;
    @ApiModelProperty("新证书扫描件")
    private String certificateNew;
    public String getCompanyName() {
        return companyName;

+ 30 - 41
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/iot/company/IotCompanyCertificateVO.java

@ -1,10 +1,9 @@
package com.yihu.jw.iot.company;
package com.yihu.jw.restmodel.iot.company;
import com.yihu.jw.IdEntityWithOperation;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;
@ -12,42 +11,32 @@ import java.util.Date;
 * 企业证书表
 * @author yeshijie on 2018/1/16.
 */
@Entity
@Table(name = "iot_company_certificate")
public class IotCompanyCertificateDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saas_id;//
    @Column(name = "name")
    private String name;//证书名称
    @Column(name = "manufacturer_name")
    private String manufacturerName;//生产厂家名称
    @Column(name = "manufacturer_id")
    private String manufacturerId;//生产厂家id
    @Column(name = "manufacturer_business_license")
    private String manufacturerBusinessLicense;//生产厂家营业执照号
    @Column(name = "company_name")
    private String companyName;//发起企业名称
    @Column(name = "company_id")
    private String companyId;//发起企业id
    @Column(name = "company_business_license")
    private String companyBusinessLicense;//发起企业营业执照号
    @Column(name = "start_time")
    private Date startTime;//有效期开始时间
    @Column(name = "end_time")
    private Date endTime;//有效结束时间
    @Column(name = "certificate_of_authorization_img")
    private String certificateOfAuthorizationImg;//授权书扫描件
    @Column(name = "del")
    private Integer del;//删除标志
    public String getSaas_id() {
        return saas_id;
    }
    public void setSaas_id(String saas_id) {
        this.saas_id = saas_id;
    }
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@ApiModel(value = "ListResult", description = "企业证书表")
public class IotCompanyCertificateVO implements Serializable {
    @ApiModelProperty("证书名称")
    private String name;
    @ApiModelProperty("生产厂家名称")
    private String manufacturerName;
    @ApiModelProperty("生产厂家id")
    private String manufacturerId;
    @ApiModelProperty("生产厂家营业执照号")
    private String manufacturerBusinessLicense;
    @ApiModelProperty("发起企业名称")
    private String companyName;
    @ApiModelProperty("发起企业id")
    private String companyId;
    @ApiModelProperty("发起企业营业执照号")
    private String companyBusinessLicense;
    @ApiModelProperty("有效期开始时间")
    private Date startTime;
    @ApiModelProperty("有效结束时间")
    private Date endTime;
    @ApiModelProperty("授权书扫描件")
    private String certificateOfAuthorizationImg;
    @ApiModelProperty("删除标志")
    private Integer del;
    public String getName() {
        return name;

+ 12 - 33
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/iot/company/IotCompanyTypeVO.java

@ -1,44 +1,23 @@
package com.yihu.jw.iot.company;
package com.yihu.jw.restmodel.iot.company;
import com.yihu.jw.IdEntityWithOperation;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import java.io.Serializable;
/**
 * 企业类型表
 * @author yeshijie on 2018/1/16.
 */
@Entity
@Table(name = "iot_company_type")
public class IotCompanyTypeDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saasId;//
    @Column(name = "company_id")
    private String companyId;//企业id
    @Column(name = "type")
    private String type;//企业类型code
    @Column(name = "type_name")
    private String typeName;//企业类型名称
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
    public String getCompanyId() {
        return companyId;
    }
    public void setCompanyId(String companyId) {
        this.companyId = companyId;
    }
@JsonInclude(JsonInclude.Include.NON_EMPTY)
@ApiModel(value = "ListResult", description = "企业三证变更记录")
public class IotCompanyTypeVO implements Serializable {
    @ApiModelProperty("企业类型code")
    private String type;//
    @ApiModelProperty("企业类型名称")
    private String typeName;//
    public String getType() {
        return type;

+ 53 - 62
common/common-rest-model/src/main/java/com/yihu/jw/restmodel/iot/company/IotCompanyVO.java

@ -1,12 +1,11 @@
package com.yihu.jw.iot.company;
package com.yihu.jw.restmodel.iot.company;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.IdEntityWithOperation;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.yihu.jw.restmodel.iot.common.BaseVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@ -15,59 +14,51 @@ import java.util.List;
 * 企业表
 * @author yeshijie on 2018/1/15.
 */
@Entity
@Table(name = "iot_company")
public class IotCompanyDO extends IdEntityWithOperation implements Serializable {
    @Column(name = "saas_id")
    private String saasId;//
    @Column(name = "status")
    private String status;//审核状态(预留字段)
    @Column(name = "name")
    private String name;//企业名称
    @Column(name = "is_three_in_one")
    private Integer isThreeInOne;//是否三证合一(1是,0否)
    @Column(name = "business_license")
    private String businessLicense;//统一社会信用代码/营业执照
    @Column(name = "business_start_time")
    private Date businessStartTime;//营业开始时间
    @Column(name = "business_end_time")
    private Date businessEndTime;//营业结束时间
    @Column(name = "organization_address")
    private String organizationAddress;//机构地址
    @Column(name = "office_phone")
    private String officePhone;//办公电话
    @Column(name = "contacts_name")
    private String contactsName;//联系人姓名
    @Column(name = "contacts_mobile")
    private String contactsMobile;//联系人手机号码
    @Column(name = "contacts_idcard")
    private String contactsIdcard;//联系人身份证号
    @Column(name = "contacts_email")
    private String contactsEmail;//联系人邮件
    @Column(name = "business_license_img")
    private String businessLicenseImg;//统一社会信用代码证照片
    @Column(name = "organization_code_img")
    private String organizationCodeImg;//组织机构代码证照片
    @Column(name = "tax_registration_img")
    private String taxRegistrationImg;//税务登记证照片
    @Column(name = "contacts_idcard_img")
    private String contactsIdcardImg;//联系人身份证照片
    @Column(name = "account")
    private String account;//账号
    @Column(name = "del")
    private Integer del;//删除标志(1有效,0删除)
    @Transient
    private List<JSONObject> typeList;//类型
    public String getSaasId() {
        return saasId;
    }
    public void setSaasId(String saasId) {
        this.saasId = saasId;
    }
@JsonInclude(JsonInclude.Include.ALWAYS)
@ApiModel(value = "ListResult", description = "企业表")
public class IotCompanyVO extends BaseVO implements Serializable {
    @ApiModelProperty("审核状态(预留字段)")
    private String status;
    @ApiModelProperty("企业名称")
    private String name;
    @ApiModelProperty("是否三证合一(1是,0否)")
    private Integer isThreeInOne;
    @ApiModelProperty("统一社会信用代码/营业执照")
    private String businessLicense;
    @ApiModelProperty("营业开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    private Date businessStartTime;
    @ApiModelProperty("营业结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+08:00")
    private Date businessEndTime;
    @ApiModelProperty("机构地址")
    private String organizationAddress;
    @ApiModelProperty("办公电话")
    private String officePhone;
    @ApiModelProperty("联系人姓名")
    private String contactsName;
    @ApiModelProperty("联系人手机号码")
    private String contactsMobile;
    @ApiModelProperty("联系人身份证号")
    private String contactsIdcard;
    @ApiModelProperty("联系人邮件")
    private String contactsEmail;
    @ApiModelProperty("统一社会信用代码证照片")
    private String businessLicenseImg;
    @ApiModelProperty("组织机构代码证照片")
    private String organizationCodeImg;
    @ApiModelProperty("税务登记证照片")
    private String taxRegistrationImg;
    @ApiModelProperty("联系人身份证照片")
    private String contactsIdcardImg;
    @ApiModelProperty("账号")
    private String account;
    @ApiModelProperty("删除标志(1有效,0删除)")
    private Integer del;
    @ApiModelProperty("类型")
    private List<IotCompanyTypeVO> typeList;
    public String getStatus() {
        return status;
@ -213,11 +204,11 @@ public class IotCompanyDO extends IdEntityWithOperation implements Serializable
        this.del = del;
    }
    public List<JSONObject> getTypeList() {
    public List<IotCompanyTypeVO> getTypeList() {
        return typeList;
    }
    public void setTypeList(List<JSONObject> typeList) {
    public void setTypeList(List<IotCompanyTypeVO> typeList) {
        this.typeList = typeList;
    }
}

+ 17 - 30
svr/svr-iot/src/main/java/com/yihu/iot/controller/company/IotCompanyController.java

@ -4,7 +4,9 @@ import com.yihu.iot.service.company.IotCompanyService;
import com.yihu.jw.exception.ApiException;
import com.yihu.jw.iot.company.IotCompanyDO;
import com.yihu.jw.restmodel.common.Envelop;
import com.yihu.jw.restmodel.common.EnvelopObj;
import com.yihu.jw.restmodel.common.EnvelopRestController;
import com.yihu.jw.restmodel.iot.company.IotCompanyVO;
import com.yihu.jw.rm.iot.IotRequestMapping;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -13,9 +15,6 @@ import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
/**
 * @author yeshijie on 2018/1/16.
 */
@ -29,15 +28,15 @@ public class IotCompanyController extends EnvelopRestController {
    @GetMapping(value = IotRequestMapping.Company.findCompanyPage)
    @ApiOperation(value = "分页查找企业", notes = "分页查找企业")
    public Envelop findCompanyPage(@ApiParam(name = "name", value = "供应商名称或联系人姓名", defaultValue = "")
    public Envelop<IotCompanyVO> findCompanyPage(@ApiParam(name = "name", value = "供应商名称或联系人姓名", defaultValue = "")
                                       @RequestParam(value = "name", required = false) String name,
                                   @ApiParam(name = "status", value = "审核状态", defaultValue = "")
                                                 @ApiParam(name = "status", value = "审核状态", defaultValue = "")
                                       @RequestParam(value = "status", required = false) String status,
                                   @ApiParam(name = "type", value = "企业类型", defaultValue = "")
                                                 @ApiParam(name = "type", value = "企业类型", defaultValue = "")
                                       @RequestParam(value = "type", required = false) String type,
                                   @ApiParam(name = "page", value = "第几页", defaultValue = "")
                                                 @ApiParam(name = "page", value = "第几页", defaultValue = "")
                                       @RequestParam(value = "page", required = false) Integer page,
                                   @ApiParam(name = "size", value = "每页记录数", defaultValue = "")
                                                 @ApiParam(name = "size", value = "每页记录数", defaultValue = "")
                                       @RequestParam(value = "size", required = false) Integer size){
        try {
            if(page == null|| page < 0){
@ -59,7 +58,7 @@ public class IotCompanyController extends EnvelopRestController {
    @PostMapping(value = IotRequestMapping.Company.addCompany)
    @ApiOperation(value = "创建企业", notes = "创建企业")
    public Envelop addCompany(@ApiParam(name = "jsonData", value = "json", defaultValue = "")
    public Envelop<IotCompanyVO> addCompany(@ApiParam(name = "jsonData", value = "json", defaultValue = "")
                                  @RequestParam(value = "jsonData", required = false)String jsonData) {
        try {
            IotCompanyDO iotCompany = toEntity(jsonData, IotCompanyDO.class);
@ -72,18 +71,22 @@ public class IotCompanyController extends EnvelopRestController {
    @GetMapping(value = IotRequestMapping.Company.findCompanyById)
    @ApiOperation(value = "根据id查找企业", notes = "根据id查找企业")
    public Envelop findByCode(@ApiParam(name = "id", value = "id")
    public EnvelopObj<IotCompanyVO> findByCode(@ApiParam(name = "id", value = "id")
                              @RequestParam(value = "id", required = true) String id) {
        try {
            return Envelop.getSuccess(IotRequestMapping.Company.message_success_find, iotCompanyService.findById(id));
            IotCompanyDO iotCompanyDO = iotCompanyService.findById(id);
            IotCompanyVO vo = convertToModel(iotCompanyDO,IotCompanyVO.class);
            EnvelopObj<IotCompanyVO> obj = new EnvelopObj<>();
            obj.setObj(vo);
            return obj;
        } catch (ApiException e) {
            return Envelop.getError(e.getMessage(), e.getErrorCode());
            return null;
        }
    }
    @PostMapping(value = IotRequestMapping.Company.delCompany)
    @ApiOperation(value = "删除企业", notes = "删除企业")
    public Envelop delCompany(@ApiParam(name = "id", value = "id")
    public Envelop<IotCompanyVO> delCompany(@ApiParam(name = "id", value = "id")
                              @RequestParam(value = "id", required = true) String id) {
        try {
            iotCompanyService.delCompany(id);
@ -95,7 +98,7 @@ public class IotCompanyController extends EnvelopRestController {
    @PostMapping(value = IotRequestMapping.Company.updCompany)
    @ApiOperation(value = "修改企业信息", notes = "修改企业信息")
    public Envelop updCompany(@ApiParam(name = "jsonData", value = "json", defaultValue = "")
    public Envelop<IotCompanyVO> updCompany(@ApiParam(name = "jsonData", value = "json", defaultValue = "")
                                  @RequestParam(value = "jsonData", required = false)String jsonData) {
        try {
            IotCompanyDO iotCompany = toEntity(jsonData, IotCompanyDO.class);
@ -106,20 +109,4 @@ public class IotCompanyController extends EnvelopRestController {
        }
    }
    @GetMapping(value = IotRequestMapping.Company.api_getList)
    @ApiOperation(value = "获取企业列表(不分页)")
    public Envelop getList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段(id,supplierName,type,contactsName,contactsMobile)", defaultValue = "")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档", defaultValue = "-createTime")
            @RequestParam(value = "sorts", required = false) String sorts) throws Exception {
        //得到list数据
        List<IotCompanyDO> list = iotCompanyService.search(fields,filters,sorts);
        //封装返回格式
        List<IotCompanyDO> iotCompanys = convertToModels(list, new ArrayList<>(list.size()), IotCompanyDO.class, fields);
        return Envelop.getSuccessList(IotRequestMapping.Company.message_success_find_functions,iotCompanys);
    }
}

+ 29 - 19
svr/svr-iot/src/main/java/com/yihu/iot/service/company/IotCompanyService.java

@ -1,12 +1,13 @@
package com.yihu.iot.service.company;
import com.alibaba.fastjson.JSONObject;
import com.yihu.base.mysql.query.BaseJpaService;
import com.yihu.iot.dao.company.IotCompanyDao;
import com.yihu.iot.dao.company.IotCompanyTypeDao;
import com.yihu.jw.iot.company.IotCompanyDO;
import com.yihu.jw.iot.company.IotCompanyTypeDO;
import com.yihu.jw.restmodel.common.Envelop;
import com.yihu.jw.restmodel.iot.company.IotCompanyTypeVO;
import com.yihu.jw.restmodel.iot.company.IotCompanyVO;
import com.yihu.jw.rm.iot.IotRequestMapping;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -66,7 +67,10 @@ public class IotCompanyService extends BaseJpaService<IotCompanyDO,IotCompanyDao
        //获取总数
        long count = getCount(filters);
        return Envelop.getSuccessListWithPage(IotRequestMapping.Company.message_success_find_functions,list, page, size,count);
        //DO转VO
        List<IotCompanyVO> iotCompanyVOList = convertToModels(list,new ArrayList<>(list.size()),IotCompanyVO.class);
        return Envelop.getSuccessListWithPage(IotRequestMapping.Company.message_success_find_functions,iotCompanyVOList, page, size,count);
    }
    /**
@ -78,7 +82,7 @@ public class IotCompanyService extends BaseJpaService<IotCompanyDO,IotCompanyDao
     * @param type
     * @return
     */
    public Envelop queryPage(Integer page,Integer size,String status,String name,String type){
    public Envelop<IotCompanyVO> queryPage(Integer page, Integer size, String status, String name, String type){
        StringBuffer sql = new StringBuffer("SELECT DISTINCT c.* from iot_company c ,iot_company_type t WHERE del=1 ");
        StringBuffer sqlCount = new StringBuffer("SELECT COUNT(DISTINCT c.id) count from iot_company c ,iot_company_type t WHERE del=1 ");
        List<Object> args = new ArrayList<>();
@ -107,7 +111,10 @@ public class IotCompanyService extends BaseJpaService<IotCompanyDO,IotCompanyDao
        List<Map<String,Object>> countList = jdbcTempalte.queryForList(sqlCount.toString());
        long count = Long.valueOf(countList.get(0).get("count").toString());
        return Envelop.getSuccessListWithPage(IotRequestMapping.Company.message_success_find_functions,list, page, size,count);
        //DO转VO
        List<IotCompanyVO> iotCompanyVOList = convertToModels(list,new ArrayList<>(list.size()),IotCompanyVO.class);
        return Envelop.getSuccessListWithPage(IotRequestMapping.Company.message_success_find_functions,iotCompanyVOList, page, size,count);
    }
    /**
@ -119,18 +126,19 @@ public class IotCompanyService extends BaseJpaService<IotCompanyDO,IotCompanyDao
        iotCompany.setSaasId(getCode());
        iotCompany.setDel(1);
        List<JSONObject> list = iotCompany.getTypeList();
        List<IotCompanyTypeVO> list = iotCompany.getTypeList();
        iotCompany = iotCompanyDao.save(iotCompany);
        String id = iotCompany.getId();
        //新增类型
        List<IotCompanyTypeDO> companyTypes = new ArrayList<>(10);
        for (JSONObject json:list) {
        list.forEach(one->{
            IotCompanyTypeDO companyType = new IotCompanyTypeDO();
            companyType.setSaasId(getCode());
            companyType.setCompanyId(iotCompany.getId());
            companyType.setType(json.getString("type"));
            companyType.setTypeName(json.getString("typeName"));
            companyType.setCompanyId(id);
            companyType.setType(one.getType());
            companyType.setTypeName(one.getTypeName());
            companyTypes.add(companyType);
        }
        });
        iotCompanyTypeDao.save(companyTypes);
        return iotCompany;
@ -154,13 +162,13 @@ public class IotCompanyService extends BaseJpaService<IotCompanyDO,IotCompanyDao
    public void findType(IotCompanyDO company){
        //查找类型
        List<IotCompanyTypeDO> companyTypes = iotCompanyTypeDao.findByCompanyId(company.getId());
        List<JSONObject> list = new ArrayList<>(8);
        List<IotCompanyTypeVO> list = new ArrayList<>(8);
        if(companyTypes.size()>0){
            companyTypes.forEach(one->{
                JSONObject json = new JSONObject();
                json.put("type",one.getType());
                json.put("typeName",one.getTypeName());
                list.add(json);
                IotCompanyTypeVO vo = new IotCompanyTypeVO();
                vo.setType(one.getType());
                vo.setTypeName(one.getTypeName());
                list.add(vo);
            });
        }
        company.setTypeList(list);
@ -185,14 +193,16 @@ public class IotCompanyService extends BaseJpaService<IotCompanyDO,IotCompanyDao
        List<IotCompanyTypeDO> typeList = iotCompanyTypeDao.findByCompanyId(iotCompany.getId());
        iotCompanyTypeDao.delete(typeList);
        List<IotCompanyTypeDO> companyTypes = new ArrayList<>(10);
        for (JSONObject json:iotCompany.getTypeList()) {
        iotCompany.getTypeList().forEach(one->{
            IotCompanyTypeDO companyType = new IotCompanyTypeDO();
            companyType.setSaasId(getCode());
            companyType.setCompanyId(iotCompany.getId());
            companyType.setType(json.getString("type"));
            companyType.setTypeName(json.getString("typeName"));
            companyType.setType(one.getType());
            companyType.setTypeName(one.getTypeName());
            companyTypes.add(companyType);
        }
        });
        iotCompanyTypeDao.save(companyTypes);
        iotCompanyDao.save(iotCompany);