Merge remote-tracking branch 'origin/cc_partner_init' into cc_partner_init

This commit is contained in:
bianyadong
2024-05-06 16:00:09 +08:00
22 changed files with 494 additions and 127 deletions

View File

@@ -34,4 +34,13 @@ public enum LicenseTypeEnum {
} }
return null; return null;
} }
public static LicenseTypeEnum matchName(String name) {
for (LicenseTypeEnum type : LicenseTypeEnum.values()) {
if (type.getMessage().equals(name)) {
return type;
}
}
return null;
}
} }

View File

@@ -21,11 +21,11 @@ public class AcceptanceInfoDAO {
@Resource @Resource
private AcceptanceInfoMapper acceptanceInfoMapper; private AcceptanceInfoMapper acceptanceInfoMapper;
public Long insertAcceptanceInfo(AcceptanceInfoDO acceptanceInfoDO){ public Long insertSelectiveAcceptanceInfo(AcceptanceInfoDO acceptanceInfoDO){
if (Objects.isNull(acceptanceInfoDO)){ if (Objects.isNull(acceptanceInfoDO)){
return null; return null;
} }
acceptanceInfoMapper.insert(acceptanceInfoDO); acceptanceInfoMapper.insertSelective(acceptanceInfoDO);
return acceptanceInfoDO.getId(); return acceptanceInfoDO.getId();
} }
public List<AcceptanceInfoDO> selectAcceptanceInfoBySignatures(Integer status){ public List<AcceptanceInfoDO> selectAcceptanceInfoBySignatures(Integer status){

View File

@@ -0,0 +1,42 @@
package com.cool.store.dto.decoration;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
/**
* @Auther: WangShuo
* @Date: 2024/05/06/下午3:31
* @Version 1.0
* @注释:
*/
@Data
public class AssessmentDataDTO {
@ApiModelProperty("模板id")
private Long templateId;
private Long shopId;
/**
* 店铺是否合格
*/
@ApiModelProperty("店铺是否合格0合格1不合格")
private Boolean qualified;
/**
* 原因
*/
@ApiModelProperty("不合格原因")
private String reason;
/**
* 评语
*/
@ApiModelProperty("评语")
private String comments;
}

View File

@@ -0,0 +1,20 @@
package com.cool.store.dto.decoration;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Auther: WangShuo
* @Date: 2024/05/06/下午3:09
* @Version 1.0
* @注释:
*/
@Data
public class ThreeAcceptanceDTO {
@ApiModelProperty("验收签名 ")
private String AcceptanceSignatures;
@ApiModelProperty("验收评语")
private String Comments;
@ApiModelProperty("0通过1不通过")
private Integer ResultType;
}

View File

@@ -0,0 +1,21 @@
package com.cool.store.request;
import com.cool.store.dto.decoration.AssessmentDataDTO;
import com.cool.store.entity.AssessmentDataDO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Auther: WangShuo
* @Date: 2024/05/06/下午3:17
* @Version 1.0
* @注释:
*/
@Data
public class ThreeAcceptanceCheckRequest {
private Long shopId;
@ApiModelProperty("检查项")
private List<AssessmentDataDTO> assessmentDataDTOS;
}

View File

@@ -1,5 +1,6 @@
package com.cool.store.request; package com.cool.store.request;
import com.cool.store.dto.decoration.ThreeAcceptanceDTO;
import com.cool.store.entity.AssessmentDataDO; import com.cool.store.entity.AssessmentDataDO;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@@ -15,24 +16,12 @@ import java.util.List;
@Data @Data
public class ThreeAcceptanceRequest { public class ThreeAcceptanceRequest {
private Long shopId; private Long shopId;
@ApiModelProperty("工程部验收签名 {pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":1}") @ApiModelProperty("工程部验收")
private String engineeringAcceptanceSignatures; private ThreeAcceptanceDTO engineeringAcceptance;
@ApiModelProperty("工程部验收评语") @ApiModelProperty("营运部验收")
private String engineeringComments; private ThreeAcceptanceDTO operationsAcceptance;
@ApiModelProperty("0通过1不通过") @ApiModelProperty("加盟商验收")
private Integer engineeringResultType; private ThreeAcceptanceDTO partnerAcceptance;
@ApiModelProperty("营运部验收签名 {\"pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":1}")
private String operationsAcceptanceSignatures;
@ApiModelProperty("营运部验收评语")
private String operationsComments;
@ApiModelProperty("0通过1不通过")
private Integer operationsResultType;
@ApiModelProperty("加盟商验收签名 {\"pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":0}")
private String partnerAcceptanceSignatures;
@ApiModelProperty("加盟商验收评语")
private String partnerComments;
@ApiModelProperty("0通过1不通过")
private Integer partnerResultType;
@ApiModelProperty("检查项") @ApiModelProperty("检查项")
private List<AssessmentDataDO> assessmentDataDOS; private List<AssessmentDataDO> assessmentDataDOS;
} }

View File

@@ -0,0 +1,165 @@
package com.cool.store.response;
import lombok.Data;
@Data
public class GetStoreInfoByCodeResponse {
/**
* 返回结果代码
* 结果代码
*/
private Integer code;
/**
* 返回结果数据
* 结果数据
*/
private InnerData data;
/**
* 提示信息
*/
private String message;
@Data
public static class InnerData {
/**
* 开店状态0=关店1=开店
*/
private String closeTime;
/**
* 加盟商编码
*/
private String franchiseeId;
/**
* 开店状态0=关店1=开店
*/
private Long hdStatus;
/**
* 维度
*/
private String latitude;
/**
* 经度
*/
private String longitude;
/**
* 门店开业时间
*/
private String openDate;
/**
* 开店状态0=关店1=开店
*/
private String openTime;
/**
* 门店地址
*/
private String storeAdd;
/**
* 小区
*/
private String storeArea;
/**
* 门店代码
*/
private String storeCode;
/**
* 大区
*/
private String storeCompany;
/**
* 门店证照信息
*/
private StoreDocument storeDocument;
/**
* 战区
*/
private String storeLarge;
/**
* 门店名称
*/
private String storeName;
/**
* 门店性质
*/
private String storeType;
}
@Data
public static class StoreDocument {
/**
* 营业执照经营场所/住所
*/
private String storeBusinessAdd;
/**
* 营业执照发证日期
*/
private String storeBusinessDate;
/**
* 营业执照图片
*/
private String storeBusinessImg;
/**
* 营业执照名称
*/
private String storeBusinessName;
/**
* 营业执照统一社会信用代码
*/
private String storeBusinessNumber;
/**
* 营业执照类型
*/
private String storeBusinessType;
/**
* 营业执照有效期, 非OCR识别手填。9=长期有效非长期有效则为具体日期2026-06-01
*/
private String storeBusinessValidPeriod;
/**
* 门店代码
*/
private String storeCode;
/**
* 营业执照经营者/法人
*/
private String storeDirector;
/**
* 食品流通经营许可证编号
*/
private String storeFoodLicense;
/**
* 食品流通/经营许可证有效期开始日期
*/
private String storeFoodLicenseBeginDate;
/**
* 食品经营许可证经营场所
*/
private String storeFoodLicenseBusinessAddress;
/**
* 食品经营许可证经营项目
*/
private String storeFoodLicenseBusinessScope;
/**
* 食品流通/经营许可证有效期结束日期
*/
private String storeFoodLicenseEndDate;
/**
* 食品经营许可证照片
*/
private String storeFoodLicenseImg;
/**
* 食品经营许可证法定代表人(负责人)
*/
private String storeFoodLicenseLegalRepresentative;
/**
* 食品经营许可证主体业态
*/
private String storeFoodLicenseMainBusiness;
/**
* 食品经营许可证经营者名称
*/
private String storeFoodLicenseOperatorName;
/**
* 备注
*/
private String storeRemark;
}
}

View File

@@ -1,7 +1,9 @@
package com.cool.store.response; package com.cool.store.response;
import cn.hutool.core.date.DateUtil;
import com.cool.store.entity.LicenseTransactDO; import com.cool.store.entity.LicenseTransactDO;
import com.cool.store.entity.ShopAuditInfoDO; import com.cool.store.entity.ShopAuditInfoDO;
import com.cool.store.enums.LicenseTypeEnum;
import com.cool.store.vo.ShopAuditInfoVO; import com.cool.store.vo.ShopAuditInfoVO;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
@@ -9,6 +11,7 @@ import lombok.Data;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Objects;
@Data @Data
@ApiModel("提交证照办理响应体") @ApiModel("提交证照办理响应体")
@@ -89,8 +92,43 @@ public class SubmitLicenseResponse {
@ApiModelProperty("流程记录") @ApiModelProperty("流程记录")
private List<ShopAuditInfoVO> processRecords; private List<ShopAuditInfoVO> processRecords;
public static SubmitLicenseResponse from(GetStoreInfoByCodeResponse storeInfoCode){
if (Objects.isNull(storeInfoCode)){
return null;
}
GetStoreInfoByCodeResponse.InnerData data = storeInfoCode.getData();
GetStoreInfoByCodeResponse.StoreDocument storeDocument = data.getStoreDocument();
boolean storeBusinessValidPeriod = storeDocument.getStoreBusinessValidPeriod().equals("9");
SubmitLicenseResponse submitLicenseResponse = new SubmitLicenseResponse();
submitLicenseResponse.setId(null);
submitLicenseResponse.setShopId(null);
submitLicenseResponse.setLicenseType(LicenseTypeEnum.matchName(storeDocument.getStoreBusinessType()).getCode());
submitLicenseResponse.setLicenseLegalPerson(storeDocument.getStoreDirector());
submitLicenseResponse.setIssueTime(DateUtil.parseTime(storeDocument.getStoreBusinessDate()));
submitLicenseResponse.setLicenseAddress(storeDocument.getStoreBusinessAdd());
submitLicenseResponse.setValidity(storeBusinessValidPeriod ? null : DateUtil.parseTime(storeDocument.getStoreBusinessValidPeriod()));
submitLicenseResponse.setOperator(storeDocument.getStoreDirector());
submitLicenseResponse.setFoodLicenseLegalPerson(storeDocument.getStoreFoodLicenseOperatorName());
submitLicenseResponse.setMainBusiness(storeDocument.getStoreFoodLicenseMainBusiness());
submitLicenseResponse.setBusinessProject(storeDocument.getStoreFoodLicenseBusinessScope());
submitLicenseResponse.setRemark(storeDocument.getStoreRemark());
submitLicenseResponse.setRemarkUrl(null);
submitLicenseResponse.setSubmitStatus(null);
submitLicenseResponse.setLicenseUrl(storeDocument.getStoreBusinessImg());
submitLicenseResponse.setLicenseName(storeDocument.getStoreBusinessName());
submitLicenseResponse.setSocialCreditCode(storeDocument.getStoreBusinessNumber());
submitLicenseResponse.setIdCardAndLicense1(null);
submitLicenseResponse.setIdCardAndLicense2(null);
submitLicenseResponse.setFoodLicenseUrl(storeDocument.getStoreFoodLicenseImg());
submitLicenseResponse.setBusinessPremises(storeDocument.getStoreFoodLicenseBusinessAddress());
submitLicenseResponse.setFoodLicenseCode(storeDocument.getStoreFoodLicense());
submitLicenseResponse.setFoodLicenseStartTime(DateUtil.parseTime(storeDocument.getStoreFoodLicenseBeginDate()));
submitLicenseResponse.setFoodLicenseEndTime(DateUtil.parseTime(storeDocument.getStoreFoodLicenseEndDate()));
return submitLicenseResponse;
}
public static SubmitLicenseResponse from(LicenseTransactDO licenseTransactDO) { public static SubmitLicenseResponse from(LicenseTransactDO licenseTransactDO) {
if (licenseTransactDO == null) { if (Objects.isNull(licenseTransactDO)) {
return null; return null;
} }
SubmitLicenseResponse submitLicenseResponse = new SubmitLicenseResponse(); SubmitLicenseResponse submitLicenseResponse = new SubmitLicenseResponse();

View File

@@ -21,7 +21,7 @@ import java.util.List;
public class OpeningOperationPlanVO { public class OpeningOperationPlanVO {
@ApiModelProperty("门店name") @ApiModelProperty("门店name")
private String name; private String shopName;
@ApiModelProperty("调研结果") @ApiModelProperty("调研结果")
private String surveyResult; private String surveyResult;

View File

@@ -151,7 +151,7 @@ public class XfsgTrainingPersonSyncListener implements MessageListener {
}else if(UserRoleEnum.XFSG_SHOPOWNER.getDesc().equals(jobName)){ }else if(UserRoleEnum.XFSG_SHOPOWNER.getDesc().equals(jobName)){
return UserRoleEnum.XFSG_SHOPOWNER.getCode(); return UserRoleEnum.XFSG_SHOPOWNER.getCode();
} }
return null; return UserRoleEnum.XFSG_CLERK.getCode();
} }
} }

View File

@@ -2,6 +2,7 @@ package com.cool.store.service;
import com.cool.store.request.FranchiseAgreementRequest; import com.cool.store.request.FranchiseAgreementRequest;
import com.cool.store.request.NewStoreRequest; import com.cool.store.request.NewStoreRequest;
import com.cool.store.response.GetStoreInfoByCodeResponse;
import com.cool.store.response.ResponseResult; import com.cool.store.response.ResponseResult;
/** /**
@@ -33,4 +34,11 @@ public interface CoolStoreStartFlowService {
*/ */
Boolean getFirstOrder(String shopCode); Boolean getFirstOrder(String shopCode);
/**
* 获取证照信息
* @param storeNum
* @return
*/
GetStoreInfoByCodeResponse getStoreInfoCode(String storeNum);
} }

View File

@@ -4,6 +4,7 @@ import com.cool.store.context.LoginUserInfo;
import com.cool.store.dto.decoration.ConstructionScheduleDTO; import com.cool.store.dto.decoration.ConstructionScheduleDTO;
import com.cool.store.dto.decoration.DecorationModelDTO; import com.cool.store.dto.decoration.DecorationModelDTO;
import com.cool.store.request.LinePaySubmitRequest; import com.cool.store.request.LinePaySubmitRequest;
import com.cool.store.request.ThreeAcceptanceCheckRequest;
import com.cool.store.request.ThreeAcceptanceRequest; import com.cool.store.request.ThreeAcceptanceRequest;
import com.cool.store.request.BookingAcceptanceRequest; import com.cool.store.request.BookingAcceptanceRequest;
import com.cool.store.response.FitmentResponse; import com.cool.store.response.FitmentResponse;
@@ -84,8 +85,9 @@ public interface DecorationService {
/** /**
* @Auther: wangshuo * @Auther: wangshuo
* @Date: 2024/4/29 * @Date: 2024/4/29
* @description:提交三方验收 * @description:提交三方验收检查项
*/ */
Boolean submitThreeCheck(ThreeAcceptanceCheckRequest request);
Boolean submitAcceptance(ThreeAcceptanceRequest request,PartnerUserInfoVO minUser, LoginUserInfo pcUser ); Boolean submitAcceptance(ThreeAcceptanceRequest request,PartnerUserInfoVO minUser, LoginUserInfo pcUser );
/** /**
* @Auther: wangshuo * @Auther: wangshuo

View File

@@ -9,6 +9,7 @@ import com.cool.store.dao.ShopStageInfoDAO;
import com.cool.store.entity.EnterpriseUserDO; import com.cool.store.entity.EnterpriseUserDO;
import com.cool.store.entity.LicenseTransactDO; import com.cool.store.entity.LicenseTransactDO;
import com.cool.store.entity.ShopAuditInfoDO; import com.cool.store.entity.ShopAuditInfoDO;
import com.cool.store.entity.ShopInfoDO;
import com.cool.store.enums.AuditTypeEnum; import com.cool.store.enums.AuditTypeEnum;
import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.enums.ErrorCodeEnum;
import com.cool.store.enums.point.ShopSubStageStatusEnum; import com.cool.store.enums.point.ShopSubStageStatusEnum;
@@ -16,16 +17,18 @@ import com.cool.store.exception.ServiceException;
import com.cool.store.mapper.ApplyLicenseMapper; import com.cool.store.mapper.ApplyLicenseMapper;
import com.cool.store.mapper.EnterpriseUserMapper; import com.cool.store.mapper.EnterpriseUserMapper;
import com.cool.store.mapper.ShopAuditInfoMapper; import com.cool.store.mapper.ShopAuditInfoMapper;
import com.cool.store.mapper.ShopInfoMapper;
import com.cool.store.request.LicenseListRequest; import com.cool.store.request.LicenseListRequest;
import com.cool.store.request.SubmitLicenseRequest; import com.cool.store.request.SubmitLicenseRequest;
import com.cool.store.response.GetStoreInfoByCodeResponse;
import com.cool.store.response.LicenseListResponse; import com.cool.store.response.LicenseListResponse;
import com.cool.store.response.SubmitLicenseResponse; import com.cool.store.response.SubmitLicenseResponse;
import com.cool.store.service.ApplyLicenseService; import com.cool.store.service.ApplyLicenseService;
import com.cool.store.service.CoolStoreStartFlowService;
import com.cool.store.service.RegionService; import com.cool.store.service.RegionService;
import com.cool.store.utils.StringUtil; import com.cool.store.utils.StringUtil;
import com.cool.store.utils.poi.StringUtils; import com.cool.store.utils.poi.StringUtils;
import com.cool.store.utils.poi.constant.Constants; import com.cool.store.utils.poi.constant.Constants;
import com.cool.store.vo.OpenAcceptanceInfoListVO;
import com.cool.store.vo.ShopAuditInfoVO; import com.cool.store.vo.ShopAuditInfoVO;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
@@ -63,21 +66,27 @@ public class ApplyLicenseServiceImpl implements ApplyLicenseService {
@Resource @Resource
EnterpriseUserMapper userMapper; EnterpriseUserMapper userMapper;
@Resource
CoolStoreStartFlowService coolStoreStartFlowService;
@Resource
ShopInfoMapper shopInfoMapper;
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean submitLicense(SubmitLicenseRequest request) { public Boolean submitLicense(SubmitLicenseRequest request) {
log.info("submitLicense request{}", JSONObject.toJSONString(request)); log.info("submitLicense request{}", JSONObject.toJSONString(request));
if (Objects.isNull(request)){ if (Objects.isNull(request)) {
return false; return false;
} }
LicenseTransactDO licenseTransactDO = request.toLicenseTransactDO(); LicenseTransactDO licenseTransactDO = request.toLicenseTransactDO();
if (request.getId() == null){ if (request.getId() == null) {
applyLicenseMapper.insertSelective(licenseTransactDO); applyLicenseMapper.insertSelective(licenseTransactDO);
}else { } else {
licenseTransactDO.setId(request.getId()); licenseTransactDO.setId(request.getId());
applyLicenseMapper.updateByPrimaryKeySelective(licenseTransactDO); applyLicenseMapper.updateByPrimaryKeySelective(licenseTransactDO);
} }
if (request.getSubmitStatus() == Constants.ONE_INTEGER){ if (request.getSubmitStatus() == Constants.ONE_INTEGER) {
ShopAuditInfoDO shopAuditInfoDO = new ShopAuditInfoDO(); ShopAuditInfoDO shopAuditInfoDO = new ShopAuditInfoDO();
shopAuditInfoDO.setShopId(request.getShopId()); shopAuditInfoDO.setShopId(request.getShopId());
shopAuditInfoDO.setAuditType(AuditTypeEnum.LICENSE_APPROVAL.getCode()); shopAuditInfoDO.setAuditType(AuditTypeEnum.LICENSE_APPROVAL.getCode());
@@ -86,7 +95,7 @@ public class ApplyLicenseServiceImpl implements ApplyLicenseService {
shopAuditInfoDO.setSubmittedUserName(user.getName()); shopAuditInfoDO.setSubmittedUserName(user.getName());
shopAuditInfoDO.setDataType(0); shopAuditInfoDO.setDataType(0);
shopAuditInfoMapper.insertSelective(shopAuditInfoDO); shopAuditInfoMapper.insertSelective(shopAuditInfoDO);
shopStageInfoDAO.updateShopStageAndAuditInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_41,null); shopStageInfoDAO.updateShopStageAndAuditInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_41, null);
} }
return true; return true;
} }
@@ -94,33 +103,42 @@ public class ApplyLicenseServiceImpl implements ApplyLicenseService {
@Override @Override
public SubmitLicenseResponse getDefault(Long shopId) { public SubmitLicenseResponse getDefault(Long shopId) {
LicenseTransactDO licenseTransactDO = new LicenseTransactDO(); //1.如果已经提交过证照信息,直接查询后组装数据返回
licenseTransactDO.setShopId(shopId); LicenseTransactDO result = applyLicenseMapper.selectByShopId(shopId);
LicenseTransactDO result = applyLicenseMapper.selectOne(licenseTransactDO); SubmitLicenseResponse submitLicenseResponse = new SubmitLicenseResponse();
if (Objects.isNull(result)){ if (Objects.nonNull(result)){
throw new ServiceException(ErrorCodeEnum.LICENSE_NOT_EXIST); submitLicenseResponse = SubmitLicenseResponse.from(result);
List<ShopAuditInfoVO> listByShopIdAndType = shopAuditInfoMapper.getListByShopIdAndType(shopId, AuditTypeEnum.LICENSE_APPROVAL.getCode());
List<String> userIds = listByShopIdAndType.stream().map(ShopAuditInfoVO::getSubmittedUserId).collect(Collectors.toList());
List<EnterpriseUserDO> userInfoByUserIds = new ArrayList<>();
if (CollectionUtils.isNotEmpty(userIds)) {
userInfoByUserIds = userMapper.getUserInfoByUserIds(userIds);
Map<String, String> userAvatarMap = userInfoByUserIds.stream()
.filter(item -> StringUtil.isNotBlank(item.getUserId()) && StringUtil.isNotBlank(item.getAvatar()))
.collect(Collectors.toMap(k -> k.getUserId(), v -> v.getAvatar()));
listByShopIdAndType.stream().forEach(item -> {
String avatar = userAvatarMap.get(item.getSubmittedUserId());
if (StringUtils.isBlank(avatar)) {
item.setAvatar(Constants.AVATAR_DEFAULT);
} else {
item.setAvatar(avatar);
}
});
}
submitLicenseResponse.setProcessRecords(listByShopIdAndType);
return submitLicenseResponse;
} }
SubmitLicenseResponse submitLicenseResponse = SubmitLicenseResponse.from(result); //2.未查到证照信息,所以查询鲜丰的默认值
List<ShopAuditInfoVO> listByShopIdAndType = shopAuditInfoMapper.getListByShopIdAndType(shopId, AuditTypeEnum.LICENSE_APPROVAL.getCode()); ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(shopId);
List<String> userIds = listByShopIdAndType.stream().map(ShopAuditInfoVO::getSubmittedUserId).collect(Collectors.toList()); if (Objects.nonNull(shopInfoDO.getStoreNum())) {
List<EnterpriseUserDO> userInfoByUserIds = new ArrayList<>(); GetStoreInfoByCodeResponse storeInfoCode = coolStoreStartFlowService.getStoreInfoCode(shopInfoDO.getStoreNum());
if (Objects.nonNull(storeInfoCode) && Objects.nonNull(storeInfoCode.getData()) && storeInfoCode.getCode() == 0) {
if (CollectionUtils.isNotEmpty(userIds)){ submitLicenseResponse = SubmitLicenseResponse.from(storeInfoCode);
userInfoByUserIds = userMapper.getUserInfoByUserIds(userIds); return submitLicenseResponse;
Map<String, String> userAvatarMap = userInfoByUserIds.stream() }
.filter(item -> StringUtil.isNotBlank(item.getUserId()) && StringUtil.isNotBlank(item.getAvatar()))
.collect(Collectors.toMap(k -> k.getUserId(), v -> v.getAvatar()));
listByShopIdAndType.stream().forEach( item -> {
String avatar = userAvatarMap.get(item.getSubmittedUserId());
if (StringUtils.isBlank(avatar)){
item.setAvatar(Constants.AVATAR_DEFAULT);
}else {
item.setAvatar(avatar);
}
});
} }
submitLicenseResponse.setProcessRecords(listByShopIdAndType); //3.既没有提交数据,也没有在鲜丰端查到证照信息,则返回空自由填写
return submitLicenseResponse; return null;
} }
@Override @Override
@@ -154,7 +172,7 @@ public class ApplyLicenseServiceImpl implements ApplyLicenseService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean licenseExamine(Long shopId, Integer status,String result) { public Boolean licenseExamine(Long shopId, Integer status, String result) {
ShopAuditInfoDO shopAuditInfoDO = new ShopAuditInfoDO(); ShopAuditInfoDO shopAuditInfoDO = new ShopAuditInfoDO();
shopAuditInfoDO.setShopId(shopId); shopAuditInfoDO.setShopId(shopId);
ShopSubStageStatusEnum shopSubStageStatusEnum = null; ShopSubStageStatusEnum shopSubStageStatusEnum = null;
@@ -166,11 +184,11 @@ public class ApplyLicenseServiceImpl implements ApplyLicenseService {
shopAuditInfoDO.setResultType(status); shopAuditInfoDO.setResultType(status);
LicenseTransactDO licenseTransactDO = new LicenseTransactDO(); LicenseTransactDO licenseTransactDO = new LicenseTransactDO();
licenseTransactDO.setShopId(shopId); licenseTransactDO.setShopId(shopId);
if (status == Constants.ZERO_INTEGER){ if (status == Constants.ZERO_INTEGER) {
shopAuditInfoDO.setPassReason(result); shopAuditInfoDO.setPassReason(result);
shopSubStageStatusEnum = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_43; shopSubStageStatusEnum = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_43;
licenseTransactDO.setSubmitStatus(3); licenseTransactDO.setSubmitStatus(3);
}else if (status == Constants.ONE_INTEGER){ } else if (status == Constants.ONE_INTEGER) {
licenseTransactDO.setSubmitStatus(2); licenseTransactDO.setSubmitStatus(2);
shopAuditInfoDO.setRejectReason(result); shopAuditInfoDO.setRejectReason(result);
shopSubStageStatusEnum = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_42; shopSubStageStatusEnum = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_42;
@@ -179,7 +197,7 @@ public class ApplyLicenseServiceImpl implements ApplyLicenseService {
//插入操作/意见 //插入操作/意见
shopAuditInfoMapper.insertSelective(shopAuditInfoDO); shopAuditInfoMapper.insertSelective(shopAuditInfoDO);
//更新阶段状态 //更新阶段状态
shopStageInfoDAO.updateShopStageAndAuditInfo(shopId,shopSubStageStatusEnum,null); shopStageInfoDAO.updateShopStageAndAuditInfo(shopId, shopSubStageStatusEnum, null);
return null; return null;
} }
} }

View File

@@ -1,5 +1,6 @@
package com.cool.store.service.impl; package com.cool.store.service.impl;
import com.cool.store.constants.CommonConstants;
import com.cool.store.dao.AssessmentDataDAO; import com.cool.store.dao.AssessmentDataDAO;
import com.cool.store.entity.AssessmentDataDO; import com.cool.store.entity.AssessmentDataDO;
import com.cool.store.service.AssessmentDataService; import com.cool.store.service.AssessmentDataService;
@@ -20,11 +21,17 @@ public class AssessmentDataServiceImpl implements AssessmentDataService {
private AssessmentDataDAO assessmentDataDAO; private AssessmentDataDAO assessmentDataDAO;
@Override @Override
public Boolean batchInsert(List<AssessmentDataDO> assessmentDataDOS) { public Boolean batchInsert(List<AssessmentDataDO> assessmentDataDOS) {
if (assessmentDataDOS.isEmpty()) {
return Boolean.FALSE;
}
return assessmentDataDAO.batchInsert(assessmentDataDOS); return assessmentDataDAO.batchInsert(assessmentDataDOS);
} }
@Override @Override
public Integer batchUpdate(List<AssessmentDataDO> assessmentDataDOS) { public Integer batchUpdate(List<AssessmentDataDO> assessmentDataDOS) {
if (assessmentDataDOS.isEmpty()) {
return CommonConstants.ZERO;
}
return assessmentDataDAO.batchUpdate(assessmentDataDOS); return assessmentDataDAO.batchUpdate(assessmentDataDOS);
} }
} }

View File

@@ -9,10 +9,12 @@ import com.cool.store.exception.ServiceException;
import com.cool.store.mq.util.HttpRestTemplateService; import com.cool.store.mq.util.HttpRestTemplateService;
import com.cool.store.request.FranchiseAgreementRequest; import com.cool.store.request.FranchiseAgreementRequest;
import com.cool.store.request.NewStoreRequest; import com.cool.store.request.NewStoreRequest;
import com.cool.store.response.GetStoreInfoByCodeResponse;
import com.cool.store.response.InitiatingResponse; import com.cool.store.response.InitiatingResponse;
import com.cool.store.response.ResponseResult; import com.cool.store.response.ResponseResult;
import com.cool.store.service.CoolStoreStartFlowService; import com.cool.store.service.CoolStoreStartFlowService;
import com.cool.store.utils.SecureUtil; import com.cool.store.utils.SecureUtil;
import com.cool.store.utils.poi.StringUtils;
import com.cool.store.utils.poi.constant.Constants; import com.cool.store.utils.poi.constant.Constants;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value; import org.springframework.beans.factory.annotation.Value;
@@ -102,6 +104,24 @@ public class CoolStoreStartFlowServiceImpl implements CoolStoreStartFlowService
throw new ServiceException(ErrorCodeEnum. GET_FIRST_ORDER); throw new ServiceException(ErrorCodeEnum. GET_FIRST_ORDER);
} }
} }
@Override
public GetStoreInfoByCodeResponse getStoreInfoCode(String storeNum) {
log.info("getStoreInfoCode storeNum:{}",storeNum);
if (StringUtils.isBlank(storeNum)){
throw new ServiceException(ErrorCodeEnum.STORE_NUM_NOT_FOUND);
}
Map<String, Object> requestMap = new HashMap<>();
fillSignatureInfo(requestMap);
requestMap.put("storeCode",storeNum);
String url = xfsgUrl + Constants.GET_STORE_INFO_BY_CODE + "?timestamp=" + requestMap.get("timestamp") + "&signature=" + requestMap.get("signature");
GetStoreInfoByCodeResponse response = httpRestTemplateService.getForObject(url, GetStoreInfoByCodeResponse.class, requestMap);
return response;
}
private void fillSignatureInfo(Map<String, Object> requestMap) { private void fillSignatureInfo(Map<String, Object> requestMap) {
long timestamp = System.currentTimeMillis(); long timestamp = System.currentTimeMillis();
String signature = SecureUtil.getSignature(timestamp); String signature = SecureUtil.getSignature(timestamp);

View File

@@ -17,6 +17,7 @@ import com.cool.store.exception.ServiceException;
import com.cool.store.mapper.LineInfoMapper; import com.cool.store.mapper.LineInfoMapper;
import com.cool.store.mapper.ShopInfoMapper; import com.cool.store.mapper.ShopInfoMapper;
import com.cool.store.request.LinePaySubmitRequest; import com.cool.store.request.LinePaySubmitRequest;
import com.cool.store.request.ThreeAcceptanceCheckRequest;
import com.cool.store.request.ThreeAcceptanceRequest; import com.cool.store.request.ThreeAcceptanceRequest;
import com.cool.store.request.BookingAcceptanceRequest; import com.cool.store.request.BookingAcceptanceRequest;
import com.cool.store.response.FitmentResponse; import com.cool.store.response.FitmentResponse;
@@ -59,6 +60,8 @@ public class DecorationServiceImpl implements DecorationService {
@Resource @Resource
private ShopAuditInfoDAO shopAuditInfoDAO; private ShopAuditInfoDAO shopAuditInfoDAO;
@Resource @Resource
private SysRoleService sysRoleService;
@Resource
private EnterpriseUserDAO enterpriseUserDAO; private EnterpriseUserDAO enterpriseUserDAO;
@Resource @Resource
private RegionService regionService; private RegionService regionService;
@@ -96,14 +99,17 @@ public class DecorationServiceImpl implements DecorationService {
FitmentResponse fitmentResponse = new FitmentResponse(); FitmentResponse fitmentResponse = new FitmentResponse();
List<DecorationStageVO> stageInfoList = new ArrayList<>(); List<DecorationStageVO> stageInfoList = new ArrayList<>();
//设计 //设计
this.DesignInfo(shopId);
stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_9)); stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_9));
//装修款 //装修款
this.getDecorationModel(shopId, null);
stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_10)); stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_10));
//施工阶段计划时间 //施工阶段
this.getConstructionInfo(shopId);
stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_11)); stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_11));
//三方验收 //TODO 三方验收
stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_12)); stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_12));
//视觉验收 //TODO 视觉验收
stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_13)); stageInfoList.add(getDecorationStageVOS(shopId, ShopSubStageEnum.SHOP_STAGE_13));
fitmentResponse.setStageInfoList(stageInfoList); fitmentResponse.setStageInfoList(stageInfoList);
return fitmentResponse; return fitmentResponse;
@@ -116,6 +122,8 @@ public class DecorationServiceImpl implements DecorationService {
decorationStageVO.setShopSubStage(ShopStage.getShopSubStage()); decorationStageVO.setShopSubStage(ShopStage.getShopSubStage());
decorationStageVO.setShopSubStageName(shopSubStageEnum.getShopSubStageName()); decorationStageVO.setShopSubStageName(shopSubStageEnum.getShopSubStageName());
decorationStageVO.setCreatTime(ShopStage.getCreateTime()); decorationStageVO.setCreatTime(ShopStage.getCreateTime());
decorationStageVO.setPlanEndTime(ShopStage.getPlanCompleteTime());
decorationStageVO.setActualCompleteTime(ShopStage.getActualCompleteTime());
return decorationStageVO; return decorationStageVO;
} }
@@ -399,6 +407,23 @@ public class DecorationServiceImpl implements DecorationService {
return constructionScheduleDTO; return constructionScheduleDTO;
} }
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean submitThreeCheck(ThreeAcceptanceCheckRequest request) {
log.info("submitThreeCheck, request:{} ", JSONObject.toJSONString(request));
List<AssessmentDataDO> assessmentDataDOS = new ArrayList<>();
BeanUtil.copyProperties(request.getAssessmentDataDTOS(),assessmentDataDOS);
for(AssessmentDataDO assessmentDataDO : assessmentDataDOS){
assessmentDataDO.setShopId(request.getShopId());
}
Boolean assessment = assessmentDataService.batchInsert(assessmentDataDOS);
if (assessment == Boolean.FALSE) {
log.error("三方验收插入检查项失败");
throw new ServiceException(ErrorCodeEnum.CHECK_ITEM);
}
return assessment;
}
@Override @Override
public PageInfo<fitmentCheckVO> getFitmentAcceptanceList(Integer subStageStatus, LoginUserInfo user, Integer pageNum, Integer pageSize) { public PageInfo<fitmentCheckVO> getFitmentAcceptanceList(Integer subStageStatus, LoginUserInfo user, Integer pageNum, Integer pageSize) {
List<String> authRegionIds = userAuthMappingService.getAuthRegionIdAndSubRegionIdByUserId(user.getUserId()); List<String> authRegionIds = userAuthMappingService.getAuthRegionIdAndSubRegionIdByUserId(user.getUserId());
@@ -406,11 +431,19 @@ public class DecorationServiceImpl implements DecorationService {
for (String authRegionId : authRegionIds) { for (String authRegionId : authRegionIds) {
regions.add(Long.parseLong(authRegionId)); regions.add(Long.parseLong(authRegionId));
} }
if (regions.isEmpty()) {
log.info("该用户下权限没有管理区域");
return null;
}
List<fitmentCheckVO> fitmentCheckVOList = new ArrayList<>(); List<fitmentCheckVO> fitmentCheckVOList = new ArrayList<>();
//shopId,lineid,regionid,shopname,storenum, //shopId,lineid,regionid,shopname,storenum,
PageHelper.startPage(pageNum, pageSize); PageHelper.startPage(pageNum, pageSize);
List<ShopInfoDO> shopInfoDOS = shopInfoMapper.selectShopListByRegionId(regions, subStageStatus); List<ShopInfoDO> shopInfoDOS = shopInfoMapper.selectShopListByRegionId(regions, subStageStatus);
PageInfo pageInfo = new PageInfo<>(shopInfoDOS); PageInfo pageInfo = new PageInfo<>(shopInfoDOS);
if (shopInfoDOS.isEmpty()) {
log.info("该工程部监理下门店为空");
return pageInfo;
}
Map<Long, ShopInfoDO> ShopIdmap = shopInfoDOS.stream().collect(Collectors.toMap(ShopInfoDO::getId, dto1 -> dto1)); Map<Long, ShopInfoDO> ShopIdmap = shopInfoDOS.stream().collect(Collectors.toMap(ShopInfoDO::getId, dto1 -> dto1));
//招商经理选址人员拓展经理id //招商经理选址人员拓展经理id
List<Long> lineIds = shopInfoDOS.stream().map(ShopInfoDO::getLineId).collect(Collectors.toList()); List<Long> lineIds = shopInfoDOS.stream().map(ShopInfoDO::getLineId).collect(Collectors.toList());
@@ -421,7 +454,7 @@ public class DecorationServiceImpl implements DecorationService {
List<UserNameDTO> nameByUserId = enterpriseUserDAO.getNameByUserId(InvestmentManagerIds); List<UserNameDTO> nameByUserId = enterpriseUserDAO.getNameByUserId(InvestmentManagerIds);
Map<String, UserNameDTO> vonameMap = nameByUserId.stream() Map<String, UserNameDTO> vonameMap = nameByUserId.stream()
.collect(Collectors.toMap(UserNameDTO::getUserId, vo -> vo)); .collect(Collectors.toMap(UserNameDTO::getUserId, vo -> vo));
//选址人员name //选址人员(拓展经理)name
List<String> setterIds = lineInfos.stream().map(LineInfoDO::getDevelopmentManager).collect(Collectors.toList()); List<String> setterIds = lineInfos.stream().map(LineInfoDO::getDevelopmentManager).collect(Collectors.toList());
List<UserNameDTO> setterName = enterpriseUserDAO.getNameByUserId(setterIds); List<UserNameDTO> setterName = enterpriseUserDAO.getNameByUserId(setterIds);
Map<String, UserNameDTO> setterNameMap = setterName.stream() Map<String, UserNameDTO> setterNameMap = setterName.stream()
@@ -429,6 +462,15 @@ public class DecorationServiceImpl implements DecorationService {
//所属战区 //所属战区
List<Long> regionIds = shopInfoDOS.stream().map(ShopInfoDO::getRegionId).collect(Collectors.toList()); List<Long> regionIds = shopInfoDOS.stream().map(ShopInfoDO::getRegionId).collect(Collectors.toList());
Map<Long, String> regionNameMap = regionService.getBelongWarRegionNameMap(regionIds); Map<Long, String> regionNameMap = regionService.getBelongWarRegionNameMap(regionIds);
//战区经理name
Map<Long, String> fightManger = new HashMap<>();
for (Long regionId : regionIds) {
String fightMangerUserId = sysRoleService.getUserIdByRegionIdWithRolePriority(regionId, Arrays.asList(UserRoleEnum.THEATER_MANAGER));
List<UserNameDTO> fightMangerName = enterpriseUserDAO.getNameByUserId(Arrays.asList(fightMangerUserId));
if (!fightMangerName.isEmpty()) {
fightManger.put(regionId, fightMangerName.get(CommonConstants.ZERO).getName());
}
}
//施工计划完成时间 //施工实际完成实际//验收状态//计划验收时间//验收实际时间 //施工计划完成时间 //施工实际完成实际//验收状态//计划验收时间//验收实际时间
Map<Long, ConstructionScheduleDTO> ConstructionScheduleMap = new HashMap<>(); Map<Long, ConstructionScheduleDTO> ConstructionScheduleMap = new HashMap<>();
Map<Long, ShopStageInfoDO> ShopStageInfoDOMap = new HashMap<>(); Map<Long, ShopStageInfoDO> ShopStageInfoDOMap = new HashMap<>();
@@ -438,7 +480,6 @@ public class DecorationServiceImpl implements DecorationService {
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopId, ShopSubStageEnum.SHOP_STAGE_12); ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopId, ShopSubStageEnum.SHOP_STAGE_12);
ShopStageInfoDOMap.put(shopId, shopSubStageInfo); ShopStageInfoDOMap.put(shopId, shopSubStageInfo);
} }
//战区经理 TODO
for (ShopInfoDO shopInfoDO : shopInfoDOS) { for (ShopInfoDO shopInfoDO : shopInfoDOS) {
fitmentCheckVO fitmentCheckVO = new fitmentCheckVO(); fitmentCheckVO fitmentCheckVO = new fitmentCheckVO();
@@ -506,44 +547,25 @@ public class DecorationServiceImpl implements DecorationService {
throw new ServiceException(ErrorCodeEnum.CHECK_ITEM); throw new ServiceException(ErrorCodeEnum.CHECK_ITEM);
} }
//工程部验收签名 //工程部验收签名
ShopAuditInfoDO shopAuditInfoDO = new ShopAuditInfoDO(); JSONObject engineering = new JSONObject();
shopAuditInfoDO.setAuditType(CommonConstants.FIVE); engineering.put("pic", request.getEngineeringAcceptance().getAcceptanceSignatures());
shopAuditInfoDO.setShopId(request.getShopId()); engineering.put("acceptanceTime", new Date());
shopAuditInfoDO.setSubmittedUserId(minUser.getPartnerId()); engineering.put("result", request.getEngineeringAcceptance().getResultType());
shopAuditInfoDO.setSubmittedUserName(minUser.getUsername()); engineering.put("remark", request.getEngineeringAcceptance().getComments());
if (AuditResultTypeEnum.PASS.getCode().equals(request.getEngineeringResultType())) { engineering.put("status", 1);
shopAuditInfoDO.setResultType(AuditResultTypeEnum.PASS.getCode());
shopAuditInfoDO.setPassReason(request.getEngineeringComments());
} else {
shopAuditInfoDO.setResultType(AuditResultTypeEnum.REJECT.getCode());
shopAuditInfoDO.setPassReason(request.getEngineeringComments());
}
shopAuditInfoDO.setCreateTime(new Date());
shopAuditInfoDAO.addAuditInfo(shopAuditInfoDO);
//加盟商 //加盟商
ShopAuditInfoDO shopAuditInfoDO1 = new ShopAuditInfoDO(); JSONObject partner = new JSONObject();
shopAuditInfoDO1.setAuditType(CommonConstants.FIVE); partner.put("pic", request.getPartnerAcceptance().getAcceptanceSignatures());
shopAuditInfoDO1.setShopId(request.getShopId()); partner.put("acceptanceTime", new Date());
shopAuditInfoDO1.setSubmittedUserId(minUser.getPartnerId()); partner.put("result", request.getPartnerAcceptance().getResultType());
shopAuditInfoDO1.setSubmittedUserName(minUser.getUsername()); partner.put("remark", request.getPartnerAcceptance().getComments());
if (AuditResultTypeEnum.PASS.getCode().equals(request.getPartnerResultType())) { partner.put("status", 1);
shopAuditInfoDO1.setResultType(AuditResultTypeEnum.PASS.getCode());
shopAuditInfoDO1.setPassReason(request.getPartnerComments());
} else {
shopAuditInfoDO1.setResultType(AuditResultTypeEnum.REJECT.getCode());
shopAuditInfoDO1.setPassReason(request.getPartnerComments());
}
shopAuditInfoDO1.setCreateTime(new Date());
shopAuditInfoDAO.addAuditInfo(shopAuditInfoDO1);
AcceptanceInfoDO acceptanceInfoDO = new AcceptanceInfoDO(); AcceptanceInfoDO acceptanceInfoDO = new AcceptanceInfoDO();
acceptanceInfoDO.setShopId(request.getShopId()); acceptanceInfoDO.setShopId(request.getShopId());
acceptanceInfoDO.setPartnerAcceptanceSignatures(request.getPartnerAcceptanceSignatures()); acceptanceInfoDO.setPartnerAcceptanceSignatures(partner.toString());
acceptanceInfoDO.setEngineeringAcceptanceSignatures(request.getEngineeringAcceptanceSignatures()); acceptanceInfoDO.setEngineeringAcceptanceSignatures(engineering.toString());
acceptanceInfoDO.setUpdateTime(new Date()); acceptanceInfoDO.setUpdateTime(new Date());
acceptanceInfoDAO.updateAcceptanceInfo(acceptanceInfoDO); acceptanceInfoDAO.updateAcceptanceInfo(acceptanceInfoDO);
List<AcceptanceInfoDO> assessmentDataDOS = new ArrayList<>();
BeanUtil.copyProperties(request, assessmentDataDOS);
//更新阶段状态验收中 //更新阶段状态验收中
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_122); shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_122);
return Boolean.TRUE; return Boolean.TRUE;
@@ -552,41 +574,39 @@ public class DecorationServiceImpl implements DecorationService {
throw new ServiceException(ErrorCodeEnum.THREE_ACCEPTANCE); throw new ServiceException(ErrorCodeEnum.THREE_ACCEPTANCE);
} }
} else { } else {
//营部验收签名 //营部验收签名
try { try {
ShopAuditInfoDO shopAuditInfoDO = new ShopAuditInfoDO(); AcceptanceInfoDO acceptanceInfoDO1 = acceptanceInfoDAO.selectByShopId(request.getShopId());
shopAuditInfoDO.setAuditType(CommonConstants.FIVE); JSONObject engineering = JSONObject.parseObject(acceptanceInfoDO1.getEngineeringAcceptanceSignatures());
shopAuditInfoDO.setShopId(request.getShopId()); JSONObject partner = JSONObject.parseObject(acceptanceInfoDO1.getPartnerAcceptanceSignatures());
shopAuditInfoDO.setSubmittedUserId(pcUser.getUserId()); JSONObject operations = new JSONObject();
shopAuditInfoDO.setSubmittedUserName(pcUser.getName()); operations.put("pic", request.getOperationsAcceptance().getAcceptanceSignatures());
if (AuditResultTypeEnum.PASS.getCode().equals(request.getOperationsResultType())) { operations.put("acceptanceTime", new Date());
shopAuditInfoDO.setResultType(AuditResultTypeEnum.PASS.getCode()); operations.put("result", request.getOperationsAcceptance().getResultType());
} else { operations.put("remark", request.getOperationsAcceptance().getComments());
shopAuditInfoDO.setResultType(AuditResultTypeEnum.REJECT.getCode()); operations.put("status", 1);
}
shopAuditInfoDO.setPassReason(request.getOperationsComments());
shopAuditInfoDO.setCreateTime(new Date());
shopAuditInfoDAO.addAuditInfo(shopAuditInfoDO);
if (CommonConstants.ZERO==request.getOperationsResultType()) {
//更新阶段状态验收完毕
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_123);
preparationService.whetherToOpenForAcceptance(request.getShopId());
}
else {
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_120);
}
AcceptanceInfoDO acceptanceInfoDO = new AcceptanceInfoDO(); AcceptanceInfoDO acceptanceInfoDO = new AcceptanceInfoDO();
acceptanceInfoDO.setShopId(request.getShopId()); acceptanceInfoDO.setShopId(request.getShopId());
acceptanceInfoDO.setOperationsAcceptanceSignatures(request.getOperationsAcceptanceSignatures()); acceptanceInfoDO.setOperationsAcceptanceSignatures(operations.toString());
acceptanceInfoDO.setUpdateTime(new Date()); acceptanceInfoDO.setUpdateTime(new Date());
acceptanceInfoDAO.updateAcceptanceInfo(acceptanceInfoDO); acceptanceInfoDAO.updateAcceptanceInfo(acceptanceInfoDO);
}catch (Exception e) { if (AuditResultTypeEnum.PASS.getCode() == operations.getInteger("result")
&& AuditResultTypeEnum.PASS.getCode() == partner.getInteger("result")
&& AuditResultTypeEnum.PASS.getCode() == engineering.getInteger("result")) {
//更新阶段状态验收完毕
shopStageInfoDAO.updateShopStageAndAuditInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_123,null);
preparationService.whetherToOpenForAcceptance(request.getShopId());
} else {
//未通过至为带预约
shopStageInfoDAO.updateShopStageAndAuditInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_120, null);
}
} catch (Exception e) {
log.error("PC提交三方验收失败"); log.error("PC提交三方验收失败");
throw new ServiceException(ErrorCodeEnum.THREE_ACCEPTANCE); throw new ServiceException(ErrorCodeEnum.THREE_ACCEPTANCE);
} }
} }
return null; return Boolean.FALSE;
} }
@Override @Override

View File

@@ -124,7 +124,7 @@ public class OpeningOperationPlanImpl implements OpeningOperationPlanService {
openingOperationPlanVO.setSubmittedUserName(username.getName()); openingOperationPlanVO.setSubmittedUserName(username.getName());
openingOperationPlanVO.setPreparationUsers(nameByUserId); openingOperationPlanVO.setPreparationUsers(nameByUserId);
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId); ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId);
openingOperationPlanVO.setName(shopInfo.getShopName()); openingOperationPlanVO.setShopName(shopInfo.getShopName());
return openingOperationPlanVO; return openingOperationPlanVO;
} }

View File

@@ -191,7 +191,7 @@ public class PreparationServiceImpl implements PreparationService {
AcceptanceInfoDO acceptanceInfoDO = new AcceptanceInfoDO(); AcceptanceInfoDO acceptanceInfoDO = new AcceptanceInfoDO();
acceptanceInfoDO.setShopId(shopId); acceptanceInfoDO.setShopId(shopId);
acceptanceInfoDO.setCreateTime(new Date()); acceptanceInfoDO.setCreateTime(new Date());
acceptanceInfoDAO.insertAcceptanceInfo(acceptanceInfoDO); acceptanceInfoDAO.insertSelectiveAcceptanceInfo(acceptanceInfoDO);
ShopStageInfoDO data3 = shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_14.getShopSubStage()); ShopStageInfoDO data3 = shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_14.getShopSubStage());
data3.setShopSubStageStatus(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_140.getShopSubStageStatus()); data3.setShopSubStageStatus(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_140.getShopSubStageStatus());
list.add(data3); list.add(data3);

View File

@@ -178,6 +178,8 @@ public class Constants
public static final String FRANCHISE_AGREEMENT_PERSON = "/api/coolstore/start-flow/franchise-agreement-person"; public static final String FRANCHISE_AGREEMENT_PERSON = "/api/coolstore/start-flow/franchise-agreement-person";
public static final String GET_STORE_INFO_BY_CODE = "/api/kdz/get-store-info-by-code";
// 员工详细信息数据接口 // 员工详细信息数据接口
public static final String GET_USER_INFO_BY_CODE = "/api/kdz/get-user-info-by-code"; public static final String GET_USER_INFO_BY_CODE = "/api/kdz/get-user-info-by-code";
// 加盟商信息数据接口 // 加盟商信息数据接口

View File

@@ -6,6 +6,7 @@ import com.cool.store.response.LicenseListResponse;
import com.cool.store.response.ResponseResult; import com.cool.store.response.ResponseResult;
import com.cool.store.response.SubmitLicenseResponse; import com.cool.store.response.SubmitLicenseResponse;
import com.cool.store.service.ApplyLicenseService; import com.cool.store.service.ApplyLicenseService;
import com.cool.store.service.CoolStoreStartFlowService;
import com.cool.store.vo.OpenAcceptanceInfoListVO; import com.cool.store.vo.OpenAcceptanceInfoListVO;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
@@ -51,5 +52,4 @@ public class PCApplyLicenseController {
@RequestParam("result") String result) { @RequestParam("result") String result) {
return ResponseResult.success(applyLicenseService.licenseExamine(shopId,status,result)); return ResponseResult.success(applyLicenseService.licenseExamine(shopId,status,result));
} }
} }

View File

@@ -3,6 +3,7 @@ package com.cool.store.controller.webc;
import com.cool.store.request.SubmitLicenseRequest; import com.cool.store.request.SubmitLicenseRequest;
import com.cool.store.response.ResponseResult; import com.cool.store.response.ResponseResult;
import com.cool.store.service.ApplyLicenseService; import com.cool.store.service.ApplyLicenseService;
import com.cool.store.service.CoolStoreStartFlowService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@@ -38,7 +39,7 @@ public class ApplyLicenseController {
/** /**
* *
* @param id * @param
* @param status 0通过 1不通过 * @param status 0通过 1不通过
* @return * @return
*/ */
@@ -49,5 +50,4 @@ public class ApplyLicenseController {
@RequestParam("result") String result) { @RequestParam("result") String result) {
return ResponseResult.success(applyLicenseService.licenseExamine(shopId,status,result)); return ResponseResult.success(applyLicenseService.licenseExamine(shopId,status,result));
} }
} }

View File

@@ -4,6 +4,7 @@ import com.cool.store.context.PartnerUserHolder;
import com.cool.store.dto.decoration.ConstructionScheduleDTO; import com.cool.store.dto.decoration.ConstructionScheduleDTO;
import com.cool.store.dto.decoration.DecorationModelDTO; import com.cool.store.dto.decoration.DecorationModelDTO;
import com.cool.store.request.LinePaySubmitRequest; import com.cool.store.request.LinePaySubmitRequest;
import com.cool.store.request.ThreeAcceptanceCheckRequest;
import com.cool.store.request.ThreeAcceptanceRequest; import com.cool.store.request.ThreeAcceptanceRequest;
import com.cool.store.response.FitmentResponse; import com.cool.store.response.FitmentResponse;
import com.cool.store.response.ResponseResult; import com.cool.store.response.ResponseResult;
@@ -80,6 +81,11 @@ public class MiniDecorationController {
public ResponseResult<List<AssessmentTemplateVO>> getChecks(@RequestParam Integer type){ public ResponseResult<List<AssessmentTemplateVO>> getChecks(@RequestParam Integer type){
return ResponseResult.success(assessmentTemplateService.listByType(type)); return ResponseResult.success(assessmentTemplateService.listByType(type));
} }
@ApiOperation("提交三方验收检查项")
@PostMapping("/submitThreeChecks")
public ResponseResult<Boolean> submitThreeChecks(@RequestBody ThreeAcceptanceCheckRequest request){
return ResponseResult.success(decorationService.submitThreeCheck(request));
}
@ApiOperation("提交三方验收") @ApiOperation("提交三方验收")
@PostMapping("/submitThreeAcceptance") @PostMapping("/submitThreeAcceptance")
public ResponseResult<Boolean> submitThreeAcceptance(@RequestBody ThreeAcceptanceRequest request){ public ResponseResult<Boolean> submitThreeAcceptance(@RequestBody ThreeAcceptanceRequest request){