コード例 #1
0
        /// <summary>
        /// 检查考勤异常
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void btnCheckAbnormal_Click(object sender, EventArgs e)
        {
            try {
                if (Session["LOGINUSER"] == null)
                {
                    plLogin.Visible  = true;
                    plManage.Visible = false;
                    return;
                }

                ltlMsg.Text = string.Empty;
                string strAbnormalOrgType = string.Empty, strAbnormalOrgId = string.Empty, strPunchFrom = string.Empty, strPunchTo = string.Empty, strMsg = string.Empty;
                if (string.IsNullOrWhiteSpace(txtAbnormalOrgType.Text) || string.IsNullOrWhiteSpace(txtAbnormalOrgId.Text) || string.IsNullOrWhiteSpace(txtPunchFrom.Text) || string.IsNullOrWhiteSpace(txtPunchTo.Text))
                {
                    return;
                }

                strAbnormalOrgType = txtAbnormalOrgType.Text;
                strAbnormalOrgId   = txtAbnormalOrgId.Text;
                strPunchFrom       = txtPunchFrom.Text;
                strPunchTo         = txtPunchTo.Text;

                DateTime dtPunchFrom = new DateTime(), dtPunchTo = new DateTime();
                DateTime.TryParse(strPunchFrom, out dtPunchFrom);
                DateTime.TryParse(strPunchTo, out dtPunchTo);

                if (strAbnormalOrgType == "1")
                {
                    //待发布
                    AttRdSvc.CheckAbnormRdForCompanyByDate(strAbnormalOrgId, dtPunchFrom, dtPunchTo, ref strMsg);
                }
                else if (strAbnormalOrgType == "4")
                {
                    //待发布
                    AttRdSvc.CheckAbnormRdForEmployeesByDate(strAbnormalOrgId, dtPunchFrom, dtPunchTo, ref strMsg);
                }

                if (!strMsg.Contains("SUCCESS"))
                {
                    ltlMsg.Text = strMsg;
                    return;
                }

                ltlMsg.Text = "检查考勤异常完毕";
            }catch (Exception ex)
            {
                Tracer.Debug(ex.ToString());
            }
        }
コード例 #2
0
        /// <summary>
        /// 上传记录
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnUploadGeneralLogData_Click(object sender, EventArgs e)
        {
            try
            {
                if (string.IsNullOrEmpty(txtIP.Text.Trim()))
                {
                    MessageBox.Show("打卡机IP未输入,无法上传,请联系管理员!", "Error");
                    return;
                }

                if (strImportIPs.Count() == 0 || strImportCompanys.Count() == 0)
                {
                    MessageBox.Show("配置文件中涉及打卡机IP及导入机构ID的配置项关键信息丢失,无法上传,请检查配置文件!", "Error");
                    return;
                }

                if (entTempList.Count() == 0)
                {
                    MessageBox.Show("当前无下载记录,请先从打卡机下载打卡记录。", "Error");
                    return;
                }

                DateTime dtFrom = new DateTime();
                DateTime dtTo   = new DateTime();

                DateTime.TryParse(dpDateFrom.Value.ToString("yyyy-MM-dd"), out dtFrom);
                DateTime.TryParse(dpDateTo.Value.ToString("yyyy-MM-dd"), out dtTo);
                dtTo = dtTo.AddDays(1).AddSeconds(-1);

                string strMsg      = string.Empty;
                string strClientIP = string.Empty;
                strClientIP = txtIP.Text.Trim() + ",本次导入的客户机IP如下:" + GetClientLocalIPAddress() + GetClientInternetIPAddress();

                List <string> companyIds = new List <string>();

                companyIds = GetCompanyID(txtIP.Text.Trim());
                foreach (var CompanyId in companyIds)
                {
                    if (string.IsNullOrEmpty(CompanyId))
                    {
                        MessageBox.Show("当前打卡机IP无对应的导入机构,无法上传,请检查配置文件!", "Error");
                        return;
                    }

                    DialogResult dr = MessageBox.Show("是否需要上传" + dtFrom.ToString("yyyy-MM-dd")
                                                      + "至" + dtTo.ToString("yyyy-MM-dd") + " 的打卡记录?公司id:" + CompanyId, "确认", MessageBoxButtons.YesNo);
                    if (dr == DialogResult.Yes)
                    {
                        clientAtt.ImportClockInRdListByWSRealTime(CompanyId, entTempList.ToArray(), dtFrom, dtTo, strClientIP, ref strMsg);

                        dr = MessageBox.Show("打卡记录上传完毕,是否需要检查" + dtFrom.ToString("yyyy-MM-dd").Substring(0, 7) + " 请假出差及外出?公司id:" + CompanyId, "确认", MessageBoxButtons.YesNo);
                        if (dr == DialogResult.Yes)
                        {
                            string msg = string.Empty;
                            clientAtt.UpdateAttendRecordByEvectionAndLeaveRd(CompanyId, dtFrom.ToString("yyyy-MM-dd").Substring(0, 7));

                            dr = MessageBox.Show("检查请假出差外出完毕,是否需要检查" + dtFrom.ToString("yyyy-MM-dd")
                                                 + "至" + dtTo.ToString("yyyy-MM-dd") + "考勤异常? 公司id:" + CompanyId, "确认", MessageBoxButtons.YesNo);
                            if (dr == DialogResult.Yes)
                            {
                                clientAtt.CheckAbnormRdForCompanyByDate(CompanyId, dtFrom, dtTo, ref msg);
                            }

                            MessageBox.Show("处理所有考勤完毕!" + msg);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("上传失败,错误信息:" + ex.Message.ToString(), "Error");
            }
        }