110001安庆巡检_工艺巡检

news2024/12/21 20:22:00

安庆巡检_工艺巡检

  • 一. 工艺配置
  • 二. 点检计划
  • 三. 点检任务
  • 四. 复检任务
    • 1. 复检列表
      • 1.1 页面展示
    • 2. 复检任务下发
      • 2.1 操作说明
      • 2.2 业务说明
      • 2.3 表关联说明
        • ps_recheck_task工艺工序参数_复检详情表
    • 3. 复检详情
      • 2.1 获取参数点检详情
      • 2.2 获取复检详情列表
    • 4. app端复检任务提交
      • 4.1 请求
      • 4.2 业务说明
  • -------------------------------------------------------------------------------------------------------------------------------

一. 工艺配置

二. 点检计划

三. 点检任务

四. 复检任务

1. 复检列表

1.1 页面展示

在这里插入图片描述

2. 复检任务下发

2.1 操作说明

在异常管理页面操作栏中,可点击下发按钮弹出下发弹窗,选择复检人以及截止时间,确定后生成对应的复检任务

在这里插入图片描述

注意事项
1.下发按钮在任务复检已下发或者任务异常审核后变灰不可点击,复检已下发在复检人完成复检后解除灰色限制
2.下发的截止时间说明,超过截止时间后只会在告警通知生成逾期提醒,没有其他业务限制

在这里插入图片描述

2.2 业务说明

请求url

请求网址:
http://60.167.89.69:20186/prod-api/check/taskabnormal/recheckTask
请求方法:
POST

请求参数:
{
//ps_task_parameter点检任务参数表的id,该表记录了该参数点检值
  "id": "38c9dbe0-20ab-4eff-b6fb-392a989c6f00",
  "taskCode": "DJRW24082925990262",
  "processId": "87e7eb15f98a4b09b9ca20be0636583b",
  "parameterId": "048f2f8a-8bee-41c9-9a34-4ba42b590277",
  "checkResult": "120",
  "checkConclusion": 0,
  "handleStatus": 0,
  "status": 0,
  "recordTime": "2024-08-29 14:33:26",
  "recorder": "deng",
  "processName": "半成品焊接",
  "parameterName": "焊接参数",
  "techId": "39e89ebe6fd74b8fbdaeae799404d0ce",
  "techName": "焊接",//
  //点检人nick的Name
  "recorderName": "邓志雄",
  //复检人的userName
  "executor": "yuhai",
  "contentDesc": "点检",
  //复检任务截止时间,注意这是美国时间,有八小时差
  "dueDate": "2024-09-06T00:59:48.000Z",
  "type": 0
}
    /**
     * 工艺点检下发
     */
    @ApiOperation("工艺点检异任务下发")
    @RequiresPermissions("check:taskabnormal:send")
    @Log(title = "工艺点检下发", businessType = BusinessType.UPDATE)
    @PostMapping("/recheckTask")
    public AjaxResult recheckTaskAbnormal(@RequestBody Map<String, Object> map) {
        return toAjax(taskAbnormalService.recheckTaskAbnormal(map));
    }
    /**
     * 下发任务
     *
     * @param map 工艺点检异常项
     * @return 结果
     */
    @Override
    @Transactional
    public int recheckTaskAbnormal(Map<String, Object> map) {
        /**
         * 1.获取基本信息
         */
        //获取复检人userName
        String executor = (String) map.get("executor");
        //获取工艺参数点检详情的id
        String taskParameterId = (String) map.get("id");
        //获取复检截止时间
        Date dueDate = DateUtils.dealDateFormat(map.get("dueDate"));

        /**
         * 2.判断该工艺参数点检是否已有下发的复检任务
         *
         */
        Integer taskAbnormals = taskAbnormalMapper.selectCountById(taskParameterId);
        if (taskAbnormals > 0) {
            throw new BaseException("无法重复下发");
        }
        /**
         * 3. 构建复检任务
         */
        //复检任务对象
        RecheckTask recheckTask = new RecheckTask();
        recheckTask.setId(UUID.randomUUID().toString());
        recheckTask.setStatus(1);//0.待下发,未进行;1.已下发,进行中;2复检跳过;3复检完成
        recheckTask.setStartDate(DateUtils.getNowDate());
        recheckTask.setDueDate(dueDate);
        recheckTask.setCreateBy(SecurityUtils.getUsername());
        recheckTask.setTaskParameterId(taskParameterId);//关联工艺工序参数的点检详情id
        recheckTask.setExecutor(executor);//复检人

        //增加检测点、参数和任务编码
        TaskAbnormal abnormal = taskAbnormalMapper.selectTaskAbnormalById(taskParameterId);
        recheckTask.setTaskCode(abnormal.getTaskCode());//关联点检任务taskCode
        recheckTask.setProcessId(abnormal.getProcessId());//关联 ps_process 工艺工序_详情表的id
        recheckTask.setParameterId(abnormal.getParameterId());//关联 ps_parameter 工艺工序参数_详情表的id
        recheckTaskMapper.insertRecheckTask(recheckTask);
        /**
         * 4.复检任务逾期提醒
         */
        quartzService.recheckStartJob(recheckTask, SecurityConstants.INNER);
        /**
         * 5.下发消息
         */
        MessagePush messagePush = new MessagePush();
        messagePush.setPushUser(SecurityUtils.getUsername());
        messagePush.setHandleUser(executor);
        String content = "复检任务:" + abnormal.getProcessName() + "。截止时间:" + map.get("dueDate");
        messagePush.setContent(content);
        messagePush.setType("3");
        messagePush.setTitle("复检任务");
        messagePushService.insertMessagePush(messagePush);
        return 1;
    }
   <select id="selectCountById" resultType="java.lang.Integer">
        select count(1)  from ps_recheck_task prt
        left join ps_task_parameter ptp on prt.task_parameter_id = ptp.id
        where  prt.status=1 and ptp.id=#{id};
    </select>

    <select id="selectTaskAbnormalById" parameterType="String" resultMap="TaskAbnormalResult">
        select a1.id,
               a1.task_code,
               a1.process_id,
               a1.parameter_id,
               a1.check_result,
               a1.check_certificate,
               a1.check_conclusion,
               a1.remark,
               a1.handle_status,
               a1.handle_info,
               a1.handler,
               a1.handle_date,
               a1.record_time,
               a1.recorder,
               a2.name       processName,
               a3.name       parameterName,
               a3.standard_value,
               a4.name       techName,
               u1.nick_name  handlerName,
               u2.nick_name  recorderName,
               a3.check_type checkType,
               pct.type      type
        from ps_task_parameter a1 -- 工艺参数点检详情
                 left join ps_process a2 on a1.process_id = a2.id
                 left join ps_parameter a3 on a1.parameter_id = a3.id
                 left join ps_tech a4 on a3.tech_id = a4.id
                 left join sys_user u1 on a1.handler = u1.user_name
                 left join sys_user u2 on a1.recorder = u2.user_name
                 left join ps_check_task pct on a1.task_code = pct.task_code
        where a1.id = #{id}
    </select>

    <insert id="insertRecheckTask" parameterType="com.cjxjy.system.api.pojo.domain.RecheckTask">
        insert into ps_recheck_task
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="id != null">id,</if>
            <if test="taskCode != null">task_code,</if>
            <if test="executor != null">executor,</if>
            <if test="status != null">status,</if>
            <if test="startDate != null">start_date,</if>
            <if test="endDate != null">end_date,</if>
            <if test="dueDate != null">due_date,</if>
            <if test="createBy != null">create_by,</if>
            <if test="taskParameterId != null">task_parameter_id,</if>
            <if test="parameterId != null">parameter_id,</if>
            <if test="processId != null">process_id,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="id != null">#{id},</if>
            <if test="taskCode != null">#{taskCode},</if>
            <if test="executor != null">#{executor},</if>
            <if test="status != null">#{status},</if>
            <if test="startDate != null">#{startDate},</if>
            <if test="endDate != null">#{endDate},</if>
            <if test="dueDate != null">#{dueDate},</if>
            <if test="createBy != null">#{createBy},</if>
            <if test="taskParameterId != null">#{taskParameterId},</if>
            <if test="parameterId != null">#{parameterId},</if>
            <if test="processId != null">#{processId},</if>
        </trim>
    </insert>

2.3 表关联说明

ps_task_parameter a1 -- 工艺工序参数_点检详情表
  left join ps_process a2 --工艺工序参数_详情表
  	on a1.process_id = a2.id
  left join ps_parameter a3  -- 工艺工序_详情表
  	on a1.parameter_id = a3.id
  left join ps_tech a4 -- 工艺_详情表
  	on a3.tech_id = a4.id
  left join ps_check_task pct --工艺点检表
  	on a1.task_code = pct.task_code

ps_task_parameter工艺工序参数_点检详情表
在这里插入图片描述
ps_process工艺工序_详情表
在这里插入图片描述
ps_parameter工艺工序参数_详情表
在这里插入图片描述
ps_tech工艺_详情表
在这里插入图片描述
ps_check_task工艺点检任务表
在这里插入图片描述

ps_recheck_task工艺工序参数_复检详情表

在这里插入图片描述

3. 复检详情

2.1 获取参数点检详情

请求网址:
http://10.168.2.118:8095/prod-api/check/taskabnormal/ce0f7367-2dd9-4580-b093-a5866fecf4fa
请求方法:
GET

参数说明:ps_task_parameter工艺工序参数点检表的id

2.2 获取复检详情列表

请求网址:
http://10.168.2.118:8095/prod-api/check/recheckParameter/recheck?id=a3ae1534-57b7-4763-b80d-6bfb4c1f9f6a
请求方法:
GET

参数说明
id为ps_task_parameter点检任务参数表的id

4. app端复检任务提交

4.1 请求

请求网址:
http://60.167.89.69:20051/check/recheckParameter
请求方法:
POST

请求参数
{
//ps_task_parameter点检参数表id
  "taskParameterId": "13e3f229-aced-4270-b8b2-a957a89700aa",
  //ps_recheck_task复检任务表id
  "retaskId": "582642b9-6487-4d7f-b81b-d8b091aae9d1",
  //复检任务状态,设置为3:已完成
  "status": 3,
  //点检参数录入值
  "checkResult": "0.9",
  //点检图片
  "checkCertificate": "http://10.168.0.210:20003/jiuyuan-dongnan/recheck/2024/09/05/4ac3cc377d354b20b47e2bdf20e1ceb6.webp"
}

4.2 业务说明

    /**
     * 新增复检结果
     */
    @ApiOperation("新增复检结果")
    @RequiresPermissions("check:taskabnormal:add")
    @Log(title = "复检结果", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@Validated @RequestBody RetaskParameter retaskParameter) {
        return toAjax(retaskParameterService.insertRetaskParameter(retaskParameter));
    }

-------------------------------------------------------------------------------------------------------------------------------

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2106931.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

1989-2022年各省基尼系数、城镇基尼系数、农村基尼系数数据

1989-2022年各省基尼系数、城镇基尼系数、农村基尼系数数据 1、时间&#xff1a;1989-2022年 2、来源&#xff1a;各省年鉴、统计年鉴 3、范围&#xff1a;31省 4、指标&#xff1a;基尼系数、城镇基尼系数、农村基尼系数 5、计算说明&#xff1a;参照田为民的文章《中国基…

河南省第三届职业技能大赛 网站技术(世赛选拔)项目任务书

河南省第三届职业技能大赛 网络安全&#xff08;世赛选拔&#xff09;项目样题 Module_A 网页设计制作&#xff1a;一、项目简介&#xff1a;二、具体要求1. 网站基本元素2. 内容区域3.网站页面开发 三、该模块要收集的文件 Module_B 后台模块开发:Module_C 前端游戏设计:一、游…

Matter协议解析

Matter协议文档&#xff1a; https://csa-iot.org/wp-content/uploads/2024/05/matter-1-3-core-specification.pdf https://csa-iot.org/wp-content/uploads/2024/05/matter-application-cluster-specification.pdf https://csa-iot.org/wp-content/uploads/2024/05/matter-1…

2024年【陕西省安全员C证】免费试题及陕西省安全员C证作业模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2024年陕西省安全员C证免费试题为正在备考陕西省安全员C证操作证的学员准备的理论考试专题&#xff0c;每个月更新的陕西省安全员C证作业模拟考试祝您顺利通过陕西省安全员C证考试。 1、【多选题】下列关于坡度大于25…

坐牢第三十五天(c++)

一.作业 1.使用模版类自定义栈 代码&#xff1a; #include <iostream> using namespace std; template<typename T> // 封装一个栈 class stcak { private:T *data; //int max_size; // 最大容量int top; // 下标 public:// 无参构造函数stcak();// 有参…

Linux操作系统 :文件管理(实验报告)

一、实验目的 熟练掌握Shell特性和文件管理命令的使用方法 二、实验环境 硬件&#xff1a;PC电脑一台&#xff0c;网络正常&#xff1b; 配置&#xff1a;win10系统&#xff0c;内存大于8G 硬盘500G及以上 软件&#xff1a;VMware、Ubuntu16.04、 三、实验内容 Linux的文件…

【python】socket 入门以及多线程tcp链接

Socket 入门 及 多线程tcp链接 网络基础知识三要素 Socket是套接字的意思,是网络编程的核心对象,通信两端都独有自己的Socket对象, 数据在两个Socket之间通过 字节流(TCP协议) 或者 数据报包(UDP协议)的形式进行传输. 本文主要针对tcp流程进行讲解 socket-tcp流程图 1.创建服…

面试高频:MySQL索引

1 概念 索引是一种特殊的文件&#xff0c;包含着对数据表里所有记录的引用指针。可以对表中的一列或多列创建索引&#xff0c; 并指定索引的类型&#xff0c;各类索引有各自的数据结构实现。&#xff08;具体细节在后续的数据库原理课程讲解&#xff09; 2 作用 数据库中的表…

栈栈栈专题

一、基础 Leetcode 3174. 清除数字 class Solution { public:string clearDigits(string s) {string st; // 用string模拟栈的行为for(auto& v: s){if(isdigit(v)) st.pop_back();else st v;}return st;} }; 二、进阶 三、邻项消除 四、合法括号字符串 五、…

录屏快捷键不再神秘!2024年3款高效工具推荐

这年头&#xff0c;数字化了&#xff0c;录屏变成了我们学习、工作、娱乐时候的必备技能。不管我们是想录个教学视频、直播游戏还是记下会议内容&#xff0c;有个给力的录屏软件能省不少事。今儿&#xff0c;我给你说说2024年大家特别喜欢的三款录屏工具&#xff0c;它们不仅功…

RK3588 环境搭建

安装系统 参考3588用户手册安装系统安装qt install_qt.sh打开工程 下载runtime rknn-toolkit2-master.zip 5.1 解压 5.2 将/home/orangepi/works/rknn-toolkit2-master/rknpu2/runtime 拷贝到/home/orangepi/env_3588/下面 头文件所在目录 5.3 orangepiorangepi5plus:~/work…

源代码一定要加密!11款超级好用的源代码加密软件排行榜

在信息爆炸的时代&#xff0c;源代码的安全性成为了软件开发行业不可忽视的关键议题。加密&#xff0c;作为守护代码安全的利剑&#xff0c;其重要性不言而喻。对于开发者而言&#xff0c;选择一款高效、可靠的源代码加密软件&#xff0c;不仅能够有效保护知识产权&#xff0c;…

智慧体育馆如何区别于传统场馆?

在科技日新月异的今天&#xff0c;智慧体育馆作为现代体育与信息技术深度融合的产物&#xff0c;正逐步颠覆着传统场馆的运营模式与体验方式。它不仅代表了体育设施向智能化、数字化转型的必然趋势&#xff0c;更是提升全民体育参与热情、促进体育产业升级的关键一环。 智慧体…

什么是云计算?

1.云计算的概念&#xff1f; 现阶段广为人们所接受的是美国国家标准与技术研究院&#xff08;National Institute of Standards and Technology&#xff0c;NIST&#xff09;给出的定义&#xff1a;“云计算”是一种按使用量付费的模式&#xff0c;这种模式提供可用的、便捷的、…

汽车电子行业知识:关于域控制器

车载域控制器&#xff08;Vehicle Domain Controller, VDC&#xff09;是现代汽车电子架构中的关键组件&#xff0c;负责整合和管理多个电子控制单元&#xff08;ECU&#xff09;&#xff0c;以提高车辆的智能化和自动化水平。 1. 定义与功能 车载域控制器是一个集中式的计算…

让Windows保持低资源使用率的10个习惯,看下有没有你想要的

序言 十年前,一台低端Windows电脑是我的日常驱动力。它只有4GB的RAM,一个低端处理器,没有专用的图形卡。尽管存在这些局限性,但我过去常常明智地管理资源以避免性能问题。今天,我将分享我当时所依赖的技巧,这些技巧在今天仍然有效。 使用轻量级程序 首先,考虑用不会占…

ai聊天软件哪个好?建议看看这5个“聊天搭子”

你知道吗&#xff1f;现在除了饭搭子、奶茶搭子之外&#xff0c;现在还流行一种特别的“搭子”——聊天搭子。 不过&#xff0c;这种搭子有点特别&#xff0c;它们不会感到疲倦&#xff0c;也不会因忙碌而忽略你&#xff0c;因为它们就是ai聊天免费软件。无论是分享一天的趣事…

【系统架构设计师-2009年】综合知识-答案及详解

更多内容请见&#xff1a; 备考系统架构设计师-核心总结索引 文章目录 【第1题】【第2~4题】【第5题】【第6题】【第7~8题】【第9~10题】【第11题】【第12题】【第13题】【第14题】【第15题】【第16题】【第17题】【第18题】【第19题】【第20题】【第21题】【第22题】【第23题】…

HelpLook VS Baklib:一对一比较

HelpLook VS Baklib 企业帮助中心搭建软件对比产品对比 文档编辑体验文档编辑流程3 步6 步富文本编辑器✔✖文档效果所见即所得✔✖导入文档支持批量导入Word和Markdown格式文件✖导出备份支持导出为PDF、HTML和Markdown格式仅支持json格式自定义域名绑定流程域名解析1. 购…

opencv实战项目二十:检测箱盖的旋转角度以及位置

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、算法流程&#xff1a;二、算法实现&#xff1a;2.1 二值化箱盖并获取最大轮廓&#xff1a;2.2 凸包与多边形近似提取矩形2.3 最小外接矩形获取角度与位置 三…