jiaosong
2023-12-04 56440a580924c199d3e84aef223e2772a02adb44
#供应商修改
已添加1个文件
已修改4个文件
249 ■■■■ 文件已修改
server/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/dao/business/join/CompanyJoinMapper.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Company.java 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/CompanyService.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java 157 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/java/com/doumee/api/business/CompanyController.java
@@ -6,11 +6,12 @@
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageWrap;
import com.doumee.core.model.PageData;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.Company;
import com.doumee.service.business.CompanyService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
@@ -87,4 +88,15 @@
    public ApiResponse findById(@PathVariable Integer id) {
        return ApiResponse.success(companyService.findById(id));
    }
    @ApiOperation("根据分类ID查询")
    @PostMapping("/findLaborServicesList")
    @RequiresPermissions("business:company:query")
    public ApiResponse<List<Company>> findLaborServicesList(Company query){
        Company company = new Company();
        company.setIsdeleted(Constants.ZERO);
        company.setType(query.getType());
        company.setCategoryId(query.getCategoryId());
        return ApiResponse.success(companyService.findList(company));
    }
}
server/dmvisit_service/src/main/java/com/doumee/dao/business/join/CompanyJoinMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,13 @@
package com.doumee.dao.business.join;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.Company;
import com.github.yulichang.base.mapper.MPJJoinMapper;
import org.springframework.stereotype.Repository;
/**
 * @author T14
 */
@Repository
public interface CompanyJoinMapper extends MPJJoinMapper<Company> {
}
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Company.java
@@ -1,5 +1,6 @@
package com.doumee.dao.business.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -21,29 +22,31 @@
public class Company {
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "主键", example = "1")
    @ApiModelProperty(value = "主键")
    @ExcelColumn(name="主键")
    private Integer id;
    @ApiModelProperty(value = "创建人编码", example = "1")
    @ApiModelProperty(value = "创建人编码")
    @ExcelColumn(name="创建人编码")
    private Integer creator;
    @ApiModelProperty(value = "创建人名称")
    @TableField(exist = false)
    private Integer creatorName;
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码", example = "1")
    @ApiModelProperty(value = "更新人编码")
    @ExcelColumn(name="更新人编码")
    private Integer editor;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date editDate;
    @ApiModelProperty(value = "是否删除0否 1是", example = "1")
    @ApiModelProperty(value = "是否删除0否 1是")
    @ExcelColumn(name="是否删除0否 1是")
    private Integer isdeleted;
@@ -55,11 +58,11 @@
    @ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "状态 0启用 1禁用", example = "1")
    @ApiModelProperty(value = "状态 0启用 1禁用")
    @ExcelColumn(name="状态 0启用 1禁用")
    private Integer status;
    @ApiModelProperty(value = "排序码", example = "1")
    @ApiModelProperty(value = "排序码")
    @ExcelColumn(name="排序码")
    private Integer sortnum;
@@ -67,19 +70,23 @@
    @ExcelColumn(name="图标")
    private String imgurl;
    @ApiModelProperty(value = "类型 0劳务公司 1内部组织", example = "1")
    @ApiModelProperty(value = "类型 0劳务公司 1内部组织")
    @ExcelColumn(name="类型 0劳务公司 1内部组织")
    private Integer type;
    @ApiModelProperty(value = "分类编码(关联category)", example = "1")
    @ApiModelProperty(value = "分类编码(关联category)")
    @ExcelColumn(name="分类编码(关联category)")
    private Integer categoryId;
    @ApiModelProperty(value = "企业代码", example = "1")
    @ApiModelProperty(value = "分类编码名称")
    @TableField(exist = false)
    private Integer categoryName;
    @ApiModelProperty(value = "企业代码")
    @ExcelColumn(name="企业代码")
    private Integer code;
    @ApiModelProperty(value = "上级组织编码(自关联)", example = "1")
    @ApiModelProperty(value = "上级组织编码(自关联)")
    @ExcelColumn(name="上级组织编码(自关联)")
    private Integer parentId;
@@ -91,17 +98,16 @@
    @ExcelColumn(name="联系电话")
    private String linkPhone;
    @ApiModelProperty(value = "海康标识", example = "1")
    @ApiModelProperty(value = "海康标识")
    @ExcelColumn(name="海康标识")
    private Integer hkId;
    @ApiModelProperty(value = "海康同步状态 0未同步 1已同步", example = "1")
    @ApiModelProperty(value = "海康同步状态 0未同步 1已同步")
    @ExcelColumn(name="海康同步状态 0未同步 1已同步")
    private Integer hkStatus;
    @ApiModelProperty(value = "海康最近同步时间")
    @ExcelColumn(name="海康最近同步时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date hkDate;
    @ApiModelProperty(value = "ERP标识")
@@ -110,10 +116,9 @@
    @ApiModelProperty(value = "ERP同步时间")
    @ExcelColumn(name="ERP同步时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date erpDate;
    @ApiModelProperty(value = "ERP同步状态 0未同步 1已同步", example = "1")
    @ApiModelProperty(value = "ERP同步状态 0未同步 1已同步")
    @ExcelColumn(name="ERP同步状态 0未同步 1已同步")
    private Integer erpStatus;
@@ -123,10 +128,9 @@
    @ApiModelProperty(value = "钉钉同步时间")
    @ExcelColumn(name="钉钉同步时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date ddDate;
    @ApiModelProperty(value = "钉钉P同步状态 0未同步 1已同步", example = "1")
    @ApiModelProperty(value = "钉钉P同步状态 0未同步 1已同步")
    @ExcelColumn(name="钉钉P同步状态 0未同步 1已同步")
    private Integer ddStatus;
@@ -134,13 +138,12 @@
    @ExcelColumn(name="飞书标识")
    private String fsId;
    @ApiModelProperty(value = "飞书同步状态 0未同步 1已同步", example = "1")
    @ApiModelProperty(value = "飞书同步状态 0未同步 1已同步")
    @ExcelColumn(name="飞书同步状态 0未同步 1已同步")
    private Integer fsStatus;
    @ApiModelProperty(value = "飞书最近同步时间")
    @ExcelColumn(name="飞书最近同步时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date fsDate;
}
server/dmvisit_service/src/main/java/com/doumee/service/business/CompanyService.java
@@ -14,11 +14,18 @@
    /**
     * åˆ›å»º
     *
     *
     * @param company å®žä½“对象
     * @return Integer
     */
    Integer create(Company company);
    /**
     * åˆ›å»ºåŠ³åŠ¡å…¬å¸
     * @param company
     * @return
     */
    Integer createLaborServices(Company company);
    /**
     * ä¸»é”®åˆ é™¤
@@ -47,6 +54,15 @@
     * @param company å®žä½“对象
     */
    void updateById(Company company);
    /**
     * ä¿®æ”¹åŠ³åŠ¡å…¬å¸
     * @param company
     * @return
     */
    Integer updateLaborServicesById(Company company);
    /**
     * æ‰¹é‡ä¸»é”®æ›´æ–°
@@ -78,7 +94,7 @@
     * @return List<Company>
     */
    List<Company> findList(Company company);
    /**
     * åˆ†é¡µæŸ¥è¯¢
     *
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -1,19 +1,28 @@
package com.doumee.service.business.impl;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
import com.doumee.core.model.LoginUserInfo;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.CompanyMapper;
import com.doumee.dao.business.join.CompanyJoinMapper;
import com.doumee.dao.business.model.Category;
import com.doumee.dao.business.model.Company;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.CompanyService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.collections.CollectionUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.Date;
import java.util.List;
/**
@@ -27,10 +36,40 @@
    @Autowired
    private CompanyMapper companyMapper;
    @Autowired
    private CompanyJoinMapper companyJoinMapper;
    @Override
    public Integer create(Company company) {
        companyMapper.insert(company);
        return company.getId();
    }
    @Override
    public Integer createLaborServices(Company company) {
        LoginUserInfo loginUserInfo = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        checkUnique(company);
        Company insert = new Company();
        insert.setCreator(loginUserInfo.getId());
        insert.setCreateDate(new Date());
        insert.setEditor(loginUserInfo.getId());
        insert.setEditDate(new Date());
        insert.setIsdeleted(Constants.ZERO);
        insert.setName(company.getName());
        insert.setRemark(company.getRemark());
        insert.setStatus(Constants.ZERO);
        insert.setSortnum(company.getSortnum());
        insert.setImgurl(company.getImgurl());
        insert.setType(Constants.ZERO);
        insert.setCategoryId(company.getCategoryId());
        insert.setCode(company.getCode());
        insert.setParentId(company.getParentId());
        insert.setLinkName(company.getLinkName());
        insert.setLinkPhone(company.getLinkPhone());
        companyMapper.insert(insert);
        return insert.getId();
    }
    @Override
@@ -55,6 +94,13 @@
    @Override
    public void updateById(Company company) {
        companyMapper.updateById(company);
    }
    @Override
    public Integer updateLaborServicesById(Company company) {
        checkUnique(company);
        companyMapper.updateById(company);
        return null;
    }
    @Override
@@ -83,113 +129,113 @@
        QueryWrapper<Company> wrapper = new QueryWrapper<>(company);
        return companyMapper.selectList(wrapper);
    }
    @Override
    public PageData<Company> findPage(PageWrap<Company> pageWrap) {
        IPage<Company> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        QueryWrapper<Company> queryWrapper = new QueryWrapper<>();
        MPJLambdaWrapper<Company> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().eq(Company::getId, pageWrap.getModel().getId());
            queryWrapper.eq(Company::getId, pageWrap.getModel().getId());
        }
        if (pageWrap.getModel().getCreator() != null) {
            queryWrapper.lambda().eq(Company::getCreator, pageWrap.getModel().getCreator());
            queryWrapper.eq(Company::getCreator, pageWrap.getModel().getCreator());
        }
        if (pageWrap.getModel().getCreateDate() != null) {
            queryWrapper.lambda().ge(Company::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
            queryWrapper.lambda().le(Company::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
            queryWrapper.ge(Company::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
            queryWrapper.le(Company::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
        }
        if (pageWrap.getModel().getEditor() != null) {
            queryWrapper.lambda().eq(Company::getEditor, pageWrap.getModel().getEditor());
            queryWrapper.eq(Company::getEditor, pageWrap.getModel().getEditor());
        }
        if (pageWrap.getModel().getEditDate() != null) {
            queryWrapper.lambda().ge(Company::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
            queryWrapper.lambda().le(Company::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
            queryWrapper.ge(Company::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
            queryWrapper.le(Company::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
        }
        if (pageWrap.getModel().getIsdeleted() != null) {
            queryWrapper.lambda().eq(Company::getIsdeleted, pageWrap.getModel().getIsdeleted());
            queryWrapper.eq(Company::getIsdeleted, pageWrap.getModel().getIsdeleted());
        }
        if (pageWrap.getModel().getName() != null) {
            queryWrapper.lambda().eq(Company::getName, pageWrap.getModel().getName());
            queryWrapper.eq(Company::getName, pageWrap.getModel().getName());
        }
        if (pageWrap.getModel().getRemark() != null) {
            queryWrapper.lambda().eq(Company::getRemark, pageWrap.getModel().getRemark());
            queryWrapper.eq(Company::getRemark, pageWrap.getModel().getRemark());
        }
        if (pageWrap.getModel().getStatus() != null) {
            queryWrapper.lambda().eq(Company::getStatus, pageWrap.getModel().getStatus());
            queryWrapper.eq(Company::getStatus, pageWrap.getModel().getStatus());
        }
        if (pageWrap.getModel().getSortnum() != null) {
            queryWrapper.lambda().eq(Company::getSortnum, pageWrap.getModel().getSortnum());
            queryWrapper.eq(Company::getSortnum, pageWrap.getModel().getSortnum());
        }
        if (pageWrap.getModel().getImgurl() != null) {
            queryWrapper.lambda().eq(Company::getImgurl, pageWrap.getModel().getImgurl());
            queryWrapper.eq(Company::getImgurl, pageWrap.getModel().getImgurl());
        }
        if (pageWrap.getModel().getType() != null) {
            queryWrapper.lambda().eq(Company::getType, pageWrap.getModel().getType());
            queryWrapper.eq(Company::getType, pageWrap.getModel().getType());
        }
        if (pageWrap.getModel().getCategoryId() != null) {
            queryWrapper.lambda().eq(Company::getCategoryId, pageWrap.getModel().getCategoryId());
            queryWrapper.eq(Company::getCategoryId, pageWrap.getModel().getCategoryId());
        }
        if (pageWrap.getModel().getCode() != null) {
            queryWrapper.lambda().eq(Company::getCode, pageWrap.getModel().getCode());
            queryWrapper.eq(Company::getCode, pageWrap.getModel().getCode());
        }
        if (pageWrap.getModel().getParentId() != null) {
            queryWrapper.lambda().eq(Company::getParentId, pageWrap.getModel().getParentId());
            queryWrapper.eq(Company::getParentId, pageWrap.getModel().getParentId());
        }
        if (pageWrap.getModel().getLinkName() != null) {
            queryWrapper.lambda().eq(Company::getLinkName, pageWrap.getModel().getLinkName());
            queryWrapper.eq(Company::getLinkName, pageWrap.getModel().getLinkName());
        }
        if (pageWrap.getModel().getLinkPhone() != null) {
            queryWrapper.lambda().eq(Company::getLinkPhone, pageWrap.getModel().getLinkPhone());
            queryWrapper.eq(Company::getLinkPhone, pageWrap.getModel().getLinkPhone());
        }
        if (pageWrap.getModel().getHkId() != null) {
            queryWrapper.lambda().eq(Company::getHkId, pageWrap.getModel().getHkId());
            queryWrapper.eq(Company::getHkId, pageWrap.getModel().getHkId());
        }
        if (pageWrap.getModel().getHkStatus() != null) {
            queryWrapper.lambda().eq(Company::getHkStatus, pageWrap.getModel().getHkStatus());
            queryWrapper.eq(Company::getHkStatus, pageWrap.getModel().getHkStatus());
        }
        if (pageWrap.getModel().getHkDate() != null) {
            queryWrapper.lambda().ge(Company::getHkDate, Utils.Date.getStart(pageWrap.getModel().getHkDate()));
            queryWrapper.lambda().le(Company::getHkDate, Utils.Date.getEnd(pageWrap.getModel().getHkDate()));
            queryWrapper.ge(Company::getHkDate, Utils.Date.getStart(pageWrap.getModel().getHkDate()));
            queryWrapper.le(Company::getHkDate, Utils.Date.getEnd(pageWrap.getModel().getHkDate()));
        }
        if (pageWrap.getModel().getErpId() != null) {
            queryWrapper.lambda().eq(Company::getErpId, pageWrap.getModel().getErpId());
            queryWrapper.eq(Company::getErpId, pageWrap.getModel().getErpId());
        }
        if (pageWrap.getModel().getErpDate() != null) {
            queryWrapper.lambda().ge(Company::getErpDate, Utils.Date.getStart(pageWrap.getModel().getErpDate()));
            queryWrapper.lambda().le(Company::getErpDate, Utils.Date.getEnd(pageWrap.getModel().getErpDate()));
            queryWrapper.ge(Company::getErpDate, Utils.Date.getStart(pageWrap.getModel().getErpDate()));
            queryWrapper.le(Company::getErpDate, Utils.Date.getEnd(pageWrap.getModel().getErpDate()));
        }
        if (pageWrap.getModel().getErpStatus() != null) {
            queryWrapper.lambda().eq(Company::getErpStatus, pageWrap.getModel().getErpStatus());
            queryWrapper.eq(Company::getErpStatus, pageWrap.getModel().getErpStatus());
        }
        if (pageWrap.getModel().getDdId() != null) {
            queryWrapper.lambda().eq(Company::getDdId, pageWrap.getModel().getDdId());
            queryWrapper.eq(Company::getDdId, pageWrap.getModel().getDdId());
        }
        if (pageWrap.getModel().getDdDate() != null) {
            queryWrapper.lambda().ge(Company::getDdDate, Utils.Date.getStart(pageWrap.getModel().getDdDate()));
            queryWrapper.lambda().le(Company::getDdDate, Utils.Date.getEnd(pageWrap.getModel().getDdDate()));
            queryWrapper.ge(Company::getDdDate, Utils.Date.getStart(pageWrap.getModel().getDdDate()));
            queryWrapper.le(Company::getDdDate, Utils.Date.getEnd(pageWrap.getModel().getDdDate()));
        }
        if (pageWrap.getModel().getDdStatus() != null) {
            queryWrapper.lambda().eq(Company::getDdStatus, pageWrap.getModel().getDdStatus());
            queryWrapper.eq(Company::getDdStatus, pageWrap.getModel().getDdStatus());
        }
        if (pageWrap.getModel().getFsId() != null) {
            queryWrapper.lambda().eq(Company::getFsId, pageWrap.getModel().getFsId());
            queryWrapper.eq(Company::getFsId, pageWrap.getModel().getFsId());
        }
        if (pageWrap.getModel().getFsStatus() != null) {
            queryWrapper.lambda().eq(Company::getFsStatus, pageWrap.getModel().getFsStatus());
            queryWrapper.eq(Company::getFsStatus, pageWrap.getModel().getFsStatus());
        }
        if (pageWrap.getModel().getFsDate() != null) {
            queryWrapper.lambda().ge(Company::getFsDate, Utils.Date.getStart(pageWrap.getModel().getFsDate()));
            queryWrapper.lambda().le(Company::getFsDate, Utils.Date.getEnd(pageWrap.getModel().getFsDate()));
            queryWrapper.ge(Company::getFsDate, Utils.Date.getStart(pageWrap.getModel().getFsDate()));
            queryWrapper.le(Company::getFsDate, Utils.Date.getEnd(pageWrap.getModel().getFsDate()));
        }
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
            }
        }
        return PageData.from(companyMapper.selectPage(page, queryWrapper));
        queryWrapper.orderByDesc(Company::getCreateDate);
        queryWrapper.leftJoin(Category.class,Category::getId,Company::getCategoryId)
                    .leftJoin(SystemUser.class,SystemUser::getId,Company::getCreator);
        queryWrapper.selectAll(Company.class)
                    .selectAs(Category::getName,Company::getCategoryName)
                    .selectAs(SystemUser::getRealname,Company::getCreatorName);
        IPage<Company> companyIPage = companyJoinMapper.selectJoinPage(page, Company.class, queryWrapper);
        return PageData.from(companyIPage);
    }
    @Override
@@ -197,4 +243,21 @@
        QueryWrapper<Company> wrapper = new QueryWrapper<>(company);
        return companyMapper.selectCount(wrapper);
    }
    /**
     * åŠ³åŠ¡å…¬å¸å”¯ä¸€æ€§æ ¡éªŒ
     * @param company
     */
    private void checkUnique(Company company){
        QueryWrapper<Company> wrapper = new QueryWrapper<>();
        wrapper.lambda()
                .eq(Company::getIsdeleted,Constants.ZERO)
                .eq(Company::getType,Constants.ZERO)
                .eq(Company::getName,company.getName());
        List<Company> companies = companyMapper.selectList(wrapper);
        if (CollectionUtils.isNotEmpty(companies)){
            throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(),"企业信息已存在");
        }
    }
}