移除日志中的时间,使用log4net的时间

This commit is contained in:
qmj
2025-07-24 13:12:59 +08:00
parent 98905adc86
commit ad04f2d658
22 changed files with 1373 additions and 170 deletions
+106
View File
@@ -0,0 +1,106 @@
namespace UFIDA.U8.Framework.Api.App
{
partial class ApiConfig
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.label1 = new System.Windows.Forms.Label();
this.textBox1 = new System.Windows.Forms.TextBox();
this.textBox2 = new System.Windows.Forms.TextBox();
this.label2 = new System.Windows.Forms.Label();
this.button1 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(29, 38);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(53, 12);
this.label1.TabIndex = 0;
this.label1.Text = "接口地址";
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(91, 34);
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(410, 21);
this.textBox1.TabIndex = 1;
//
// textBox2
//
this.textBox2.Location = new System.Drawing.Point(91, 70);
this.textBox2.Name = "textBox2";
this.textBox2.Size = new System.Drawing.Size(410, 21);
this.textBox2.TabIndex = 3;
//
// label2
//
this.label2.AutoSize = true;
this.label2.Location = new System.Drawing.Point(29, 74);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(53, 12);
this.label2.TabIndex = 2;
this.label2.Text = "接口路径";
//
// button1
//
this.button1.Location = new System.Drawing.Point(228, 130);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(75, 23);
this.button1.TabIndex = 4;
this.button1.Text = "确定";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// ApiConfig
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(531, 186);
this.Controls.Add(this.button1);
this.Controls.Add(this.textBox2);
this.Controls.Add(this.label2);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.label1);
this.Name = "ApiConfig";
this.Text = "接口设置";
this.Load += new System.EventHandler(this.ApiConfig_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TextBox textBox1;
private System.Windows.Forms.TextBox textBox2;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.Button button1;
}
}
+51
View File
@@ -0,0 +1,51 @@
using SkinSE;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace UFIDA.U8.Framework.Api.App
{
public partial class ApiConfig : Form
{
public ApiConfig()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
//ConfigurationManager.AppSettings["ServerAddress"] = textBox1.Text;
//ConfigurationManager.AppSettings["ServerPath"] = textBox2.Text;
var config= ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
config.AppSettings.Settings["ServerAddress"].Value = textBox1.Text;
config.AppSettings.Settings["ServerPath"].Value = textBox2.Text;
config.Save();
ConfigurationManager.RefreshSection(config.AppSettings.SectionInformation.SectionName);
DialogResult = DialogResult.OK;
}
private void ApiConfig_Load(object sender, EventArgs e)
{
var skin = new SkinSE_Net();
skin.Init_NET(this, 1);
var serverAddress = ConfigurationManager.AppSettings["ServerAddress"];
var serverPath = ConfigurationManager.AppSettings["ServerPath"];
textBox1.Text= serverAddress;
textBox2.Text= serverPath;
}
}
}
+120
View File
@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+10
View File
@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8" />
</startup>
<appSettings>
<add key="ServerAddress" value="https://localhost:44369"/>
<add key="ServerPath" value="D:\"/>
</appSettings>
</configuration>
+167
View File
@@ -0,0 +1,167 @@
namespace UFIDA.U8.Framework.Api.App
{
partial class Form1
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows 窗体设计器生成的代码
/// <summary>
/// 设计器支持所需的方法 - 不要修改
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1));
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.设置ToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.tsmiConfig = new System.Windows.Forms.ToolStripMenuItem();
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.groupBox1 = new System.Windows.Forms.GroupBox();
this.panel1 = new System.Windows.Forms.Panel();
this.button1 = new System.Windows.Forms.Button();
this.dateTimePicker1 = new System.Windows.Forms.DateTimePicker();
this.label1 = new System.Windows.Forms.Label();
this.timer1 = new System.Windows.Forms.Timer(this.components);
this.menuStrip1.SuspendLayout();
this.groupBox1.SuspendLayout();
this.panel1.SuspendLayout();
this.SuspendLayout();
//
// menuStrip1
//
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.设置ToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(800, 25);
this.menuStrip1.TabIndex = 0;
this.menuStrip1.Text = "menuStrip1";
//
// 设置ToolStripMenuItem
//
this.设置ToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.tsmiConfig});
this.设置ToolStripMenuItem.Name = "设置ToolStripMenuItem";
this.设置ToolStripMenuItem.Size = new System.Drawing.Size(44, 21);
this.设置ToolStripMenuItem.Text = "设置";
//
// tsmiConfig
//
this.tsmiConfig.Image = ((System.Drawing.Image)(resources.GetObject("tsmiConfig.Image")));
this.tsmiConfig.Name = "tsmiConfig";
this.tsmiConfig.Size = new System.Drawing.Size(180, 22);
this.tsmiConfig.Text = "接口设置";
this.tsmiConfig.Click += new System.EventHandler(this.TsmiConfig_Click);
//
// richTextBox1
//
this.richTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.richTextBox1.Location = new System.Drawing.Point(3, 17);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(794, 361);
this.richTextBox1.TabIndex = 1;
this.richTextBox1.Text = "";
//
// groupBox1
//
this.groupBox1.Controls.Add(this.richTextBox1);
this.groupBox1.Location = new System.Drawing.Point(0, 69);
this.groupBox1.Name = "groupBox1";
this.groupBox1.Size = new System.Drawing.Size(800, 381);
this.groupBox1.TabIndex = 2;
this.groupBox1.TabStop = false;
this.groupBox1.Text = "接口日志";
//
// panel1
//
this.panel1.Controls.Add(this.button1);
this.panel1.Controls.Add(this.dateTimePicker1);
this.panel1.Controls.Add(this.label1);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(0, 25);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(800, 38);
this.panel1.TabIndex = 3;
//
// button1
//
this.button1.Location = new System.Drawing.Point(189, 8);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(75, 23);
this.button1.TabIndex = 2;
this.button1.Text = "查询";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// dateTimePicker1
//
this.dateTimePicker1.Format = System.Windows.Forms.DateTimePickerFormat.Short;
this.dateTimePicker1.Location = new System.Drawing.Point(76, 9);
this.dateTimePicker1.Name = "dateTimePicker1";
this.dateTimePicker1.Size = new System.Drawing.Size(105, 21);
this.dateTimePicker1.TabIndex = 1;
//
// label1
//
this.label1.AutoSize = true;
this.label1.Location = new System.Drawing.Point(15, 13);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(53, 12);
this.label1.TabIndex = 0;
this.label1.Text = "日志日期";
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(800, 450);
this.Controls.Add(this.groupBox1);
this.Controls.Add(this.panel1);
this.Controls.Add(this.menuStrip1);
this.MainMenuStrip = this.menuStrip1;
this.Name = "Form1";
this.Text = "Form1";
this.Load += new System.EventHandler(this.Form1_Load);
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.groupBox1.ResumeLayout(false);
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem 设置ToolStripMenuItem;
private System.Windows.Forms.RichTextBox richTextBox1;
private System.Windows.Forms.GroupBox groupBox1;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.DateTimePicker dateTimePicker1;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.ToolStripMenuItem tsmiConfig;
private System.Windows.Forms.Timer timer1;
}
}
+64
View File
@@ -0,0 +1,64 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using SkinSE;
// ReSharper disable IdentifierTypo
namespace UFIDA.U8.Framework.Api.App
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
var skin = new SkinSE_Net();
skin.Init_NET(panel1, 1);
skin.Init_NET(panel1, 1);
skin.Init_NET(this, 0);
}
private void TsmiConfig_Click(object sender, EventArgs e)
{
var frm = new ApiConfig();
frm.ShowDialog();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
var path = ConfigurationManager.AppSettings["ServerPath"];
var logPath = Path.Combine(path, "Log", $"Log_{dateTimePicker1.Value:yyyyMMdd}.log");
var reader = new StreamReader(logPath,Encoding.Default);
var tk = reader.ReadToEndAsync();
richTextBox1.Text = tk.Result;
reader.Close();
}
catch (Exception ex)
{
richTextBox1.Text = ex.Message;
MessageBox.Show($@"未查询到{dateTimePicker1.Value:yyyy-MM-dd}的日志文件");
}
}
}
}
+188
View File
@@ -0,0 +1,188 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="tsmiConfig.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
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
g7mxJ0c+7Q8xRb0y9j7NBgAAAABJRU5ErkJggg==
</value>
</data>
<metadata name="timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>138, 17</value>
</metadata>
</root>
+22
View File
@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace UFIDA.U8.Framework.Api.App
{
internal static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
@@ -0,0 +1,33 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的一般信息由以下
// 控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("UFIDA.U8.Framework.Api.App")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("UFIDA.U8.Framework.Api.App")]
[assembly: AssemblyCopyright("Copyright © 2025")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 会使此程序集中的类型
//对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型
//请将此类型的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("8952c9e2-f5e7-45ac-a019-dc7f91ca6744")]
// 程序集的版本信息由下列四个值组成:
//
// 主版本
// 次版本
// 生成号
// 修订号
//
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
@@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本: 4.0.30319.42000
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace UFIDA.U8.Framework.Api.App.Properties
{
/// <summary>
/// 强类型资源类,用于查找本地化字符串等。
/// </summary>
// 此类是由 StronglyTypedResourceBuilder
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources
{
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources()
{
}
/// <summary>
/// 返回此类使用的缓存 ResourceManager 实例。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager
{
get
{
if ((resourceMan == null))
{
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("UFIDA.U8.Framework.Api.App.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// 重写当前线程的 CurrentUICulture 属性,对
/// 使用此强类型资源类的所有资源查找执行重写。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture
{
get
{
return resourceCulture;
}
set
{
resourceCulture = value;
}
}
}
}
@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
@@ -0,0 +1,30 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:4.0.30319.42000
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace UFIDA.U8.Framework.Api.App.Properties
{
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
{
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default
{
get
{
return defaultInstance;
}
}
}
}
@@ -0,0 +1,7 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
<Profiles>
<Profile Name="(Default)" />
</Profiles>
<Settings />
</SettingsFile>
@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{8952C9E2-F5E7-45AC-A019-DC7F91CA6744}</ProjectGuid>
<OutputType>WinExe</OutputType>
<RootNamespace>UFIDA.U8.Framework.Api.App</RootNamespace>
<AssemblyName>接口设置</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<Deterministic>true</Deterministic>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="SkinSE_CS">
<HintPath>D:\U8SOFT\Framework\SkinSE_CS.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="ApiConfig.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="ApiConfig.Designer.cs">
<DependentUpon>ApiConfig.cs</DependentUpon>
</Compile>
<Compile Include="Form1.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Form1.Designer.cs">
<DependentUpon>Form1.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="ApiConfig.resx">
<DependentUpon>ApiConfig.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Form1.resx">
<DependentUpon>Form1.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>
+6
View File
@@ -17,6 +17,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebUpdate", "WebUpdate\WebU
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ServerUpdate", "ServerUpdate\ServerUpdate.csproj", "{D78F0D4E-86AE-4FE8-A212-E7B6EF75C514}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UFIDA.U8.Framework.Api.App", "UFIDA.U8.Framework.Api.App\UFIDA.U8.Framework.Api.App.csproj", "{8952C9E2-F5E7-45AC-A019-DC7F91CA6744}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -51,6 +53,10 @@ Global
{D78F0D4E-86AE-4FE8-A212-E7B6EF75C514}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D78F0D4E-86AE-4FE8-A212-E7B6EF75C514}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D78F0D4E-86AE-4FE8-A212-E7B6EF75C514}.Release|Any CPU.Build.0 = Release|Any CPU
{8952C9E2-F5E7-45AC-A019-DC7F91CA6744}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{8952C9E2-F5E7-45AC-A019-DC7F91CA6744}.Debug|Any CPU.Build.0 = Debug|Any CPU
{8952C9E2-F5E7-45AC-A019-DC7F91CA6744}.Release|Any CPU.ActiveCfg = Release|Any CPU
{8952C9E2-F5E7-45AC-A019-DC7F91CA6744}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
+120 -8
View File
@@ -851,9 +851,14 @@
日志组件
</summary>
</member>
<member name="F:UFIDA.U8.Framework.Api.Controllers.U8.SFCController._cache">
<summary>
缓存组件
</summary>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.MoRoutingBillSave(System.String,System.String,System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
新增报工
保存报工单
</summary>
<param name="cAccId">系统号</param>
<param name="cCardNum">单据类型编码</param>
@@ -862,46 +867,74 @@
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.MoRoutingBillSaveToken(System.String,System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
新增报工
保存报工单
</summary>
<param name="cAccId">系统号</param>
<param name="cCardNum">单据类型编码</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC90Save(System.String,System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
新增订单报工
保存订单报工
</summary>
<param name="cAccId">系统号</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC90SaveToken(System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
保存订单报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC91Save(System.String,System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
新增工序报工
保存工序报工
</summary>
<param name="cAccId">系统号</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC91SaveToken(System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
保存工序报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC92Save(System.String,System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
新增转移报工
保存转移报工
</summary>
<param name="cAccId">系统号</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC92SaveToken(System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
保存转移报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.MoRoutingBillDelete(System.String,System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
删除报工
删除报工单
</summary>
<param name="cAccId">系统号</param>
<param name="cCardNum">单据类型编码</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.MoRoutingBillDeleteToken(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
删除报工单
</summary>
<param name="cCardNum">单据类型编码</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC90Delete(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
删除订单报工
@@ -910,6 +943,13 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC90DeleteToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
删除订单报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC91Delete(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
删除工序报工
@@ -918,6 +958,13 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC91DeleteToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
删除工序报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC92Delete(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
删除转移报工
@@ -926,15 +973,30 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC92DeleteToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
删除转移报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.MoRoutingBillVerify(System.String,System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
审核报工
审核报工单
</summary>
<param name="cAccId">系统号</param>
<param name="cCardNum">单据类型编码</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.MoRoutingBillVerifyToken(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
审核报工单
</summary>
<param name="cCardNum">单据类型编码</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC90Verify(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
审核订单报工
@@ -943,6 +1005,13 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC90VerifyToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
审核订单报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC91Verify(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
审核工序报工
@@ -951,6 +1020,13 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC91VerifyToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
审核工序报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC92Verify(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
审核转移报工
@@ -959,6 +1035,13 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC92VerifyToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
审核转移报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.MoRoutingBillUnVerify(System.String,System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
弃审报工
@@ -968,6 +1051,14 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.MoRoutingBillUnVerifyToken(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
弃审报工
</summary>
<param name="cCardNum">单据类型编码</param>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC90UnVerify(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
弃审订单报工
@@ -976,6 +1067,13 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC90UnVerifyToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
弃审订单报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC91UnVerify(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
弃审工序报工
@@ -984,6 +1082,13 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC91UnVerifyToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
弃审工序报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC92UnVerify(System.String,UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
弃审转移报工
@@ -992,6 +1097,13 @@
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="M:UFIDA.U8.Framework.Api.Controllers.U8.SFCController.FC92UnVerifyToken(UFIDA.U8.Framework.Api.Models.DeleteMoRoutingBillInput)">
<summary>
弃审转移报工
</summary>
<param name="input">报文数据</param>
<returns></returns>
</member>
<member name="T:UFIDA.U8.Framework.Api.Controllers.U8.STController">
<summary>
库存管理
@@ -56,13 +56,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:新增,对接账套:{cAccId},数据:{input.ToJson()}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:新增,对接账套:{cAccId},数据:{input.ToJson()}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -84,7 +84,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -100,45 +100,45 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
bGetCode = true;
codeKey = defs.Where(a => a.bDefault == true && a.cPosition == "H" && a.DefaultValue == "单号" && a.bEnable == true).Select(a => a.FieldName).First();
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----配置获取单号");
logInfo.Debug($"作业Id:{workId}-----配置获取单号");
}
else
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----没有单号需要自动指定");
logInfo.Debug($"作业Id:{workId}-----没有单号需要自动指定");
}
#region 调整日期,去掉时间部分
if (input.ContainsKey("ddate"))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----调整日期,去掉时间部分");
logInfo.Debug($"作业Id:{workId}-----调整日期,去掉时间部分");
input["ddate"] = $"{Convert.ToDateTime(input["ddate"]):yyyy-MM-dd}";
}
if (input.ContainsKey("dtvdate"))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----调整日期,去掉时间部分");
logInfo.Debug($"作业Id:{workId}-----调整日期,去掉时间部分");
input["dtvdate"] = $"{Convert.ToDateTime(input["dtvdate"]):yyyy-MM-dd}";
}
#endregion
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----设置表头数据");
logInfo.Debug($"作业Id:{workId}-----设置表头数据");
input.SetDictionaryData(defs, baseLogin.Connection, newNumber);
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----读取表体数据");
logInfo.Debug($"作业Id:{workId}-----读取表体数据");
var bodyData = input[voucherInfo.BodyName].ToJson().ToList<Dictionary<string, object>>(); //读取表体的数据
if (bodyData == null || bodyData.Count <= 0)
throw new Exception("无表体数据!");
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----获取表体字段配置");
logInfo.Debug($"作业Id:{workId}-----获取表体字段配置");
var defsBody = await db.Queryable<SysU8FieldDefine>().Where(s => s.CardNumber == cCardNum && s.cPosition == "B" && s.bEnable == true).ToListAsync(); //获取表体的字段配置
var rowNo = 1;
foreach (var body in bodyData)
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----设置第{rowNo}行单据数据");
logInfo.Debug($"作业Id:{workId}-----设置第{rowNo}行单据数据");
body.SetDictionaryData(defsBody, baseLogin.Connection, newNumber, rowNo);
rowNo++;
@@ -182,13 +182,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{cCode}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{cCode}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin) || baseLogin == null)
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -210,7 +210,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -248,11 +248,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},ID:{voucherId}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},ID:{voucherId}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -270,7 +270,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
_cache.Set($"U8_{cAccId}", baseLogin);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -337,13 +337,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
strId = string.Join(",", voucherIds);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{strCode},ID:{strId}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{strCode},ID:{strId}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -365,7 +365,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -414,11 +414,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{cCode}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{cCode}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin) || baseLogin == null)
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -436,7 +436,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
_cache.Set($"U8_{cAccId}", baseLogin);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -474,11 +474,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},ID:{voucherId}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},ID:{voucherId}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -496,7 +496,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
_cache.Set($"U8_{cAccId}", baseLogin);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -563,13 +563,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
strId = string.Join(",", voucherIds);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{strCode},ID:{strId}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{strCode},ID:{strId}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -591,7 +591,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -640,11 +640,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{cCode}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{cCode}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin) || baseLogin == null)
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -662,7 +662,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
_cache.Set($"U8_{cAccId}", baseLogin);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -700,11 +700,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},ID:{voucherId}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},ID:{voucherId}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -722,7 +722,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
_cache.Set($"U8_{cAccId}", baseLogin);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -789,11 +789,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
strId = string.Join(",", voucherIds);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{strCode},ID:{strId}");
logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{strCode},ID:{strId}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -811,7 +811,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
_cache.Set($"U8_{cAccId}", baseLogin);
}
logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -57,14 +57,14 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
return await MoRoutingBillSaveToken(cCardNum, input);
}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----当前接口:api/U8/SFC/MoRoutingBillSave,单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----当前接口:api/U8/SFC/MoRoutingBillSave,单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
if (cCardNum != "FC90" && cCardNum != "FC91" && cCardNum != "FC92")
throw new Exception("当前接口不支持此类型的单据");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
//可能存在其他的缓存,先清掉
_cache.Clear();
@@ -100,15 +100,15 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
var inputs = input["inputs"] as List<Dictionary<string, object>> ?? $"{input["inputs"]}".ToObject<List<Dictionary<string, object>>>();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始保存(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始保存(批量)");
res = await bo.Save(baseLogin, cCardNum, inputs);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束保存(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束保存(批量)");
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始保存");
_logInfo.Debug($"作业Id:{workId}-----开始保存");
res = await bo.Save(baseLogin, cCardNum, input);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束保存");
_logInfo.Debug($"作业Id:{workId}-----结束保存");
}
return res;
@@ -116,7 +116,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
}
catch (Exception ex)
{
_logInfo.Error($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----错误信息:{ex.Message}", ex);
_logInfo.Error($"作业Id:{workId}-----错误信息:{ex.Message}", ex);
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
}
@@ -138,7 +138,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
var userToken = Request.Headers.GetValues("userToken").First();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----当前接口:api/U8/SFC/MoRoutingBillSave/{userToken},单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----当前接口:api/U8/SFC/MoRoutingBillSave/{userToken},单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
if (string.IsNullOrWhiteSpace(userToken))
{
@@ -154,7 +154,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
//可能存在其他的缓存,先清掉
_cache.Clear();
@@ -182,16 +182,16 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
var inputs = input["inputs"] as List<Dictionary<string, object>> ?? $"{input["inputs"]}".ToObject<List<Dictionary<string, object>>>();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始保存(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始保存(批量)");
res = await bo.Save(baseLogin, cCardNum, inputs);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束保存(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束保存(批量)");
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始保存");
_logInfo.Debug($"作业Id:{workId}-----开始保存");
res = await bo.Save(baseLogin, cCardNum, input);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束保存");
_logInfo.Debug($"作业Id:{workId}-----结束保存");
}
@@ -200,7 +200,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
}
catch (Exception ex)
{
_logInfo.Error($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----错误信息:{ex.Message}", ex);
_logInfo.Error($"作业Id:{workId}-----错误信息:{ex.Message}", ex);
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
}
@@ -306,7 +306,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
return await MoRoutingBillDeleteToken(cCardNum, input);
}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----当前接口:api/U8/SFC/MoRoutingBillDelete,单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----当前接口:api/U8/SFC/MoRoutingBillDelete,单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
if (cCardNum != "FC90" && cCardNum != "FC91" && cCardNum != "FC92")
throw new Exception("当前接口不支持此类型的单据");
@@ -331,23 +331,23 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (input.cVouchCode != null && input.cVouchCode.Count > 0)
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始删除(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始删除(单号)(批量)");
var res = await bf.Delete(baseLogin, cCardNum, input.cVouchCode);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束删除(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束删除(单号)(批量)");
return res;
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始删除(ID)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始删除(ID)(批量)");
var res = await bf.Delete(baseLogin, input.MID);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束删除(ID)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束删除(ID)(批量)");
return res;
}
}
catch (Exception ex)
{
_logInfo.Error($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----错误信息:{ex.Message}", ex);
_logInfo.Error($"作业Id:{workId}-----错误信息:{ex.Message}", ex);
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
}
@@ -371,7 +371,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
var userToken = Request.Headers.GetValues("userToken").First();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----当前接口:api/U8/SFC/MoRoutingBillDelete/{userToken},单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----当前接口:api/U8/SFC/MoRoutingBillDelete/{userToken},单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
if (string.IsNullOrWhiteSpace(userToken))
{
@@ -387,7 +387,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
//可能存在其他的缓存,先清掉
_cache.Clear();
@@ -403,23 +403,23 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (input.cVouchCode != null && input.cVouchCode.Count > 0)
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始删除(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始删除(单号)(批量)");
var res = await bf.Delete(baseLogin, cCardNum, input.cVouchCode);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束删除(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束删除(单号)(批量)");
return res;
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始删除(ID)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始删除(ID)(批量)");
var res = await bf.Delete(baseLogin, input.MID);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束删除(ID)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束删除(ID)(批量)");
return res;
}
}
catch (Exception ex)
{
_logInfo.Error($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----错误信息:{ex.Message}", ex);
_logInfo.Error($"作业Id:{workId}-----错误信息:{ex.Message}", ex);
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
}
@@ -527,7 +527,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
return await MoRoutingBillVerifyToken(cCardNum, input);
}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----当前接口:api/U8/SFC/MoRoutingBillVerify,单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----当前接口:api/U8/SFC/MoRoutingBillVerify,单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
if (cCardNum != "FC90" && cCardNum != "FC91" && cCardNum != "FC92")
throw new Exception("当前接口不支持此类型的单据");
@@ -586,7 +586,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
var userToken = Request.Headers.GetValues("userToken").First();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----当前接口:api/U8/SFC/MoRoutingBillVerify/{userToken},单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----当前接口:api/U8/SFC/MoRoutingBillVerify/{userToken},单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
if (string.IsNullOrWhiteSpace(userToken))
{
@@ -602,7 +602,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
//可能存在其他的缓存,先清掉
_cache.Clear();
@@ -618,16 +618,16 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (input.cVouchCode != null && input.cVouchCode.Count > 0)
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始审核(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始审核(单号)(批量)");
var res = await bf.Verify(baseLogin, cCardNum, input.cVouchCode);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束审核(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束审核(单号)(批量)");
return res;
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始审核(ID)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始审核(ID)(批量)");
var res = await bf.Verify(baseLogin, input.MID);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束审核(ID)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束审核(ID)(批量)");
return res;
}
@@ -742,7 +742,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
return await MoRoutingBillUnVerifyToken(cCardNum, input);
}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----当前接口:api/U8/SFC/MoRoutingBillUnVerify,单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----当前接口:api/U8/SFC/MoRoutingBillUnVerify,单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
if (cCardNum != "FC90" && cCardNum != "FC91" && cCardNum != "FC92")
throw new Exception("当前接口不支持此类型的单据");
@@ -767,23 +767,23 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (input.cVouchCode != null && input.cVouchCode.Count > 0)
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始弃审(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始弃审(单号)(批量)");
var res = await bf.UnVerify(baseLogin, cCardNum, input.cVouchCode);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束弃审(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束弃审(单号)(批量)");
return res;
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始弃审(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始弃审(单号)(批量)");
var res = await bf.UnVerify(baseLogin, input.MID);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束弃审(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束弃审(单号)(批量)");
return res;
}
}
catch (Exception ex)
{
_logInfo.Error($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----错误信息:{ex.Message}", ex);
_logInfo.Error($"作业Id:{workId}-----错误信息:{ex.Message}", ex);
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
}
@@ -807,7 +807,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
{
var userToken = Request.Headers.GetValues("userToken").First();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----当前接口:api/U8/SFC/MoRoutingBillUnVerify/{userToken},单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----当前接口:api/U8/SFC/MoRoutingBillUnVerify/{userToken},单据类型编码:{cCardNum},报文数据:{input.ToJson()}");
if (string.IsNullOrWhiteSpace(userToken))
{
@@ -823,7 +823,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
//可能存在其他的缓存,先清掉
_cache.Clear();
@@ -839,23 +839,23 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (input.cVouchCode != null && input.cVouchCode.Count > 0)
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始弃审(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始弃审(单号)(批量)");
var res = await bf.UnVerify(baseLogin, cCardNum, input.cVouchCode);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束弃审(单号)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束弃审(单号)(批量)");
return res;
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----开始弃审(ID)(批量)");
_logInfo.Debug($"作业Id:{workId}-----开始弃审(ID)(批量)");
var res = await bf.UnVerify(baseLogin, input.MID);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----结束弃审(ID)(批量)");
_logInfo.Debug($"作业Id:{workId}-----结束弃审(ID)(批量)");
return res;
}
}
catch (Exception ex)
{
_logInfo.Error($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----错误信息:{ex.Message}", ex);
_logInfo.Error($"作业Id:{workId}-----错误信息:{ex.Message}", ex);
return new BaseResult<string> { bSuccess = false, message = ex.Message, result = ex.StackTrace };
}
@@ -57,13 +57,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:新增,对接账套:{cAccId},数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:新增,对接账套:{cAccId},数据:{input.ToJson()}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -85,7 +85,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -131,45 +131,45 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
.Where(a => a.bDefault == true && a.cPosition == "H" && a.DefaultValue == "单号" &&
a.bEnable == true).Select(a => a.FieldName).First();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----配置获取单号");
_logInfo.Debug($"作业Id:{workId}-----配置获取单号");
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----没有单号需要自动指定");
_logInfo.Debug($"作业Id:{workId}-----没有单号需要自动指定");
}
#region 调整日期,去掉时间部分
if (input.ContainsKey("ddate"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----调整日期,去掉时间部分");
_logInfo.Debug($"作业Id:{workId}-----调整日期,去掉时间部分");
input["ddate"] = $"{Convert.ToDateTime(input["ddate"]):yyyy-MM-dd}";
}
if (input.ContainsKey("dtvdate"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----调整日期,去掉时间部分");
_logInfo.Debug($"作业Id:{workId}-----调整日期,去掉时间部分");
input["dtvdate"] = $"{Convert.ToDateTime(input["dtvdate"]):yyyy-MM-dd}";
}
#endregion
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----设置表头数据");
_logInfo.Debug($"作业Id:{workId}-----设置表头数据");
input.SetDictionaryData(defs, baseLogin.Connection, newNumber, 1, exch);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----读取表体数据");
_logInfo.Debug($"作业Id:{workId}-----读取表体数据");
var bodyData = input[voucherInfo.BodyName].ToJson().ToList<Dictionary<string, object>>(); //读取表体的数据
if (bodyData == null || bodyData.Count <= 0)
throw new Exception("无表体数据!");
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----获取表体字段配置");
_logInfo.Debug($"作业Id:{workId}-----获取表体字段配置");
var defsBody = await db.Queryable<SysU8FieldDefine>().Where(s => s.CardNumber == cCardNum && s.cPosition == "B" && s.bEnable==true).ToListAsync(); //获取表体的字段配置
var rowNo = 1;
foreach (var body in bodyData)
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----设置第{rowNo}行单据数据");
_logInfo.Debug($"作业Id:{workId}-----设置第{rowNo}行单据数据");
body.SetDictionaryData(defsBody, baseLogin.Connection, newNumber, rowNo, exch);
rowNo++;
@@ -177,7 +177,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// 根据存货档案是否批次管理调整批次号
if (body.ContainsKey("binvbatch") && body.ContainsKey("cbatch"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否批次管理调整批次号");
_logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否批次管理调整批次号");
if (body["binvbatch"] == null || body["binvbatch"] == DBNull.Value || !body["binvbatch"].ToBoolean())
{
body["cbatch"] = "";
@@ -187,7 +187,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// 根据存货档案是否批次管理调整批次号(调拨单)
if (body.ContainsKey("binvbatch") && body.ContainsKey("ctvbatch"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否批次管理调整批次号(调拨单)");
_logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否批次管理调整批次号(调拨单)");
if (body["binvbatch"] == null || body["binvbatch"] == DBNull.Value || !body["binvbatch"].ToBoolean())
{
body["ctvbatch"] = "";
@@ -197,7 +197,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// 根据存货档案是否保质期管理调整生产日期和失效日期
if (body.ContainsKey("binvquality") && body.ContainsKey("dmadedate"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否保质期管理调整生产日期和失效日期");
_logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否保质期管理调整生产日期和失效日期");
if (body["binvquality"] == null || body["binvquality"] == DBNull.Value || !body["binvquality"].ToBoolean())
{
@@ -286,7 +286,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:新增,对接账套:{output.cAccId},数据:{input.ToJson()}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:新增,对接账套:{output.cAccId},数据:{input.ToJson()}");
//LoginParamter param;
@@ -294,7 +294,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -309,7 +309,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -355,45 +355,45 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
.Where(a => a.bDefault == true && a.cPosition == "H" && a.DefaultValue == "单号" &&
a.bEnable == true).Select(a => a.FieldName).First();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----配置获取单号");
_logInfo.Debug($"作业Id:{workId}-----配置获取单号");
}
else
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----没有单号需要自动指定");
_logInfo.Debug($"作业Id:{workId}-----没有单号需要自动指定");
}
#region 调整日期,去掉时间部分
if (input.ContainsKey("ddate"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----调整日期,去掉时间部分");
_logInfo.Debug($"作业Id:{workId}-----调整日期,去掉时间部分");
input["ddate"] = $"{Convert.ToDateTime(input["ddate"]):yyyy-MM-dd}";
}
if (input.ContainsKey("dtvdate"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----调整日期,去掉时间部分");
_logInfo.Debug($"作业Id:{workId}-----调整日期,去掉时间部分");
input["dtvdate"] = $"{Convert.ToDateTime(input["dtvdate"]):yyyy-MM-dd}";
}
#endregion
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----设置表头数据");
_logInfo.Debug($"作业Id:{workId}-----设置表头数据");
input.SetDictionaryData(defs, baseLogin.Connection, newNumber, 1, exch);
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----读取表体数据");
_logInfo.Debug($"作业Id:{workId}-----读取表体数据");
var bodyData = input[voucherInfo.BodyName].ToJson().ToList<Dictionary<string, object>>(); //读取表体的数据
if (bodyData == null || bodyData.Count <= 0)
throw new Exception("无表体数据!");
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----获取表体字段配置");
_logInfo.Debug($"作业Id:{workId}-----获取表体字段配置");
var defsBody = await db.Queryable<SysU8FieldDefine>().Where(s => s.CardNumber == cCardNum && s.cPosition == "B" && s.bEnable == true).ToListAsync(); //获取表体的字段配置
var rowNo = 1;
foreach (var body in bodyData)
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----设置第{rowNo}行单据数据");
_logInfo.Debug($"作业Id:{workId}-----设置第{rowNo}行单据数据");
body.SetDictionaryData(defsBody, baseLogin.Connection, newNumber, rowNo, exch);
rowNo++;
@@ -401,7 +401,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// 根据存货档案是否批次管理调整批次号
if (body.ContainsKey("binvbatch") && body.ContainsKey("cbatch"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否批次管理调整批次号");
_logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否批次管理调整批次号");
if (body["binvbatch"] == null || body["binvbatch"] == DBNull.Value || !body["binvbatch"].ToBoolean())
{
body["cbatch"] = "";
@@ -411,7 +411,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// 根据存货档案是否批次管理调整批次号(调拨单)
if (body.ContainsKey("binvbatch") && body.ContainsKey("ctvbatch"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否批次管理调整批次号(调拨单)");
_logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否批次管理调整批次号(调拨单)");
if (body["binvbatch"] == null || body["binvbatch"] == DBNull.Value || !body["binvbatch"].ToBoolean())
{
body["ctvbatch"] = "";
@@ -421,7 +421,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// 根据存货档案是否保质期管理调整生产日期和失效日期
if (body.ContainsKey("binvquality") && body.ContainsKey("dmadedate"))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否保质期管理调整生产日期和失效日期");
_logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否保质期管理调整生产日期和失效日期");
if (body["binvquality"] == null || body["binvquality"] == DBNull.Value || !body["binvquality"].ToBoolean())
{
@@ -502,13 +502,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// var workId = SnowFlakeSingle.Instance.NextId();
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:修改,对接账套:{cAccId},数据:{input.ToJson()}");
// _logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:修改,对接账套:{cAccId},数据:{input.ToJson()}");
// //LoginParamter param;
// if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
// {
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
// _logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
// baseLogin = new BaseLogin();
@@ -530,7 +530,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// // param = await CommUnit.GetLoginParamter(cAccId);
// //}
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
// _logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
// var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -576,45 +576,45 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// .Where(a => a.bDefault == true && a.cPosition == "H" && a.DefaultValue == "单号" &&
// a.bEnable == true).Select(a => a.FieldName).First();
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----配置获取单号");
// _logInfo.Debug($"作业Id:{workId}-----配置获取单号");
// }
// else
// {
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----没有单号需要自动指定");
// _logInfo.Debug($"作业Id:{workId}-----没有单号需要自动指定");
// }
// #region 调整日期,去掉时间部分
// if (input.ContainsKey("ddate"))
// {
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----调整日期,去掉时间部分");
// _logInfo.Debug($"作业Id:{workId}-----调整日期,去掉时间部分");
// input["ddate"] = $"{Convert.ToDateTime(input["ddate"]):yyyy-MM-dd}";
// }
// if (input.ContainsKey("dtvdate"))
// {
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----调整日期,去掉时间部分");
// _logInfo.Debug($"作业Id:{workId}-----调整日期,去掉时间部分");
// input["dtvdate"] = $"{Convert.ToDateTime(input["dtvdate"]):yyyy-MM-dd}";
// }
// #endregion
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----设置表头数据");
// _logInfo.Debug($"作业Id:{workId}-----设置表头数据");
// input.SetDictionaryData(defs, baseLogin.Connection, newNumber, 1, exch);
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----读取表体数据");
// _logInfo.Debug($"作业Id:{workId}-----读取表体数据");
// var bodyData = input[voucherInfo.BodyName].ToJson().ToList<Dictionary<string, object>>(); //读取表体的数据
// if (bodyData == null || bodyData.Count <= 0)
// throw new Exception("无表体数据!");
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----获取表体字段配置");
// _logInfo.Debug($"作业Id:{workId}-----获取表体字段配置");
// var defsBody = await db.Queryable<SysU8FieldDefine>().Where(s => s.CardNumber == cCardNum && s.cPosition == "B" && s.bEnable == true).ToListAsync(); //获取表体的字段配置
// var rowNo = 1;
// foreach (var body in bodyData)
// {
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----设置第{rowNo}行单据数据");
// _logInfo.Debug($"作业Id:{workId}-----设置第{rowNo}行单据数据");
// body.SetDictionaryData(defsBody, baseLogin.Connection, newNumber, rowNo, exch);
// rowNo++;
@@ -622,7 +622,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// // 根据存货档案是否批次管理调整批次号
// if (body.ContainsKey("binvbatch") && body.ContainsKey("cbatch"))
// {
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否批次管理调整批次号");
// _logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否批次管理调整批次号");
// if (body["binvbatch"] == null || body["binvbatch"] == DBNull.Value || !body["binvbatch"].ToBoolean())
// {
// body["cbatch"] = "";
@@ -632,7 +632,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// // 根据存货档案是否批次管理调整批次号(调拨单)
// if (body.ContainsKey("binvbatch") && body.ContainsKey("ctvbatch"))
// {
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否批次管理调整批次号(调拨单)");
// _logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否批次管理调整批次号(调拨单)");
// if (body["binvbatch"] == null || body["binvbatch"] == DBNull.Value || !body["binvbatch"].ToBoolean())
// {
// body["ctvbatch"] = "";
@@ -642,7 +642,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// // 根据存货档案是否保质期管理调整生产日期和失效日期
// if (body.ContainsKey("binvquality") && body.ContainsKey("dmadedate"))
// {
// _logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----第{rowNo}行根据存货档案是否保质期管理调整生产日期和失效日期");
// _logInfo.Debug($"作业Id:{workId}-----第{rowNo}行根据存货档案是否保质期管理调整生产日期和失效日期");
// if (body["binvquality"] == null || body["binvquality"] == DBNull.Value || !body["binvquality"].ToBoolean())
// {
@@ -722,13 +722,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{cCode}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{cCode}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin) || baseLogin ==null)
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -750,7 +750,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -787,13 +787,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},ID:{voucherId}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},ID:{voucherId}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -815,7 +815,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -880,13 +880,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
strId = string.Join(",", voucherIds);
}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{strCode},ID:{strId}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:审核,对接账套:{cAccId},单号:{strCode},ID:{strId}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -908,7 +908,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -956,13 +956,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{cCode}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{cCode}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -984,7 +984,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -1022,13 +1022,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},ID:{voucherId}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},ID:{voucherId}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -1050,7 +1050,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -1115,13 +1115,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
strId = string.Join(",", voucherIds);
}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{strCode},ID:{strId}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:弃审,对接账套:{cAccId},单号:{strCode},ID:{strId}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -1143,7 +1143,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -1191,13 +1191,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{cCode}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{cCode}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -1219,7 +1219,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -1257,13 +1257,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},ID:{voucherId}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},ID:{voucherId}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -1285,7 +1285,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -1350,13 +1350,13 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
strId = string.Join(",", voucherIds);
}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{strCode},ID:{strId}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:删除,对接账套:{cAccId},单号:{strCode},ID:{strId}");
//LoginParamter param;
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -1378,7 +1378,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
// param = await CommUnit.GetLoginParamter(cAccId);
//}
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
_logInfo.Debug($"作业Id:{workId}-----登录信息获取完成,缓存设置完成,开始加载单据配置信息");
var voucherInfo = await db.Queryable<SysU8VoucherDefine>().FirstAsync(s => s.CardNumber == cCardNum);
@@ -57,11 +57,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:提交审批流,对接账套:{cAccId},单据编号:{cCode}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:提交审批流,对接账套:{cAccId},单据编号:{cCode}");
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -122,11 +122,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:新增,对接账套:{output.cAccId},单据编号:{cCode}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:新增,对接账套:{output.cAccId},单据编号:{cCode}");
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -185,7 +185,7 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
if (!_cache.TryGetValue($"U8_{cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -246,11 +246,11 @@ namespace UFIDA.U8.Framework.Api.Controllers.U8
var workId = SnowFlakeSingle.Instance.NextId();
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----单据:{cCardNum},操作:新增,对接账套:{output.cAccId},单据ID:{voucherId}");
_logInfo.Debug($"作业Id:{workId}-----单据:{cCardNum},操作:新增,对接账套:{output.cAccId},单据ID:{voucherId}");
if (!_cache.TryGetValue($"U8_{userToken}_{output.cAccId}", out BaseLogin baseLogin))
{
_logInfo.Debug($"作业Id:{workId}-----{DateTime.Now:yyyy-MM-dd HH:mm:ss.fff}-----未获取到缓存的登录信息,正在重新构建");
_logInfo.Debug($"作业Id:{workId}-----未获取到缓存的登录信息,正在重新构建");
baseLogin = new BaseLogin();
@@ -480,7 +480,9 @@
<Content Include="Areas\HelpPage\Views\Help\DisplayTemplates\CollectionModelDescription.cshtml" />
<Content Include="Areas\HelpPage\Views\Help\DisplayTemplates\ApiGroup.cshtml" />
<Content Include="Areas\HelpPage\Views\Help\Api.cshtml" />
<Content Include="log4net.config" />
<Content Include="log4net.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="App_Data\API_Meta.db">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
+1
View File
@@ -31,6 +31,7 @@
<param name="lockingModel" value="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%date [%thread] %-5level %r - %message%newline" />
<param name="encoding" value="utf-8"/>
</layout>
</appender>
</log4net>