From 2c9769325e2ca32f1775135b0a1d2e5e87ff47d4 Mon Sep 17 00:00:00 2001 From: jiyufei <67400194@qq.com> Date: Wed, 17 Jul 2024 10:40:13 +0800 Subject: [PATCH] =?UTF-8?q?feat(contract):=E5=90=88=E5=90=8C=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=89=8D=E5=90=8E=E7=AB=AF=E4=BB=A3=E7=A0=81=E6=8F=90?= =?UTF-8?q?=E4=BA=A4;?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/EnterpriseMerchantsService.java | 20 +- .../service/impl/ContractServiceImpl.java | 53 +- .../impl/EnterpriseMerchantsServiceImpl.java | 459 +++++---- .../src/views/scm/contract/change.vue | 935 ++++++++++++++++++ .../jnpf-web/src/views/scm/contract/index.vue | 167 ++-- 5 files changed, 1326 insertions(+), 308 deletions(-) create mode 100644 jnpf-java-boot/jnpf-web/src/views/scm/contract/change.vue diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/EnterpriseMerchantsService.java b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/EnterpriseMerchantsService.java index 29dcf49..77361c8 100644 --- a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/EnterpriseMerchantsService.java +++ b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/EnterpriseMerchantsService.java @@ -2,7 +2,9 @@ package jnpf.service; import jnpf.model.enterprisemerchants.*; import jnpf.entity.*; + import java.util.*; + import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -16,7 +18,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; public interface EnterpriseMerchantsService extends IService { List getList(EnterpriseMerchantsPagination enterpriseMerchantsPagination); - List getTypeList(EnterpriseMerchantsPagination enterpriseMerchantsPagination,String dataType); + List getTypeList(EnterpriseMerchantsPagination enterpriseMerchantsPagination, String dataType); EnterpriseMerchantsEntity getInfo(String id); @@ -28,8 +30,16 @@ public interface EnterpriseMerchantsService extends IService getList(ContractPagination contractPagination) { return getTypeList(contractPagination, contractPagination.getDataType()); @@ -387,6 +393,7 @@ public class ContractServiceImpl extends ServiceImpl eq = new LambdaQueryWrapper<>(ContractEntity.class) .eq(ContractEntity::getId, request.getId()); ContractEntity contract = this.getOne(eq); - if (!"10".equals(contract.getContractStatus()) || !"21".equals(contract.getContractStatus())) { - return "该合同处于已确认状态,不允许再次确认"; - } - //todo 查询空间判断 + if ("10".equals(contract.getContractStatus()) || "21".equals(contract.getContractStatus())) { + //todo 查询空间判断 如果空间状态存在不是待租状态 就提示 + + + contract.setContractStatus(request.getContractStatus()); + contract.setApproveDate(DateUtil.getNowDate()); + contract.setApprovedBy(userProvider.get().getUserId()); + String remarks; + if (StringUtils.isBlank(request.getApproveRemarks()) && "20".equals(contract.getContractStatus())) { + remarks = "同意"; + } else if (StringUtils.isBlank(request.getApproveRemarks()) && "10".equals(contract.getContractStatus())) { + remarks = "驳回"; + } else { + remarks = request.getApproveRemarks(); + } + contract.setApproveRemarks(remarks); + boolean result = this.updateById(contract); + if (result) { + //todo 需要处理空间逻辑 - //todo 需要处理别的逻辑 - contract.setContractStatus(request.getContractStatus()); - contract.setApproveDate(DateUtil.getNowDate()); - contract.setApprovedBy(userProvider.get().getUserId()); - contract.setApproveRemarks(StringUtils.isNoneBlank(request.getApproveRemarks()) ? request.getApproveRemarks() : "同意"); - return "合同确认成功"; + //异步处理商户信息 + CompletableFuture.runAsync(() -> enterpriseMerchantsService.updateStatus(request.getContractStatus(), contract.getContractName(), contract.getParkId())); + } + return "合同确认成功"; + } + return "该合同处于已确认状态,不允许再次确认"; } @Override @@ -562,11 +584,18 @@ public class ContractServiceImpl extends ServiceImpl enterpriseMerchantsService.updateStatus(request.getContractStatus(), contract.getContractName(), null)); + } return "合同结束成功"; } } diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/EnterpriseMerchantsServiceImpl.java b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/EnterpriseMerchantsServiceImpl.java index dedd411..a286172 100644 --- a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/EnterpriseMerchantsServiceImpl.java +++ b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/EnterpriseMerchantsServiceImpl.java @@ -5,19 +5,28 @@ import jnpf.mapper.EnterpriseMerchantsMapper; import jnpf.service.*; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import jnpf.model.enterprisemerchants.*; + import java.math.BigDecimal; + import cn.hutool.core.util.ObjectUtil; import jnpf.permission.model.authorize.AuthorizeConditionModel; import jnpf.util.GeneraterSwapUtil; import jnpf.database.model.superQuery.SuperQueryJsonModel; import jnpf.database.model.superQuery.ConditionJsonModel; import jnpf.database.model.superQuery.SuperQueryConditionModel; + import java.lang.reflect.Field; + import com.baomidou.mybatisplus.annotation.TableField; + import java.util.regex.Pattern; + import jnpf.model.QueryModel; + import java.util.stream.Collectors; + import jnpf.base.model.ColumnDataModel; +import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.metadata.IPage; import jnpf.database.model.superQuery.SuperJsonModel; @@ -25,13 +34,17 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; + import java.text.SimpleDateFormat; + import jnpf.util.*; + import java.util.*; + import jnpf.base.UserInfo; import jnpf.permission.entity.UserEntity; + /** - * * EnterpriseMerchants * 版本: V3.5 * 版权: 引迈信息技术有限公司(https://www.jnpfsoft.com) @@ -39,7 +52,8 @@ import jnpf.permission.entity.UserEntity; * 日期: 2024-07-15 */ @Service -public class EnterpriseMerchantsServiceImpl extends ServiceImpl implements EnterpriseMerchantsService{ +@Slf4j +public class EnterpriseMerchantsServiceImpl extends ServiceImpl implements EnterpriseMerchantsService { @Autowired private GeneraterSwapUtil generaterSwapUtil; @@ -47,343 +61,372 @@ public class EnterpriseMerchantsServiceImpl extends ServiceImpl getList(EnterpriseMerchantsPagination enterpriseMerchantsPagination){ - return getTypeList(enterpriseMerchantsPagination,enterpriseMerchantsPagination.getDataType()); + public List getList(EnterpriseMerchantsPagination enterpriseMerchantsPagination) { + return getTypeList(enterpriseMerchantsPagination, enterpriseMerchantsPagination.getDataType()); } - /** 列表查询 */ + + /** + * 列表查询 + */ @Override - public List getTypeList(EnterpriseMerchantsPagination enterpriseMerchantsPagination,String dataType){ - String userId=userProvider.get().getUserId(); - List AllIdList =new ArrayList(); - List> intersectionList =new ArrayList<>(); + public List getTypeList(EnterpriseMerchantsPagination enterpriseMerchantsPagination, String dataType) { + String userId = userProvider.get().getUserId(); + List AllIdList = new ArrayList(); + List> intersectionList = new ArrayList<>(); boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc"); String columnData = !isPc ? EnterpriseMerchantsConstant.getAppColumnData() : EnterpriseMerchantsConstant.getColumnData(); ColumnDataModel columnDataModel = JsonUtil.getJsonToBean(columnData, ColumnDataModel.class); String ruleJson = !isPc ? JsonUtil.getObjectToString(columnDataModel.getRuleListApp()) : JsonUtil.getObjectToString(columnDataModel.getRuleList()); - int total=0; - int enterpriseMerchantsNum =0; - QueryWrapper enterpriseMerchantsQueryWrapper=new QueryWrapper<>(); + int total = 0; + int enterpriseMerchantsNum = 0; + QueryWrapper enterpriseMerchantsQueryWrapper = new QueryWrapper<>(); List allSuperIDlist = new ArrayList<>(); - String superOp =""; - if (ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getSuperQueryJson())){ + String superOp = ""; + if (ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getSuperQueryJson())) { List allSuperList = new ArrayList<>(); - List> intersectionSuperList = new ArrayList<>(); + List> intersectionSuperList = new ArrayList<>(); String queryJson = enterpriseMerchantsPagination.getSuperQueryJson(); SuperJsonModel superJsonModel = JsonUtil.getJsonToBean(queryJson, SuperJsonModel.class); int superNum = 0; QueryWrapper enterpriseMerchantsSuperWrapper = new QueryWrapper<>(); - enterpriseMerchantsSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(enterpriseMerchantsSuperWrapper,EnterpriseMerchantsEntity.class,queryJson,"0")); + enterpriseMerchantsSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(enterpriseMerchantsSuperWrapper, EnterpriseMerchantsEntity.class, queryJson, "0")); int enterpriseMerchantsNum1 = enterpriseMerchantsSuperWrapper.getExpression().getNormal().size(); - if (enterpriseMerchantsNum1>0){ - List enterpriseMerchantsList =this.list(enterpriseMerchantsSuperWrapper).stream().map(EnterpriseMerchantsEntity::getId).collect(Collectors.toList()); + if (enterpriseMerchantsNum1 > 0) { + List enterpriseMerchantsList = this.list(enterpriseMerchantsSuperWrapper).stream().map(EnterpriseMerchantsEntity::getId).collect(Collectors.toList()); allSuperList.addAll(enterpriseMerchantsList); intersectionSuperList.add(enterpriseMerchantsList); superNum++; } superOp = superNum > 0 ? superJsonModel.getMatchLogic() : ""; //and or - if(superOp.equalsIgnoreCase("and")){ + if (superOp.equalsIgnoreCase("and")) { allSuperIDlist = generaterSwapUtil.getIntersection(intersectionSuperList); - }else{ + } else { allSuperIDlist = allSuperList; } } List allRuleIDlist = new ArrayList<>(); - String ruleOp =""; - if (ObjectUtil.isNotEmpty(ruleJson)){ + String ruleOp = ""; + if (ObjectUtil.isNotEmpty(ruleJson)) { List allRuleList = new ArrayList<>(); - List> intersectionRuleList = new ArrayList<>(); + List> intersectionRuleList = new ArrayList<>(); SuperJsonModel ruleJsonModel = JsonUtil.getJsonToBean(ruleJson, SuperJsonModel.class); int ruleNum = 0; QueryWrapper enterpriseMerchantsSuperWrapper = new QueryWrapper<>(); - enterpriseMerchantsSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(enterpriseMerchantsSuperWrapper,EnterpriseMerchantsEntity.class,ruleJson,"0")); + enterpriseMerchantsSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(enterpriseMerchantsSuperWrapper, EnterpriseMerchantsEntity.class, ruleJson, "0")); int enterpriseMerchantsNum1 = enterpriseMerchantsSuperWrapper.getExpression().getNormal().size(); - if (enterpriseMerchantsNum1>0){ - List enterpriseMerchantsList =this.list(enterpriseMerchantsSuperWrapper).stream().map(EnterpriseMerchantsEntity::getId).collect(Collectors.toList()); + if (enterpriseMerchantsNum1 > 0) { + List enterpriseMerchantsList = this.list(enterpriseMerchantsSuperWrapper).stream().map(EnterpriseMerchantsEntity::getId).collect(Collectors.toList()); allRuleList.addAll(enterpriseMerchantsList); intersectionRuleList.add(enterpriseMerchantsList); ruleNum++; } ruleOp = ruleNum > 0 ? ruleJsonModel.getMatchLogic() : ""; //and or - if(ruleOp.equalsIgnoreCase("and")){ + if (ruleOp.equalsIgnoreCase("and")) { allRuleIDlist = generaterSwapUtil.getIntersection(intersectionRuleList); - }else{ + } else { allRuleIDlist = allRuleList; } } - boolean pcPermission = false; - boolean appPermission = false; - if(isPc && pcPermission){ - if (!userProvider.get().getIsAdministrator()){ - Object enterpriseMerchantsObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(enterpriseMerchantsQueryWrapper,EnterpriseMerchantsEntity.class,enterpriseMerchantsPagination.getMenuId(),"0")); - if (ObjectUtil.isEmpty(enterpriseMerchantsObj)){ - return new ArrayList<>(); - } else { - enterpriseMerchantsQueryWrapper = (QueryWrapper)enterpriseMerchantsObj; - if( enterpriseMerchantsQueryWrapper.getExpression().getNormal().size()>0){ - enterpriseMerchantsNum++; - } - } - } - } - if(!isPc && appPermission){ - if (!userProvider.get().getIsAdministrator()){ - Object enterpriseMerchantsObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(enterpriseMerchantsQueryWrapper,EnterpriseMerchantsEntity.class,enterpriseMerchantsPagination.getMenuId(),"0")); - if (ObjectUtil.isEmpty(enterpriseMerchantsObj)){ - return new ArrayList<>(); - } else { - enterpriseMerchantsQueryWrapper = (QueryWrapper)enterpriseMerchantsObj; - if( enterpriseMerchantsQueryWrapper.getExpression().getNormal().size()>0){ - enterpriseMerchantsNum++; - } + boolean pcPermission = false; + boolean appPermission = false; + if (isPc && pcPermission) { + if (!userProvider.get().getIsAdministrator()) { + Object enterpriseMerchantsObj = generaterSwapUtil.getAuthorizeCondition(new QueryModel(enterpriseMerchantsQueryWrapper, EnterpriseMerchantsEntity.class, enterpriseMerchantsPagination.getMenuId(), "0")); + if (ObjectUtil.isEmpty(enterpriseMerchantsObj)) { + return new ArrayList<>(); + } else { + enterpriseMerchantsQueryWrapper = (QueryWrapper) enterpriseMerchantsObj; + if (enterpriseMerchantsQueryWrapper.getExpression().getNormal().size() > 0) { + enterpriseMerchantsNum++; + } + } + } } + if (!isPc && appPermission) { + if (!userProvider.get().getIsAdministrator()) { + Object enterpriseMerchantsObj = generaterSwapUtil.getAuthorizeCondition(new QueryModel(enterpriseMerchantsQueryWrapper, EnterpriseMerchantsEntity.class, enterpriseMerchantsPagination.getMenuId(), "0")); + if (ObjectUtil.isEmpty(enterpriseMerchantsObj)) { + return new ArrayList<>(); + } else { + enterpriseMerchantsQueryWrapper = (QueryWrapper) enterpriseMerchantsObj; + if (enterpriseMerchantsQueryWrapper.getExpression().getNormal().size() > 0) { + enterpriseMerchantsNum++; + } + } - } - } - if(isPc){ - if(ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getCmpNo())){ - enterpriseMerchantsNum++; + } + } + if (isPc) { + if (ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getCmpNo())) { + enterpriseMerchantsNum++; String value = enterpriseMerchantsPagination.getCmpNo() instanceof List ? - JsonUtil.getObjectToString(enterpriseMerchantsPagination.getCmpNo()) : - String.valueOf(enterpriseMerchantsPagination.getCmpNo()); - enterpriseMerchantsQueryWrapper.lambda().like(EnterpriseMerchantsEntity::getCmpNo,value); + JsonUtil.getObjectToString(enterpriseMerchantsPagination.getCmpNo()) : + String.valueOf(enterpriseMerchantsPagination.getCmpNo()); + enterpriseMerchantsQueryWrapper.lambda().like(EnterpriseMerchantsEntity::getCmpNo, value); } - if(ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getCmpNm())){ - enterpriseMerchantsNum++; + if (ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getCmpNm())) { + enterpriseMerchantsNum++; String value = enterpriseMerchantsPagination.getCmpNm() instanceof List ? - JsonUtil.getObjectToString(enterpriseMerchantsPagination.getCmpNm()) : - String.valueOf(enterpriseMerchantsPagination.getCmpNm()); - enterpriseMerchantsQueryWrapper.lambda().like(EnterpriseMerchantsEntity::getCmpNm,value); + JsonUtil.getObjectToString(enterpriseMerchantsPagination.getCmpNm()) : + String.valueOf(enterpriseMerchantsPagination.getCmpNm()); + enterpriseMerchantsQueryWrapper.lambda().like(EnterpriseMerchantsEntity::getCmpNm, value); } - if(ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getCompType())){ - enterpriseMerchantsNum++; + if (ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getCompType())) { + enterpriseMerchantsNum++; - List idList = new ArrayList<>(); - try { - String[][] compType = JsonUtil.getJsonToBean(enterpriseMerchantsPagination.getCompType(),String[][].class); - for(int i=0;i0){ - idList.add(JsonUtil.getObjectToString(Arrays.asList(compType[i]))); - } - } - }catch (Exception e1){ - try { - List compType = JsonUtil.getJsonToList(enterpriseMerchantsPagination.getCompType(),String.class); - if(compType.size()>0){ - idList.addAll(compType); - } - }catch (Exception e2){ - idList.add(String.valueOf(enterpriseMerchantsPagination.getCompType())); - } - } - enterpriseMerchantsQueryWrapper.lambda().and(t->{ - idList.forEach(tt->{ - t.like(EnterpriseMerchantsEntity::getCompType, tt).or(); - }); - }); + List idList = new ArrayList<>(); + try { + String[][] compType = JsonUtil.getJsonToBean(enterpriseMerchantsPagination.getCompType(), String[][].class); + for (int i = 0; i < compType.length; i++) { + if (compType[i].length > 0) { + idList.add(JsonUtil.getObjectToString(Arrays.asList(compType[i]))); + } + } + } catch (Exception e1) { + try { + List compType = JsonUtil.getJsonToList(enterpriseMerchantsPagination.getCompType(), String.class); + if (compType.size() > 0) { + idList.addAll(compType); + } + } catch (Exception e2) { + idList.add(String.valueOf(enterpriseMerchantsPagination.getCompType())); + } + } + enterpriseMerchantsQueryWrapper.lambda().and(t -> { + idList.forEach(tt -> { + t.like(EnterpriseMerchantsEntity::getCompType, tt).or(); + }); + }); } - if(ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getCompanyStatus())){ - enterpriseMerchantsNum++; + if (ObjectUtil.isNotEmpty(enterpriseMerchantsPagination.getCompanyStatus())) { + enterpriseMerchantsNum++; - List idList = new ArrayList<>(); - try { - String[][] companyStatus = JsonUtil.getJsonToBean(enterpriseMerchantsPagination.getCompanyStatus(),String[][].class); - for(int i=0;i0){ - idList.add(JsonUtil.getObjectToString(Arrays.asList(companyStatus[i]))); - } - } - }catch (Exception e1){ - try { - List companyStatus = JsonUtil.getJsonToList(enterpriseMerchantsPagination.getCompanyStatus(),String.class); - if(companyStatus.size()>0){ - idList.addAll(companyStatus); - } - }catch (Exception e2){ - idList.add(String.valueOf(enterpriseMerchantsPagination.getCompanyStatus())); - } - } - enterpriseMerchantsQueryWrapper.lambda().and(t->{ - idList.forEach(tt->{ - t.like(EnterpriseMerchantsEntity::getCompanyStatus, tt).or(); - }); - }); + List idList = new ArrayList<>(); + try { + String[][] companyStatus = JsonUtil.getJsonToBean(enterpriseMerchantsPagination.getCompanyStatus(), String[][].class); + for (int i = 0; i < companyStatus.length; i++) { + if (companyStatus[i].length > 0) { + idList.add(JsonUtil.getObjectToString(Arrays.asList(companyStatus[i]))); + } + } + } catch (Exception e1) { + try { + List companyStatus = JsonUtil.getJsonToList(enterpriseMerchantsPagination.getCompanyStatus(), String.class); + if (companyStatus.size() > 0) { + idList.addAll(companyStatus); + } + } catch (Exception e2) { + idList.add(String.valueOf(enterpriseMerchantsPagination.getCompanyStatus())); + } + } + enterpriseMerchantsQueryWrapper.lambda().and(t -> { + idList.forEach(tt -> { + t.like(EnterpriseMerchantsEntity::getCompanyStatus, tt).or(); + }); + }); } } List intersection = generaterSwapUtil.getIntersection(intersectionList); - if (total>0){ - if (intersection.size()==0){ + if (total > 0) { + if (intersection.size() == 0) { intersection.add("jnpfNullList"); } enterpriseMerchantsQueryWrapper.lambda().in(EnterpriseMerchantsEntity::getId, intersection); } - //是否有高级查询 - if (StringUtil.isNotEmpty(superOp)){ - if (allSuperIDlist.size()==0){ + //是否有高级查询 + if (StringUtil.isNotEmpty(superOp)) { + if (allSuperIDlist.size() == 0) { allSuperIDlist.add("jnpfNullList"); } List finalAllSuperIDlist = allSuperIDlist; - enterpriseMerchantsQueryWrapper.lambda().and(t->t.in(EnterpriseMerchantsEntity::getId, finalAllSuperIDlist)); + enterpriseMerchantsQueryWrapper.lambda().and(t -> t.in(EnterpriseMerchantsEntity::getId, finalAllSuperIDlist)); } - //是否有数据过滤查询 - if (StringUtil.isNotEmpty(ruleOp)){ - if (allRuleIDlist.size()==0){ + //是否有数据过滤查询 + if (StringUtil.isNotEmpty(ruleOp)) { + if (allRuleIDlist.size() == 0) { allRuleIDlist.add("jnpfNullList"); } List finalAllRuleIDlist = allRuleIDlist; - enterpriseMerchantsQueryWrapper.lambda().and(t->t.in(EnterpriseMerchantsEntity::getId, finalAllRuleIDlist)); + enterpriseMerchantsQueryWrapper.lambda().and(t -> t.in(EnterpriseMerchantsEntity::getId, finalAllRuleIDlist)); } //假删除标志 enterpriseMerchantsQueryWrapper.lambda().isNull(EnterpriseMerchantsEntity::getDeleteMark); //排序 - if(StringUtil.isEmpty(enterpriseMerchantsPagination.getSidx())){ + if (StringUtil.isEmpty(enterpriseMerchantsPagination.getSidx())) { enterpriseMerchantsQueryWrapper.lambda().orderByDesc(EnterpriseMerchantsEntity::getId); - }else{ + } else { try { String sidx = enterpriseMerchantsPagination.getSidx(); - String[] strs= sidx.split("_name"); + String[] strs = sidx.split("_name"); EnterpriseMerchantsEntity enterpriseMerchantsEntity = new EnterpriseMerchantsEntity(); Field declaredField = enterpriseMerchantsEntity.getClass().getDeclaredField(strs[0]); declaredField.setAccessible(true); String value = declaredField.getAnnotation(TableField.class).value(); - enterpriseMerchantsQueryWrapper="asc".equals(enterpriseMerchantsPagination.getSort().toLowerCase())?enterpriseMerchantsQueryWrapper.orderByAsc(value):enterpriseMerchantsQueryWrapper.orderByDesc(value); + enterpriseMerchantsQueryWrapper = "asc".equals(enterpriseMerchantsPagination.getSort().toLowerCase()) ? enterpriseMerchantsQueryWrapper.orderByAsc(value) : enterpriseMerchantsQueryWrapper.orderByDesc(value); } catch (NoSuchFieldException e) { e.printStackTrace(); } } - if("0".equals(dataType)){ - if((total>0 && AllIdList.size()>0) || total==0){ - Page page=new Page<>(enterpriseMerchantsPagination.getCurrentPage(), enterpriseMerchantsPagination.getPageSize()); - IPage userIPage=this.page(page, enterpriseMerchantsQueryWrapper); - return enterpriseMerchantsPagination.setData(userIPage.getRecords(),userIPage.getTotal()); - }else{ + if ("0".equals(dataType)) { + if ((total > 0 && AllIdList.size() > 0) || total == 0) { + Page page = new Page<>(enterpriseMerchantsPagination.getCurrentPage(), enterpriseMerchantsPagination.getPageSize()); + IPage userIPage = this.page(page, enterpriseMerchantsQueryWrapper); + return enterpriseMerchantsPagination.setData(userIPage.getRecords(), userIPage.getTotal()); + } else { List list = new ArrayList(); return enterpriseMerchantsPagination.setData(list, list.size()); } - }else{ + } else { return this.list(enterpriseMerchantsQueryWrapper); } } + @Override - public EnterpriseMerchantsEntity getInfo(String id){ - QueryWrapper queryWrapper=new QueryWrapper<>(); - queryWrapper.lambda().eq(EnterpriseMerchantsEntity::getId,id); + public EnterpriseMerchantsEntity getInfo(String id) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(EnterpriseMerchantsEntity::getId, id); return this.getOne(queryWrapper); } + @Override - public void create(EnterpriseMerchantsEntity entity){ + public void create(EnterpriseMerchantsEntity entity) { this.save(entity); } + @Override - public boolean update(String id, EnterpriseMerchantsEntity entity){ + public boolean update(String id, EnterpriseMerchantsEntity entity) { return this.updateById(entity); } + @Override - public void delete(EnterpriseMerchantsEntity entity){ - if(entity!=null){ + public void delete(EnterpriseMerchantsEntity entity) { + if (entity != null) { this.removeById(entity.getId()); } } - /** 验证表单唯一字段,正则,非空 i-0新增-1修改*/ + + /** + * 验证表单唯一字段,正则,非空 i-0新增-1修改 + */ @Override - public String checkForm(EnterpriseMerchantsForm form,int i) { - boolean isUp =StringUtil.isNotEmpty(form.getId()) && !form.getId().equals("0"); - String id=""; + public String checkForm(EnterpriseMerchantsForm form, int i) { + boolean isUp = StringUtil.isNotEmpty(form.getId()) && !form.getId().equals("0"); + String id = ""; String countRecover = ""; - if (isUp){ + if (isUp) { id = form.getId(); } //主表字段验证 - if(StringUtil.isEmpty(form.getCmpNo())){ - return "公司编码不能为空"; - } - if(StringUtil.isEmpty(form.getCmpNm())){ - return "公司名称不能为空"; - } - if(StringUtil.isEmpty(form.getUserNm())){ - return "联系人不能为空"; - } - if(StringUtil.isEmpty(form.getContactNumber())){ - return "联系电话不能为空"; - } - if(StringUtil.isNotEmpty(form.getContactNumber())){ - if(!Pattern.compile("^1[3456789]\\d{9}$|^0\\d{2,3}-?\\d{7,8}$").matcher(String.valueOf(form.getContactNumber())).matches()){ - return "请输入正确的联系方式"; + if (StringUtil.isEmpty(form.getCmpNo())) { + return "公司编码不能为空"; } - } - if(StringUtil.isEmpty(form.getMailbox())){ - return "邮箱不能为空"; - } - if(StringUtil.isNotEmpty(form.getMailbox())){ - if(!Pattern.compile("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$").matcher(String.valueOf(form.getMailbox())).matches()){ - return "请输入正确的邮箱"; + if (StringUtil.isEmpty(form.getCmpNm())) { + return "公司名称不能为空"; } - } - if(StringUtil.isEmpty(form.getRegisteredAddress())){ - return "注册地址不能为空"; - } - if(StringUtil.isEmpty(form.getUnifiedSocialCreditCode())){ - return "统一社会信用代码不能为空"; - } - if(StringUtil.isEmpty(form.getLgPersonNm())){ - return "法定代表人不能为空"; - } - if(StringUtil.isEmpty(form.getCompanyRegistrationNumber())){ - return "公司注册号不能为空"; - } - if(StringUtil.isEmpty(form.getOfficeAddress())){ - return "办公地址不能为空"; - } - if(StringUtil.isEmpty(form.getRegisteredCapital())){ - return "注册资本不能为空"; - } - if(StringUtil.isNotEmpty(form.getRegisteredCapital())){ - if(!Pattern.compile("^([1-9][\\d]*|0)(\\.[\\d]+)?$").matcher(String.valueOf(form.getRegisteredCapital())).matches()){ - return "请输入正确的金额"; + if (StringUtil.isEmpty(form.getUserNm())) { + return "联系人不能为空"; + } + if (StringUtil.isEmpty(form.getContactNumber())) { + return "联系电话不能为空"; + } + if (StringUtil.isNotEmpty(form.getContactNumber())) { + if (!Pattern.compile("^1[3456789]\\d{9}$|^0\\d{2,3}-?\\d{7,8}$").matcher(String.valueOf(form.getContactNumber())).matches()) { + return "请输入正确的联系方式"; + } + } + if (StringUtil.isEmpty(form.getMailbox())) { + return "邮箱不能为空"; + } + if (StringUtil.isNotEmpty(form.getMailbox())) { + if (!Pattern.compile("^[a-z0-9]+([._\\-]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$").matcher(String.valueOf(form.getMailbox())).matches()) { + return "请输入正确的邮箱"; + } + } + if (StringUtil.isEmpty(form.getRegisteredAddress())) { + return "注册地址不能为空"; + } + if (StringUtil.isEmpty(form.getUnifiedSocialCreditCode())) { + return "统一社会信用代码不能为空"; + } + if (StringUtil.isEmpty(form.getLgPersonNm())) { + return "法定代表人不能为空"; + } + if (StringUtil.isEmpty(form.getCompanyRegistrationNumber())) { + return "公司注册号不能为空"; + } + if (StringUtil.isEmpty(form.getOfficeAddress())) { + return "办公地址不能为空"; + } + if (StringUtil.isEmpty(form.getRegisteredCapital())) { + return "注册资本不能为空"; + } + if (StringUtil.isNotEmpty(form.getRegisteredCapital())) { + if (!Pattern.compile("^([1-9][\\d]*|0)(\\.[\\d]+)?$").matcher(String.valueOf(form.getRegisteredCapital())).matches()) { + return "请输入正确的金额"; + } + } + if (StringUtil.isEmpty(form.getBankAccount())) { + return "银行账号不能为空"; } - } - if(StringUtil.isEmpty(form.getBankAccount())){ - return "银行账号不能为空"; - } return countRecover; } + /** - * 新增修改数据(事务回滚) - * @param id - * @param enterpriseMerchantsForm - * @return - */ + * 新增修改数据(事务回滚) + * + * @param id + * @param enterpriseMerchantsForm + * @return + */ @Override @Transactional - public void saveOrUpdate(EnterpriseMerchantsForm enterpriseMerchantsForm,String id, boolean isSave) throws Exception{ - UserInfo userInfo=userProvider.get(); + public void saveOrUpdate(EnterpriseMerchantsForm enterpriseMerchantsForm, String id, boolean isSave) throws Exception { + UserInfo userInfo = userProvider.get(); UserEntity userEntity = generaterSwapUtil.getUser(userInfo.getUserId()); enterpriseMerchantsForm = JsonUtil.getJsonToBean( - generaterSwapUtil.swapDatetime(EnterpriseMerchantsConstant.getFormData(),enterpriseMerchantsForm),EnterpriseMerchantsForm.class); + generaterSwapUtil.swapDatetime(EnterpriseMerchantsConstant.getFormData(), enterpriseMerchantsForm), EnterpriseMerchantsForm.class); EnterpriseMerchantsEntity entity = JsonUtil.getJsonToBean(enterpriseMerchantsForm, EnterpriseMerchantsEntity.class); - if(isSave){ - String mainId = RandomUtil.uuId() ; + if (isSave) { + String mainId = RandomUtil.uuId(); entity.setId(mainId); entity.setVersion(0); - }else{ + } else { } this.saveOrUpdate(entity); } + + @Override + public void updateStatus(String contractStatus, String contractName, String parkId) { + log.info("合同状态变更及时更新商户状态,变更状态:{},商户id:{},园区id:{}", contractStatus, contractName, parkId); + EnterpriseMerchantsEntity entity = this.getById(contractName); + if (ObjectUtil.isNull(entity)) { + return; + } + //如果是合同确认 并且状态是同意的 驳回不更改状态 + if ("20".equals(contractStatus)) { + entity.setEntryStatus("2"); + } else if ("30".equals(contractStatus)) { + entity.setEntryStatus("1"); + } + entity.setParkId(parkId); + this.updateById(entity); + } } diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/contract/change.vue b/jnpf-java-boot/jnpf-web/src/views/scm/contract/change.vue new file mode 100644 index 0000000..a80e0af --- /dev/null +++ b/jnpf-java-boot/jnpf-web/src/views/scm/contract/change.vue @@ -0,0 +1,935 @@ + + + + diff --git a/jnpf-java-boot/jnpf-web/src/views/scm/contract/index.vue b/jnpf-java-boot/jnpf-web/src/views/scm/contract/index.vue index 08fe2cc..9486333 100644 --- a/jnpf-java-boot/jnpf-web/src/views/scm/contract/index.vue +++ b/jnpf-java-boot/jnpf-web/src/views/scm/contract/index.vue @@ -65,7 +65,7 @@ 合同确认 - 合同结束 + 合同结束
@@ -138,12 +138,13 @@ 编辑 - 删除 + 删除 详情 变更合同 + @click="changeHandle(scope.row)">变更合同 @@ -154,10 +155,6 @@
- - - - @@ -167,6 +164,7 @@ :onRollback="rollback" /> + @@ -177,6 +175,7 @@ import request from '@/utils/request' import { mapGetters } from "vuex"; import { getDictionaryDataSelector } from '@/api/systemData/dictionary' import JNPFForm from './form' +import Change from './change' import Detail from './Detail' import ExportBox from '@/components/ExportBox' import ToFormDetail from '@/views/basic/dynamicModel/list/detail' @@ -196,6 +195,7 @@ export default { DialogComponent, DialogEndComponent, JNPFForm, + Change, Detail, ExportBox, ToFormDetail, SuperQuery }, @@ -245,6 +245,7 @@ export default { sidx: "", }, formVisible: false, + changeVisible: false, flowVisible: false, flowListVisible: false, flowList: [], @@ -490,7 +491,11 @@ export default { this.listLoading = false }) }, - handleDel(id) { + handleDel(id, contractStatus) { + if (contractStatus != '待确认') { + this.$message.error('该合同状态不是待确认状态,不允许删除!'); + return; + } this.$confirm('此操作将永久删除该数据, 是否继续?', '提示', { type: 'warning' }).then(() => { @@ -533,6 +538,13 @@ export default { this.$refs.JNPFForm.init(id, isDetail, this.list) }) }, + changeHandle(row, isDetail) { + let id = row ? row.id : "" + this.changeVisible = true + this.$nextTick(() => { + this.$refs.Change.init(id, isDetail, this.list) + }) + }, exportData() { this.exportBoxVisible = true this.$nextTick(() => { @@ -561,6 +573,7 @@ export default { }, refresh(isrRefresh) { this.formVisible = false + this.changeVisible = false if (isrRefresh) this.reset() }, reset() { @@ -572,85 +585,73 @@ export default { if (isrRefresh) this.reset() }, handleSubmit(rows) { - // if (this.selectedIds.length == 0) { - // this.$message.error("请选择要审核的单据!"); - // return; - // } - // if (rows.adjustComm == null || rows.adjustComm == "") { - // this.$message.error("请填写您的审核意见!"); - // return; - // } - // let _query = { - // adjustStatus: 1, - // ids: this.selectedIds, - // adjustComm: rows.adjustComm - // }; - // request({ - // url: `/api/scm/RecycleDeliveryOrder/auditBatch`, - // method: "post", - // data: _query - // }).then(res => { - // this.$message({ - // message: res.msg, - // type: "success", - // duration: 1000 - // }); - // this.initData(); - // }); + if (this.selectedRowId == null || this.selectedRowId == undefined) { + this.$message.error("请选择要确认的合同!"); + return; + } + let _query = { + contractStatus: 20, + id: this.selectedRowId, + approveRemarks: rows.approveRemarks + }; + request({ + url: `/api/example/Contract/confirmation`, + method: "post", + data: _query + }).then(res => { + this.$message({ + message: res.msg, + type: "success", + duration: 1000 + }); + this.initData(); + }); }, rollback(rows) { - // if (this.selectedIds.length == 0) { - // this.$message.error("请选择要审核的单据!"); - // return; - // } - // if (rows.adjustComm == null || rows.adjustComm == "") { - // this.$message.error("请填写您的审核意见!"); - // return; - // } - // let _query = { - // adjustStatus: 1, - // ids: this.selectedIds, - // adjustComm: rows.adjustComm - // }; - // request({ - // url: `/api/scm/RecycleDeliveryOrder/auditBatch`, - // method: "post", - // data: _query - // }).then(res => { - // this.$message({ - // message: res.msg, - // type: "success", - // duration: 1000 - // }); - // this.initData(); - // }); + if (this.selectedRowId == null || this.selectedRowId == undefined) { + this.$message.error("请选择要确认的合同!"); + return; + } + let _query = { + contractStatus: 10, + id: this.selectedRowId, + approveRemarks: rows.approveRemarks + }; + request({ + url: `/api/example/Contract/confirmation`, + method: "post", + data: _query + }).then(res => { + this.$message({ + message: res.msg, + type: "success", + duration: 1000 + }); + this.initData(); + }); }, handleEndSubmit(rows) { - // if (this.selectedIds.length == 0) { - // this.$message.error("请选择要审核的单据!"); - // return; - // } - // if (rows.adjustComm == null || rows.adjustComm == "") { - // this.$message.error("请填写您的审核意见!"); - // return; - // } - // let _query = { - // adjustStatus: 1, - // ids: this.selectedIds, - // adjustComm: rows.adjustComm - // }; - // request({ - // url: `/api/scm/RecycleDeliveryOrder/auditBatch`, - // method: "post", - // data: _query - // }).then(res => { - // this.$message({ - // message: res.msg, - // type: "success", - // duration: 1000 - // }); - // this.initData(); - // }); + if (this.selectedRowId == null || this.selectedRowId == undefined) { + this.$message.error("请选择要结束的合同!"); + return; + } + let _query = { + contractStatus: 30, + id: this.selectedRowId, + approveRemarks: rows.approveRemarks + }; + request({ + url: `/api/example/Contract/finish`, + method: "post", + data: _query + }).then(res => { + this.$message({ + message: res.msg, + type: "success", + duration: 1000 + }); + this.initData(); + }); } } }