| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 |
- 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
- {
- /// <summary>
- /// 业务处理 切换扫描仪
- /// </summary>
- public class biz_changeScan
- {
- /// <summary>
- /// 切换扫描仪引发的界面联动
- /// </summary>
- public static del_change_sanner change_scanner;
- /// <summary>
- /// 主业务
- /// </summary>
- /// <param name="connId"></param>
- /// <param name="data"></param>
- public async static void Work(IntPtr connId, cmd_changeScan data)
- {
- var response = new response_changeScan();
- var result = await work_detail(connId, data);
- if (result.Status == 1)
- {
- response.code = 200;
- response.msg = "成功";
- }
- else
- {
- response.code = 509;
- response.msg = result.Message;
- }
- //SocketServerManager.Send_Family(connId, response.ToJson());
- SocketServerManager.Send_Single(connId, response.ToJson());
- }
- /// <summary>
- /// 切换实施和返回值构造
- /// </summary>
- /// <param name="connId"></param>
- /// <param name="data"></param>
- /// <returns></returns>
- private async static Task<ResponseEntity> work_detail(IntPtr connId, cmd_changeScan data)
- {
- var result = new ResponseEntity();
- try
- {
- if (!config_environment.scan_state)
- {
- var scanner = scanner_manager.get_scanner(data.param.deviceName);
- if (scanner != null)
- {
- //result = engine_twain32.Engine.set_current(scanner);
- if (change_scanner != null)
- {
- //真实切换扫描仪动作
- result = await change_scanner(scanner);
- }
- }
- else
- {
- result.Status = 509;
- result.Message = "未找到指定的扫描仪";
- }
- }
- else
- {
- result.Status = 509;
- result.Message = "扫描仪正在使用中";
- }
- }
- catch (Exception ee)
- {
- LogManager.WriteLog(ee);
- result.Status = 509;
- result.Message = ee.Message;
- }
- return result;
- }
- }
- }
|