1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- using System;
- using System.Collections.Generic;
- using System.Threading;
- using System.Linq;
- using System.Data;
- using MySystem;
- using MySystem.Models;
- using Library;
- using LitJson;
- /// <summary>
- /// 每月1号重置机具首个标记和是否执行首个标记
- /// </summary>
- public class ResetPosFirstFlagAndIsExecuteService
- {
- public readonly static ResetPosFirstFlagAndIsExecuteService Instance = new ResetPosFirstFlagAndIsExecuteService();
- private ResetPosFirstFlagAndIsExecuteService()
- {
- }
- public void Start()
- {
- Thread th = new Thread(doSomething);
- th.IsBackground = true;
- th.Start();
- }
- private void doSomething()
- {
- while (true)
- {
- if (DateTime.Now.Day < 10 && DateTime.Now.Hour > 1 && DateTime.Now.Hour < 5)
- {
- try
- {
- string check = function.ReadInstance("/ResetPosFirstFlagAndIsExecute/check" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt");
- if (string.IsNullOrEmpty(check))
- {
- function.WritePage("/ResetPosFirstFlagAndIsExecute/", "check" + DateTime.Now.ToString("yyyy-MM-dd") + ".txt", DateTime.Now.ToString("HH:mm:ss"));
- DataTable dt = CustomerSqlConn.dtable("UPDATE PosMachinesTwo SET FirstFlag=1,IsExecute=1 WHERE IsExecute=0 AND Id IN(SELECT Id FROM(SELECT c.Id FROM(SELECT MerIdcardNo,MIN(Id) Id FROM PosMerchantInfo WHERE MerIdcardNo IS NOT NULL AND MerIdcardNo !='' AND MerIdcardNo NOT LIKE '%*%' GROUP BY MerIdcardNo)a LEFT JOIN (SELECT Id,MerIdcardNo,KqSnNo FROM PosMerchantInfo WHERE MerIdcardNo IS NOT NULL AND MerIdcardNo !='' AND MerIdcardNo NOT LIKE '%*%')b ON a.Id=b.Id LEFT JOIN (SELECT Id,PosSn FROM PosMachinesTwo WHERE IsExecute=0) c ON b.KqSnNo=c.PosSn)d)", MysqlConn.SqlConnStr);
- }
- }
- catch (Exception ex)
- {
- function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "每月1号重置机具首个标记和是否执行首个标记线程异常");
- }
- }
- Thread.Sleep(1000);
- }
- }
- }
|