推送按钮逻辑
This commit is contained in:
parent
88ce02275f
commit
d331c4675b
@ -2,6 +2,7 @@ package com.chanko.yunxi.mes.module.heli.controller.admin.bdgzsomthing;
|
||||
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.attentiontodo.vo.AttentiontodoPageReqVO;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.attentiontodo.vo.AttentiontodoRespVO;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.fpuser.vo.FpUserRespVO;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.storagelog.vo.StorageLogPageReqVO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.attentiontodo.AttentiontodoDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDO;
|
||||
@ -168,5 +169,26 @@ public class bdgzsomthingController {
|
||||
|
||||
@Scheduled(cron = "0 0 0 * * ?")
|
||||
public void selectSafeStorageAndDeliverOneYear(){bdgzsomthingService.selectSafeStorageAndDeliverOneYear();}
|
||||
|
||||
@PostMapping("/getMessage")
|
||||
@Operation(summary = "小程序消息")
|
||||
@PreAuthorize("@ss.hasPermission('heli:bdgzsomthing:query')")
|
||||
public CommonResult<PageResult<bdgzsomthingDO>> getMessage(@Valid bdgzsomthingPageReqVO pageReqVO) {
|
||||
PageResult<bdgzsomthingDO>pageResult = bdgzsomthingService.getMessage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, bdgzsomthingDO.class));
|
||||
}
|
||||
@GetMapping("/read")
|
||||
@Operation(summary = "已读")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('heli:bdgzsomthing:query')")
|
||||
public CommonResult<Boolean> read(@RequestParam("id") Long id) {
|
||||
bdgzsomthingService.read(id);
|
||||
return success(true);
|
||||
}
|
||||
@GetMapping("/unreadMessage")
|
||||
@Operation(summary = "未读")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('heli:bdgzsomthing:query')")
|
||||
public CommonResult<Long> unreadMessage() {
|
||||
return success(bdgzsomthingService.unreadMessage());
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.chanko.yunxi.mes.module.heli.controller.admin.bdgzsomthing.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
@ -67,13 +68,13 @@ public class bdgzsomthingPageReqVO extends PageParam {
|
||||
private LocalDateTime[] nowtime;
|
||||
|
||||
@Schema(description = "备注6")
|
||||
private LocalDateTime attr6;
|
||||
private String attr6;
|
||||
|
||||
@Schema(description = "备注7")
|
||||
private LocalDateTime attr7;
|
||||
private String attr7;
|
||||
|
||||
@Schema(description = "备注8")
|
||||
private LocalDateTime attr8;
|
||||
private String attr8;
|
||||
|
||||
@Schema(description = "备注9")
|
||||
private String attr9;
|
||||
@ -95,5 +96,6 @@ public class bdgzsomthingPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "备注15")
|
||||
private String attr15;
|
||||
private String status;
|
||||
|
||||
}
|
@ -137,5 +137,10 @@ public class ProcessDesignController {
|
||||
public CommonResult<WarningMessageVO> getWarnings() {
|
||||
return success(processDesignService.getWarnings());
|
||||
}
|
||||
|
||||
@PostMapping("/send")
|
||||
@Operation(summary = "推送")
|
||||
@PreAuthorize("@ss.hasPermission('heli:process-design:create')")
|
||||
public void send(@Valid @RequestBody ProcessDesignSaveReqVO createReqVO) {
|
||||
processDesignService.send(createReqVO);
|
||||
}
|
||||
}
|
||||
|
@ -96,15 +96,15 @@ public class bdgzsomthingDO extends BaseDO {
|
||||
/**
|
||||
* 备注6
|
||||
*/
|
||||
private LocalDateTime attr6;
|
||||
private String attr6;
|
||||
/**
|
||||
* 备注7
|
||||
*/
|
||||
private LocalDateTime attr7;
|
||||
private String attr7;
|
||||
/**
|
||||
* 备注8
|
||||
*/
|
||||
private LocalDateTime attr8;
|
||||
private String attr8;
|
||||
/**
|
||||
* 备注9
|
||||
*/
|
||||
|
@ -1,14 +1,18 @@
|
||||
package com.chanko.yunxi.mes.module.heli.dal.mysql.bdgzsomthing;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.bdgzsomthing.vo.bdgzsomthingPageReqVO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.bdgzsomthing.bdgzsomthingDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.plantask.PlanTaskDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagelogNow.StorageLogNowDO;
|
||||
import com.github.yulichang.query.MPJLambdaQueryWrapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -121,4 +125,24 @@ public interface bdgzsomthingMapper extends BaseMapperX<bdgzsomthingDO> {
|
||||
void deleteOrder(bdgzsomthingDO BdgzsomthingDO);
|
||||
|
||||
List<bdgzsomthingDO> selectSafeStorage(@Param("attr3List") List<String> attr3List);
|
||||
|
||||
default PageResult<bdgzsomthingDO> getMessage(bdgzsomthingPageReqVO pageReqVO){
|
||||
LambdaQueryWrapper<bdgzsomthingDO> query = new LambdaQueryWrapper<>();
|
||||
query.eq(!StringUtils.isEmpty(pageReqVO.getStatus()),bdgzsomthingDO::getDeleted, pageReqVO.getStatus());
|
||||
query.eq(bdgzsomthingDO::getClick, pageReqVO.getClick());
|
||||
query.isNotNull(bdgzsomthingDO::getAttr6);
|
||||
Page<bdgzsomthingDO> page = new Page<>(pageReqVO.getPageNo(), pageReqVO.getPageSize());
|
||||
Page<bdgzsomthingDO> result = this.selectPage(page, query);
|
||||
return new PageResult<>(result.getRecords(), result.getTotal());
|
||||
|
||||
}
|
||||
|
||||
default Long unreadMessage(String name){
|
||||
LambdaQueryWrapper<bdgzsomthingDO> query = new LambdaQueryWrapper<>();
|
||||
query.eq(bdgzsomthingDO::getClick, name);
|
||||
query.isNotNull(bdgzsomthingDO::getAttr6);
|
||||
query.eq(bdgzsomthingDO::getDeleted,0);
|
||||
return this.selectCount(query);
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -65,4 +65,10 @@ public interface bdgzsomthingService {
|
||||
public void selectSafeStorageAndDeliverOneYear();
|
||||
public List<bdgzsomthingDO> selectSafeStorage(List<String> attr3List);
|
||||
public int updateById(bdgzsomthingDO entity);
|
||||
|
||||
PageResult<bdgzsomthingDO> getMessage(bdgzsomthingPageReqVO pageReqVO);
|
||||
|
||||
void read(Long id);
|
||||
|
||||
Long unreadMessage();
|
||||
}
|
||||
|
@ -7,7 +7,9 @@ import cn.hutool.system.SystemUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.TypeReference;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
||||
import com.chanko.yunxi.mes.framework.security.core.util.SecurityFrameworkUtils;
|
||||
import com.chanko.yunxi.mes.framework.web.core.util.WebFrameworkUtils;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.taskdispatch.vo.TaskDispatchPageReqVO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.attentiontodo.AttentiontodoDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.deliverorder.DeliverOrderDO;
|
||||
@ -929,6 +931,30 @@ public class bdgzsomthingServiceImpl implements bdgzsomthingService {
|
||||
return bdgzsomthingMapper.updateById(entity);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<bdgzsomthingDO> getMessage(bdgzsomthingPageReqVO pageReqVO) {
|
||||
Long userId = WebFrameworkUtils.getLoginUserId();
|
||||
AdminUserDO user = adminUserService.getUser(userId);
|
||||
pageReqVO.setClick(user.getNickname());
|
||||
return bdgzsomthingMapper.getMessage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void read(Long id) {
|
||||
// 校验存在
|
||||
LambdaUpdateWrapper<bdgzsomthingDO> wrapper = new LambdaUpdateWrapper<>();
|
||||
wrapper.eq(bdgzsomthingDO::getId,id);
|
||||
wrapper.set(bdgzsomthingDO::getDeleted,"1");
|
||||
bdgzsomthingMapper.update(wrapper);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Long unreadMessage() {
|
||||
Long userId = WebFrameworkUtils.getLoginUserId();
|
||||
AdminUserDO user = adminUserService.getUser(userId);
|
||||
return bdgzsomthingMapper.unreadMessage(user.getNickname());
|
||||
}
|
||||
|
||||
public List<bdgzsomthingDO> selectSafeStorage(List<String> attr3List){
|
||||
return bdgzsomthingMapper.selectSafeStorage(attr3List);
|
||||
}
|
||||
|
@ -81,4 +81,6 @@ public interface ProcessDesignService {
|
||||
* @return
|
||||
*/
|
||||
WarningMessageVO getWarnings();
|
||||
|
||||
void send(ProcessDesignSaveReqVO createReqVO);
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ package com.chanko.yunxi.mes.module.heli.service.processdesign;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.generator.IFill;
|
||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||
@ -13,10 +14,12 @@ import com.chanko.yunxi.mes.module.heli.controller.admin.processdesign.vo.Proces
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.processdesign.vo.ProcessDesignSaveReqSubVO;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.processdesign.vo.ProcessDesignSaveReqVO;
|
||||
import com.chanko.yunxi.mes.module.heli.controller.admin.zjbgmasterline.vo.ZjBgMasterLinePageReqVO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.attentiontodo.AttentiontodoDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.bdgzsomthing.bdgzsomthingDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.processdesign.ProcessDesignDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.processdesignprogress.ProcessDesignProgressDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.zjbgmasterline.ZjBgMasterLineDO;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.attentiontodo.AttentiontodoMapper;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.bdgzsomthing.bdgzsomthingMapper;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.processdesign.ProcessDesignMapper;
|
||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.processdesign.ProcessDesignProgressMapper;
|
||||
@ -34,6 +37,7 @@ import java.time.Duration;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
@ -53,6 +57,8 @@ public class ProcessDesignServiceImpl implements ProcessDesignService {
|
||||
private ProcessDesignProgressMapper processDesignProgressMapper;
|
||||
@Resource
|
||||
private bdgzsomthingMapper bdgzsomthingMapper;
|
||||
@Resource
|
||||
private AttentiontodoMapper attentiontodoMapper;
|
||||
@Override
|
||||
public PageResult<ProcessDesignProgressDO> getProcessPage(ProcessDesignProgressPageReqVO pageReqVO) {
|
||||
return processDesignProgressMapper.selectPage(pageReqVO);
|
||||
@ -357,6 +363,41 @@ public class ProcessDesignServiceImpl implements ProcessDesignService {
|
||||
return warningMessageVO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void send(ProcessDesignSaveReqVO createReqVO) {
|
||||
ProcessDesignDO processDesignDO = processDesignMapper.selectById(createReqVO.getId());
|
||||
LambdaQueryWrapper<ProcessDesignProgressDO> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.eq(ProcessDesignProgressDO::getProcessDesignId, processDesignDO.getId());
|
||||
wrapper.eq(ProcessDesignProgressDO::getDeleted,0);
|
||||
wrapper.orderByDesc(ProcessDesignProgressDO::getCreateTime);
|
||||
wrapper.last("limit 1");
|
||||
ProcessDesignProgressDO processDesignProgressDO = processDesignProgressMapper.selectOne(wrapper);
|
||||
List<AttentiontodoDO> attentiontodookddfh = attentiontodoMapper.selectByIdlist(16);//查找该类型的待办和关注人
|
||||
String thingname = "";
|
||||
if ("BLUEPRINT_FOUNDRY_TECHNOLOGY".equals(processDesignDO.getProcessDesignType())){
|
||||
thingname="铸造设计任务提醒";
|
||||
}else if ("BLUEPRINT_3D".equals(processDesignDO.getProcessDesignType())){
|
||||
thingname="3D设计任务提醒";
|
||||
}else if ("BLUEPRINT_2D".equals(processDesignDO.getProcessDesignType())){
|
||||
thingname="2D设计任务提醒";
|
||||
}else if ("BLUEPRINT_WORKBLANK".equals(processDesignDO.getProcessDesignType())){
|
||||
thingname="毛坯设计任务提醒";
|
||||
}
|
||||
// String things = processDesignDO.getCustomerName()+processDesignDO.getProjectName()+processDesignDO.getProjectSubName()+processDesignProgressDO.getRemark();
|
||||
for (AttentiontodoDO attentiontodoDO : attentiontodookddfh) {
|
||||
bdgzsomthingDO BdgzsomthingDO = new bdgzsomthingDO();
|
||||
BdgzsomthingDO.setClick(attentiontodoDO.getAttr4());
|
||||
BdgzsomthingDO.setThingname(thingname);
|
||||
// BdgzsomthingDO.setThings(things);
|
||||
BdgzsomthingDO.setAttr4("1");
|
||||
BdgzsomthingDO.setAttr6(processDesignDO.getCustomerName());
|
||||
BdgzsomthingDO.setAttr7(processDesignDO.getProjectName());
|
||||
BdgzsomthingDO.setAttr8(processDesignDO.getProjectSubName());
|
||||
BdgzsomthingDO.setAttr9(processDesignProgressDO.getRemark());
|
||||
bdgzsomthingMapper.insert(BdgzsomthingDO);
|
||||
}
|
||||
}
|
||||
|
||||
private void createProcessDesignProgressList(Long processDesignId, List<ProcessDesignProgressDO> list) {
|
||||
list.forEach(o -> o.setProcessDesignId(processDesignId));
|
||||
// 按创建时间排序
|
||||
|
@ -17,9 +17,9 @@ export interface bdgzsomthingVO {
|
||||
attr5: string
|
||||
clicktime: string
|
||||
nowtime: Date
|
||||
attr6: Date
|
||||
attr7: Date
|
||||
attr8: Date
|
||||
attr6: string
|
||||
attr7: string
|
||||
attr8: string
|
||||
attr9: string
|
||||
attr10: Date
|
||||
attr11: string
|
||||
@ -27,6 +27,7 @@ export interface bdgzsomthingVO {
|
||||
attr13: string
|
||||
attr14: string
|
||||
attr15: string
|
||||
status:string
|
||||
}
|
||||
|
||||
// 查询待办关注分页
|
||||
@ -77,3 +78,13 @@ export const updatebdgzsomthingbyidoneandok = async (id: number) => {
|
||||
export const exportbdgzsomthing = async (params) => {
|
||||
return await request.download({ url: `/heli/bdgzsomthing/export-excel`, params })
|
||||
}
|
||||
// 新增待办关注
|
||||
export const getMessage =async (params) => {
|
||||
return await request.post({ url: `/heli/bdgzsomthing/getMessage`, params })
|
||||
}
|
||||
export const read = async (id: number) => {
|
||||
return await request.get({ url: `/heli/bdgzsomthing/read?id=` + id })
|
||||
}
|
||||
export const unreadMessage = async () => {
|
||||
return await request.get({ url: `/heli/bdgzsomthing/unreadMessage` })
|
||||
}
|
||||
|
@ -54,3 +54,7 @@ export const getProcessDesignProgressListByProcessDesignId = async (processDesig
|
||||
export const getProcessDesignDeferredWarning = async () => {
|
||||
return await request.get({ url: `/heli/process-design/warnings`})
|
||||
}
|
||||
// 推送消息
|
||||
export const send = async (data: ProcessDesignVO) => {
|
||||
return await request.post({ url: `/heli/process-design/send`, data })
|
||||
}
|
||||
|
@ -208,7 +208,7 @@ v-for="dict in getIntDictOptions(DICT_TYPE.HELI_PROJECT_PLAN_STATUS)" :key="dict
|
||||
:rows="2"
|
||||
:disabled="!(formData.isOverProcess == null || formData.isOverProcess == 0)"
|
||||
type="textarea"
|
||||
|
||||
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@ -345,6 +345,8 @@ import {useCommonStore} from "@/store/modules/common";
|
||||
import {verify} from "node:crypto";
|
||||
import { delay, fromPairs, now } from 'lodash-es';
|
||||
import { FolderOpened } from '@element-plus/icons-vue/dist/types';
|
||||
import * as bdgzsomthingApi from "@/api/heli/bdgzsomthing";
|
||||
import {getMessage} from "@/api/heli/bdgzsomthing";
|
||||
|
||||
defineOptions({ name: 'ProcessDesignDetail' })
|
||||
|
||||
@ -379,6 +381,38 @@ const formRef = ref() // 表单 Ref
|
||||
const processDesignProgressFormRef = ref()
|
||||
const overbuttonName = ref('')
|
||||
/** 重置表单 */
|
||||
const queryParamsallin = reactive({
|
||||
pageNo: 1,
|
||||
pageSize: 20,
|
||||
createTime: [],
|
||||
click: undefined,
|
||||
clickid: undefined,
|
||||
thingname: undefined,
|
||||
things: undefined,
|
||||
level: undefined,
|
||||
showname: undefined,
|
||||
showname: [],
|
||||
dborgz: undefined,
|
||||
yesorno: undefined,
|
||||
attr1: undefined,
|
||||
attr2: undefined,
|
||||
attr3: undefined,
|
||||
attr4: undefined,
|
||||
attr5: undefined,
|
||||
clicktime: [],
|
||||
nowtime: [],
|
||||
attr6: undefined,
|
||||
attr7: undefined,
|
||||
attr8: undefined,
|
||||
attr9: undefined,
|
||||
attr10: undefined,
|
||||
attr11: undefined,
|
||||
attr12: undefined,
|
||||
attr13: undefined,
|
||||
attr14: undefined,
|
||||
attr15: undefined,
|
||||
status:"0"
|
||||
})
|
||||
const resetForm = () => {
|
||||
formData.value = {
|
||||
id: undefined,
|
||||
@ -529,7 +563,7 @@ const openDelay = async() =>{
|
||||
if(formData.value.blankDate != null ){
|
||||
var dateT = new Date(formData.value.blankDate)
|
||||
dateT.setHours(23,59,59,999)
|
||||
|
||||
|
||||
if( dateT.getTime() > date.getTime()){
|
||||
message.error("当前日期为正常生产周期,未达到延期条件,请确认!")
|
||||
return
|
||||
@ -677,6 +711,9 @@ const sendItem = async() =>{
|
||||
//先保存
|
||||
await submitForm('SAVE');
|
||||
//调用推送方法
|
||||
const data = formData.value as unknown as ProcessDesignApi.ProcessDesignVO
|
||||
await ProcessDesignApi.send(data)
|
||||
|
||||
}else{
|
||||
message.error("至少添加一条数据后才能推送!请确认!")
|
||||
}
|
||||
|
@ -1207,7 +1207,15 @@ onMounted(async () => {
|
||||
dialogTitle.value = query.type === 'review' ? '查看' : t('action.' + query.type)
|
||||
//- 获取仓库全数据
|
||||
whList.value = await WarehouseApi.getWarehouseSimpList()
|
||||
if (whList.value.length==1){
|
||||
formData.value.whId = whList.value[0].id;
|
||||
const dataRgList = await RgApi.getSimpList()
|
||||
rgList.value = dataRgList.filter((rg) => rg.wh_id == formData.value.whId)
|
||||
// 获得库区列表
|
||||
const dataPnList = await PnApi.getSimpList()
|
||||
|
||||
pnList.value = dataPnList.filter((pn) => pn.wh_id == formData.value.whId)
|
||||
}
|
||||
// formData.value.whId = Math.min.apply(Math, whList.value.map(function(i) {return i.id}));
|
||||
// handleWh(formData.value.whId)
|
||||
//获取状态为启用的物料信息
|
||||
|
Loading…
Reference in New Issue
Block a user