Exemplo n.º 1
0
 /// <summary>
 /// 删除签名表中对应文件和文件夹
 /// </summary>
 /// <param name="caseid"></param>
 /// <param name="tableName">表名</param>
 /// <param name="columnName">列名</param>
 /// <param name="type">类型</param>
 /// <returns></returns>
 public bool DeleteSendDoc(string caseid, string tableName, string columnName, string userid, IDbTransaction tran)
 {
     StringBuilder strSql = new StringBuilder();
     strSql.AppendFormat(@"select * from B_OA_Sighture where caseid='{0}' and tableName='{1}' and columnName = '{2}' and userid='{3}'", caseid, tableName, columnName, userid);
     DataSet ds = Utility.Database.ExcuteDataSet(strSql.ToString(), tran);
     string jsonData = JsonConvert.SerializeObject(ds.Tables[0]);
     List<B_OA_Sighture> list_sightrue = (List<B_OA_Sighture>)JsonConvert.DeserializeObject(jsonData, typeof(List<B_OA_Sighture>));
     if (list_sightrue.Count > 0)
     {
         for (int i = 0; i < list_sightrue.Count; i++)
         {
             B_OA_Sighture sightrue = new B_OA_Sighture();
             //删除对应文件
             string path = list_sightrue[i].path;
             //删除对应文件
             BizService.Common.ComFileOperate.DeleteAttachment(path);
             sightrue.Condition.Add("id = " + list_sightrue[i].id);
             Utility.Database.Delete(sightrue, tran);
         }
     }
     return true;
 }
Exemplo n.º 2
0
        public string SaveSighture(string tableName, string columnName, string userid)
        {
            IDbTransaction tran = Utility.Database.BeginDbTransaction();
            try
            {
                //存储图片到文件夹中
                //查看路径是否存在
                rootPath = HttpContext.Current.Server.MapPath("/");//系统路径
                rootPath = rootPath.Replace("\\", "/");
                string targetpath = rootPath + "officeFile/SightrueDoc";
                BizService.Common.ComFileOperate.CreateDirectory(targetpath);//判断路径是否存在,若不存在自动生成文件夹路径

                //删除原来的文件和相关数据
                DeleteSendDoc(mRecordID, tableName, columnName, userid, tran);

                //保存新的签名和文件入文件夹中
                string fileName = mRecordID + "_" + columnName + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".jpg";//服务器的文件保存名
                string savePath = targetpath + "/" + fileName;
                MsgObj.MsgFileSave(savePath);
                var img = System.Drawing.Image.FromFile(savePath);

                string fileName_edit = mRecordID + "_" + columnName + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + "_edit" + ".jpg";//服务器的文件保存名
                var thumbnail = img.GetThumbnailImage(550, 200, null, IntPtr.Zero);
                thumbnail.Save(targetpath + "/" + fileName_edit);
                img.Dispose();
                thumbnail.Dispose();
                //保存图片路径入表中
                B_OA_Sighture sighture = new B_OA_Sighture();
                sighture.caseid = mRecordID;
                sighture.columnName = columnName;
                sighture.path = "officeFile/SightrueDoc/" + fileName;
                sighture.tableName = tableName;
                sighture.type = "0";
                sighture.createtime = DateTime.Now.ToString();
                sighture.fieldValue = mFieldValue;
                sighture.userid = mUserName;
                Utility.Database.Insert(sighture, tran);

                B_OA_Sighture sighture_edit = new B_OA_Sighture();
                sighture_edit.caseid = mRecordID;
                sighture_edit.columnName = columnName;
                sighture_edit.path = "officeFile/SightrueDoc/" + fileName_edit;
                sighture_edit.tableName = tableName;
                sighture_edit.type = "1";
                sighture_edit.userid = mUserName;
                sighture_edit.createtime = DateTime.Now.ToString();
                Utility.Database.Insert(sighture_edit, tran);
                Utility.Database.Commit(tran);
                return "";
            }
            catch (Exception e)
            {
                Utility.Database.Rollback(tran);
                return e.ToString();
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// 创建一个Word数据
        /// </summary>
        /// <param name="caseid"></param>
        /// <returns></returns>
        private Dictionary<string, Object> CreateWrodData(string caseId, IDbTransaction tran)
        {
            B_OA_Supervision_Delay_Apply en = new B_OA_Supervision_Delay_Apply();
            en.Condition.Add("caseId = " + caseId);//设置查询条件
            en = Utility.Database.QueryObject<B_OA_Supervision_Delay_Apply>(en);
            Dictionary<string, Object> list = new Dictionary<string, Object> {
                {"title",en.title },//收文日期
                {"delayReson",en.applyReason},//延期理由
                {"delayDate",en.delayDate.ToString()},//延期时间
                };

            //读取签发图片
            StringBuilder strSql = new StringBuilder();
            strSql.AppendFormat(@"select s.*,u.CnName from B_OA_Sighture as s
            LEFT JOIN FX_UserInfo as u on s.userid = u.UserID
            where s.caseid='{0}' and s.tableName='{1}'  and s.type='{2}'", caseId, "B_OA_Supervision_Delay_Apply", "0");
            DataSet sightureDs = Utility.Database.ExcuteDataSet(strSql.ToString());
            string jsonData = JsonConvert.SerializeObject(sightureDs.Tables[0]);
            List<B_OA_Sighture> listSighture = (List<B_OA_Sighture>)JsonConvert.DeserializeObject(jsonData, typeof(List<B_OA_Sighture>));

            if (listSighture.Count > 0)
            {

                var leaderList = new List<B_OA_Sighture>();
                var assitantList = new List<B_OA_Sighture>();

                for (int i = 0; i < listSighture.Count; i++)
                {

                    //领导批示
                    if (listSighture[i].columnName == "learderApproval")
                    {
                        leaderList.Add(listSighture[i]);

                    }
                    else if (listSighture[i].columnName == "assitanLeaderSighture")
                    {
                        assitantList.Add(listSighture[i]);
                    }
                }

                var leaderSightureStr = new OpenXmlHelper.ImageTextArray[leaderList.Count];
                var assitanSightureStr = new OpenXmlHelper.ImageTextArray[assitantList.Count];

                for (var j = 0; j < leaderList.Count; j++)
                {
                    B_OA_Sighture sighture_leader = new B_OA_Sighture();
                    sighture_leader = leaderList[j];
                    string rootPath = HttpContext.Current.Server.MapPath("/");
                    rootPath = rootPath.Replace("\\", "/");
                    string path = rootPath + sighture_leader.path;
                    if (File.Exists(path))
                    {
                        leaderSightureStr[j] = new OpenXmlHelper.ImageTextArray();
                        leaderSightureStr[j].Images = System.Drawing.Image.FromFile(path);
                        leaderSightureStr[j].Foots = sighture_leader.CnName + " " + Convert.ToDateTime(sighture_leader.createtime).ToString("yyyy年MM月dd日");
                        leaderSightureStr[j].FootAlign = DocumentFormat.OpenXml.Wordprocessing.JustificationValues.Right;
                    }
                }

                for (var k = 0; k < assitantList.Count; k++)
                {
                    B_OA_Sighture sighture_assistant = new B_OA_Sighture();
                    sighture_assistant = assitantList[k];
                    string rootPath = HttpContext.Current.Server.MapPath("/");
                    rootPath = rootPath.Replace("\\", "/");
                    string path = rootPath + sighture_assistant.path;
                    if (File.Exists(path))
                    {
                        assitanSightureStr[k] = new OpenXmlHelper.ImageTextArray();
                        assitanSightureStr[k].Images = System.Drawing.Image.FromFile(path);
                        assitanSightureStr[k].Foots = sighture_assistant.CnName + " " + Convert.ToDateTime(sighture_assistant.createtime).ToString("yyyy年MM月dd日");
                        assitanSightureStr[k].FootAlign = DocumentFormat.OpenXml.Wordprocessing.JustificationValues.Right;
                    }
                }
                if (assitanSightureStr.Count() > 0)
                {
                    list.Add("assistanSiggestion", assitanSightureStr);

                }

                if (leaderSightureStr.Count() > 0)
                {
                    list.Add("leaderSuggesion", leaderSightureStr);
                }
            }

            strSql.Clear();
            strSql.AppendFormat("select CaseId,ActID,UserName,ReceDate,Remark from FX_WorkFlowBusAct where CaseID = '{0}' order by ReceDate asc", caseId);
            DataSet busSet = Utility.Database.ExcuteDataSet(strSql.ToString());
            string jsonData_bus = JsonConvert.SerializeObject(busSet.Tables[0]);
            List<FX_WorkFlowBusAct> wfbaList = (List<FX_WorkFlowBusAct>)JsonConvert.DeserializeObject(jsonData_bus, typeof(List<FX_WorkFlowBusAct>));

            List<string> listString = new List<string>();
            for (int i = 0; i < wfbaList.Count; i++)
            {
                // 拟稿部门负责人核稿wfbaList[i].ActID == "A002" ||
                if (wfbaList[i].ActID == "A004")
                {
                    listString.Add(wfbaList[i].Remark + "--" + wfbaList[i].UserName + " " + wfbaList[i].ReceDate.ToString("yyyy年MM月dd日 hh:mm"));
                }
            }
            if (listString.Count > 0)
            {
                list.Add("officeSuggesion", listString);
            }
            return list;
        }
Exemplo n.º 4
0
 public bool LoadSignature()
 {
     IDbTransaction tran = Utility.Database.BeginDbTransaction();
     try
     {
         StringBuilder strSql = new StringBuilder();
         strSql.AppendFormat(@"select * from B_OA_Sighture where caseid='{0}' and tableName='{1}' and columnName = '{2}' and type='{3}'", mRecordID, "SendDoc", "qf", "0");
         DataSet ds = Utility.Database.ExcuteDataSet(strSql.ToString(), tran);
         string jsonData = JsonConvert.SerializeObject(ds.Tables[0]);
         List<B_OA_Sighture> list_sightrue = (List<B_OA_Sighture>)JsonConvert.DeserializeObject(jsonData, typeof(List<B_OA_Sighture>));
         if (list_sightrue.Count > 0)
         {
             B_OA_Sighture sighture = new B_OA_Sighture();
             sighture = list_sightrue[0];
             mFieldValue = sighture.fieldValue;
         }
         Utility.Database.Commit(tran);
         return true;
     }
     catch (Exception e)
     {
         Utility.Database.Rollback(tran);
         return false;
     }
 }
Exemplo n.º 5
0
        /// <summary>
        /// 创建一个Word数据
        /// </summary>
        /// <param name="caseid"></param>
        /// <returns></returns>
        private Dictionary<string, Object> CreateWordSendDocData(string caseid, IDbTransaction tran, string fwzh)
        {
            B_OA_SendDoc boacd = new B_OA_SendDoc();
            boacd.Condition.Add("caseid = " + caseid);//设置查询条件
            boacd = Utility.Database.QueryObject<B_OA_SendDoc>(boacd);

            FX_WorkFlowBusAct wfba = new FX_WorkFlowBusAct();
            wfba.Condition.Add("CaseID = " + caseid);//设置查询条件
            List<FX_WorkFlowBusAct> wfbaList = Utility.Database.QueryList(wfba);

            var boacdmjsql = @"select a.csz as id, a.mc as mc from Para_BizTypeItem a , Para_BizTypeDictionary b
                            where a.flid = b.id and b.lx = 'mjTypeDic' and a.csz =" + boacd.mj;
            DataSet boacdmjds = Utility.Database.ExcuteDataSet(boacdmjsql);

            // 发文
            Dictionary<string, Object> dict = new Dictionary<string, Object>();
            dict.Add("caseid", boacd.caseid == "" ? "" : boacd.caseid);//业务ID
            dict.Add("fwrq", boacd.fwrq == null ? "" : Convert.ToDateTime(boacd.fwrq).ToString("yyyy-MM-dd"));//发文日期
            dict.Add("wjbh", boacd.wjbh == "" ? "" : boacd.wjbh);//文件编号

            dict.Add("fwzh", fwzh);

            dict.Add("fwlx", boacd.fwlx == "" ? "" : boacd.fwlx);//发文类型
            dict.Add("mj", boacdmjds.Tables.Count > 0 ? (boacdmjds.Tables[0].Rows.Count > 0 ? boacdmjds.Tables[0].Rows[0]["mc"] : "") : "");  //密级 //处理显示名称
            dict.Add("ys", boacd.ys == "" ? "" : boacd.ys);//印数

            //公开程度
            DataSet gkcdgkcdds = new DataSet();
            var gkcdgkcdsql = "";
            if (boacd.gkcd != null)
            {
                gkcdgkcdsql = @"select a.csz as id, a.mc as mc from Para_BizTypeItem a , Para_BizTypeDictionary b
                            where a.flid = b.id and b.lx = 'gkcdTypeDic' and a.csz =" + boacd.gkcd;
                gkcdgkcdds = Utility.Database.ExcuteDataSet(gkcdgkcdsql);
                dict.Add("gkcd", gkcdgkcdds.Tables.Count > 0 ? (gkcdgkcdds.Tables[0].Rows.Count > 0 ? gkcdgkcdds.Tables[0].Rows[0]["mc"] : "") : "");  //公开程度
            }
            else
            {
                dict.Add("gkcd", "");
            }
            dict.Add("wjbt", boacd.wjbt == "" ? "" : boacd.wjbt);//文件标题
            dict.Add("zs", boacd.zs == "" ? "" : boacd.zs);//主送
            dict.Add("cb", boacd.cb == "" ? "" : boacd.cb);//抄报
            dict.Add("cs", boacd.cs == "" ? "" : boacd.cs);//抄送
            dict.Add("ztc", boacd.ztc == "" ? "" : boacd.ztc);//    主题词
            dict.Add("zbbm", boacd.zbbm == "" ? "" : boacd.zbbm);//主办部门
            dict.Add("jd", boacd.jd == "" ? "" : boacd.jd);//校对
            dict.Add("dzy", boacd.dzy == "" ? "" : boacd.dzy);// 打字员
            dict.Add("bz", boacd.bz == "" ? "" : boacd.bz);//备注
            dict.Add("yx", boacd.yx == "" ? "" : boacd.yx);//一校
            dict.Add("ex", boacd.ex == "" ? "" : boacd.ex);//二校
            string gklx = boacd.gklx;//公开类型
            switch (gklx)
            {
                case "1":
                    dict.Add("gklx1", "√");
                    break;
                case "2":
                    dict.Add("gklx2", "√");
                    break;
                case "3":
                    dict.Add("gklx3", "√");
                    break;
            }
            // 打印日期
            dict.Add("printTime", DateTime.Now.ToLongDateString());

            DataTable dataTable = CommonFunctional.GetUserNameAndDepartNameByActId(caseid, "A002", tran);
            if (dataTable.Rows.Count > 0)
            {
                string name = dataTable.Rows[0][1] + " " + dataTable.Rows[0][0];
                dict.Add("ngr", name);// 拟稿人
            }
            //评阅意见的插入
            #region
            //获取所有评阅意见
            FX_WorkFlowBusAct work = new FX_WorkFlowBusAct();
            work.Condition.Add("CaseID = " + caseid);
            work.OrderInfo = "ReceDate asc";
             List<FX_WorkFlowBusAct> listWork = Utility.Database.QueryList<FX_WorkFlowBusAct>(work, tran);
            //将所有工作流信息格式化
             List<B_OA_PrintParagragh> listPara = CommonFunctional.ChangeListToMatch(listWork);
             List<B_OA_PrintParagragh> ngbmfzrhgList = new List<B_OA_PrintParagragh>();
             List<B_OA_PrintParagragh> hbdwyjList = new List<B_OA_PrintParagragh>();
             List<B_OA_PrintParagragh> fgldshList = new List<B_OA_PrintParagragh>();
             List<B_OA_PrintParagragh> jbgsfzrhgList = new List<B_OA_PrintParagragh>();
             List<B_OA_PrintParagragh> qfList = new List<B_OA_PrintParagragh>();
            //领导批示
            for (int i = 0; i < listPara.Count; i++)
            {
                // 拟稿部门负责人核稿
                if (listPara[i].ActID == "A002")
                {
                    ngbmfzrhgList.Add(listPara[i]);
                }
                //局办公室负责人核稿
                else if (listPara[i].ActID == "A004")
                {
                    jbgsfzrhgList.Add(listPara[i]);
                }
                // 分管领导审核
                else if (listPara[i].ActID == "A005")
                {
                    fgldshList.Add(listPara[i]);
                }
                //会办单位意见
                else if (listPara[i].ActID == "A010")
                {
                    hbdwyjList.Add(listPara[i]);
                }  //会办单位意见
                else if (listPara[i].ActID == "A006")
                {
                    qfList.Add(listPara[i]);
                }
            }
            int k = 0;
            //拟稿部门负责人
            var imgNgbmfzrhgList = new OpenXmlHelper.ImageTextArray[ngbmfzrhgList.Count];
            for (k = 0; k < ngbmfzrhgList.Count; k++)
            {
                imgNgbmfzrhgList[k] = new OpenXmlHelper.ImageTextArray();
                imgNgbmfzrhgList[k].Images = ngbmfzrhgList[k].Image;
                imgNgbmfzrhgList[k].Text = ngbmfzrhgList[k].Text;
                imgNgbmfzrhgList[k].Foots = ngbmfzrhgList[k].Foots;
                imgNgbmfzrhgList[k].FootAlign = DocumentFormat.OpenXml.Wordprocessing.JustificationValues.Right;
            }
            dict.Add("ngbmfzrhg", imgNgbmfzrhgList);

            //局办公室负责人核稿
            var imgJbgsfzrhgList = new OpenXmlHelper.ImageTextArray[jbgsfzrhgList.Count];
            for (k = 0; k < jbgsfzrhgList.Count; k++)
            {
                imgJbgsfzrhgList[k] = new OpenXmlHelper.ImageTextArray();
                imgJbgsfzrhgList[k].Images = jbgsfzrhgList[k].Image;
                imgJbgsfzrhgList[k].Text = jbgsfzrhgList[k].Text;
                imgJbgsfzrhgList[k].Foots = jbgsfzrhgList[k].Foots;
                imgJbgsfzrhgList[k].FootAlign = DocumentFormat.OpenXml.Wordprocessing.JustificationValues.Right;
            }
            dict.Add("jbgsfzrhg", imgJbgsfzrhgList);

            //分管领导审核
            var imgFgldshList = new OpenXmlHelper.ImageTextArray[fgldshList.Count];
            for (k = 0; k < fgldshList.Count; k++)
            {
                imgFgldshList[k] = new OpenXmlHelper.ImageTextArray();
                imgFgldshList[k].Images = fgldshList[k].Image;
                imgFgldshList[k].Text = fgldshList[k].Text;
                imgFgldshList[k].Foots = fgldshList[k].Foots;
                imgFgldshList[k].FootAlign = DocumentFormat.OpenXml.Wordprocessing.JustificationValues.Right;
            }
            dict.Add("fgldsh", imgFgldshList);
            //会办单位意见
            var imgHbdwyjList = new OpenXmlHelper.ImageTextArray[hbdwyjList.Count];
            for (k = 0; k < hbdwyjList.Count; k++)
            {
                imgHbdwyjList[k] = new OpenXmlHelper.ImageTextArray();
                imgHbdwyjList[k].Images = hbdwyjList[k].Image;
                imgHbdwyjList[k].Text = hbdwyjList[k].Text;
                imgHbdwyjList[k].Foots = hbdwyjList[k].Foots;
                imgHbdwyjList[k].FootAlign = DocumentFormat.OpenXml.Wordprocessing.JustificationValues.Right;
            }
            dict.Add("hbdwyj", imgHbdwyjList);
            //签发
            var imgQfList = new OpenXmlHelper.ImageTextArray[qfList.Count];
            for (k = 0; k < qfList.Count; k++)
            {
                imgQfList[k] = new OpenXmlHelper.ImageTextArray();
                imgQfList[k].Images = qfList[k].Image;
                imgQfList[k].Text = qfList[k].Text;
                imgQfList[k].Foots = qfList[k].Foots;
                imgQfList[k].FootAlign = DocumentFormat.OpenXml.Wordprocessing.JustificationValues.Right;
            }
            dict.Add("qf", imgQfList);
            #endregion

            //读取签发图片
            StringBuilder strSql = new StringBuilder();
            strSql.AppendFormat(@"
                                   select s.*,u.CnName from B_OA_Sighture as s
                                          LEFT JOIN FX_UserInfo as u on s.userid = u.UserID
                                   where s.caseid='{0}' and s.tableName='{1}' and s.columnName='{2}' and s.type='{3}'",
                                   caseid, "SendDoc", "qf", "0");
            DataSet sightureDs = Utility.Database.ExcuteDataSet(strSql.ToString());
            string jsonData = JsonConvert.SerializeObject(sightureDs.Tables[0]);
            List<B_OA_Sighture> listSighture = (List<B_OA_Sighture>)JsonConvert.DeserializeObject(jsonData, typeof(List<B_OA_Sighture>));
            if (listSighture.Count > 0)
            {
                B_OA_Sighture sighture = new B_OA_Sighture();
                sighture = listSighture[0];
                string rootPath = HttpContext.Current.Server.MapPath("/");
                rootPath = rootPath.Replace("\\", "/");
                string path = rootPath + sighture.path;
                if (File.Exists(path))
                {
                    dict.Add("qf", System.Drawing.Image.FromFile(path));//备注
                }
            }
            return dict;
        }