工资条群发神器,HR必备!!!

工资条群发神器,HR必备!!!

最近在开发一个工资条助手,话不多说,先上图!

部分核心代码

 for (int i = startRow; i < sendNum + startRow; i++)
                {
                    string dstEmailAddress = dataTable.Rows[i][dataTable.Columns.Count - 2].ToString().Trim();
                    if (!CheckEmail(dstEmailAddress))
                    {
                        dataTable.Rows[i][dataTable.Rows[i].ItemArray.Length - 1] = "无效邮箱";
                    }
                    else
                    {
                        email.mailToArray = new string[] { dstEmailAddress };//接收者邮件集合
                        email.mailBody = CreateHtml(i);
                        if (email.Send())
                        {
                            dataTable.Rows[i][dataTable.Rows[i].ItemArray.Length - 1] = "OK";
                        }
                        else
                        {
                            dataTable.Rows[i][dataTable.Rows[i].ItemArray.Length - 1] = "发送失败";
                        }
                        //延时1秒,避免被封
                        Thread.Sleep(500);
                    }
                    //进度条更新
                    ProgressBarValue = (int)((i - startRow + 1) / (float)sendNum * 100);
                    SendEmailState = string.Format("已发送:{0}%", ProgressBarValue);
                }
                SendEmailState = "完成";
            }));
   #region 双表头
                        //倒数第一项:发送结果
                        //倒数第二项:邮箱
                        //倒数第三项:实发工资
                        //数据行索引:3【第4行开始】
                        //根据分组遍历
                        foreach (var item in GloableVar.HeaderGroups)
                        {
                            //如果是行合并
                            if (item.RowMerge == true)
                            {
                                //表头:值
                                str += string.Format("<div><span style=\"font-size: 22px;Margin:3\">{0}:{1}</span></div>", item.Title, dataTable.Rows[RowNum][item.dimension.FirstColumnIndex]);
                            }
                            //如果是列合并
                            else
                            {
                                //表头
                                str += string.Format("<div><span style=\"font-size: 22px;Margin:5\">{0}</span></div>", item.Title);
                                //循环添加子项
                                for (int i = 0; i < item.ChildTitles.Count; i++)
                                {
                                    str += string.Format("<div><span style=\"font-size: 18px;Margin:3;margin-left:25\">--{0}:{1}</span></div>", item.ChildTitles[i], dataTable.Rows[RowNum][item.dimension.FirstColumnIndex + i]);
                                }
                            }
                        }
                        //添加实发工资总数
                        str += string.Format("<hr style=\"Height: 3px; border: none; BackGround: LightBlue \"/></div><div><span style=\"font-size: 32px; color: rgb(0, 0, 255); \">实发工资:{0}</span></div>", dataTable.Rows[RowNum][dataTable.Columns.Count - 3].ToString());
                        #endregion
                        break;

后面再补充!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章