using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using Newtonsoft.Json;
using Saraff.Twain;
using HXX.Scanner.Socket;
using HXX.Scanner.Common;
namespace HXX.Scanner.Biz.Socket
{
///
/// 业务处理 获取未上传图片列表
///
public class biz_deleteBatch
{
///
/// 主业务
///
///
///
public static void Work(IntPtr connId, cmd_deleteBatch data)
{
var response = new response_deleteBatch()
{
subjectCode = data.subjectCode,
batchNumber = data.batchNumber,
msg = "ok"
};
try
{
var db_list = new biz_db().get_by_subjectCode_batchNumber(data.subjectCode, data.batchNumber);
bool totalSuccess = false;
//List done_list = new List();
foreach (var entity in db_list)
{
var info = new DirectoryInfo(Path.GetDirectoryName(entity.fi_full_name));
var source_path = info.Parent.FullName;
var target_path = Path.Combine(info.Parent.Parent.FullName, @"delete\" + entity.fi_batchSeq);
if (!Directory.Exists(target_path))
{
Directory.CreateDirectory(target_path);
}
if (Directory.Exists(source_path))
{
DirCopy.CopyDirectory(source_path, target_path, OverwriteStrategy.Overwrite);
Directory.Delete(source_path, true);
totalSuccess = true;
break;
}
}
if (totalSuccess)
{
new biz_db().deleteBatch(data.subjectCode, data.batchNumber);
response.database_delete_number = db_list.Count;
}
}
catch (Exception ee)
{
response.code = 500;
response.msg = ee.Message;
}
SocketServerManager.Send_Single(connId, response.ToJson());
}
/////
///// 主业务
/////
/////
/////
//public static void Work(IntPtr connId, cmd_deleteBatch data)
//{
// var response = new response_deleteBatch()
// {
// subjectCode = data.subjectCode,
// batchNumber = data.batchNumber,
// msg = "ok"
// };
// var db_list = new biz_db().get_by_subjectCode_batchNumber(data.subjectCode, data.batchNumber);
// try
// {
// var totalSuccess = true;
// foreach (var entity in db_list)
// {
// var fileName = Path.GetFileName(entity.fi_full_name);
// var source_path = Path.GetDirectoryName(entity.fi_full_name);
// var info = new DirectoryInfo(source_path);
// var p = info.Parent.Parent;
// source_path = p.FullName;
// var target_path = Path.Combine(p.Parent.FullName, "delete");
// //var target_path = Path.GetFullPath(source_path).TrimEnd(Path.DirectorySeparatorChar);
// //var L1 = Path.GetFileName(target_path);
// //var L2 = Path.GetFileName(Path.GetDirectoryName(target_path));
// //path = path.Replace("ready", "delete");
// //path = path.Replace("complete", "delete");
// //fileName = Path.Combine(path, fileName);
// //try
// //{
// // if (!Directory.Exists(path))
// // {
// // Directory.CreateDirectory(path);
// // }
// // if (File.Exists(fileName))
// // {
// // File.Delete(fileName);
// // }
// // if (File.Exists(entity.fi_full_name))
// // {
// // File.Move(entity.fi_full_name, fileName);
// // response.picture_moved_number++;
// // }
// //}
// //catch (Exception e1)
// //{
// // totalSuccess = false;
// // LogManager.WriteLog(e1.Message);
// // response_error error = new response_error(e1.Message);
// // response.code = 500;
// // response.msg = e1.Message;
// // break;
// //}
// }
// if (totalSuccess)
// {
// new biz_db().deleteBatch(data.subjectCode, data.batchNumber);
// response.database_delete_number = db_list.Count;
// }
// }
// catch (Exception ee)
// {
// response.code = 500;
// response.msg = ee.Message;
// }
// //SocketServerManager.Send_Family(connId, response.ToJson());
// SocketServerManager.Send_Single(connId, response.ToJson());
//}
}
}