|
@@ -19,6 +19,7 @@ import com.jeeplus.modules.projectAccessory.dao.ProjectTemplateDao;
|
|
|
import com.jeeplus.modules.projectAccessory.entity.ProjectAccessoryRelationInfo;
|
|
|
import com.jeeplus.modules.projectAccessory.entity.ProjectTemplateInfo;
|
|
|
import com.jeeplus.modules.projectAccessory.service.ProjectAccessoryRelationService;
|
|
|
+import com.jeeplus.modules.projectEngineering.entity.ProjectEngineeringInfo;
|
|
|
import com.jeeplus.modules.projectEngineering.service.ProjectEngineeringService;
|
|
|
import com.jeeplus.modules.projectFilingBatch.entity.ProjectFilingBatch;
|
|
|
import com.jeeplus.modules.projectFilingBatch.entity.ProjectFilingbatchRelation;
|
|
@@ -36,15 +37,15 @@ import com.jeeplus.modules.projectreportnum.service.ProjectReportNumService;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectClientLinkmanDao;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectRecordsDao;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.dao.RuralWorkProjectUserDao;
|
|
|
+import com.jeeplus.modules.ruralprojectrecords.entity.ImportBRuralProjectRecords;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectcontentinfo;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.entity.SubProjectInfo;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.enums.ProjectStatusEnum;
|
|
|
import com.jeeplus.modules.serialnum.service.SerialNumTplService;
|
|
|
-import com.jeeplus.modules.sys.entity.MainDictDetail;
|
|
|
-import com.jeeplus.modules.sys.entity.Office;
|
|
|
-import com.jeeplus.modules.sys.entity.User;
|
|
|
-import com.jeeplus.modules.sys.entity.Workattachment;
|
|
|
+import com.jeeplus.modules.sys.dao.UserDao;
|
|
|
+import com.jeeplus.modules.sys.entity.*;
|
|
|
+import com.jeeplus.modules.sys.service.AreaService;
|
|
|
import com.jeeplus.modules.sys.service.OfficeService;
|
|
|
import com.jeeplus.modules.sys.service.WorkattachmentService;
|
|
|
import com.jeeplus.modules.sys.utils.DictUtils;
|
|
@@ -85,6 +86,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.*;
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.net.URLEncoder;
|
|
|
import java.util.*;
|
|
|
|
|
@@ -161,6 +163,10 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
|
|
|
private WorkContractInfoService workContractInfoService;
|
|
|
@Autowired
|
|
|
private ProjectReportNumService projectReportNumService;
|
|
|
+ @Autowired
|
|
|
+ private AreaService areaService;
|
|
|
+ @Autowired
|
|
|
+ private UserDao userDao;
|
|
|
|
|
|
/**
|
|
|
* 获取咨询项目类别
|
|
@@ -2368,4 +2374,387 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
|
|
|
projectReportDataTwoDao.updateStatus(projectReportDataTwo);
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ /**
|
|
|
+ * B类项目批量导入
|
|
|
+ * @param list
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Transactional(readOnly = false)
|
|
|
+ public String disposeImportBRuralProjectRecords(List<ImportBRuralProjectRecords> list){
|
|
|
+ Set<String> projectNameSet = new HashSet<>();
|
|
|
+ Iterator<ImportBRuralProjectRecords> iterator = list.iterator();
|
|
|
+ while(iterator.hasNext()){
|
|
|
+ ImportBRuralProjectRecords info = iterator.next();
|
|
|
+ if(StringUtils.isBlank(info.getWhetherContract())
|
|
|
+ && StringUtils.isBlank(info.getProjectName())
|
|
|
+ && StringUtils.isBlank(info.getAreaName())
|
|
|
+ && StringUtils.isBlank(info.getLeaderName())
|
|
|
+ && StringUtils.isBlank(info.getEngineeringName())
|
|
|
+ && StringUtils.isBlank(info.getWhetherReportNumber())
|
|
|
+ && StringUtils.isBlank(info.getSubmitScaleStr())
|
|
|
+ && StringUtils.isBlank(info.getAttachmentProjectSort())){
|
|
|
+ iterator.remove();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for (ImportBRuralProjectRecords importBRuralProjectRecords : list){
|
|
|
+ //将项目名放入set中
|
|
|
+ projectNameSet.add(importBRuralProjectRecords.getProjectName());
|
|
|
+ }
|
|
|
+ //将set转换为list
|
|
|
+ List<String> projectNameList = new ArrayList<>(projectNameSet);
|
|
|
+ //判断项目名list长度和导入数据的list长度是否一样,不一样则说明导入数据中项目名存在重复数据
|
|
|
+ if(projectNameList.size() != list.size()){
|
|
|
+ return "数据中存在重复项目名";
|
|
|
+ }else{
|
|
|
+ //根据项目名称集合查询项目信息是否存在
|
|
|
+ Integer projectByNameList = dao.getProjectByNameList(projectNameList);
|
|
|
+ if(projectByNameList>0){
|
|
|
+ return "数据中存在重复项目名";
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ List<RuralProjectRecords> projectRecordsList = Lists.newArrayList();
|
|
|
+ for (ImportBRuralProjectRecords importBRuralProjectRecords : list){
|
|
|
+ try{
|
|
|
+ RuralProjectRecords projectRecords = new RuralProjectRecords();
|
|
|
+ //判定必填项是否填完
|
|
|
+ if(StringUtils.isBlank(importBRuralProjectRecords.getWhetherContract())
|
|
|
+ || StringUtils.isBlank(importBRuralProjectRecords.getProjectName())
|
|
|
+ || StringUtils.isBlank(importBRuralProjectRecords.getAreaName())
|
|
|
+ || StringUtils.isBlank(importBRuralProjectRecords.getLeaderName())
|
|
|
+ || StringUtils.isBlank(importBRuralProjectRecords.getEngineeringName())
|
|
|
+ || StringUtils.isBlank(importBRuralProjectRecords.getWhetherReportNumber())
|
|
|
+ || StringUtils.isBlank(importBRuralProjectRecords.getSubmitScaleStr())
|
|
|
+ || StringUtils.isBlank(importBRuralProjectRecords.getAttachmentProjectSort())){
|
|
|
+ return "必填项没有填全";
|
|
|
+ }
|
|
|
+ //设置项目类型为造价审核类型
|
|
|
+ projectRecords.setProjectType("2");
|
|
|
+ //设置为B类项目
|
|
|
+ projectRecords.setSubmitMoney("1");
|
|
|
+ //默认设置为紧急项目
|
|
|
+ projectRecords.setEmergencyProject("1");
|
|
|
+ //设置项目状态为5
|
|
|
+ projectRecords.setProjectStatus(5);
|
|
|
+ //填入项目名称
|
|
|
+ projectRecords.setProjectName(importBRuralProjectRecords.getProjectName());
|
|
|
+
|
|
|
+ if(null != importBRuralProjectRecords.getBeginDate() && null != importBRuralProjectRecords.getEndDate()){
|
|
|
+ int compareTo = importBRuralProjectRecords.getEndDate().compareTo(importBRuralProjectRecords.getBeginDate());
|
|
|
+ if(compareTo < 0){
|
|
|
+ return "项目开始时间不能小于结束时间";
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //处理项目开始时间
|
|
|
+ if(null != importBRuralProjectRecords.getBeginDate()){
|
|
|
+ projectRecords.setStartDate(importBRuralProjectRecords.getBeginDate());
|
|
|
+ }
|
|
|
+ //处理项目结束时间
|
|
|
+ if(null != importBRuralProjectRecords.getEndDate()){
|
|
|
+ projectRecords.setEndingDate(importBRuralProjectRecords.getEndDate());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ //项目所在地处理
|
|
|
+ List<String> areaNameList = Arrays.asList(importBRuralProjectRecords.getAreaName().split("-"));
|
|
|
+ if(areaNameList.size() == 2){
|
|
|
+ //根据名称查询省级单位信息
|
|
|
+ Area province = areaService.getByNameAndParentId(areaNameList.get(0),"1");
|
|
|
+ if(null == province ){
|
|
|
+ return "项目所在地填写错误,查询不到省级信息";
|
|
|
+ }
|
|
|
+ //根据名称查询市级单位信息
|
|
|
+ Area city = areaService.getByNameAndParentId(areaNameList.get(1),province.getId());
|
|
|
+ if(null == city){
|
|
|
+ return "项目所在地填写错误,查询不到市级信息";
|
|
|
+ }
|
|
|
+ projectRecords.setArea(city);
|
|
|
+ projectRecords.setProvince(province.getName());
|
|
|
+ projectRecords.setCity(city.getName());
|
|
|
+ }else if(areaNameList.size() == 3){
|
|
|
+ //根据名称查询省级单位信息
|
|
|
+ Area province = areaService.getByNameAndParentId(areaNameList.get(0),"1");
|
|
|
+ if(null == province ){
|
|
|
+ return "项目所在地填写错误,查询不到省级信息";
|
|
|
+ }
|
|
|
+ //根据名称查询市级单位信息
|
|
|
+ Area city = areaService.getByNameAndParentId(areaNameList.get(1),province.getId());
|
|
|
+ if(null == city){
|
|
|
+ return "项目所在地填写错误,查询不到市级信息";
|
|
|
+ }
|
|
|
+ //根据名称查询区级单位信息
|
|
|
+ Area district = areaService.getByNameAndParentId(areaNameList.get(2),city.getId());
|
|
|
+ if(null == district){
|
|
|
+ return "项目所在地填写错误,查询不到区级信息";
|
|
|
+ }
|
|
|
+ projectRecords.setProvince(province.getName());
|
|
|
+ projectRecords.setCity(city.getName());
|
|
|
+ projectRecords.setCounty(district.getName());
|
|
|
+ projectRecords.setArea(district);
|
|
|
+ }else{
|
|
|
+ return "项目所在地填写错误";
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断投资性质
|
|
|
+ List<MainDictDetail> projectPropertiesList = DictUtils.getMainDictList("project_properties");
|
|
|
+ for (MainDictDetail projectProperties: projectPropertiesList) {
|
|
|
+ if(projectProperties.getLabel().equals(importBRuralProjectRecords.getProjectProperties())){
|
|
|
+ projectRecords.setProjectProperties(projectProperties.getValue());
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(StringUtils.isBlank(projectRecords.getProjectProperties())){
|
|
|
+ return "投资性质填写有误";
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断项目类别
|
|
|
+ List<MainDictDetail> attachmentProjectSortCostList = DictUtils.getMainDictList("attachment_project_sort_cost");
|
|
|
+ for (MainDictDetail attachmentProjectSortCost: attachmentProjectSortCostList) {
|
|
|
+ if(attachmentProjectSortCost.getLabel().equals(importBRuralProjectRecords.getAttachmentProjectSort())){
|
|
|
+ projectRecords.setAttachmentProjectSort(attachmentProjectSortCost.getValue());
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(StringUtils.isBlank(projectRecords.getAttachmentProjectSort())){
|
|
|
+ return "项目类别填写有误";
|
|
|
+ }
|
|
|
+ if("5".equals(projectRecords.getAttachmentProjectSort()) || "6".equals(projectRecords.getAttachmentProjectSort())){
|
|
|
+ projectRecords.setReportedState("10");
|
|
|
+ }else{
|
|
|
+ projectRecords.setReportedState(null);
|
|
|
+ }
|
|
|
+
|
|
|
+ //判断工程类型
|
|
|
+ List<ProjectEngineeringInfo> engineeringInfos=engineeringService.findList(new ProjectEngineeringInfo());
|
|
|
+ for (ProjectEngineeringInfo engineeringInfo: engineeringInfos) {
|
|
|
+ if(engineeringInfo.getEngineeringName().equals(importBRuralProjectRecords.getEngineeringName())){
|
|
|
+ //判定当前的数据是否存在子集,如果存在子集则不允许添加
|
|
|
+ List<ProjectEngineeringInfo> childInfoList = engineeringService.getChildInfoList(engineeringInfo.getId());
|
|
|
+ if(childInfoList.size()>0){
|
|
|
+ return "工程类型必须选择最低节点,填写有误";
|
|
|
+ }
|
|
|
+ projectRecords.setEngineeringType(engineeringInfo.getId());
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(StringUtils.isBlank(projectRecords.getEngineeringType())){
|
|
|
+ return "工程类型填写有误";
|
|
|
+ }
|
|
|
+
|
|
|
+ Office company= new Office();
|
|
|
+ Office office = new Office();
|
|
|
+
|
|
|
+ if("是".equals(importBRuralProjectRecords.getWhetherContract())){
|
|
|
+ //判断当是否有合同为是时,合同编号是否为空
|
|
|
+ if(StringUtils.isBlank(importBRuralProjectRecords.getContractNumber())){
|
|
|
+ return "是否有合同选择是的情况下合同编号为空";
|
|
|
+ }
|
|
|
+ //根据合同编号查询合同信息
|
|
|
+ //判断当前的合同是否被作废或者删除
|
|
|
+ WorkContractInfo workContractInfo = contractInfoService.getByContractNum(importBRuralProjectRecords.getContractNumber());
|
|
|
+ if(null == workContractInfo){
|
|
|
+ return "合同编号:"+ importBRuralProjectRecords.getContractNumber() + " 不存在或已删除";
|
|
|
+ }else{
|
|
|
+ company.setId(workContractInfo.getCompanyId());
|
|
|
+ office.setId(UserUtils.getUser().getOffice().getId());
|
|
|
+ projectRecords.setWorkContractInfo(workContractInfo);
|
|
|
+ //添加委托方联系人信息
|
|
|
+ if(null != workContractInfo.getClient() && StringUtils.isNotBlank(workContractInfo.getClient().getId())){
|
|
|
+ List<WorkClientLinkman> linkmanList = workClientInfoService.queryLinkManByClientId(workContractInfo.getClient().getId());
|
|
|
+ WorkClientLinkman linkman = linkmanList.get(0);
|
|
|
+ WorkClientInfo workClientInfo = workClientInfoService.get(workContractInfo.getClient().getId());
|
|
|
+ linkman.setClientId(workClientInfo);
|
|
|
+ List<WorkClientLinkman> clientLinkmanList = Lists.newArrayList();
|
|
|
+ clientLinkmanList.add(linkman);
|
|
|
+ projectRecords.setWorkClientLinkmanList(clientLinkmanList);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else if("否".equals(importBRuralProjectRecords.getWhetherContract())){
|
|
|
+ //判断当是否有合同为否时,客户编号是否为空
|
|
|
+ if(StringUtils.isBlank(importBRuralProjectRecords.getClientNumber())){
|
|
|
+ return "是否有合同选择否的情况下客户编号为空";
|
|
|
+ }
|
|
|
+ //根据客户编号查询客户信息
|
|
|
+ WorkClientInfo workClientInfo = workClientInfoService.getByName(importBRuralProjectRecords.getClientNumber());
|
|
|
+ if(null == workClientInfo){
|
|
|
+ return "客户编号:"+ importBRuralProjectRecords.getClientNumber() + " 不存在或已删除";
|
|
|
+ }
|
|
|
+ List<WorkClientLinkman> linkmanList = workClientInfoService.queryLinkManByClientId(workClientInfo.getId());
|
|
|
+ WorkClientLinkman linkman = linkmanList.get(0);
|
|
|
+ linkman.setClientId(workClientInfo);
|
|
|
+ List<WorkClientLinkman> clientLinkmanList = Lists.newArrayList();
|
|
|
+ clientLinkmanList.add(linkman);
|
|
|
+ projectRecords.setWorkClientLinkmanList(clientLinkmanList);
|
|
|
+ WorkContractInfo workContractInfo = new WorkContractInfo();
|
|
|
+ workContractInfo.setId("");
|
|
|
+ projectRecords.setWorkContractInfo(workContractInfo);
|
|
|
+ //无合同
|
|
|
+ company.setId(UserUtils.getUser().getCompany().getId());
|
|
|
+ office.setId(UserUtils.getUser().getOffice().getId());
|
|
|
+ }else{
|
|
|
+ return "是否有合同栏填写不正确";
|
|
|
+ }
|
|
|
+ projectRecords.setCompany(company);
|
|
|
+ projectRecords.setOffice(office);
|
|
|
+
|
|
|
+ //判定送审规模
|
|
|
+ //将字符串转换为BigDecimal
|
|
|
+ BigDecimal submitScale=new BigDecimal(importBRuralProjectRecords.getSubmitScaleStr());
|
|
|
+ BigDecimal twoHundred = new BigDecimal("200");
|
|
|
+ BigDecimal fiveHundred = new BigDecimal("500");
|
|
|
+ if (submitScale.compareTo(fiveHundred) >=0 ){
|
|
|
+ return "送审规模达到A级项目标准,无法进行导入";
|
|
|
+ }
|
|
|
+ if(submitScale.compareTo(twoHundred) >=0 && ("101".equals(projectRecords.getProjectProperties()) || "5".equals(projectRecords.getProjectProperties()))){
|
|
|
+ return "送审规模达到A级项目标准,无法进行导入";
|
|
|
+ }
|
|
|
+ //添加送审规模
|
|
|
+ projectRecords.setSubmitScale(submitScale);
|
|
|
+
|
|
|
+ //处理项目责任人
|
|
|
+ User userLeader = UserUtils.getByUserName(importBRuralProjectRecords.getLeaderName());
|
|
|
+ if(null == userLeader){
|
|
|
+ return "无法查询到项目责任人";
|
|
|
+ }
|
|
|
+ List<User> userLeaderList = Lists.newArrayList();
|
|
|
+ userLeaderList.add(userLeader);
|
|
|
+ projectRecords.setProjectLeaders(userLeaderList);
|
|
|
+
|
|
|
+
|
|
|
+ //判断项目负责人
|
|
|
+ User userMaster = UserUtils.getByUserName(importBRuralProjectRecords.getProjectMasterName());
|
|
|
+ User user = new User();
|
|
|
+ user.setOffice(userMaster.getOffice());
|
|
|
+ user.setName(importBRuralProjectRecords.getProjectMasterName());
|
|
|
+ if(!userMaster.getCompany().getId().equals("1")) {
|
|
|
+ user.setCompany(userMaster.getCompany());
|
|
|
+ }
|
|
|
+ List<User> userMasterList = userDao.findUserByOfficeIdAndNameOnReported(user);
|
|
|
+ if(userMasterList.size() == 0){
|
|
|
+ return "项目负责人必须有一级造价师资格证";
|
|
|
+ }else{
|
|
|
+ projectRecords.setProjectMasterId(userMasterList.get(0).getId());
|
|
|
+ projectRecords.setProjectMasterName(userMasterList.get(0).getName());
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ User createBy = projectRecords.getCreateBy();
|
|
|
+ if(createBy != null){
|
|
|
+ createBy = UserUtils.get(createBy.getId());
|
|
|
+ }else {
|
|
|
+ createBy = UserUtils.getUser();
|
|
|
+ }
|
|
|
+ //添加项目编号
|
|
|
+ synchronized (SYN_BYTE) {
|
|
|
+ if (StringUtils.isBlank(projectRecords.getProjectId())) {
|
|
|
+ if ("1".equals(projectRecords.getProjectType())) {
|
|
|
+ if(projectRecords.getAttachmentProjectSort().equals("6")){
|
|
|
+ projectRecords.setProjectId(serialNumTplService.genSerialNum(createBy.getCompany(), RuralProjectRecords.PROJECT_COST_APPRAISAL));
|
|
|
+ }else if(projectRecords.getAttachmentProjectSort().equals("7")){
|
|
|
+ projectRecords.setProjectId(serialNumTplService.genSerialNum(createBy.getCompany(), RuralProjectRecords.ECONOMIC_EVALUATION));
|
|
|
+ }else{
|
|
|
+ projectRecords.setProjectId(serialNumTplService.genSerialNum(createBy.getCompany(), RuralProjectRecords.SERIAL_BIZCODE));
|
|
|
+ }
|
|
|
+ } else if ("2".equals(projectRecords.getProjectType())) {
|
|
|
+ projectRecords.setProjectId(serialNumTplService.genSerialNum(createBy.getCompany(), RuralProjectRecords.SERIAL_COST_BIZCODE));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //判断是否需要生成报告号
|
|
|
+ if("是".equals(importBRuralProjectRecords.getWhetherReportNumber())){
|
|
|
+
|
|
|
+ }else if("否".equals(importBRuralProjectRecords.getWhetherReportNumber())){
|
|
|
+
|
|
|
+ }else{
|
|
|
+ return "是否生成报告填写不正确";
|
|
|
+ }
|
|
|
+ //添加是否生成报告标识
|
|
|
+ projectRecords.setWhetherReportNumber(importBRuralProjectRecords.getWhetherReportNumber());
|
|
|
+ projectRecordsList.add(projectRecords);
|
|
|
+
|
|
|
+ }catch (Exception ex) {
|
|
|
+ ex.getMessage();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //对数据进行新增处理
|
|
|
+ for (RuralProjectRecords projectRecords: projectRecordsList) {
|
|
|
+ //添加创建人信息
|
|
|
+ projectRecords.preInsert();
|
|
|
+ dao.insert(projectRecords);
|
|
|
+ //保存项目负责人
|
|
|
+ List<User> leaders = projectRecords.getProjectLeaders();
|
|
|
+ this.saveProjectUsers(projectRecords.getId(), leaders, true);
|
|
|
+
|
|
|
+ //保存委托方联系人1
|
|
|
+ List<WorkClientLinkman> workClientLinkmanList = projectRecords.getWorkClientLinkmanList();
|
|
|
+ this.saveLinkmanInfos(projectRecords.getId(), workClientLinkmanList, 1);
|
|
|
+
|
|
|
+ //项目送审之后处理项目合同文件信息
|
|
|
+ //查询咨询合同附件类型id
|
|
|
+ ProjectTemplateInfo projectTemplateInfo = projectTemplateDao.getProjectTemplateInfoByName("咨询合同");
|
|
|
+ //删除该项目咨询合同类型中老合同对应的附件信息
|
|
|
+ WorkClientAttachment attchment = new WorkClientAttachment();
|
|
|
+ attchment.setAttachmentId(projectTemplateInfo.getId());
|
|
|
+ attchment.setProjectId(projectRecords.getId());
|
|
|
+ //将新合同对应的附件信息添加到咨询合同中
|
|
|
+
|
|
|
+ if(null != projectRecords.getWorkContractInfo() && null != projectRecords.getWorkContractInfo().getWorkAttachments()){
|
|
|
+ WorkClientAttachment workattachment = new WorkClientAttachment();
|
|
|
+ for (WorkClientAttachment info:projectRecords.getWorkContractInfo().getWorkAttachments()) {
|
|
|
+ workattachment.setType(info.getType());
|
|
|
+ workattachment.setAttachmentName(info.getAttachmentName());
|
|
|
+ workattachment.setUrl(info.getUrl());
|
|
|
+ workattachment.setAttachmentUser(info.getAttachmentUser());
|
|
|
+ workattachment.setAttachmentFlag(info.getAttachmentFlag());
|
|
|
+ workattachment.setAttachmentId(projectTemplateInfo.getId());
|
|
|
+ workattachment.setProjectId(projectRecords.getId());
|
|
|
+ switch (uploadMode){
|
|
|
+ case "1":
|
|
|
+ workattachment.setUrl(workattachment.getUrl().replace(bosUrl,""));
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ workattachment.setUrl(workattachment.getUrl().replace(aliyunUrl,""));
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ workattachment.preInsert();
|
|
|
+ workClientAttachmentDao.insert(workattachment);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //判断是否需要生成报告号
|
|
|
+ if("是".equals(projectRecords.getWhetherReportNumber())){
|
|
|
+ this.createReportDataId(projectRecords);
|
|
|
+ }else if("否".equals(projectRecords.getWhetherReportNumber())){
|
|
|
+
|
|
|
+ }else{
|
|
|
+ return "是否生成报告填写不正确";
|
|
|
+ }
|
|
|
+
|
|
|
+ //添加项目工作内容表
|
|
|
+ Projectcontentinfo projectcontentinfo = null;
|
|
|
+ if(StringUtils.isNotBlank(projectRecords.getId())){
|
|
|
+ projectcontentinfo = projectcontentinfoDao.getByProjectId(projectRecords.getId());
|
|
|
+ }
|
|
|
+ if (null==projectcontentinfo){
|
|
|
+ projectcontentinfo = new Projectcontentinfo();
|
|
|
+ }
|
|
|
+ projectcontentinfo.setProjectOnRural(projectRecords);
|
|
|
+ projectcontentinfo.setCompanyId(projectRecords.getCompany().getId());
|
|
|
+ projectcontentinfo.setOfficeId(projectRecords.getOffice().getId());
|
|
|
+ projectcontentinfo.setSort(30);
|
|
|
+ projectcontentinfo.setParentIds("0,");
|
|
|
+ projectcontentinfo.setParent(new Projectcontentinfo("0"));
|
|
|
+ projectcontentinfo.setName(projectRecords.getProjectId());
|
|
|
+ if (StringUtils.isNotBlank(projectcontentinfo.getId())){
|
|
|
+ projectcontentinfoDao.update(projectcontentinfo);
|
|
|
+ }else{
|
|
|
+ projectcontentinfo.preInsert();
|
|
|
+ projectcontentinfoDao.insertOnRural(projectcontentinfo);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ return "导入B类项目成功";
|
|
|
+ }
|
|
|
}
|