MrShi
2025-01-14 8466d217aba3abd273a7a1dd8fa6093615272a2d
Merge branch '2.0.1' of http://139.186.142.91:10010/r/productDev/funingyunwei into 2.0.1
已添加2个文件
已修改11个文件
336 ■■■■■ 文件已修改
server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwMaterialController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWarehouseController.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkDeskCloutController.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/WorkDeskDataResponse.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WorkbenchesService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwWarehouseService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WorkbenchesServiceImpl.java 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/dao/system/model/Notices.java
@@ -71,7 +71,7 @@
    @ExcelColumn(name="关联对象编码")
    private Integer objId;
    @ApiModelProperty(value = "关联对象类型")
    @ApiModelProperty(value = "关联对象类型 0=盘点业务 1=巡检任务")
    @ExcelColumn(name="关联对象类型")
    private Integer objType;
@@ -79,27 +79,27 @@
    @ExcelColumn(name="关联对象名称")
    private String objName;
    @ApiModelProperty(value = "类型 0访客审批 1访客报备 2用车审批 3隐患处理 4物流车审批 5系统系统")
    @ExcelColumn(name="类型 0访客审批 1访客报备 2用车审批 3隐患处理 4物流车审批 5系统系统")
    @ApiModelProperty(value = "类型  0=盘点业务 1=巡检任务")
    @ExcelColumn(name="类型  0=盘点业务 1=巡检任务")
    private Integer type;
    @ApiModelProperty(value = "类型描述")
    @TableField(exist = false)
    private String typeDetail;
    @ApiModelProperty(value = "存储 æ¶ˆæ¯å±•示JSON" ,notes = "存储 æ¶ˆæ¯å±•示JSON ")
    @ApiModelProperty(value = "关联参数1" ,notes = "关联参数1")
    @ExcelColumn(name="关联参数1")
    private String param1;
    @ApiModelProperty(value = "用于存储 ä¸šåŠ¡çŠ¶æ€ä¿¡æ¯ 0 =待处理;1=已同意/已处理;2=已拒绝/已退回;3=已转交;4=已撤销",notes = "用于存储 ä¸šåŠ¡çŠ¶æ€ä¿¡æ¯ 0 =待处理;1=已同意/已处理;2=已拒绝/已退回;3=已转交;4=已撤销")
    @ApiModelProperty(value = "关联参数2",notes = "关联参数2")
    @ExcelColumn(name="关联参数2")
    private String param2;
    @ApiModelProperty(value = "发起人",notes = "发起人")
    @ApiModelProperty(value = "关联参数3",notes = "关联参数3")
    @ExcelColumn(name="关联参数3")
    private String param3;
    @ApiModelProperty(value = "操作人")
    @ApiModelProperty(value = "关联参数4")
    @ExcelColumn(name="关联参数4")
    private String param4;
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwMaterialController.java
@@ -66,6 +66,7 @@
    @PostMapping("/updateById")
    @CloudRequiredPermission("business:ywmaterial:update")
    public ApiResponse updateById(@RequestBody YwMaterial ywMaterial,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        ywMaterial.setLoginUserInfo(getLoginUser(token));
        ywMaterialService.updateById(ywMaterial);
        return ApiResponse.success(null);
    }
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWarehouseController.java
@@ -48,7 +48,7 @@
        ywWarehouseService.deleteById(id,this.getLoginUser(token));
        return ApiResponse.success(null);
    }
//
//    @ApiOperation("批量删除")
//    @GetMapping("/delete/batch")
//    @CloudRequiredPermission("business:ywwarehouse:delete")
@@ -66,10 +66,21 @@
    @PostMapping("/updateById")
    @CloudRequiredPermission("business:ywwarehouse:update")
    public ApiResponse updateById(@RequestBody YwWarehouse ywWarehouse,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        ywWarehouse.setLoginUserInfo(getLoginUser(token));
        ywWarehouseService.updateById(ywWarehouse);
        return ApiResponse.success(null);
    }
    @ApiOperation("根据ID修改状态")
    @PostMapping("/updateStatusById")
    @CloudRequiredPermission("business:ywwarehouse:update")
    public ApiResponse updateStatusById(@RequestBody YwWarehouse ywWarehouse,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        ywWarehouse.setLoginUserInfo(getLoginUser(token));
        ywWarehouseService.updateStatusById(ywWarehouse);
        return ApiResponse.success(null);
    }
    @ApiOperation("分页查询")
    @PostMapping("/page")
    @CloudRequiredPermission("business:ywwarehouse:query")
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/YwWorkDeskCloutController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,65 @@
package com.doumee.cloud.admin;
import com.doumee.api.BaseController;
import com.doumee.config.annotation.CloudRequiredPermission;
import com.doumee.core.annotation.excel.ExcelExporter;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.YwPatrolTaskRecord;
import com.doumee.dao.business.model.YwQuickModel;
import com.doumee.dao.business.vo.MonthDataResponse;
import com.doumee.dao.business.vo.WorkDeskDataResponse;
import com.doumee.service.business.WorkbenchesService;
import com.doumee.service.business.YwPatrolTaskRecordService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
/**
 * @author æ±Ÿè¹„蹄
 * @date 2024/11/21 18:11
 */
@Api(tags = "工作台数据")
@RestController
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/ywWorkDesk")
public class YwWorkDeskCloutController extends BaseController {
    @Autowired
    private WorkbenchesService workbenchesService;
    @ApiOperation("获取快捷菜单模块信息")
    @GetMapping("/getYwQuickList")
    public ApiResponse<List<YwQuickModel>> getYwQuickList(@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        return ApiResponse.success(workbenchesService.getYwQuickList(getLoginUser(token)));
    }
    @ApiOperation("更新快捷模块数据")
    @GetMapping("/updMyYwQuickModel")
    public ApiResponse updMyYwQuickModel(@RequestBody List<Integer> idList,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        workbenchesService.updMyYwQuickModel(idList,getLoginUser(token));
        return ApiResponse.success("操作成功");
    }
    @ApiOperation("获取日程数据")
    @GetMapping("/getMonthNotices")
    public ApiResponse<List<MonthDataResponse>> getMonthNotices(@RequestParam String yearMonth, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        return ApiResponse.success(workbenchesService.getMonthNotices(yearMonth,getLoginUser(token)));
    }
    @ApiOperation("获取待办数据")
    @GetMapping("/workDeskData")
    public ApiResponse<WorkDeskDataResponse> workDeskData(@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        return ApiResponse.success(workbenchesService.workDeskData(getLoginUser(token)));
    }
}
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/WorkDeskDataResponse.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,31 @@
package com.doumee.dao.business.vo;
import com.doumee.dao.system.model.Notices;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2023/5/6 10:20
 */
@Data
public class WorkDeskDataResponse {
    @ApiModelProperty(value = "待巡检数量")
    private Integer waitTaskSize;
    @ApiModelProperty(value = "逾期数量")
    private Integer timeOutSize;
    @ApiModelProperty(value = "待处理工单数量")
    private long waitDealWorkOrderSize;
    @ApiModelProperty(value = "待盘点数量")
    private long stocktakingSize;
}
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/WorkbenchesService.java
@@ -3,6 +3,7 @@
import com.doumee.core.model.LoginUserInfo;
import com.doumee.dao.business.model.YwQuickModel;
import com.doumee.dao.business.vo.MonthDataResponse;
import com.doumee.dao.business.vo.WorkDeskDataResponse;
import java.util.List;
@@ -19,4 +20,7 @@
    void updMyYwQuickModel(List<Integer> idList, LoginUserInfo loginUserInfo);
    List<MonthDataResponse> getMonthNotices(String yearMonth, LoginUserInfo loginUserInfo);
    WorkDeskDataResponse workDeskData(LoginUserInfo loginUserInfo);
}
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/YwWarehouseService.java
@@ -56,6 +56,8 @@
     */
    void updateByIdInBatch(List<YwWarehouse> ywWarehouses);
    void updateStatusById(YwWarehouse ywWarehouse);
    /**
     * ä¸»é”®æŸ¥è¯¢
     *
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/WorkbenchesServiceImpl.java
@@ -8,13 +8,16 @@
import com.doumee.core.model.LoginUserModel;
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.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 com.github.yulichang.wrapper.MPJLambdaWrapper;
import io.jsonwebtoken.lang.Objects;
import io.swagger.models.auth.In;
import org.apache.tomcat.util.bcel.classfile.Constant;
@@ -37,6 +40,18 @@
    @Autowired
    private YwQuickModelMapper ywQuickModelMapper;
    @Autowired
    private YwWorkorderMapper ywWorkorderMapper;
    @Autowired
    private NoticesJoinMapper noticesJoinMapper;
    @Autowired
    private YwPatrolTaskMapper ywPatrolTaskMapper;
    @Autowired
    private YwStocktakingMapper ywStocktakingMapper;
@@ -92,19 +107,70 @@
    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)
        );
        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;
    }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwMaterialServiceImpl.java
@@ -59,7 +59,6 @@
        //TODO rk æ‰€å±žé¡¹ç›®/房间需求问题
        if(Objects.isNull(ywMaterial)
            || StringUtils.isBlank(ywMaterial.getName())
                || StringUtils.isBlank(ywMaterial.getCode())
                || StringUtils.isBlank(ywMaterial.getQrcode())
                || Objects.isNull(ywMaterial.getCateId())
        ){
@@ -190,7 +189,7 @@
        Multifile multifile = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda().eq(Multifile::getObjId,id).eq(Multifile::getObjType,Constants.MultiFile.MATERIAL_FILE.getKey()));
        if(Objects.nonNull(multifile)){
            String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
                    +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_CONTRACT_BILL).getCode();
                    +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_MATERIAL).getCode();
            multifile.setFileurlFull(path + multifile.getFileurl());
            ywMaterial.setMultifile(multifile);
        }
@@ -227,7 +226,16 @@
                .orderByAsc(YwMaterial::getCode)
        ;
        IPage iPage = ywMaterialMapper.selectJoinPage(page,YwMaterial.class,queryWrapper);
        IPage<YwMaterial> iPage = ywMaterialMapper.selectJoinPage(page,YwMaterial.class,queryWrapper);
        String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
                +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_MATERIAL).getCode();
        for (YwMaterial ywMaterial:iPage.getRecords()) {
            Multifile multifile = multifileMapper.selectOne(new QueryWrapper<Multifile>().lambda().eq(Multifile::getObjId,ywMaterial.getId()).eq(Multifile::getObjType,Constants.MultiFile.MATERIAL_FILE.getKey()));
            if(Objects.nonNull(multifile)){
                multifile.setFileurlFull(path + multifile.getFileurl());
                ywMaterial.setMultifile(multifile);
            }
        }
        return PageData.from(iPage);
    }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolSchemeServiceImpl.java
@@ -16,6 +16,8 @@
import com.doumee.dao.business.YwPatrolTaskRecordMapper;
import com.doumee.dao.business.model.*;
import com.doumee.dao.system.SystemUserMapper;
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.YwPatrolSchemeService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -53,6 +55,8 @@
    private SystemUserMapper systemUserMapper;
    @Autowired
    private RedisTemplate<String, Object> redisTemplate;
    @Autowired
    private NoticesJoinMapper noticesJoinMapper;
    @Override
    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
@@ -206,6 +210,26 @@
            ywPatrolTaskRecordList.add(ywPatrolTaskRecord);
        }
        ywPatrolTaskRecordMapper.insert(ywPatrolTaskRecordList);
        if(StringUtils.isNotBlank(ywPatrolScheme.getUserIds())){
            String [] userIds = ywPatrolScheme.getUserIds().split(",");
            for (String userId:userIds) {
                //添加待办信息
                Notices notices = new Notices();
                notices.setCreateDate(new Date());
                notices.setCreator(ywPatrolScheme.getCreator());
                notices.setIsdeleted(Constants.ZERO);
                notices.setParam1(DateUtil.formatDate(ywPatrolTask.getStartDate(),"yyyy-MM-dd"));
                notices.setTitle("巡检任务待办");
                notices.setContent("["+ywPatrolTask.getCode()+"]将在["+notices.getParam1()+"]进行巡检,请按时执行");
                notices.setObjId(ywPatrolTask.getId());
                notices.setObjType(Constants.ONE);
                notices.setType(notices.getObjType());
                notices.setUserId(Integer.valueOf(userId));
                notices.setStatus(Constants.ZERO);
                noticesJoinMapper.insert(notices);
            }
        }
    }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwPatrolTaskRecordServiceImpl.java
@@ -12,7 +12,9 @@
import com.doumee.dao.business.*;
import com.doumee.dao.business.model.*;
import com.doumee.dao.system.MultifileMapper;
import com.doumee.dao.system.join.NoticesJoinMapper;
import com.doumee.dao.system.model.Multifile;
import com.doumee.dao.system.model.Notices;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.YwPatrolTaskRecordService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -58,6 +60,9 @@
    @Autowired
    private YwPatrolSchemeMapper ywPatrolSchemeMapper;
    @Autowired
    private NoticesJoinMapper noticesJoinMapper;
    @Override
@@ -229,6 +234,13 @@
                .set(YwPatrolTaskRecord::getDealInfo, ywPatrolTaskRecord.getDealInfo())
                .eq(YwPatrolTaskRecord::getId,ywPatrolTaskRecord.getId()));
        //标记待办已处理
        noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
                .set(Notices::getStatus,Constants.ONE)
                .eq(Notices::getIsdeleted,Constants.ZERO)
                .eq(Notices::getObjType,Constants.ONE)
                .eq(Notices::getObjId,ywPatrolTask.getId())
        );
        if(ywPatrolTaskRecordMapper.selectCount(new QueryWrapper<YwPatrolTaskRecord>().lambda()
                .eq(YwPatrolTaskRecord::getTaskId,ywPatrolTask.getId())
                .eq(YwPatrolTaskRecord::getStatus,Constants.ZERO)
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwStocktakingServiceImpl.java
@@ -14,6 +14,8 @@
import com.doumee.dao.business.YwStocktakingRecordMapper;
import com.doumee.dao.business.YwWarehouseMapper;
import com.doumee.dao.business.model.*;
import com.doumee.dao.system.join.NoticesJoinMapper;
import com.doumee.dao.system.model.Notices;
import com.doumee.service.business.YwStocktakingService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
@@ -56,6 +58,9 @@
    private YwWarehouseMapper ywWarehouseMapper;
    @Autowired
    private NoticesJoinMapper noticesJoinMapper;
    @Autowired
    private RedisTemplate<String, Object> redisTemplate;
    
    @Override
@@ -85,6 +90,20 @@
        ywStocktaking.setStatus(Constants.ZERO);
        ywStocktaking.setCode(getNextCode());
        ywStocktakingMapper.insert(ywStocktaking);
        //添加待办信息
        Notices notices = new Notices();
        notices.setCreateDate(new Date());
        notices.setCreator(ywStocktaking.getCreator());
        notices.setIsdeleted(Constants.ZERO);
        notices.setParam1(DateUtil.formatDate(ywStocktaking.getPlanDate(),"yyyy-MM-dd"));
        notices.setTitle("盘点待办");
        notices.setContent("["+ywStocktaking.getName()+"]将在["+notices.getParam1()+"]进行盘点,请按时执行");
        notices.setObjId(ywStocktaking.getId());
        notices.setObjType(Constants.ZERO);
        notices.setType(notices.getObjType());
        notices.setUserId(ywStocktaking.getUserId());
        notices.setStatus(Constants.ZERO);
        noticesJoinMapper.insert(notices);
        return ywStocktaking.getId();
    }
@@ -101,6 +120,12 @@
                    .set(YwStocktaking::getEditDate,DateUtil.getCurrDateTime())
                    .set(YwStocktaking::getEditor,loginUserInfo.getId())
                    .eq(YwStocktaking::getId,id)
            );
            //标记待办删除
            noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda().set(Notices::getIsdeleted,Constants.ONE)
                    .eq(Notices::getIsdeleted,Constants.ZERO)
                    .eq(Notices::getObjType,Constants.ZERO)
                    .eq(Notices::getObjId,id)
            );
        }else{
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"盘点单状态已流转,无法进行该操作");
@@ -121,6 +146,12 @@
                    .set(YwStocktaking::getCancelUserId,loginUserInfo.getId())
                    .set(YwStocktaking::getEditor,loginUserInfo.getId())
                    .set(YwStocktaking::getStatus,Constants.THREE).eq(YwStocktaking::getId,id));
            //标记待办删除
            noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda().set(Notices::getIsdeleted,Constants.ONE)
                    .eq(Notices::getIsdeleted,Constants.ZERO)
                    .eq(Notices::getObjType,Constants.ZERO)
                    .eq(Notices::getObjId,id)
            );
        }else{
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"盘点单状态已流转,无法进行该操作");
        }
@@ -144,6 +175,15 @@
                    .set(YwStocktaking::getEditor,loginUserInfo.getId())
                    .set(YwStocktaking::getStatus,Constants.ONE)
                    .eq(YwStocktaking::getId,model.getId()));
            //标记待办已处理
            noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
                    .set(Notices::getStatus,Constants.ONE)
                    .eq(Notices::getIsdeleted,Constants.ZERO)
                    .eq(Notices::getObjType,Constants.ZERO)
                    .eq(Notices::getObjId,id)
            );
            //生成当前仓库下所有的资产信息
            List<YwStock> stockList = ywStockMapper.selectList(new QueryWrapper<YwStock>().lambda().eq(YwStock::getIsdeleted,Constants.ZERO).eq(YwStock::getWarehouseId,model.getWarehouseId()));
            if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(stockList)){
@@ -256,6 +296,32 @@
        ywStocktaking.setEditDate(new Date());
        ywStocktaking.setCode(null);
        ywStocktakingMapper.updateById(ywStocktaking);
        //标记待办已处理
        noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
                .set(Notices::getStatus,Constants.ONE)
                .eq(Notices::getIsdeleted,Constants.ZERO)
                .eq(Notices::getObjType,Constants.ZERO)
                .eq(Notices::getObjId,ywStocktaking.getId())
        );
        //添加待办信息
        Notices notices = new Notices();
        notices.setCreateDate(new Date());
        notices.setCreator(ywStocktaking.getCreator());
        notices.setIsdeleted(Constants.ZERO);
        notices.setParam1(DateUtil.formatDate(ywStocktaking.getPlanDate(),"yyyy-MM-dd"));
        notices.setTitle("盘点待办");
        notices.setContent("["+ywStocktaking.getName()+"]将在["+notices.getParam1()+"]进行盘点,请按时执行");
        notices.setObjId(ywStocktaking.getId());
        notices.setObjType(Constants.ZERO);
        notices.setType(notices.getObjType());
        notices.setUserId(ywStocktaking.getUserId());
        notices.setStatus(Constants.ZERO);
        noticesJoinMapper.insert(notices);
    }
    @Override
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWarehouseServiceImpl.java
@@ -120,6 +120,18 @@
    }
    @Override
    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
    public void updateStatusById(YwWarehouse ywWarehouse) {
        if(Objects.isNull(ywWarehouse)
                || Objects.isNull(ywWarehouse.getStatus())
                || Objects.isNull(ywWarehouse.getId())
        ){
            throw new BusinessException(ResponseStatus.BAD_REQUEST);
        }
        ywWarehouseMapper.update(new UpdateWrapper<YwWarehouse>().lambda().eq(YwWarehouse::getId,ywWarehouse.getId()).set(YwWarehouse::getStatus,ywWarehouse.getStatus()));
    }
    @Override
    public void updateByIdInBatch(List<YwWarehouse> ywWarehouses) {
        if (CollectionUtils.isEmpty(ywWarehouses)) {
            return;