| | |
| | | |
| | | import com.alibaba.druid.sql.visitor.functions.Concat; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.core.constants.ResponseStatus; |
| | | import com.doumee.core.exception.BusinessException; |
| | | import com.doumee.core.model.LoginUserInfo; |
| | | import com.doumee.core.model.LoginUserModel; |
| | | import com.doumee.core.model.PageData; |
| | | import com.doumee.core.model.PageWrap; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.dao.business.ApproveParamMapper; |
| | | import com.doumee.dao.business.PlatformLogMapper; |
| | | import com.doumee.dao.business.YwQuickModelMapper; |
| | | import com.doumee.dao.business.model.YwQuickModel; |
| | | import com.doumee.core.utils.Utils; |
| | | import com.doumee.dao.business.*; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.business.vo.MonthDataResponse; |
| | | import com.doumee.dao.business.vo.WorkDeskDataResponse; |
| | | import com.doumee.dao.system.join.NoticesJoinMapper; |
| | | import com.doumee.dao.system.model.Notices; |
| | | import com.doumee.dao.system.model.SystemUser; |
| | | import com.doumee.service.business.WorkbenchesService; |
| | | import com.github.xiaoymin.knife4j.core.util.CollectionUtils; |
| | | import io.jsonwebtoken.lang.Objects; |
| | | import com.github.yulichang.wrapper.MPJLambdaWrapper; |
| | | import io.swagger.models.auth.In; |
| | | import org.apache.tomcat.util.bcel.classfile.Constant; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | |
| | | @Autowired |
| | | private YwQuickModelMapper ywQuickModelMapper; |
| | | |
| | | @Autowired |
| | | private YwWorkorderMapper ywWorkorderMapper; |
| | | |
| | | @Autowired |
| | | private NoticesJoinMapper noticesJoinMapper; |
| | | |
| | | @Autowired |
| | | private YwPatrolTaskMapper ywPatrolTaskMapper; |
| | | |
| | | @Autowired |
| | | private YwStocktakingMapper ywStocktakingMapper; |
| | | |
| | | @Autowired |
| | | private SystemDictDataBiz systemDictDataBiz; |
| | | |
| | | |
| | | |
| | | @Override |
| | | public List<YwQuickModel> getYwQuickList(LoginUserInfo loginUserInfo){ |
| | | List<YwQuickModel> ywQuickModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda() |
| | | .eq(YwQuickModel::getIsdeleted, Constants.ZERO) |
| | | .eq(YwQuickModel::getUserId,loginUserInfo.getId()) |
| | | .isNull(YwQuickModel::getUserId) |
| | | .orderByAsc(YwQuickModel::getSort) |
| | | ); |
| | | if(CollectionUtils.isEmpty(ywQuickModelList)){ |
| | | ywQuickModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda() |
| | | if(Objects.nonNull(loginUserInfo)){ |
| | | List<YwQuickModel> userModelList = ywQuickModelMapper.selectList(new QueryWrapper<YwQuickModel>().lambda() |
| | | .eq(YwQuickModel::getIsdeleted, Constants.ZERO) |
| | | .isNull(YwQuickModel::getUserId) |
| | | .eq(YwQuickModel::getUserId,loginUserInfo.getId()) |
| | | .orderByAsc(YwQuickModel::getSort) |
| | | ); |
| | | if(CollectionUtils.isNotEmpty(userModelList)){ |
| | | ywQuickModelList = userModelList; |
| | | } |
| | | } |
| | | String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() |
| | | +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_QUICK_MODEL).getCode(); |
| | | for (YwQuickModel ywQuickModel:ywQuickModelList) { |
| | | ywQuickModel.setIcoPath(path + ywQuickModel.getIcoPath()); |
| | | } |
| | | return ywQuickModelList; |
| | | } |
| | |
| | | .isNull(YwQuickModel::getUserId) |
| | | .orderByAsc(YwQuickModel::getSort) |
| | | ); |
| | | if(CollectionUtils.isEmpty(ywQuickModelList) || Constants.equalsInteger(idList.size(),ywQuickModelList.size())){ |
| | | if(CollectionUtils.isEmpty(ywQuickModelList) ){ |
| | | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"快捷模块配置异常,请联系管理员"); |
| | | } |
| | | ywQuickModelMapper.delete(new QueryWrapper<YwQuickModel>().lambda().eq(YwQuickModel::getUserId,loginUserInfo.getId())); |
| | |
| | | public List<MonthDataResponse> getMonthNotices(String yearMonth, LoginUserInfo loginUserInfo){ |
| | | List<String> dataList = DateUtil.getDayByMonth(yearMonth); |
| | | List<MonthDataResponse> monthDataResponseList = new ArrayList<>(); |
| | | List<Notices> noticesList = noticesJoinMapper.selectList(new QueryWrapper<Notices>().lambda() |
| | | .eq(Notices::getUserId,loginUserInfo.getId()) |
| | | .eq(Notices::getIsdeleted,Constants.ZERO) |
| | | .eq(Notices::getStatus,Constants.ZERO) |
| | | .like(Notices::getParam1,yearMonth) |
| | | .ne(Notices::getObjType,Constants.TWO) |
| | | ); |
| | | for (String str:dataList) { |
| | | MonthDataResponse monthDataResponse = new MonthDataResponse(); |
| | | monthDataResponse.setWeekMsg(DateUtil.getWeek(DateUtil.StringToDate(str,"yyyy-MM-dd")).getChineseName()); |
| | | monthDataResponse.setMonthDate(str); |
| | | |
| | | if(CollectionUtils.isNotEmpty(noticesList)){ |
| | | monthDataResponse.setNoticeList(noticesList.stream().filter(i->i.getParam1().equals(str)).collect(Collectors.toList())); |
| | | } |
| | | monthDataResponseList.add(monthDataResponse); |
| | | } |
| | | return monthDataResponseList; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | | public WorkDeskDataResponse workDeskData(LoginUserInfo loginUserInfo){ |
| | | WorkDeskDataResponse workDeskDataResponse = new WorkDeskDataResponse(); |
| | | workDeskDataResponse.setWaitDealWorkOrderSize(Constants.ZERO); |
| | | workDeskDataResponse.setTimeOutSize(Constants.ZERO); |
| | | workDeskDataResponse.setStocktakingSize(Constants.ZERO); |
| | | workDeskDataResponse.setWaitTaskSize(Constants.ZERO); |
| | | |
| | | List<YwPatrolTask> ywPatrolTaskList = ywPatrolTaskMapper.selectJoinList(YwPatrolTask.class,new MPJLambdaWrapper<YwPatrolTask>() |
| | | .selectAll(YwPatrolTask.class) |
| | | .selectAs(YwPatrolScheme::getCode,YwPatrolTask::getPlanCode) |
| | | .selectAs(YwPatrolScheme::getTitle,YwPatrolTask::getPlanTitle) |
| | | .leftJoin(YwPatrolScheme.class,YwPatrolScheme::getId,YwPatrolTask::getSchemeId) |
| | | .eq(YwPatrolTask::getIsdeleted, Constants.ZERO) |
| | | .eq(YwPatrolScheme::getStatus, Constants.ZERO) |
| | | .in(YwPatrolTask::getStatus, Constants.ZERO, Constants.ONE) |
| | | .le(YwPatrolTask::getEndDate,DateUtil.getCurrDateTime()) |
| | | .apply(" find_in_set( "+loginUserInfo.getId()+" , t1.USER_IDS ) ") |
| | | ); |
| | | Integer waitTaskSize = ywPatrolTaskList.size(); |
| | | Integer timeOutSize = Constants.ZERO; |
| | | if(CollectionUtils.isNotEmpty(ywPatrolTaskList)){ |
| | | timeOutSize = ywPatrolTaskList.stream().filter(i->(Constants.equalsInteger(i.getStatus(),Constants.ZERO) || Constants.equalsInteger(i.getStatus(),Constants.ONE) ) && |
| | | i.getEndDate().getTime()<System.currentTimeMillis()).collect(Collectors.toList()).size(); |
| | | } |
| | | |
| | | long waitDealWorkOrderSize = ywWorkorderMapper.selectCount(new QueryWrapper<YwWorkorder>().lambda() |
| | | .eq(YwWorkorder::getIsdeleted, Constants.ZERO) |
| | | .eq(YwWorkorder::getStatus,Constants.ZERO) |
| | | .eq(YwWorkorder::getDealStatus,Constants.ONE) |
| | | .eq(YwWorkorder::getDealUserId,loginUserInfo.getId()) |
| | | ); |
| | | |
| | | long stocktakingSize = ywStocktakingMapper.selectCount(new QueryWrapper<YwStocktaking>().lambda() |
| | | .eq(YwStocktaking::getIsdeleted,Constants.ZERO) |
| | | .eq(YwStocktaking::getUserId,loginUserInfo.getId()) |
| | | .in(YwStocktaking::getStatus, Constants.ZERO, Constants.ONE) |
| | | ); |
| | | workDeskDataResponse.setTimeOutSize(timeOutSize); |
| | | workDeskDataResponse.setWaitTaskSize(waitTaskSize); |
| | | workDeskDataResponse.setWaitDealWorkOrderSize(waitDealWorkOrderSize); |
| | | workDeskDataResponse.setStocktakingSize(stocktakingSize); |
| | | return workDeskDataResponse; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @Override |
| | | public PageData<Notices> getMyNotices(PageWrap<Notices> pageWrap,LoginUserInfo loginUserInfo) { |
| | | IPage<Notices> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | MPJLambdaWrapper<Notices> queryWrapper = new MPJLambdaWrapper<>(); |
| | | Notices model = pageWrap.getModel(); |
| | | Utils.MP.blankToNull(pageWrap.getModel()); |
| | | queryWrapper.selectAll(Notices.class) |
| | | .eq(Notices::getUserId,loginUserInfo.getId()) |
| | | .eq(Notices::getIsdeleted,Constants.ZERO) |
| | | .eq(Objects.nonNull(model)&&Objects.nonNull(model.getStatus()),Notices::getStatus,model.getStatus()) |
| | | .apply(" param1 <= CURDATE() ") |
| | | .orderByAsc(Notices::getReaded) |
| | | .orderByDesc(Notices::getId); |
| | | PageData<Notices> pageData = PageData.from(noticesJoinMapper.selectJoinPage(page,Notices.class, queryWrapper)); |
| | | return pageData; |
| | | } |
| | | |
| | | |
| | | |