Пример #1
0
        /// <summary>
        /// 记录生成的班组编号。
        /// </summary>
        /// <param name="teamSysNo"></param>
        public void RecordTeamSysNo2File(string teamSysNo)
        {
            LogUtils4Team.Logger.Info($"{ this.associated.group_id },{ this.associated.cooperator_id },{ this.associated.project_id },{ this.teamName },{ this.corpName },{ this.corpCode },{ this.projectCode },{ teamSysNo }");
            string sql = $"INSERT INTO uploaded_team ( group_id, cooperator_id, project_id, teamName, corpName, corpCode, projectCode, teamSysNo ) VALUES  ( { this.associated.group_id }, { this.associated.cooperator_id }, { this.associated.project_id }, N'{ this.teamName }', N'{ this.corpName }', N'{ this.corpCode }', N'{ this.projectCode }', N'{ teamSysNo }' );";

            ArDBConnection.ExceuteSQLNoReturn(sql);
        }
        /// <summary>
        /// 记录上传情况:上传时间、上传数据、返回结果
        /// </summary>
        /// <param name="time"></param>
        /// <param name="data"></param>
        /// <param name="result"></param>
        private void SaveUpload(DateTime time, IUploadable data, OutputResult result)
        {
            bool   is_success = false;
            string code       = result.code;
            string status     = result.data?.SelectToken("status")?.ToString();

            if (OutputCode.成功.Equals(code) && AsyncStatus.处理成功.Equals(status))
            {
                is_success = true;
            }

            string sql = $"INSERT INTO upload_record ( data_type, data_id, upload_time, is_success, uploaded_data, upload_result, project_name ) VALUES  ( '{ data.GetType().Name }', { data.DataId }, '{ time.ToString("yyyy-MM-dd HH:mm:ss") }', { Convert.ToInt32(is_success) }, '{ data.Serialize2JSON() }', '{ result.Serialize2JSON() }', '{ HjApiCaller.ProjectName }' );";

            ArDBConnection.ExceuteSQLNoReturn(sql);
        }
        /// <summary>
        /// 获取上传记录。
        /// </summary>
        /// <returns></returns>
        private UploadRecord GetUploadRecord(T data)
        {
            string sql    = $"SELECT TOP 1 S.data_type, S.data_id, S.uploaded_data, S.upload_result, S.upload_time, S.is_success, S.project_name FROM upload_record S WHERE S.data_type = '{ data.GetType().Name }' AND S.data_id = { data.DataId } AND is_deleted = 0 ORDER BY S.upload_time DESC;";
            var    result = ArDBConnection.ExceuteSQLDataTable(sql);

            if (result == null || result.Rows.Count == 0)
            {
                return(null);
            }
            DataRow      first  = result.AsEnumerable().First();
            UploadRecord record = new UploadRecord
            {
                DataType     = Convert.ToString(first["data_type"]),
                DataId       = Convert.ToInt32(first["data_id"]),
                UploadTime   = Convert.ToDateTime(first["upload_time"]),
                UploadedData = Convert.ToString(first["uploaded_data"]),
                UploadResult = Convert.ToString(first["upload_result"]),
                IsSuccess    = Convert.ToBoolean(first["is_success"]),
                ProjectName  = Convert.ToString(first["project_name"]),
            };

            return(record);
        }