啊鑫
3 天以前 2c1d75c4e57092eea3c26b925ab76c9fd17de736
Fix PCB API JSON serialization issue
已修改2个文件
670 ■■■■ 文件已修改
MES.Service/Dto/service/SingleBoardGenerateDto.cs 243 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/service/WholeboardGenerateDto.cs 427 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
MES.Service/Dto/service/SingleBoardGenerateDto.cs
@@ -1,150 +1,147 @@
using System;
using System.Collections.Generic;
using System.Text.Json.Serialization;
using Newtonsoft.Json;
namespace MES.Service.Dto.service
namespace MES.Service.Dto.service;
/// <summary>
///     拼板(单板)生成数据DTO
/// </summary>
public class SingleBoardGenerateDto
{
    /// <summary>
    /// 拼板(单板)生成数据DTO
    ///     设备名称
    /// </summary>
    public class SingleBoardGenerateDto
    {
        /// <summary>
        /// 设备名称
        /// </summary>
        [JsonPropertyName("device_name")]
        public string DeviceName { get; set; }
    [JsonProperty("device_name")]
    public string? DeviceName { get; set; }
        /// <summary>
        /// 整板条码
        /// </summary>
        [JsonPropertyName("pcb_sn")]
        public string PcbSn { get; set; }
    /// <summary>
    ///     整板条码
    /// </summary>
    [JsonProperty("pcb_sn")]
    public string? PcbSn { get; set; }
        /// <summary>
        /// 轨道信息(1,1轨)(2,2轨)
        /// </summary>
        [JsonPropertyName("pcb_track_line")]
        public int PcbTrackLine { get; set; }
    /// <summary>
    ///     轨道信息(1,1轨)(2,2轨)
    /// </summary>
    [JsonProperty("pcb_track_line")]
    public int PcbTrackLine { get; set; }
        /// <summary>
        /// 板面(T,顶面)(B,底面)(T+B,板面+底面)
        /// </summary>
        [JsonPropertyName("pcb_board_side")]
        public string PcbBoardSide { get; set; }
    /// <summary>
    ///     板面(T,顶面)(B,底面)(T+B,板面+底面)
    /// </summary>
    [JsonProperty("pcb_board_side")]
    public string? PcbBoardSide { get; set; }
        /// <summary>
        /// 检测时间
        /// </summary>
        [JsonPropertyName("pcb_test_time")]
        public string PcbTestTime { get; set; }
    /// <summary>
    ///     检测时间
    /// </summary>
    [JsonProperty("pcb_test_time")]
    public string? PcbTestTime { get; set; }
        /// <summary>
        /// 检测耗时,单位秒
        /// </summary>
        [JsonPropertyName("pcb_cycle_time")]
        public float PcbCycleTime { get; set; }
    /// <summary>
    ///     检测耗时,单位秒
    /// </summary>
    [JsonProperty("pcb_cycle_time")]
    public float PcbCycleTime { get; set; }
        /// <summary>
        /// 程序名/板式名
        /// </summary>
        [JsonPropertyName("pcb_project_name")]
        public string PcbProjectName { get; set; }
    /// <summary>
    ///     程序名/板式名
    /// </summary>
    [JsonProperty("pcb_project_name")]
    public string? PcbProjectName { get; set; }
        /// <summary>
        /// 整板检测结果
        /// </summary>
        [JsonPropertyName("pcb_robot_result")]
        public string PcbRobotResult { get; set; }
    /// <summary>
    ///     整板检测结果
    /// </summary>
    [JsonProperty("pcb_robot_result")]
    public string? PcbRobotResult { get; set; }
        /// <summary>
        /// 整板复判结果
        /// </summary>
        [JsonPropertyName("pcb_user_result")]
        public string PcbUserResult { get; set; }
    /// <summary>
    ///     整板复判结果
    /// </summary>
    [JsonProperty("pcb_user_result")]
    public string? PcbUserResult { get; set; }
        /// <summary>
        /// 整板最终结果
        /// </summary>
        [JsonPropertyName("pcb_final_result")]
        public string PcbFinalResult { get; set; }
    /// <summary>
    ///     整板最终结果
    /// </summary>
    [JsonProperty("pcb_final_result")]
    public string? PcbFinalResult { get; set; }
        /// <summary>
        /// 维修站复判用户名
        /// </summary>
        [JsonPropertyName("pcb_repair_user")]
        public string PcbRepairUser { get; set; }
    /// <summary>
    ///     维修站复判用户名
    /// </summary>
    [JsonProperty("pcb_repair_user")]
    public string? PcbRepairUser { get; set; }
        /// <summary>
        /// 拼板数量
        /// </summary>
        [JsonPropertyName("pcb_board_number")]
        public int PcbBoardNumber { get; set; }
    /// <summary>
    ///     拼板数量
    /// </summary>
    [JsonProperty("pcb_board_number")]
    public int PcbBoardNumber { get; set; }
        /// <summary>
        /// 器件总数量
        /// </summary>
        [JsonPropertyName("pcb_comp_number")]
        public int PcbCompNumber { get; set; }
    /// <summary>
    ///     器件总数量
    /// </summary>
    [JsonProperty("pcb_comp_number")]
    public int PcbCompNumber { get; set; }
        /// <summary>
        /// 拼板条码
        /// </summary>
        [JsonPropertyName("board_sn")]
        public string BoardSn { get; set; }
    /// <summary>
    ///     拼板条码
    /// </summary>
    [JsonProperty("board_sn")]
    public string? BoardSn { get; set; }
        /// <summary>
        /// 拼板序号
        /// </summary>
        [JsonPropertyName("board_no")]
        public string BoardNo { get; set; }
    /// <summary>
    ///     拼板序号
    /// </summary>
    [JsonProperty("board_no")]
    public string? BoardNo { get; set; }
        /// <summary>
        /// 拼板检测结果
        /// </summary>
        [JsonPropertyName("board_robot_result")]
        public string BoardRobotResult { get; set; }
    /// <summary>
    ///     拼板检测结果
    /// </summary>
    [JsonProperty("board_robot_result")]
    public string? BoardRobotResult { get; set; }
        /// <summary>
        /// 拼板复判结果
        /// </summary>
        [JsonPropertyName("board_user_result")]
        public string BoardUserResult { get; set; }
    /// <summary>
    ///     拼板复判结果
    /// </summary>
    [JsonProperty("board_user_result")]
    public string? BoardUserResult { get; set; }
        /// <summary>
        /// 拼板最终结果
        /// </summary>
        [JsonPropertyName("board_final_result")]
        public string BoardFinalResult { get; set; }
    /// <summary>
    ///     拼板最终结果
    /// </summary>
    [JsonProperty("board_final_result")]
    public string? BoardFinalResult { get; set; }
        /// <summary>
        /// 拼板器件数量
        /// </summary>
        [JsonPropertyName("board_comp_number")]
        public int BoardCompNumber { get; set; }
    /// <summary>
    ///     拼板器件数量
    /// </summary>
    [JsonProperty("board_comp_number")]
    public int BoardCompNumber { get; set; }
        /// <summary>
        /// 拼板器件检测NG总数
        /// </summary>
        [JsonPropertyName("board_comp_robot_ng_number")]
        public int BoardCompRobotNgNumber { get; set; }
    /// <summary>
    ///     拼板器件检测NG总数
    /// </summary>
    [JsonProperty("board_comp_robot_ng_number")]
    public int BoardCompRobotNgNumber { get; set; }
        /// <summary>
        /// 拼板器件复判NG总数
        /// </summary>
        [JsonPropertyName("board_comp_user_ng_number")]
        public int BoardCompUserNgNumber { get; set; }
    /// <summary>
    ///     拼板器件复判NG总数
    /// </summary>
    [JsonProperty("board_comp_user_ng_number")]
    public int BoardCompUserNgNumber { get; set; }
        /// <summary>
        /// 拼板器件误报总数
        /// </summary>
        [JsonPropertyName("board_comp_repass_number")]
        public int BoardCompRepassNumber { get; set; }
    /// <summary>
    ///     拼板器件误报总数
    /// </summary>
    [JsonProperty("board_comp_repass_number")]
    public int BoardCompRepassNumber { get; set; }
        /// <summary>
        /// 器件列表
        /// </summary>
        [JsonPropertyName("comp_data")]
        public List<ComponentDataDto> CompData { get; set; }
    }
    /// <summary>
    ///     器件列表
    /// </summary>
    [JsonProperty("comp_data")]
    public List<ComponentDataDto>? CompData { get; set; }
}
MES.Service/Dto/service/WholeboardGenerateDto.cs
@@ -1,234 +1,231 @@
using System;
using System.Collections.Generic;
using System.Text.Json.Serialization;
using Newtonsoft.Json;
namespace MES.Service.Dto.service
namespace MES.Service.Dto.service;
/// <summary>
///     整板生成数据DTO
/// </summary>
public class WholeboardGenerateDto
{
    /// <summary>
    /// 整板生成数据DTO
    ///     设备名称
    /// </summary>
    public class WholeboardGenerateDto
    {
        /// <summary>
        /// 设备名称
        /// </summary>
        [JsonPropertyName("device_name")]
        public string DeviceName { get; set; }
        /// <summary>
        /// 整板条码
        /// </summary>
        [JsonPropertyName("pcb_sn")]
        public string PcbSn { get; set; }
        /// <summary>
        /// 轨道信息(1,1轨)(2,2轨)
        /// </summary>
        [JsonPropertyName("pcb_track_line")]
        public int PcbTrackLine { get; set; }
        /// <summary>
        /// 板面(T,顶面)(B,底面)(T+B,板面+底面)
        /// </summary>
        [JsonPropertyName("pcb_board_side")]
        public string PcbBoardSide { get; set; }
        /// <summary>
        /// 检测时间,格式yyyy-mm-dd hh:mm:ss
        /// </summary>
        [JsonPropertyName("pcb_test_time")]
        public string PcbTestTime { get; set; }
        /// <summary>
        /// 检测耗时,单位秒
        /// </summary>
        [JsonPropertyName("pcb_cycle_time")]
        public float PcbCycleTime { get; set; }
        /// <summary>
        /// 程序名/板式名
        /// </summary>
        [JsonPropertyName("pcb_project_name")]
        public string PcbProjectName { get; set; }
        /// <summary>
        /// 整板检测结果
        /// </summary>
        [JsonPropertyName("pcb_robot_result")]
        public string PcbRobotResult { get; set; }
        /// <summary>
        /// 整板复判结果
        /// </summary>
        [JsonPropertyName("pcb_user_result")]
        public string PcbUserResult { get; set; }
        /// <summary>
        /// 整板最终结果
        /// </summary>
        [JsonPropertyName("pcb_final_result")]
        public string PcbFinalResult { get; set; }
        /// <summary>
        /// 维修站复判用户名
        /// </summary>
        [JsonPropertyName("pcb_repair_user")]
        public string PcbRepairUser { get; set; }
        /// <summary>
        /// 拼板数量
        /// </summary>
        [JsonPropertyName("pcb_board_number")]
        public int PcbBoardNumber { get; set; }
        /// <summary>
        /// 拼板检测NG数量
        /// </summary>
        [JsonPropertyName("pcb_board_robot_ng_number")]
        public int PcbBoardRobotNgNumber { get; set; }
        /// <summary>
        /// 拼板复判NG数量
        /// </summary>
        [JsonPropertyName("pcb_board_user_ng_number")]
        public int PcbBoardUserNgNumber { get; set; }
        /// <summary>
        /// 拼板误报数量
        /// </summary>
        [JsonPropertyName("pcb_board_repass_number")]
        public int PcbBoardRepassNumber { get; set; }
        /// <summary>
        /// 器件总数量
        /// </summary>
        [JsonPropertyName("pcb_comp_number")]
        public int PcbCompNumber { get; set; }
        /// <summary>
        /// 器件检测NG数量
        /// </summary>
        [JsonPropertyName("pcb_comp_robot_ng_number")]
        public int PcbCompRobotNgNumber { get; set; }
        /// <summary>
        /// 器件复判NG数量
        /// </summary>
        [JsonPropertyName("pcb_comp_user_ng_number")]
        public int PcbCompUserNgNumber { get; set; }
        /// <summary>
        /// 器件误报数量
        /// </summary>
        [JsonPropertyName("pcb_comp_repass_number")]
        public int PcbCompRepassNumber { get; set; }
        /// <summary>
        /// 拼板列表
        /// </summary>
        [JsonPropertyName("board_data")]
        public List<BoardDataDto> BoardData { get; set; }
    }
    [JsonProperty("device_name")]
    public string? DeviceName { get; set; }
    /// <summary>
    /// 拼板数据DTO
    ///     整板条码
    /// </summary>
    public class BoardDataDto
    {
        /// <summary>
        /// 拼板条码
        /// </summary>
        [JsonPropertyName("board_sn")]
        public string BoardSn { get; set; }
        /// <summary>
        /// 拼板序号
        /// </summary>
        [JsonPropertyName("board_no")]
        public string BoardNo { get; set; }
        /// <summary>
        /// 拼板检测结果
        /// </summary>
        [JsonPropertyName("board_robot_result")]
        public string BoardRobotResult { get; set; }
        /// <summary>
        /// 拼板复判结果
        /// </summary>
        [JsonPropertyName("board_user_result")]
        public string BoardUserResult { get; set; }
        /// <summary>
        /// 拼板最终结果
        /// </summary>
        [JsonPropertyName("board_final_result")]
        public string BoardFinalResult { get; set; }
        /// <summary>
        /// 器件列表
        /// </summary>
        [JsonPropertyName("comp_data")]
        public List<ComponentDataDto> CompData { get; set; }
    }
    [JsonProperty("pcb_sn")]
    public string? PcbSn { get; set; }
    /// <summary>
    /// 器件数据DTO
    ///     轨道信息(1,1轨)(2,2轨)
    /// </summary>
    public class ComponentDataDto
    {
        /// <summary>
        /// 器件位号
        /// </summary>
        [JsonPropertyName("comp_designator")]
        public string CompDesignator { get; set; }
    [JsonProperty("pcb_track_line")]
    public int PcbTrackLine { get; set; }
        /// <summary>
        /// 器件料号
        /// </summary>
        [JsonPropertyName("comp_part")]
        public string CompPart { get; set; }
    /// <summary>
    ///     板面(T,顶面)(B,底面)(T+B,板面+底面)
    /// </summary>
    [JsonProperty("pcb_board_side")]
    public string? PcbBoardSide { get; set; }
        /// <summary>
        /// 器件封装
        /// </summary>
        [JsonPropertyName("comp_package")]
        public string CompPackage { get; set; }
    /// <summary>
    ///     检测时间,格式yyyy-mm-dd hh:mm:ss
    /// </summary>
    [JsonProperty("pcb_test_time")]
    public string? PcbTestTime { get; set; }
        /// <summary>
        /// 器件类型
        /// </summary>
        [JsonPropertyName("comp_type")]
        public string CompType { get; set; }
    /// <summary>
    ///     检测耗时,单位秒
    /// </summary>
    [JsonProperty("pcb_cycle_time")]
    public float PcbCycleTime { get; set; }
        /// <summary>
        /// 器件检测不良代码
        /// </summary>
        [JsonPropertyName("comp_robot_code")]
        public string CompRobotCode { get; set; }
    /// <summary>
    ///     程序名/板式名
    /// </summary>
    [JsonProperty("pcb_project_name")]
    public string? PcbProjectName { get; set; }
        /// <summary>
        /// 器件检测结果
        /// </summary>
        [JsonPropertyName("comp_robot_result")]
        public string CompRobotResult { get; set; }
    /// <summary>
    ///     整板检测结果
    /// </summary>
    [JsonProperty("pcb_robot_result")]
    public string? PcbRobotResult { get; set; }
        /// <summary>
        /// 器件复判不良代码
        /// </summary>
        [JsonPropertyName("comp_user_code")]
        public string CompUserCode { get; set; }
    /// <summary>
    ///     整板复判结果
    /// </summary>
    [JsonProperty("pcb_user_result")]
    public string? PcbUserResult { get; set; }
        /// <summary>
        /// 器件复判结果
        /// </summary>
        [JsonPropertyName("comp_user_result")]
        public string CompUserResult { get; set; }
    /// <summary>
    ///     整板最终结果
    /// </summary>
    [JsonProperty("pcb_final_result")]
    public string? PcbFinalResult { get; set; }
        /// <summary>
        /// 器件图片地址
        /// </summary>
        [JsonPropertyName("comp_image")]
        public string CompImage { get; set; }
    }
    /// <summary>
    ///     维修站复判用户名
    /// </summary>
    [JsonProperty("pcb_repair_user")]
    public string? PcbRepairUser { get; set; }
    /// <summary>
    ///     拼板数量
    /// </summary>
    [JsonProperty("pcb_board_number")]
    public int PcbBoardNumber { get; set; }
    /// <summary>
    ///     拼板检测NG数量
    /// </summary>
    [JsonProperty("pcb_board_robot_ng_number")]
    public int PcbBoardRobotNgNumber { get; set; }
    /// <summary>
    ///     拼板复判NG数量
    /// </summary>
    [JsonProperty("pcb_board_user_ng_number")]
    public int PcbBoardUserNgNumber { get; set; }
    /// <summary>
    ///     拼板误报数量
    /// </summary>
    [JsonProperty("pcb_board_repass_number")]
    public int PcbBoardRepassNumber { get; set; }
    /// <summary>
    ///     器件总数量
    /// </summary>
    [JsonProperty("pcb_comp_number")]
    public int PcbCompNumber { get; set; }
    /// <summary>
    ///     器件检测NG数量
    /// </summary>
    [JsonProperty("pcb_comp_robot_ng_number")]
    public int PcbCompRobotNgNumber { get; set; }
    /// <summary>
    ///     器件复判NG数量
    /// </summary>
    [JsonProperty("pcb_comp_user_ng_number")]
    public int PcbCompUserNgNumber { get; set; }
    /// <summary>
    ///     器件误报数量
    /// </summary>
    [JsonProperty("pcb_comp_repass_number")]
    public int PcbCompRepassNumber { get; set; }
    /// <summary>
    ///     拼板列表
    /// </summary>
    [JsonProperty("board_data")]
    public List<BoardDataDto> BoardData { get; set; } = new List<BoardDataDto>();
}
/// <summary>
///     拼板数据DTO
/// </summary>
public class BoardDataDto
{
    /// <summary>
    ///     拼板条码
    /// </summary>
    [JsonProperty("board_sn")]
    public string? BoardSn { get; set; }
    /// <summary>
    ///     拼板序号
    /// </summary>
    [JsonProperty("board_no")]
    public string? BoardNo { get; set; }
    /// <summary>
    ///     拼板检测结果
    /// </summary>
    [JsonProperty("board_robot_result")]
    public string? BoardRobotResult { get; set; }
    /// <summary>
    ///     拼板复判结果
    /// </summary>
    [JsonProperty("board_user_result")]
    public string? BoardUserResult { get; set; }
    /// <summary>
    ///     拼板最终结果
    /// </summary>
    [JsonProperty("board_final_result")]
    public string? BoardFinalResult { get; set; }
    /// <summary>
    ///     器件列表
    /// </summary>
    [JsonProperty("comp_data")]
    public List<ComponentDataDto>? CompData { get; set; }
}
/// <summary>
///     器件数据DTO
/// </summary>
public class ComponentDataDto
{
    /// <summary>
    ///     器件位号
    /// </summary>
    [JsonProperty("comp_designator")]
    public string? CompDesignator { get; set; }
    /// <summary>
    ///     器件料号
    /// </summary>
    [JsonProperty("comp_part")]
    public string? CompPart { get; set; }
    /// <summary>
    ///     器件封装
    /// </summary>
    [JsonProperty("comp_package")]
    public string? CompPackage { get; set; }
    /// <summary>
    ///     器件类型
    /// </summary>
    [JsonProperty("comp_type")]
    public string? CompType { get; set; }
    /// <summary>
    ///     器件检测不良代码
    /// </summary>
    [JsonProperty("comp_robot_code")]
    public string? CompRobotCode { get; set; }
    /// <summary>
    ///     器件检测结果
    /// </summary>
    [JsonProperty("comp_robot_result")]
    public string? CompRobotResult { get; set; }
    /// <summary>
    ///     器件复判不良代码
    /// </summary>
    [JsonProperty("comp_user_code")]
    public string? CompUserCode { get; set; }
    /// <summary>
    ///     器件复判结果
    /// </summary>
    [JsonProperty("comp_user_result")]
    public string? CompUserResult { get; set; }
    /// <summary>
    ///     器件图片地址
    /// </summary>
    [JsonProperty("comp_image")]
    public string? CompImage { get; set; }
}