ef0360bd1befc35cc5af197a92ce462bad3af50f..18966e02fb573c7e2bb0c6426ed792b38b910940
2025-09-19 schangxiang@126.com
333
18966e 对比 | 目录
2025-09-19 schangxiang@126.com
优化
0821aa 对比 | 目录
2025-09-19 schangxiang@126.com
优化
fc752b 对比 | 目录
2025-09-19 schangxiang@126.com
修复bug
df5675 对比 | 目录
2025-09-19 schangxiang@126.com
优化查询
9be9c3 对比 | 目录
2025-09-19 schangxiang@126.com
增加信标
a68302 对比 | 目录
已添加1个文件
已修改9个文件
已删除1个文件
643 ■■■■ 文件已修改
SiemensWarehouse/siemens2-site/src/views/stat/inventory/deviceGeneralInfo.vue 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemens3dWcs/SiemensWCS/WCSFrom.Designer.cs 107 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemens3dWcs/SiemensWCS/WCSFrom.resx 171 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemenswmssditcode/sql/DBScript/01_DDL/01_DDL_TABLE.sql 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemenswmssditcode/wmsService/wcftest/BussinessExtension/DeviceGeneralInfoHelper.cs 154 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemenswmssditcode/wmsService/wcftest/Form1.cs 155 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemenswmssditcode/wmsService/wcftest/Model/Input/DeviceGeneralInfoInput.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemenswmssditcode/wmsService/wcftest/orm/deviceGeneralInfoForDetail.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemenswmssditcode/wmsService/wcftest/wcf/apitest.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
siemenswmssditcode/wmsService/wcftest/wmsService.csproj 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
新建文本文档.txt 补丁 | 查看 | 原始文档 | blame | 历史
SiemensWarehouse/siemens2-site/src/views/stat/inventory/deviceGeneralInfo.vue
@@ -14,6 +14,7 @@
            end-placeholder="结束日期"
          >
          </el-date-picker>
            <el-input v-model="searchParam.ext1" placeholder="车号" class="search"></el-input>
            <el-button type="success" plain @click="find(1)" >查询</el-button>
             <el-button type="info" plain @click="reset" >重置</el-button>
      </el-row>
@@ -28,6 +29,7 @@
      type="index"
      width="50">
    </el-table-column>
        <el-table-column label="车号" prop="ext1" width="80"></el-table-column>
        <el-table-column label="运行时间(分钟)" prop="deviceRunTime" width="220"></el-table-column>
        <el-table-column label="报警时间(分钟)" prop="deviceAlarmTime" width="220"></el-table-column>
        <el-table-column label="等待时间(分钟)" prop="deviceWaitTime" width="220"></el-table-column>
@@ -226,8 +228,8 @@
      // import("@/vendor/Export2Excel")
      this.downloadLoading = true
      import('@/vendor/Export2Excel').then(excel => {
        const tHeader = ['运行时间(分钟)', '报警时间(分钟)', '等待时间(分钟)','时间']
        const filterVal = ['deviceRunTime', 'deviceAlarmTime', 'deviceWaitTime', 'createTime']
        const tHeader = ['车号','运行时间(分钟)', '报警时间(分钟)', '等待时间(分钟)','时间']
        const filterVal = ['ext1','deviceRunTime', 'deviceAlarmTime', 'deviceWaitTime', 'createTime']
        const data = this.formatJson(filterVal, this.TakeStocklistAll)
        excel.export_json_to_excel({
          header: tHeader,
@@ -257,7 +259,7 @@
    reset() {
      this.searchParam.materialName = null
      this.searchParam.materialCode = null
      this.searchParam.SalesOrder = null
      this.searchParam.ext1 = null
      this.selectTypeValue = ''
      this.datatime = ''
      this.initTimeData();//重置时间
siemens3dWcs/SiemensWCS/WCSFrom.Designer.cs
@@ -28,16 +28,16 @@
        /// </summary>
        private void InitializeComponent()
        {
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle5 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle81 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle82 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle83 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle84 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle85 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle86 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle87 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle88 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle89 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle90 = new System.Windows.Forms.DataGridViewCellStyle();
            this.tP_TransAsrs = new System.Windows.Forms.TabPage();
            this.label112 = new System.Windows.Forms.Label();
            this.label89 = new System.Windows.Forms.Label();
@@ -312,7 +312,6 @@
            this.label6 = new System.Windows.Forms.Label();
            this.tabPage_PartTask = new System.Windows.Forms.TabPage();
            this.btnAllFinish = new System.Windows.Forms.Button();
            this.btnDelete = new System.Windows.Forms.Button();
            this.btnFinish = new System.Windows.Forms.Button();
            this.btnReset = new System.Windows.Forms.Button();
            this.tbserch = new System.Windows.Forms.TextBox();
@@ -394,6 +393,7 @@
            this.label31 = new System.Windows.Forms.Label();
            this.tb_wmsTaskNo2 = new System.Windows.Forms.TextBox();
            this.button1 = new System.Windows.Forms.Button();
            this.label39 = new System.Windows.Forms.Label();
            this.tP_TransAsrs.SuspendLayout();
            this.panel14.SuspendLayout();
            this.panel15.SuspendLayout();
@@ -3900,8 +3900,8 @@
            // 
            // tabPage_PartTask
            // 
            this.tabPage_PartTask.Controls.Add(this.label39);
            this.tabPage_PartTask.Controls.Add(this.btnAllFinish);
            this.tabPage_PartTask.Controls.Add(this.btnDelete);
            this.tabPage_PartTask.Controls.Add(this.btnFinish);
            this.tabPage_PartTask.Controls.Add(this.btnReset);
            this.tabPage_PartTask.Controls.Add(this.tbserch);
@@ -3911,57 +3911,45 @@
            this.tabPage_PartTask.Name = "tabPage_PartTask";
            this.tabPage_PartTask.Size = new System.Drawing.Size(754, 414);
            this.tabPage_PartTask.TabIndex = 6;
            this.tabPage_PartTask.Text = "子任务查看";
            this.tabPage_PartTask.Text = "未结束子任务维护";
            this.tabPage_PartTask.UseVisualStyleBackColor = true;
            // 
            // btnAllFinish
            // 
            this.btnAllFinish.BackColor = System.Drawing.Color.Tomato;
            this.btnAllFinish.BackColor = System.Drawing.Color.SteelBlue;
            this.btnAllFinish.Location = new System.Drawing.Point(594, 13);
            this.btnAllFinish.Name = "btnAllFinish";
            this.btnAllFinish.Size = new System.Drawing.Size(123, 23);
            this.btnAllFinish.TabIndex = 4;
            this.btnAllFinish.Text = "整个任务强制完成";
            this.btnAllFinish.Text = "[整组任务]强制完成";
            this.btnAllFinish.UseVisualStyleBackColor = false;
            this.btnAllFinish.Click += new System.EventHandler(this.btnAllFinish_Click);
            // 
            // btnDelete
            //
            this.btnDelete.BackColor = System.Drawing.Color.Silver;
            this.btnDelete.Location = new System.Drawing.Point(274, 11);
            this.btnDelete.Name = "btnDelete";
            this.btnDelete.Size = new System.Drawing.Size(75, 23);
            this.btnDelete.TabIndex = 3;
            this.btnDelete.Text = "删除任务";
            this.btnDelete.UseVisualStyleBackColor = false;
            this.btnDelete.Visible = false;
            this.btnDelete.Click += new System.EventHandler(this.btnDelete_Click);
            //
            // btnFinish
            // 
            this.btnFinish.BackColor = System.Drawing.Color.LightSalmon;
            this.btnFinish.Location = new System.Drawing.Point(355, 11);
            this.btnFinish.BackColor = System.Drawing.Color.PaleVioletRed;
            this.btnFinish.Location = new System.Drawing.Point(436, 11);
            this.btnFinish.Name = "btnFinish";
            this.btnFinish.Size = new System.Drawing.Size(152, 23);
            this.btnFinish.TabIndex = 3;
            this.btnFinish.Text = "强制单个设备任务完成";
            this.btnFinish.Text = "强制[单个设备]任务完成";
            this.btnFinish.UseVisualStyleBackColor = false;
            this.btnFinish.Click += new System.EventHandler(this.btnFinish_Click);
            // 
            // btnReset
            // 
            this.btnReset.BackColor = System.Drawing.Color.Green;
            this.btnReset.Location = new System.Drawing.Point(513, 12);
            this.btnReset.BackColor = System.Drawing.Color.MediumSlateBlue;
            this.btnReset.Location = new System.Drawing.Point(340, 11);
            this.btnReset.Name = "btnReset";
            this.btnReset.Size = new System.Drawing.Size(75, 23);
            this.btnReset.TabIndex = 3;
            this.btnReset.Text = "任务重发";
            this.btnReset.Text = "重发任务";
            this.btnReset.UseVisualStyleBackColor = false;
            this.btnReset.Click += new System.EventHandler(this.btnReset_Click);
            // 
            // tbserch
            // 
            this.tbserch.Location = new System.Drawing.Point(89, 13);
            this.tbserch.Location = new System.Drawing.Point(152, 15);
            this.tbserch.Name = "tbserch";
            this.tbserch.Size = new System.Drawing.Size(164, 21);
            this.tbserch.TabIndex = 2;
@@ -4019,8 +4007,8 @@
            // Column4
            // 
            this.Column4.DataPropertyName = "createtime";
            dataGridViewCellStyle1.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column4.DefaultCellStyle = dataGridViewCellStyle1;
            dataGridViewCellStyle81.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column4.DefaultCellStyle = dataGridViewCellStyle81;
            this.Column4.HeaderText = "创建时间";
            this.Column4.Name = "Column4";
            this.Column4.Width = 130;
@@ -4028,8 +4016,8 @@
            // Column5
            // 
            this.Column5.DataPropertyName = "updatetime";
            dataGridViewCellStyle2.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column5.DefaultCellStyle = dataGridViewCellStyle2;
            dataGridViewCellStyle82.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column5.DefaultCellStyle = dataGridViewCellStyle82;
            this.Column5.HeaderText = "更新时间";
            this.Column5.Name = "Column5";
            this.Column5.Width = 130;
@@ -4037,8 +4025,8 @@
            // Column2
            // 
            this.Column2.DataPropertyName = "issueTime";
            dataGridViewCellStyle3.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column2.DefaultCellStyle = dataGridViewCellStyle3;
            dataGridViewCellStyle83.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column2.DefaultCellStyle = dataGridViewCellStyle83;
            this.Column2.HeaderText = "下发时间";
            this.Column2.Name = "Column2";
            this.Column2.Width = 130;
@@ -4046,8 +4034,8 @@
            // Column3
            // 
            this.Column3.DataPropertyName = "finishTime";
            dataGridViewCellStyle4.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column3.DefaultCellStyle = dataGridViewCellStyle4;
            dataGridViewCellStyle84.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column3.DefaultCellStyle = dataGridViewCellStyle84;
            this.Column3.HeaderText = "完成时间";
            this.Column3.Name = "Column3";
            this.Column3.Width = 130;
@@ -4324,8 +4312,8 @@
            // dataGridViewTextBoxColumn18
            // 
            this.dataGridViewTextBoxColumn18.DataPropertyName = "createtime";
            dataGridViewCellStyle5.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn18.DefaultCellStyle = dataGridViewCellStyle5;
            dataGridViewCellStyle85.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn18.DefaultCellStyle = dataGridViewCellStyle85;
            this.dataGridViewTextBoxColumn18.HeaderText = "创建时间";
            this.dataGridViewTextBoxColumn18.Name = "dataGridViewTextBoxColumn18";
            this.dataGridViewTextBoxColumn18.Width = 130;
@@ -4333,8 +4321,8 @@
            // Column6
            // 
            this.Column6.DataPropertyName = "updatetime";
            dataGridViewCellStyle6.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column6.DefaultCellStyle = dataGridViewCellStyle6;
            dataGridViewCellStyle86.Format = "yyyy-MM-dd HH:mm:ss";
            this.Column6.DefaultCellStyle = dataGridViewCellStyle86;
            this.Column6.HeaderText = "更新时间";
            this.Column6.Name = "Column6";
            this.Column6.Width = 130;
@@ -4342,8 +4330,8 @@
            // dataGridViewTextBoxColumn19
            // 
            this.dataGridViewTextBoxColumn19.DataPropertyName = "issueTime";
            dataGridViewCellStyle7.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn19.DefaultCellStyle = dataGridViewCellStyle7;
            dataGridViewCellStyle87.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn19.DefaultCellStyle = dataGridViewCellStyle87;
            this.dataGridViewTextBoxColumn19.HeaderText = "下发时间";
            this.dataGridViewTextBoxColumn19.Name = "dataGridViewTextBoxColumn19";
            this.dataGridViewTextBoxColumn19.Width = 130;
@@ -4351,8 +4339,8 @@
            // dataGridViewTextBoxColumn20
            // 
            this.dataGridViewTextBoxColumn20.DataPropertyName = "finishTime";
            dataGridViewCellStyle8.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn20.DefaultCellStyle = dataGridViewCellStyle8;
            dataGridViewCellStyle88.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn20.DefaultCellStyle = dataGridViewCellStyle88;
            this.dataGridViewTextBoxColumn20.HeaderText = "完成时间";
            this.dataGridViewTextBoxColumn20.Name = "dataGridViewTextBoxColumn20";
            this.dataGridViewTextBoxColumn20.Width = 130;
@@ -4555,8 +4543,8 @@
            // dataGridViewTextBoxColumn39
            // 
            this.dataGridViewTextBoxColumn39.DataPropertyName = "sendtime";
            dataGridViewCellStyle9.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn39.DefaultCellStyle = dataGridViewCellStyle9;
            dataGridViewCellStyle89.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn39.DefaultCellStyle = dataGridViewCellStyle89;
            this.dataGridViewTextBoxColumn39.HeaderText = "下发时间";
            this.dataGridViewTextBoxColumn39.Name = "dataGridViewTextBoxColumn39";
            this.dataGridViewTextBoxColumn39.Width = 130;
@@ -4564,8 +4552,8 @@
            // dataGridViewTextBoxColumn40
            // 
            this.dataGridViewTextBoxColumn40.DataPropertyName = "finishTime";
            dataGridViewCellStyle10.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn40.DefaultCellStyle = dataGridViewCellStyle10;
            dataGridViewCellStyle90.Format = "yyyy-MM-dd HH:mm:ss";
            this.dataGridViewTextBoxColumn40.DefaultCellStyle = dataGridViewCellStyle90;
            this.dataGridViewTextBoxColumn40.HeaderText = "完成时间";
            this.dataGridViewTextBoxColumn40.Name = "dataGridViewTextBoxColumn40";
            this.dataGridViewTextBoxColumn40.Width = 130;
@@ -4613,6 +4601,15 @@
            this.button1.Text = "查找";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click);
            //
            // label39
            //
            this.label39.AutoSize = true;
            this.label39.Location = new System.Drawing.Point(94, 19);
            this.label39.Name = "label39";
            this.label39.Size = new System.Drawing.Size(53, 12);
            this.label39.TabIndex = 5;
            this.label39.Text = "(任务号)";
            // 
            // WCSFrom
            // 
@@ -4955,7 +4952,6 @@
        private System.Windows.Forms.TextBox tbserch;
        private System.Windows.Forms.Button btnFind;
        private System.Windows.Forms.DataGridView dgvPartTask;
        private System.Windows.Forms.Button btnDelete;
        private System.Windows.Forms.Button btnFinish;
        private System.Windows.Forms.Button btnReset;
        private System.Windows.Forms.Label labRGV2Heaert;
@@ -5047,6 +5043,7 @@
        private System.Windows.Forms.DataGridViewTextBoxColumn Column6;
        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn19;
        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn20;
        private System.Windows.Forms.Label label39;
    }
}
siemens3dWcs/SiemensWCS/WCSFrom.resx
@@ -180,6 +180,69 @@
  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="Column4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="Column5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="Column2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="Column3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="filereason.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="maintaskid.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="taskno.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="taskcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="containername.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="sourceplace.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="toplace.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="eqname.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="ishandledText.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="isreleasedText.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="isfinished.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="iscurrentText.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="nexthandel.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="heighttype.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="containertype.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="Column1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
@@ -243,6 +306,114 @@
  <metadata name="dataGridViewTextBoxColumn20.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn3.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn4.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn5.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn7.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn8.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn9.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn10.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn11.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn12.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn13.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn14.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn15.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn16.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn17.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn18.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="Column6.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn19.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn20.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn21.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn23.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn24.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn25.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn34.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn26.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn27.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn28.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn33.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn32.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn35.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn36.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn37.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn39.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn40.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
  <metadata name="dataGridViewTextBoxColumn21.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </metadata>
siemenswmssditcode/sql/DBScript/01_DDL/01_DDL_TABLE.sql
@@ -287,3 +287,27 @@
-- YrtWMS_Siemens2.dbo.deviceGeneralInfoForDetail definition
-- Drop table
-- DROP TABLE YrtWMS_Siemens2.deviceGeneralInfoForDetail;
CREATE TABLE YrtWMS_Siemens2.dbo.deviceGeneralInfoForDetail (
    id int IDENTITY(1,1) NOT NULL,
    taskEnterCount int NULL,
    taskOutCount int NULL,
    stockProportion int NULL,
    outDate int NULL,
    deviceRunTime decimal(18,0) NULL,
    deviceWaitTime decimal(18,0) NULL,
    deviceAlarmTime decimal(18,0) NULL,
    createTime datetime NULL,
    ext1 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL,
    ext2 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL,
    ext3 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL,
    ext4 nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL,
    CONSTRAINT PK_deviceGeneralInfoForDetail PRIMARY KEY (id)
);
siemenswmssditcode/wmsService/wcftest/BussinessExtension/DeviceGeneralInfoHelper.cs
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,154 @@
using logtxtWrite;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using wcftest.orm;
namespace wcftest.BussinessExtension
{
    public class DeviceGeneralInfoHelper
    {
        /// <summary>
        /// å¤„理
        /// </summary>
        /// <param name="srmNo"></param>
        /// <param name="enterTaskCount"></param>
        /// <param name="outTaskCount"></param>
        /// <param name="stockUsingCount"></param>
        /// <param name="outTimeStockCount"></param>
        /// <param name="mod"></param>
        /// <param name="lastHour"></param>
        /// <param name="todayTime"></param>
        /// <param name="deviceSwForDetail"></param>
        /// <param name="deviceRunTime"></param>
        /// <param name="deviceAlarmTime"></param>
        /// <param name="deviceWaitTime"></param>
        public static void HandlerDeviceGeneralInfoForDetail(
            int srmNo,
             List<Task_Queue> enterTaskCount,
            List<Task_Queue> outTaskCount,
            List<Base_Position> stockUsingCount,
            List<Base_ProductPosition> outTimeStockCount,
            dbModel mod, int lastHour, DateTime todayTime,
            Stopwatch deviceSwForDetail,
            TimeSpan deviceRunTime,
            TimeSpan deviceAlarmTime,
             TimeSpan deviceWaitTime
            )
        {
            try
            {
                //重新组织数据
                enterTaskCount = enterTaskCount.Where(x => x.DoCount == srmNo).ToList();
                outTaskCount = outTaskCount.Where(x => x.DoCount == srmNo).ToList();
                //每隔一小时保存一次设备状态时间
                var str_srmNo = srmNo.ToString();
                deviceGeneralInfoForDetail todayDeviceInfo = null;
                todayDeviceInfo = mod.deviceGeneralInfoForDetail.FirstOrDefault(x => x.createTime > todayTime && x.ext1 == str_srmNo);
                if (todayDeviceInfo == null)
                {
                    todayDeviceInfo = new deviceGeneralInfoForDetail();
                    todayDeviceInfo.ext1 = str_srmNo;//赋值 æœºå·
                    todayDeviceInfo.ext2 = GetCurrentPeriod();
                    todayDeviceInfo.createTime = DateTime.Now;
                    mod.deviceGeneralInfoForDetail.Add(todayDeviceInfo);
                    //计时复位
                    deviceSwForDetail.Reset();
                    deviceAlarmTime = deviceSwForDetail.Elapsed;
                    deviceRunTime = deviceSwForDetail.Elapsed;
                    deviceWaitTime = deviceSwForDetail.Elapsed;
                }
                else
                {
                    todayDeviceInfo.deviceRunTime = deviceRunTime.TotalMinutes > 0 ? Convert.ToDecimal(deviceRunTime.TotalMinutes) : 0M;
                    todayDeviceInfo.deviceAlarmTime = deviceAlarmTime.TotalMinutes > 0 ? Convert.ToDecimal(deviceAlarmTime.TotalMinutes) : 0M;
                    //重新计算设备等待时间 ã€Editby shaocx,2024-12-30】
                    CommonCalcWaitTime(ref todayDeviceInfo);
                    todayDeviceInfo.taskEnterCount = enterTaskCount.Count;//入库任务数
                    todayDeviceInfo.taskOutCount = outTaskCount.Count;//出库任务数
                    //更改数量 ã€Editby shaocx,2024-11-22】
                    decimal cout = stockUsingCount.Count / 1152M * 100;
                    todayDeviceInfo.stockProportion = Convert.ToInt32(cout);//已使用的库位
                    todayDeviceInfo.outDate = outTimeStockCount.Count;//过期时间小于一个月的库存数据
                }
            }
            catch (Exception ex)
            {
            }
        }
        public static void deviceInfoInitForDetails(int srmNo, DateTime todayTime, int lastHour, TimeSpan deviceAlarmTime, TimeSpan deviceRunTime, TimeSpan deviceWaitTime)
        {
            var str_srmNo = srmNo.ToString();
            using (dbModel mod = new dbModel())
            {
                deviceGeneralInfoForDetail todayDeviceInfo = mod.deviceGeneralInfoForDetail.FirstOrDefault(x => x.createTime > todayTime && x.ext1 == str_srmNo);
                if (todayDeviceInfo != null)
                {
                    TimeSpan alarmTime = new TimeSpan(Convert.ToInt32(Math.Floor((decimal)todayDeviceInfo.deviceAlarmTime / 60M)), Convert.ToInt32((decimal)todayDeviceInfo.deviceAlarmTime % 60), 0);
                    deviceAlarmTime = alarmTime;
                    TimeSpan runTime = new TimeSpan(Convert.ToInt32(Math.Floor((decimal)todayDeviceInfo.deviceRunTime / 60M)), Convert.ToInt32((decimal)todayDeviceInfo.deviceRunTime % 60), 0);
                    deviceRunTime = runTime;
                    TimeSpan waitTime = new TimeSpan(Convert.ToInt32(Math.Floor((decimal)todayDeviceInfo.deviceWaitTime / 60M)), Convert.ToInt32((decimal)todayDeviceInfo.deviceWaitTime % 60), 0);
                    deviceWaitTime = waitTime;
                }
                else
                {
                    deviceGeneralInfoForDetail creatTodayDeviceInfo = new deviceGeneralInfoForDetail();
                    creatTodayDeviceInfo.ext1 = str_srmNo;//机号赋值
                    creatTodayDeviceInfo.ext2 = GetCurrentPeriod();
                    //设备报警时间
                    creatTodayDeviceInfo.deviceAlarmTime = Convert.ToDecimal(deviceAlarmTime.Hours * 60M) + deviceAlarmTime.Minutes;//单位分钟
                    //设备运行时间
                    creatTodayDeviceInfo.deviceRunTime = Convert.ToDecimal(deviceRunTime.Hours * 60M) + deviceRunTime.Minutes;//单位分钟
                    //设备等待时间
                    //creatTodayDeviceInfo.deviceWaitTime = Convert.ToDecimal(deviceWaitTime.Hours * 60M) + deviceWaitTime.Minutes;//单位分钟
                    //重新计算设备等待时间 ã€Editby shaocx,2024-12-30】
                    DeviceGeneralInfoHelper.CommonCalcWaitTime(ref creatTodayDeviceInfo);
                    creatTodayDeviceInfo.createTime = DateTime.Now;
                    mod.deviceGeneralInfoForDetail.Add(creatTodayDeviceInfo);
                    mod.SaveChanges();
                    //计时复位
                }
            }
        }
        public static void CommonCalcWaitTime(ref deviceGeneralInfo todayDeviceInfo)
        {
            //重新计算设备等待时间 ã€Editby shaocx,2024-12-30】
            todayDeviceInfo.deviceWaitTime = 1440 - (todayDeviceInfo.deviceRunTime + todayDeviceInfo.deviceAlarmTime);
        }
        public static void CommonCalcWaitTime(ref deviceGeneralInfoForDetail todayDeviceInfo)
        {
            //重新计算设备等待时间 ã€Editby shaocx,2024-12-30】
            todayDeviceInfo.deviceWaitTime = 1440 - (todayDeviceInfo.deviceRunTime + todayDeviceInfo.deviceAlarmTime);
        }
        public static string GetCurrentPeriod()
        {
            DateTime today = DateTime.Today;
            DateTime startDate = new DateTime(today.Year, today.Month, today.Day, 0, 0, 0);
            DateTime endDate = new DateTime(today.Year, today.Month, today.Day, 23, 59, 59);
            return string.Format("{0:yyyy-MM-dd HH:mm:ss} è‡³ {1:yyyy-MM-dd HH:mm:ss}",
                               startDate, endDate);
        }
    }
}
siemenswmssditcode/wmsService/wcftest/Form1.cs
@@ -66,14 +66,20 @@
        /// è®¾å¤‡è¿è¡Œæ—¶é—´
        /// </summary>
        public static TimeSpan deviceRunTime;
        public static TimeSpan deviceRunTime_Srm1;
        public static TimeSpan deviceRunTime_Srm2;
        /// <summary>设备等待时间
        /// è®¾å¤‡ç­‰å¾…æ—¶é—´
        /// </summary>
        public static TimeSpan deviceWaitTime;
        public static TimeSpan deviceWaitTime_Srm1;
        public static TimeSpan deviceWaitTime_Srm2;
        /// <summary>设备报警时间
        /// è®¾å¤‡æŠ¥è­¦æ—¶é—´
        /// </summary>
        public static TimeSpan deviceAlarmTime;
        public static TimeSpan deviceAlarmTime_Srm1;
        public static TimeSpan deviceAlarmTime_Srm2;
        /// <summary>设备使用率
        /// è®¾å¤‡ä½¿ç”¨çއ
        /// </summary>
@@ -82,10 +88,14 @@
        /// è®¾å¤‡è¿è¡Œè®¡æ—¶å™¨
        /// </summary>
        Stopwatch deviceSw = new Stopwatch();
        Stopwatch deviceSw_Srm1 = new Stopwatch();
        Stopwatch deviceSw_Srm2 = new Stopwatch();
        /// <summary>上一次设备运行状态
        /// ä¸Šä¸€æ¬¡è®¾å¤‡è¿è¡ŒçŠ¶æ€
        /// </summary>
        public string lastStatus = "等待";
        public string lastStatus_Srm1 = "等待";
        public string lastStatus_Srm2 = "等待";
        /// <summary>上一次小时数--每隔一小时保存一次设备状态时间
        /// ä¸Šä¸€æ¬¡å°æ—¶æ•°--每隔一小时保存一次设备状态时间
        /// </summary>
@@ -3122,6 +3132,8 @@
                    string[] containers = new string[19];
                    deviceSw.Start();// è®¾å¤‡è¿è¡Œè®¡ç®—器开始记时
                    deviceSw_Srm1.Start();// è®¾å¤‡è¿è¡Œè®¡ç®—器开始记时
                    deviceSw_Srm2.Start();// è®¾å¤‡è¿è¡Œè®¡ç®—器开始记时
                    #region èŽ·å–è®¾å¤‡ä¿¡æ¯
                    if (allowGetDeviceInfo == true)
@@ -3195,7 +3207,7 @@
                            totalInfo.list11[1] = outTaskCount.Count;
                        }
                        totalInfo.list11[2] = 1152;
                        totalInfo.list11[3] = 1152 - stockUsingCount.Count();
@@ -3219,11 +3231,11 @@
                            }
                            else
                            {
                                todayDeviceInfo.deviceRunTime = deviceRunTime.TotalMinutes > 0 ? Convert.ToDecimal(deviceRunTime.TotalMinutes) : 0M;
                                todayDeviceInfo.deviceAlarmTime = deviceAlarmTime.TotalMinutes > 0 ? Convert.ToDecimal(deviceAlarmTime.TotalMinutes) : 0M;
                                //重新计算设备等待时间 ã€Editby shaocx,2024-12-30】
                                CommonCalcWaitTime(ref todayDeviceInfo);
                                DeviceGeneralInfoHelper.CommonCalcWaitTime(ref todayDeviceInfo);
                                todayDeviceInfo.taskEnterCount = enterTaskCount.Count;//入库任务数
                                todayDeviceInfo.taskOutCount = outTaskCount.Count;//出库任务数
@@ -3232,6 +3244,15 @@
                                todayDeviceInfo.stockProportion = Convert.ToInt32(cout);//已使用的库位
                                todayDeviceInfo.outDate = outTimeStockCount.Count;//过期时间小于一个月的库存数据
                            }
                            DeviceGeneralInfoHelper.HandlerDeviceGeneralInfoForDetail(1, enterTaskCount, outTaskCount, stockUsingCount, outTimeStockCount,
                                mod, lastHour, todayTime,
                                deviceSw_Srm1, deviceRunTime_Srm1, deviceAlarmTime_Srm1, deviceWaitTime_Srm1
                                );
                            DeviceGeneralInfoHelper.HandlerDeviceGeneralInfoForDetail(2, enterTaskCount, outTaskCount, stockUsingCount, outTimeStockCount,
                             mod, lastHour, todayTime,
                             deviceSw_Srm2, deviceRunTime_Srm2, deviceAlarmTime_Srm2, deviceWaitTime_Srm2
                             );
                            int chang = mod.SaveChanges();
                        }
@@ -3261,6 +3282,60 @@
                            if (lastStatus != "运行")
                            {
                                setDeviceStatusTime(lastStatus, "运行");
                            }
                        }
                    }
                    #endregion
                    #region ç»Ÿè®¡è®¾å¤‡è¿è¡Œæ•ˆçŽ‡ï¼ˆè¯¦ç»†ï¼‰ ã€Editby shaocx,2025-09-19】
                    //1号堆垛机
                    if (deviceListInfo.srm1.isAlarm == true)
                    {
                        if (lastStatus_Srm1 != "报警")
                        {
                            setDeviceStatusTimeForDetail(1, lastStatus_Srm1, "报警");
                        }
                    }
                    else
                    {
                        if (deviceListInfo.srm1.status == "空闲")
                        {
                            if (lastStatus_Srm1 != "等待")
                            {
                                setDeviceStatusTimeForDetail(1, lastStatus_Srm1, "等待");
                            }
                        }
                        else
                        {
                            if (lastStatus_Srm1 != "运行")
                            {
                                setDeviceStatusTimeForDetail(1, lastStatus_Srm1, "运行");
                            }
                        }
                    }
                    //2号堆垛机
                    if (deviceListInfo.srm2.isAlarm == true)
                    {
                        if (lastStatus_Srm2 != "报警")
                        {
                            setDeviceStatusTimeForDetail(2, lastStatus_Srm2, "报警");
                        }
                    }
                    else
                    {
                        if (deviceListInfo.srm2.status == "空闲")
                        {
                            if (lastStatus_Srm2 != "等待")
                            {
                                setDeviceStatusTimeForDetail(2, lastStatus_Srm2, "等待");
                            }
                        }
                        else
                        {
                            if (lastStatus_Srm2 != "运行")
                            {
                                setDeviceStatusTimeForDetail(2, lastStatus_Srm2, "运行");
                            }
                        }
                    }
@@ -3310,9 +3385,66 @@
            {
            }
        }
        /// <summary>设备状态变化的时候 ä¿å­˜çŠ¶æ€æ—¶é—´ï¼ˆæ˜Žç»†ï¼‰
        /// è®¾å¤‡çŠ¶æ€å˜åŒ–çš„æ—¶å€™ ä¿å­˜çŠ¶æ€æ—¶é—´
        /// </summary>
        /// <param name="status"></param>
        private void setDeviceStatusTimeForDetail(int srmNo, string lastStatuss, string nowStatus)
        {
            try
            {
                switch (lastStatuss)
                {
                    case "等待":
                        if (srmNo == 1)
                        {
                            deviceWaitTime_Srm1 += deviceSw_Srm1.Elapsed;
                        }
                        else
                        {
                            deviceWaitTime_Srm2 += deviceSw_Srm2.Elapsed;
                        }
                        break;
                    case "运行":
                        if (srmNo == 1)
                        {
                            deviceRunTime_Srm1 += deviceSw_Srm1.Elapsed;
                        }
                        else
                        {
                            deviceRunTime_Srm2 += deviceSw_Srm2.Elapsed;
                        }
                        break;
                    case "报警":
                        if (srmNo == 1)
                        {
                            deviceAlarmTime_Srm1 += deviceSw_Srm1.Elapsed;
                        }
                        else
                        {
                            deviceAlarmTime_Srm2 += deviceSw_Srm2.Elapsed;
                        }
                        break;
                }
                if (srmNo == 1)
                {
                    deviceSw_Srm1.Restart();
                    lastStatus_Srm1 = nowStatus;
                }
                else
                {
                    deviceSw_Srm2.Restart();
                    lastStatus_Srm2 = nowStatus;
                }
            }
            catch (Exception)
            {
            }
        }
        /// <summary>大屏信息初始化
        /// å¤§å±ä¿¡æ¯åˆå§‹åŒ–
@@ -3347,7 +3479,7 @@
                        //设备等待时间
                        //creatTodayDeviceInfo.deviceWaitTime = Convert.ToDecimal(deviceWaitTime.Hours * 60M) + deviceWaitTime.Minutes;//单位分钟
                        //重新计算设备等待时间 ã€Editby shaocx,2024-12-30】
                        CommonCalcWaitTime(ref todayDeviceInfo);
                        DeviceGeneralInfoHelper.CommonCalcWaitTime(ref creatTodayDeviceInfo);
                        creatTodayDeviceInfo.createTime = DateTime.Now;
                        mod.deviceGeneralInfo.Add(creatTodayDeviceInfo);
@@ -3357,6 +3489,10 @@
                    }
                }
                DeviceGeneralInfoHelper.deviceInfoInitForDetails(1, todayTime, lastHour, deviceAlarmTime_Srm1, deviceRunTime_Srm1, deviceWaitTime_Srm1);
                DeviceGeneralInfoHelper.deviceInfoInitForDetails(2, todayTime, lastHour, deviceAlarmTime_Srm2, deviceRunTime_Srm2, deviceWaitTime_Srm2);
                deviceInfos = new Thread(deviceInfo);
                deviceInfos.Start();
            }
@@ -3591,16 +3727,7 @@
            return resultDate;
        }
        private void CommonCalcWaitTime(ref deviceGeneralInfo todayDeviceInfo)
        {
            //重新计算设备等待时间 ã€Editby shaocx,2024-12-30】
            todayDeviceInfo.deviceWaitTime = 1440 - (todayDeviceInfo.deviceRunTime + todayDeviceInfo.deviceAlarmTime);
        }
        private void CommonCalcWaitTime(ref deviceGeneralInfoForDetail todayDeviceInfo)
        {
            //重新计算设备等待时间 ã€Editby shaocx,2024-12-30】
            todayDeviceInfo.deviceWaitTime = 1440 - (todayDeviceInfo.deviceRunTime + todayDeviceInfo.deviceAlarmTime);
        }
        #endregion
siemenswmssditcode/wmsService/wcftest/Model/Input/DeviceGeneralInfoInput.cs
@@ -29,5 +29,21 @@
        /// </summary>
        public DateTime[] datatime { get; set; }
        /// <summary>搜索参数
        ///
        /// </summary>
        public searchparamForDeviceGeneralInfoInput search { get; set; }
    }
    public class searchparamForDeviceGeneralInfoInput
    {
        /// <summary>
        /// è½¦å·
        /// </summary>
        public string ext1 { get; set; }
    }
}
siemenswmssditcode/wmsService/wcftest/orm/deviceGeneralInfoForDetail.cs
@@ -44,6 +44,9 @@
        [StringLength(50)]
        public string ext1 { get; set; }
        /// <summary>
        /// æ—¶é—´èŒƒå›´å­—符串
        /// </summary>
        [StringLength(50)]
        public string ext2 { get; set; }
siemenswmssditcode/wmsService/wcftest/wcf/apitest.cs
@@ -3336,6 +3336,10 @@
                            //重新计算等待时间
                            item.deviceWaitTime = 1440 - ((item.deviceRunTime ?? 0M) + (item.deviceAlarmTime ?? 0M));
                        }
                        if (!string.IsNullOrEmpty(page.search.ext1))
                        {
                            fiveDayDeviceInfo = fiveDayDeviceInfo.Where(x => x.ext1 == page.search.ext1).ToList();
                        }
                    }
                    List<deviceGeneralInfoForDetail> fenyeRerult = new List<deviceGeneralInfoForDetail>();
siemenswmssditcode/wmsService/wcftest/wmsService.csproj
@@ -96,6 +96,7 @@
    <Compile Include="BussinessExtension\SAP\SAPHelper.cs" />
    <Compile Include="BussinessExtension\SystemHelper.cs" />
    <Compile Include="BussinessExtension\VirtualModeHelper.cs" />
    <Compile Include="BussinessExtension\DeviceGeneralInfoHelper.cs" />
    <Compile Include="BussinessExtension\WcsWcfApiHelper.cs" />
    <Compile Include="deviceorm\ChaiDieTransport.cs" />
    <Compile Include="deviceorm\DevAlert.cs" />
н¨Îı¾Îĵµ.txt