123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- package com.hssx.cloudmodel.service.impl;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.hssx.cloudmodel.constant.Constant;
- import com.hssx.cloudmodel.entity.Company;
- import com.hssx.cloudmodel.entity.Factory;
- import com.hssx.cloudmodel.entity.LngLatCompany;
- import com.hssx.cloudmodel.entity.User;
- import com.hssx.cloudmodel.entity.vo.CompanyVO;
- import com.hssx.cloudmodel.mapper.CompanyMapper;
- import com.hssx.cloudmodel.mapper.LngLatCompanyMapper;
- import com.hssx.cloudmodel.mapper.UserMapper;
- import com.hssx.cloudmodel.service.CompanyService;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.hssx.cloudmodel.util.HttpRespMsg;
- import com.hssx.cloudmodel.util.PageUtil;
- import org.springframework.beans.BeanUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import javax.annotation.Resource;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * <p>
- * 服务实现类
- * </p>
- *
- * @author 吴涛涛
- * @since 2019-07-26
- */
- @Service
- public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> implements CompanyService {
- @Resource
- CompanyMapper companyMapper;
- @Resource
- UserMapper userMapper;
- @Resource
- LngLatCompanyMapper lngLatCompanyMapper;
- @Override
- public HttpRespMsg addAndUpdateRole(CompanyVO companyVO, Integer flag) {
- HttpRespMsg msg = new HttpRespMsg();
- Company company = new Company();
- if (flag == 0) {
- //添加公司
- QueryWrapper<Company> qw = new QueryWrapper<>();
- qw.eq("company_name", companyVO.getCompanyName());
- int count = companyMapper.selectCount(qw);
- if (count > 0) {
- msg.setError("公司已存在,请勿重复添加");
- } else {
- if (companyVO.getCompanyType() == 0) {
- //资产方直接添加
- BeanUtils.copyProperties(companyVO,company);
- companyMapper.insert(company);
- }else if (companyVO.getCompanyType() == 1){
- //生产方
- BeanUtils.copyProperties(companyVO,company);
- companyMapper.insert(company);
- LngLatCompany factory = new LngLatCompany();
- factory.setxLat(companyVO.getXLat());
- factory.setyLng(companyVO.getYLng());
- factory.setCompanyId(company.getId());
- lngLatCompanyMapper.insert(factory);
- }
- }
- } else if (flag == 1) {
- //更新公司信息
- BeanUtils.copyProperties(companyVO,company);
- if (companyVO.getCompanyType() == 0) {
- //修改资产方
- BeanUtils.copyProperties(companyVO,company);
- companyMapper.updateById(company);
- }else if (companyVO.getCompanyType() == 1){
- //生产方
- BeanUtils.copyProperties(companyVO,company);
- companyMapper.updateById(company);
- QueryWrapper<LngLatCompany> qw = new QueryWrapper<>();
- qw.eq("company_id",companyVO.getId());
- LngLatCompany lngLatCompany = lngLatCompanyMapper.selectOne(qw);
- LngLatCompany factory = new LngLatCompany();
- factory.setxLat(companyVO.getXLat());
- factory.setyLng(companyVO.getYLng());
- factory.setCompanyId(company.getId());
- factory.setId(lngLatCompany.getId());
- lngLatCompanyMapper.updateById(factory);
- }
- }
- return msg;
- }
- @Override
- public HttpRespMsg pageList(PageUtil page, String keyName,Integer companyType) {
- HttpRespMsg msg = new HttpRespMsg();
- List<CompanyVO> list = new ArrayList<>();
- System.out.println(page);
- Integer start = (page.getPageNum() - 1) * page.getPageSize();
- if(companyType == 0){
- list = companyMapper.getListByKeyName(keyName, start, page.getPageSize(),companyType);
- Integer count = list.size();
- page.setTotal(count);
- page.setPages(page.getTotal());
- }else{
- list = companyMapper.getCustomerListByKeyName(keyName, start, page.getPageSize(),companyType);
- Integer count = list.size();
- page.setTotal(count);
- page.setPages(page.getTotal());
- }
- page.setList(list);
- msg.data = page;
- return msg;
- }
- @Override
- public List<Company> getIdAndNamelist(User user) {
- QueryWrapper<Company> qw = new QueryWrapper<>();
- qw.select("id", "company_name", "company_type");
- if (Constant.SYS_ID == user.getParentId()) {
- //此时是admin创建用户,返回可选的生产方公司,查询出当前admin的信息并获取他的公司id
- User admin = userMapper.selectOne(new QueryWrapper<User>().eq("id", user.getId()));
- qw.eq("company_type", Constant.PRODUCER_COMPANY).or().eq("id", admin.getCompanyId());
- } else if (Constant.SYS_PARENT_ID == user.getParentId()) {
- //系统管理员创建admin,返回资产方公司
- qw.eq("company_type", Constant.ASSETS_COMPANY);
- } else {
- //此时是项目经理创建其他用户
- User admin = userMapper.selectOne(new QueryWrapper<User>().eq("id", user.getParentId()));
- qw.eq("company_type", Constant.PRODUCER_COMPANY).or().eq("id", admin.getCompanyId());
- }
- return companyMapper.selectList(qw);
- }
- @Override
- public List<Company> addCompanyListToProject(User user) {
- QueryWrapper<Company> qw = new QueryWrapper<>();
- qw.eq("company_type", Constant.PRODUCER_COMPANY);
- return companyMapper.selectList(qw);
- }
- @Override
- public HttpRespMsg deleteById(Integer id) {
- HttpRespMsg msg = new HttpRespMsg();
- Integer count = userMapper.selectCount(new QueryWrapper<User>().eq("company_id", id));
- if (count > 0) {
- msg.setError("该公司已被应用到用户中,暂不提供删除操作");
- } else {
- companyMapper.deleteById(id);
- }
- return msg;
- }
- }
|