Commit 095385f2 authored by zhangyingbin's avatar zhangyingbin

修改ugp,新增openapi的tzsfeign包

parent b2a75784
package com.yeejoin.amos.api.openapi.config;
import feign.codec.Encoder;
import feign.form.spring.SpringFormEncoder;
import org.springframework.beans.factory.ObjectFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.http.HttpMessageConverters;
import org.springframework.cloud.openfeign.support.SpringEncoder;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.context.request.RequestContextListener;
/**
* @Author: xl
* @Description:
* @Date: 2020/3/30 16:26
*/
@Configuration
public class MultipartSupportConfig {
@Autowired
private ObjectFactory<HttpMessageConverters> messageConverters;
@Bean
public Encoder feignFormEncoder() {
return new SpringFormEncoder(new SpringEncoder(messageConverters));
}
/**
* 创建Feign请求拦截器,在发送请求前设置认证的token,各个微服务将token设置到环境变量中来达到通用
* @return
*/
@Bean
public RequestContextListener requestInterceptor() {
return new RequestContextListener();
}
}
package com.yeejoin.amos.api.openapi.feign;
import com.yeejoin.amos.api.openapi.config.MultipartSupportConfig;
import net.sf.json.JSONObject;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import java.util.List;
@FeignClient(name = "TZS", path = "/tzs", configuration =
{MultipartSupportConfig.class})
public interface TzsServiceFeignClient {
/**
* 根据企业名称查询许可信息
* @param companyNames 企业名称(多个)
* @return
*/
@RequestMapping(value = "/baseUnitLicence/licences", method = RequestMethod.POST)
ResponseModel<List<JSONObject>> getLicenceByCompanyName(@RequestBody List<String> companyNames);
}
......@@ -130,4 +130,5 @@ public interface OrgUsrMapper extends BaseMapper<OrgUsr> {
List<Map<String, Object>> getWelderListByProjectId( @Param("projectId") String projectId, @Param("companyId") Long companyId, @Param("name") String name);
boolean updateIdByOrgName(Long sequenceNbr,String orgBizName);
}
......@@ -933,5 +933,8 @@ LEFT JOIN (
</select>
<update id="updateIdByOrgName" >
UPDATE cb_org_usr SET sequence_nbr = #{sequenceNbr} WHERE biz_org_name = #{orgBizName}
</update>
</mapper>
......@@ -18,7 +18,8 @@ public enum CompanyTypeEnum {
安装单位("INSTALL","安装单位","安装改造维修单位"),
设计单位("DESIGN","设计单位","设计单位"),
监检机构("MONITORING","检验检测单位","检验检测机构"),
监理单位("SUPERVISOR","监理单位","监理单位(燃气管道)");
监理单位("SUPERVISOR","监理单位","监理单位(燃气管道)"),
监察单位("SUPERVISION","监察单位","监察单位");
String key;
String type;
......
......@@ -200,4 +200,14 @@ public class ProjectDto extends BaseDto {
private String creditCode;
private String completionEstimateString;
private String constructionLicenseCode;
private String designLicenseCode;
private String installationLicenseCode;
private String supervisionLicenseCode;
private String testingLicenseCode;
}
......@@ -164,8 +164,8 @@ public class PipeController extends BaseController {
List<DictionarieValueModel> result = commonlyUsed.getResult();
result.forEach(item -> {
HashMap<String, Object> map = new HashMap<>();
map.put("name", item.getDictDataKey());
map.put("url", item.getDictDataValue());
map.put("label", item.getDictDataKey());
map.put("value", item.getDictDataValue());
map.put("img", item.getDictDataDesc());
maps.add(map);
});
......
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.utils.NameUtils;
import com.yeejoin.amos.boot.module.ugp.api.entity.WorkHistory;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.Api;
......@@ -70,14 +71,24 @@ public class WorkHistoryController extends BaseController {
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @param sequenceNbrs 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/{sequenceNbr}")
@DeleteMapping(value = "/{sequenceNbrs}")
@Transactional
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除焊工工作履历表", notes = "根据sequenceNbr删除焊工工作履历表")
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbr") Long sequenceNbr){
return ResponseHelper.buildResponse(workHistoryServiceImpl.removeById(sequenceNbr));
public ResponseModel<Boolean> deleteBySequenceNbr(HttpServletRequest request, @PathVariable(value = "sequenceNbrs") List<Long> sequenceNbrs){
boolean result = true;
if(!ValidationUtil.isEmpty(sequenceNbrs)){
for (Long sequenceNbr: sequenceNbrs) {
result = workHistoryServiceImpl.removeById(sequenceNbr);
if(!result){
break;
}
}
}
return ResponseHelper.buildResponse(result);
}
/**
......
......@@ -20,6 +20,7 @@ import com.yeejoin.amos.boot.module.ugp.api.mapper.SuperviseRuleMapper;
import com.yeejoin.amos.boot.module.ugp.api.mapper.UnitLicenceMapper;
import com.yeejoin.amos.boot.module.ugp.api.service.ICompanyService;
import com.yeejoin.amos.boot.module.ugp.api.dto.CompanyDto;
import com.yeejoin.amos.boot.module.ugp.biz.fegin.TzsServiceFeignClient;
import com.yeejoin.amos.boot.module.ugp.biz.framework.BusinessIdentify;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import com.yeejoin.amos.feign.privilege.Privilege;
......@@ -84,6 +85,9 @@ public class CompanyServiceImpl extends BaseService<CompanyDto, Company, Company
@Autowired
AmosRequestContext requestContext;
@Autowired
TzsServiceFeignClient tzsServiceFeign;
/**
* 列表查询 示例
*/
......@@ -402,15 +406,19 @@ public class CompanyServiceImpl extends BaseService<CompanyDto, Company, Company
return model;
}
public JSONObject getUnitLicenseCode(Long unitId) {
JSONObject jsonObject = new JSONObject();
if(!ValidationUtil.isEmpty(unitId)) {
UnitLicence unitLicence = new UnitLicence();
Company company = companyServiceImpl.getById(unitId);
String creditCode = company.getCreditCode();
LambdaQueryWrapper<UnitLicence> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(UnitLicence::getUnitCode, creditCode);
List<UnitLicence> list = unitLicenceService.list(wrapper);
if(ValidationUtil.isEmpty(company)){
return jsonObject;
}
List<String> companyName = new ArrayList<>();
companyName.add(company.getName());
List<UnitLicence> list = tzsServiceFeign.getLicenceByCompanyName(companyName).getResult();
Iterator<UnitLicence> iterator = list.iterator();
String licenseCode = "";
while (iterator.hasNext()) {
......@@ -426,6 +434,10 @@ public class CompanyServiceImpl extends BaseService<CompanyDto, Company, Company
return jsonObject;
}
public String licenseCode(Long unitId){
return getUnitLicenseCode(unitId).getString("licenseCode");
}
public void syncCompany(Object object) throws Exception {
// ugpAuthServiceImpl.setRequestContext();
RequestContext.setAppKey("AMOS_STUDIO");
......@@ -445,16 +457,31 @@ public class CompanyServiceImpl extends BaseService<CompanyDto, Company, Company
}
}
Collection<RegionModel> regionModels = Systemctl.regionClient.queryForTree(jsonObject.getString("district")).getResult();
RegionModel provence = regionModels.iterator().next();
RegionModel city = provence.getChildren().iterator().next();
RegionModel district = city.getChildren().iterator().next();
int regionCodeD = district.getRegionCode();
int regionCodeC = city.getRegionCode();
int regionCodeP = provence.getRegionCode();
model.setRegionCode(String.valueOf(regionCodeD));
model.setRegionCodeD(String.valueOf(regionCodeD));
model.setRegionCodeC(String.valueOf(regionCodeC));
model.setRegionCodeP(String.valueOf(regionCodeP));
if(ValidationUtil.isEmpty(regionModels)){
String city = jsonObject.getString("city");
if(city.length()>6){
city = city.substring(6);
} else if (city.length()<=6 && city.length()>3){
city = city.substring(3);
}
regionModels = Systemctl.regionClient.queryForTree(city).getResult();
}
RegionModel city = new RegionModel(),district= new RegionModel(),provence= new RegionModel();
provence = regionModels.iterator().next();
if(!ValidationUtil.isEmpty(provence.getChildren())) {
city = provence.getChildren().iterator().next();
if(!ValidationUtil.isEmpty(city.getChildren())) {
district = city.getChildren().iterator().next();
}
}
String regionCodeD = !ValidationUtil.isEmpty(district)? String.valueOf(district.getRegionCode()) : "";
String regionCodeC = !ValidationUtil.isEmpty(city)? String.valueOf(city.getRegionCode()) :"";
String regionCodeP = !ValidationUtil.isEmpty(provence)? String.valueOf(provence.getRegionCode()) :"";
String regionCode = !ValidationUtil.isEmpty(regionCodeD)?regionCodeD:(!ValidationUtil.isEmpty(regionCodeC)?regionCodeC:regionCodeP);
model.setRegionCode(regionCode);
model.setRegionCodeD(regionCodeD);
model.setRegionCodeC(regionCodeC);
model.setRegionCodeP(regionCodeP);
model.setType(type);
model.setCreditCode(jsonObject.getString("unitCode"));
model.setContact(jsonObject.getString("adminName"));
......
......@@ -236,17 +236,31 @@ public class OrgServiceImpl {
} else {
orgUsr.setBizOrgCode(OrgUsrServiceImpl.getOrgCodeStr());
}
LambdaQueryWrapper<OrgUsr> orgUsrLambdaQueryWrapper = new LambdaQueryWrapper<>();
orgUsrLambdaQueryWrapper.eq(OrgUsr::getBizOrgName,jsonObject.getString("name"));
OrgUsr orgUsrOld = orgUsrServiceImpl.getOne(orgUsrLambdaQueryWrapper);
if(ValidationUtil.isEmpty(orgUsrOld)) {
orgUsrServiceImpl.saveOrUpdate(orgUsr);
} else {
if (OrgEnum.普通人员.getKey().equals(bizOrgType)) {
orgUsr.setSequenceNbr(orgUsrOld.getSequenceNbr());
synchronized (this) {
LambdaQueryWrapper<OrgUsr> orgUsrLambdaQueryWrapper = new LambdaQueryWrapper<>();
orgUsrLambdaQueryWrapper.eq(OrgUsr::getBizOrgName, jsonObject.getString("name"));
OrgUsr orgUsrOld = orgUsrServiceImpl.getOne(orgUsrLambdaQueryWrapper);
if (ValidationUtil.isEmpty(orgUsrOld)) {
orgUsrServiceImpl.saveOrUpdate(orgUsr);
} else {
if (OrgEnum.普通人员.getKey().equals(bizOrgType)) {
orgUsr.setSequenceNbr(orgUsrOld.getSequenceNbr());
}
if(OrgEnum.公司.getKey().equals(bizOrgType)) {
Long companyId = jsonObject.getLong("sequenceNbr");
if(!ValidationUtil.isEmpty(companyId)){
orgUsr.setSequenceNbr(companyId);
} else {
orgUsr.setSequenceNbr(orgUsrOld.getSequenceNbr());
}
orgUsrServiceImpl.getBaseMapper().updateIdByOrgName(orgUsr.getSequenceNbr(),orgUsr.getBizOrgName());
}
orgUsrServiceImpl.saveOrUpdate(orgUsr, orgUsrLambdaQueryWrapper);
}
orgUsrServiceImpl.saveOrUpdate(orgUsr,orgUsrLambdaQueryWrapper);
}
return orgUsr;
}
......
......@@ -98,6 +98,9 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project
@Autowired
AttachmentMapper attachmentMapper;
@Autowired
CompanyServiceImpl companyService;
static final String symbolKey = "Symbol_key";
static final String status = "status";
......@@ -173,6 +176,11 @@ public class ProjectServiceImpl extends BaseService<ProjectDto, Project, Project
*/
public ProjectDto selectById(Long sequenceNbr){
ProjectDto projectDto = this.queryBySeq(sequenceNbr);
projectDto.setConstructionLicenseCode(companyService.licenseCode(projectDto.getConstructionUnitId()));
projectDto.setSupervisionLicenseCode(companyService.licenseCode(projectDto.getSupervisionUnitId()));
projectDto.setDesignLicenseCode(companyService.licenseCode(projectDto.getDesignUnitId()));
projectDto.setInstallationLicenseCode(companyService.licenseCode(projectDto.getInstallationUnitId()));
projectDto.setTestingLicenseCode(companyService.licenseCode(projectDto.getTestingUnitId()));
LambdaQueryWrapper<Pipe> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(Pipe::getProjectId,sequenceNbr);
List<Pipe> pipeList = pipeService.list(wrapper);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment