linwei
2024-01-20 99a1086e763ee8be458b8e450f4d36222263ade3
添加物业公司,新增物业公司账号
4 files modified
86 ■■■■ changed files
src/main/java/org/springblade/modules/answerRecord/service/impl/AnswerRecordServiceImpl.java 23 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java 53 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/controller/TenantController.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java 8 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/answerRecord/service/impl/AnswerRecordServiceImpl.java
@@ -75,13 +75,15 @@
    public Boolean saveAnswer(List<SubjectChoicesVO> subjectChoicesVO) {
        BigDecimal bigDecimal = BigDecimal.valueOf(0);
        List<AnswerRecordEntity> objects = new ArrayList<>();
        // 遍历题目和选项
        for (SubjectChoicesVO choicesVO : subjectChoicesVO) {
            List<SubjectOptionVO> subjectOptionList = choicesVO.getSubjectOptionList();
            if (choicesVO.getChoicesType().intValue() == 3) {
                bigDecimal = bigDecimal.add(choicesVO.getScore());
            }
            for (SubjectOptionVO subjectOptionVO : subjectOptionList) {
                boolean update = remove(Wrappers.<AnswerRecordEntity>lambdaQuery()
                // 删除掉之前保存的记录
                remove(Wrappers.<AnswerRecordEntity>lambdaQuery()
                    .eq(AnswerRecordEntity::getPropertyId, choicesVO.getPropertyId())
                    .eq(AnswerRecordEntity::getSubjectChoicesId, choicesVO.getId()));
                if (subjectOptionVO.getIds() != null) {
@@ -126,6 +128,7 @@
        } else if (subjectChoicesVO.get(0).getSubclassName().equals("违法违规行为惩戒")) {
            one.setLllegalAndIrregularScore(bigDecimal);
        }
        // 计算总分
        BigDecimal add = one.getBaseInfoScore()
            .add(one.getOperateinfoScore())
            .add(one.getOperateinfoScore())
@@ -134,10 +137,26 @@
            .add(one.getGoodProjectScore())
            .add(one.getLllegalAndIrregularScore())
            .add(one.getEvaluateScore());
        one.setAllScore(add);
        one.setAllScore(getAllScore(add));
        bean.updateById(one);
        return saveBatch(objects);
    }
    /**
     * 判断结果,如果大于100 则设置100 小于/等于0 设置为0
     *
     * @param allScore
     * @return
     */
    private BigDecimal getAllScore(BigDecimal allScore) {
        if (allScore.compareTo(BigDecimal.valueOf(0)) > 100) {
            return BigDecimal.valueOf(100);
        }
        if (allScore.compareTo(BigDecimal.valueOf(0)) > 0) {
            return allScore;
        }
        return BigDecimal.valueOf(0);
    }
}
src/main/java/org/springblade/modules/property/service/impl/PropertyCompanyServiceImpl.java
@@ -16,27 +16,30 @@
 */
package org.springblade.modules.property.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import liquibase.pro.packaged.D;
import liquibase.pro.packaged.P;
import org.springblade.common.constant.CommonConstant;
import org.springblade.common.utils.SpringUtils;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.utils.DigestUtil;
import org.springblade.modules.pay.entity.AliPayInfo;
import org.springblade.modules.pay.entity.WxPayInfo;
import org.springblade.modules.pay.service.IAliPayService;
import org.springblade.modules.pay.service.IWxPayService;
import org.springblade.modules.property.entity.PropertyCompanyEntity;
import org.springblade.modules.property.vo.PropertyCompanyDetailVO;
import org.springblade.modules.property.vo.PropertyCompanyVO;
import org.springblade.modules.property.mapper.PropertyCompanyMapper;
import org.springblade.modules.property.service.IPropertyCompanyService;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.modules.property.vo.PropertyCompanyDetailVO;
import org.springblade.modules.property.vo.PropertyCompanyVO;
import org.springblade.modules.system.entity.Dept;
import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.entity.UserDept;
import org.springblade.modules.system.service.IDeptService;
import org.springblade.modules.system.service.IUserDeptService;
import org.springblade.modules.system.service.IUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@@ -58,6 +61,7 @@
    @Autowired
    private IAliPayService aliPayService;
    /**
     * 自定义分页
     *
@@ -72,6 +76,7 @@
    /**
     * 物业公司列表查询(不分页)
     *
     * @param propertyCompany
     * @return
     */
@@ -82,6 +87,7 @@
    /**
     * 物业公司查询对应的用户信息
     *
     * @param propertyCompany
     * @return
     */
@@ -101,22 +107,45 @@
        dept.setDeptName(propertyCompany.getName());
        dept.setFullName(propertyCompany.getName());
        // 判断新增还是修改
        if (null != propertyCompany.getId()){
        if (null != propertyCompany.getId()) {
            // 修改
            updateById(propertyCompany);
            // 修改住址机构信息
            dept.setId(propertyCompany.getDeptId());
            flag = deptService.updateById(dept);
        }else {
        } else {
            // 查询父级id
            QueryWrapper<Dept> wrapper = new QueryWrapper<>();
            wrapper.eq("is_deleted",0).eq("dept_name","物业公司");
            wrapper.eq("is_deleted", 0).eq("dept_name", "物业公司");
            Dept parentDept = deptService.getOne(wrapper);
            dept.setParentId(parentDept.getId());
            dept.setDeptCategory(1);
            dept.setSort(1);
            // 新增机构
            flag = deptService.save(dept);
            // 新增物业公司
            propertyCompany.setDeptId(dept.getId());
            // 新增用户
            User user = new User();
            user.setAccount(propertyCompany.getName());
            user.setUserType(1);
            user.setRealName(propertyCompany.getName());
            user.setName(propertyCompany.getName());
            user.setPassword(DigestUtil.encrypt(CommonConstant.DEFAULT_PASSWORD));
            user.setRoleId("1727864473262817281");
            user.setDeptId(dept.getId().toString());
            IUserService bean = SpringUtils.getBean(IUserService.class);
            boolean save = bean.save(user);
            // 新增用户和机构关联关系
            if (save) {
                UserDept userDept = new UserDept();
                userDept.setUserId(user.getId());
                userDept.setDeptId(dept.getId());
                IUserDeptService bean1 = SpringUtils.getBean(IUserDeptService.class);
                bean1.save(userDept);
            }
            System.out.println("保存用户结果:" + save);
            flag = save(propertyCompany);
        }
        return flag;
@@ -141,6 +170,7 @@
    /**
     * 物业公司 自定义详情查询
     *
     * @param propertyCompany
     * @return
     */
@@ -153,7 +183,7 @@
    public Boolean payConfig(WxPayInfo wxPayInfo, AliPayInfo aliPayInfo) {
        boolean wx = wxPayService.saveOrUpdate(wxPayInfo);
        boolean ali = aliPayService.saveOrUpdate(aliPayInfo);
        return wx&&ali;
        return wx && ali;
    }
    @Override
@@ -161,7 +191,6 @@
        PropertyCompanyDetailVO detail = this.getDetail(propertyCompany);
        AliPayInfo pA = new AliPayInfo();
src/main/java/org/springblade/modules/system/controller/TenantController.java
@@ -105,7 +105,7 @@
    @GetMapping("/select")
    @ApiOperationSupport(order = 3)
    @ApiOperation(value = "下拉数据源", notes = "传入tenant")
    @PreAuth(RoleConstant.HAS_ROLE_ADMIN)
    @PreAuth("hasAnyRole('administrator', 'admin','wygly')")
    public R<List<Tenant>> select() {
        BladeUser user = AuthUtil.getUser();
        Tenant tenant = new Tenant();
src/main/java/org/springblade/modules/system/service/impl/DeptServiceImpl.java
@@ -99,6 +99,14 @@
        if (AuthUtil.isAdministrator()) {
            tenantId = StringPool.EMPTY;
        }
        // 判断数据权限控制,非超管角色只可看到本级及以下数据
        if (Func.toLong(parentId) == 0L && !AuthUtil.isAdministrator()) {
            Long deptId = Func.firstLong(AuthUtil.getDeptId());
            Dept dept = SysCache.getDept(deptId);
            if (dept.getParentId() != 0) {
                parentId = dept.getParentId();
            }
        }
        return ForestNodeMerger.merge(baseMapper.lazyTree(tenantId, parentId));
    }