1.1.1 Alpha Bulid 20231019

This commit is contained in:
hehaoyang 2023-10-19 22:44:38 +08:00
parent 23002915ed
commit c150c40902
7 changed files with 98 additions and 59 deletions

44
.gitignore vendored
View File

@ -271,3 +271,47 @@ PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/runtimes/win-x64/native/._li
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/runtimes/win-x86/native/._libuv.dll PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/runtimes/win-x86/native/._libuv.dll
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/ReadMe.md PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/ReadMe.md
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/Log/20231018/Log.log PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/Log/20231018/Log.log
PrinterClient/.vs/PrinterClient/xs/._UserPrefs.xml
PrinterClient/.vs/PrinterClient/xs/project-cache/._AutoUpgrade-Debug.json
PrinterClient/.vs/PrinterClient/xs/project-cache/._PrinterClient-Debug.json
PrinterClient/AutoUpgrade/bin/Debug/netcoreapp3.1/._AutoUpgrade
PrinterClient/AutoUpgrade/bin/Debug/netcoreapp3.1/._AutoUpgrade.deps.json
PrinterClient/AutoUpgrade/bin/Debug/netcoreapp3.1/._AutoUpgrade.dll
PrinterClient/AutoUpgrade/bin/Debug/netcoreapp3.1/._AutoUpgrade.pdb
PrinterClient/AutoUpgrade/bin/Debug/netcoreapp3.1/._AutoUpgrade.runtimeconfig.dev.json
PrinterClient/AutoUpgrade/bin/Debug/netcoreapp3.1/._AutoUpgrade.runtimeconfig.json
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._apphost
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.AssemblyInfo.cs
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.AssemblyInfoInputs.cache
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.assets.cache
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.csproj.AssemblyReference.cache
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.csproj.CoreCompileInputs.cache
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.csproj.FileListAbsolute.txt
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.dll
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.GeneratedMSBuildEditorConfig.editorconfig
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.genruntimeconfig.cache
PrinterClient/AutoUpgrade/obj/Debug/netcoreapp3.1/._AutoUpgrade.pdb
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/._PrinterClient
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/._PrinterClient.deps.json
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/._PrinterClient.dll
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/._PrinterClient.dll.config
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/._PrinterClient.pdb
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/._PrinterClient.runtimeconfig.dev.json
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/._PrinterClient.runtimeconfig.json
PrinterClient/PrinterClient/bin/Debug/netcoreapp3.1/Log/20231019/log.log
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._apphost
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.AssemblyInfo.cs
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.AssemblyInfoInputs.cache
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.assets.cache
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.csproj.CopyComplete
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.csproj.CoreCompileInputs.cache
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.csproj.FileListAbsolute.txt
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.dll
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.GeneratedMSBuildEditorConfig.editorconfig
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.genruntimeconfig.cache
PrinterClient/PrinterClient/obj/Debug/netcoreapp3.1/._PrinterClient.pdb
PrinterClient/PrinterClient/Utils/._LogUtils.cs
PrinterClient/PrinterClient/._BoxServer.cs
PrinterClient/PrinterClient/._Program.cs
PrinterClient/PrinterClient/._TaskDispatcher.cs
._printer.sh

View File

@ -286,8 +286,7 @@ public class BoxServer
Printer.BoxStatus = (int)BoxStatus.Download; Printer.BoxStatus = (int)BoxStatus.Download;
/* 盒子开始处理 */ /* 盒子开始处理 */
TerminalPrintTaskStateHandle(result.printOrderCode, 13, Printer.Status); TerminalPrintTaskStateHandle(result.printOrderCode, 13, (int)BoxStatus.Download);
Thread.Sleep(2000);
/* 开始下载文件 */ /* 开始下载文件 */
DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "开始下载文件"); DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "开始下载文件");
Program.DebugWriteLine($"开始下载文件 {result.printFileUrl} {filename}"); Program.DebugWriteLine($"开始下载文件 {result.printFileUrl} {filename}");
@ -296,27 +295,19 @@ public class BoxServer
DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "下载完成"); DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "下载完成");
DebugTool.UploadTaskImage(uuid, filename); DebugTool.UploadTaskImage(uuid, filename);
/* 下载完成 */ /* 下载完成 */
Printer.BoxStatus = (int)BoxStatus.Normal; Printer.BoxStatus = (int)BoxStatus.Normal;
/* 盒子开始打印 */ /* 盒子开始打印 */
TerminalPrintTaskStateHandle(result.printOrderCode, 14, Printer.Status);
Printer.Printing = true;
Program.DebugWriteLine("开始打印"); Program.DebugWriteLine("开始打印");
DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "开始打印"); DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "开始打印");
while (!Printer.Print(result.fileFormatId, result.printModeId, result.printSizeId, filename, out string job)) TerminalPrintTaskStateHandle(result.printOrderCode, 14, (int)PrinterStatus.Printing);
{ Printer.Print(result.fileFormatId, result.printModeId, result.printSizeId, filename, out _);
Program.DebugWriteLine("打印失败5s后重试");
DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "打印失败5s后重试"); /* 等待盒子打印完成 */
Thread.Sleep(5000); Program.DebugWriteLine("等待盒子打印完成");
}
/* 等待盒子打印完成 */
DateTime current = DateTime.Now; DateTime current = DateTime.Now;
while (true) while (true)
{ {
TerminalPrintTaskStateHandle(result.printOrderCode, 14, Printer.Status);
/* 最大等待时长1分钟 */ /* 最大等待时长1分钟 */
if (DateTime.Now - current >= TimeSpan.FromMinutes(1)) if (DateTime.Now - current >= TimeSpan.FromMinutes(1))
{ {
@ -330,25 +321,26 @@ public class BoxServer
Printer.Clear(); Printer.Clear();
Thread.Sleep(1000); Thread.Sleep(100);
} }
break; break;
} }
if (Printer.Status != (int)PrinterStatus.Printing) if (Printer.QueryEntries() == null)
break; break;
TerminalPrintTaskStateHandle(result.printOrderCode, 14, (int)PrinterStatus.Printing);
Thread.Sleep(2000); Thread.Sleep(2000);
} }
Thread.Sleep(2000);
/* 打印超时 */ /* 打印超时 */
if (error == "打印超时") if (error == "打印超时")
TerminalPrintTaskStateHandle(result.printOrderCode, 23, Printer.Status); TerminalPrintTaskStateHandle(result.printOrderCode, 23, Printer.Status);
else /* 打印成功 */ else /* 打印成功 */
{ {
Program.DebugWriteLine($"打印成功");
Thread.Sleep(5000); Thread.Sleep(5000);
TerminalPrintTaskStateHandle(result.printOrderCode, 21, Printer.Status); TerminalPrintTaskStateHandle(result.printOrderCode, 21, Printer.Status);
} }
@ -366,8 +358,6 @@ public class BoxServer
Program.DebugWriteLine($"打印任务结束 {error}"); Program.DebugWriteLine($"打印任务结束 {error}");
DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "打印任务结束"); DebugTool.UploadTaskStatus(uuid, result.printOrderCode, "打印任务结束");
Printer.Printing = false;
if (!Program.ImageSave) if (!Program.ImageSave)
{ {
if (File.Exists(filename)) if (File.Exists(filename))

View File

@ -16,6 +16,12 @@ static class ReadMe
static readonly Dictionary<string, List<string>> Versions = new() static readonly Dictionary<string, List<string>> Versions = new()
{ {
["1.1.1 Alpha Bulid 20231019"] = new List<string>()
{
"修复: 无法检测到\"打印中\"状态的BUG",
"修复: 下载延时大的BUG",
"修复: 某些特殊情况下, 脚本无法打印的BUG",
},
["1.1.0 Alpha Bulid 20231018"] = new List<string>() ["1.1.0 Alpha Bulid 20231018"] = new List<string>()
{ {
"删除: 检测打印机更换功能", "删除: 检测打印机更换功能",

View File

@ -227,41 +227,37 @@ namespace PrinterClient
} }
} }
else else
{ {
string result; string result;
/* 通过查找打印机序列号来判断打印机是否连接 */ /* 通过查找打印机序列号来判断打印机是否连接 */
for (int i = 0; i < 6; i++) for (int i = 0; i < 3; i++)
{ {
FindSerial(); FindSerial();
if (!string.IsNullOrEmpty(Serial)) if (!string.IsNullOrEmpty(Serial))
break; break;
} }
if (string.IsNullOrEmpty(Serial)) if (string.IsNullOrEmpty(Serial))
return PrinterStatus.NotDriven; {
if (Printing)
return PrinterStatus.Normal;
return PrinterStatus.NotDriven;
}
/* 检查默认打印机 */ /* 检查默认打印机 */
for (int i = 0; i < 3; i++) for (int i = 0; i < 3; i++)
{ {
if (TaskDispatcher.ExecuteCommand("lpstat", "-d", out result)) if (TaskDispatcher.ExecuteCommand("lpstat", "-d", out result))
{ {
if (result.IndexOf("system default destination: DS-RX1HS") == -1) if (result.IndexOf("system default destination: DS-RX1HS") != -1 || Printing)
{ break;
/* 如果此时正在打印, 那么出现这种状况是有可能的, 先认为正常 */
if(Printing) Program.DebugWriteLine($"未找到默认打印机");
return PrinterStatus.Normal;
else
Program.DebugWriteLine($"未找到默认打印机");
}
else
{
status = PrinterStatus.Normal;
break;
}
} }
Thread.Sleep(10000); Thread.Sleep(1000);
} }
if (status == PrinterStatus.DriveFailed) if (status == PrinterStatus.DriveFailed)
@ -270,11 +266,8 @@ namespace PrinterClient
/* 检查是否处于打印中的状态 */ /* 检查是否处于打印中的状态 */
if (TaskDispatcher.ExecuteCommand("lpq", "", out result)) if (TaskDispatcher.ExecuteCommand("lpq", "", out result))
{ {
//Console.WriteLine($"打印机当前状态:{status}"); if (!result.Contains("no entries") || Printing)
if (!result.Contains("no entries"))
return PrinterStatus.Printing; return PrinterStatus.Printing;
} }
/* 检查打印机空闲状态 */ /* 检查打印机空闲状态 */
@ -291,6 +284,7 @@ namespace PrinterClient
} }
} }
} }
return status; return status;
} }
@ -325,8 +319,6 @@ namespace PrinterClient
{ {
lprEntries.Clear(); lprEntries.Clear();
Console.WriteLine(result);
if (result.Contains("no entries")) if (result.Contains("no entries"))
return null; return null;
@ -415,11 +407,13 @@ namespace PrinterClient
case "6": print_size = "w288h432"; break; case "6": print_size = "w288h432"; break;
case "7": print_size = "w360h504"; break; case "7": print_size = "w360h504"; break;
case "8": print_size = "A5"; break; case "8": print_size = "A5"; break;
} }
Printer.Printing = true;
TaskDispatcher.ExecuteCommand("./printer.sh", $"{file_format} {print_mode} {print_size} {file}", out string result);
Printer.Printing = false;
TaskDispatcher.ExecuteCommand("./printer.sh", $"{file_format} {print_mode} {print_size} {file}", out string result); Program.DebugWriteLine(result);
Console.WriteLine(result);
if (file == "") if (file == "")
file = "(stdin)"; file = "(stdin)";
@ -431,7 +425,7 @@ namespace PrinterClient
{ {
if (lprEntries.Count > 0) break; if (lprEntries.Count > 0) break;
Thread.Sleep(10000); Thread.Sleep(500);
lprEntries = QueryEntries(); lprEntries = QueryEntries();
} }
@ -442,7 +436,7 @@ namespace PrinterClient
{ {
job = enteries.Job; job = enteries.Job;
Console.WriteLine($"Rank = {enteries.Rank}, Job = {enteries.Job}, File = {enteries.File}, TotalSize = {enteries.TotalSize}"); Program.DebugWriteLine($"Rank = {enteries.Rank}, Job = {enteries.Job}, File = {enteries.File}, TotalSize = {enteries.TotalSize}");
return true; return true;
} }

View File

@ -10,7 +10,7 @@ public class LogUtils
public static void AppendLog(string message) public static void AppendLog(string message)
{ {
Console.WriteLine(message); Console.WriteLine(message);
FileUtils.Append(Path.Combine(filepath, DateTime.Now.ToString("yyyyMMdd"), "Log.log"), $"{DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")} {message}"); FileUtils.Append(Path.Combine(filepath, DateTime.Now.ToString("yyyyMMdd"), "log.log"), $"{DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")} {message}");
} }
public static void AppendLog(string filename, string message) public static void AppendLog(string filename, string message)
@ -25,7 +25,7 @@ public class LogUtils
Console.WriteLine(message); Console.WriteLine(message);
Console.ForegroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.White;
FileUtils.Append(Path.Combine(filepath, DateTime.Now.ToString("yyyyMMdd"), "Error.log"), $"{DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")} {message}"); FileUtils.Append(Path.Combine(filepath, DateTime.Now.ToString("yyyyMMdd"), "error.log"), $"{DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")} {message}");
} }
public static void AppendError(string filename, string message) public static void AppendError(string filename, string message)

View File

@ -1,5 +1,10 @@
# PrinterClient 版本历史介绍 # PrinterClient 版本历史介绍
## 1.1.1 Alpha Bulid 20231019
* 修复: 无法检测到"打印中"状态的BUG
* 修复: 下载延时大的BUG
* 修复: 某些特殊情况下, 脚本无法打印的BUG
## 1.1.0 Alpha Bulid 20231018 ## 1.1.0 Alpha Bulid 20231018
* 删除: 检测打印机更换功能 * 删除: 检测打印机更换功能
* 删除: 打印机驱动加载功能 * 删除: 打印机驱动加载功能

View File

@ -8,8 +8,8 @@ fi
#删除所有的打印任务 #删除所有的打印任务
lprm lprm
#删除默认打印机 # #删除默认打印机
lpadmin -x DS-RX1HS # lpadmin -x DS-RX1HS
#查找打印机 #查找打印机
result=`lpinfo -v | grep direct` result=`lpinfo -v | grep direct`