private void barReChange_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) {
            if (gridView1.FocusedRowHandle < 0) return;
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            LP_Record currRecord = new LP_Record();
            foreach (DataColumn dc in gridtable.Columns) {
                if (dc.ColumnName != "Image") {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }
            DataTable dt = RecordWorkTask.GetRecordWorkFlowData2(dr["ID"].ToString());
            if (dt.Rows.Count > 0) {
                frmWFChange fw = new frmWFChange();
                fw.Text = dt.Rows[0]["FlowInsCaption"].ToString() + "流程跳转";
                fw.groupBox1.Text = dt.Rows[0]["FlowInsCaption"].ToString();
                fw.WorkFlowId = dt.Rows[0]["WorkFlowId"].ToString();
                if (fw.ShowDialog() != DialogResult.OK)
                    return;
                //请求确认
                if (MsgBox.ShowAskMessageBox("确认更改 【" + dr["Number"].ToString() + "】状态为" + fw.WorkTaskCaption + "?") != DialogResult.OK) {
                    return;
                }
                string strmes = RecordWorkTask.RunGZPWorkFlowChange(MainHelper.User.UserID, currRecord, dt.Rows[0]["OperatorInsId"].ToString(), dt.Rows[0]["WorkTaskInsId"].ToString(), fw.WorkTaskCaption);
                if (strmes.IndexOf("未提交至任何人") > -1) {
                    MsgBox.ShowTipMessageBox("未提交至任何人,创建失败,请检查流程模板和组织机构配置是否正确!");
                    return;
                } else {


                    InitData(strSQL);
                    MsgBox.ShowTipMessageBox(strmes);

                }
            } else {
                MsgBox.ShowTipMessageBox("无当前用户可以操作此记录的流程信息,延期失败!");
            }
        }
        private void barSus_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) {
            if (gridView1.FocusedRowHandle < 0) return;
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            //请求确认
            if (MsgBox.ShowAskMessageBox("是否确认 【" + dr["Number"].ToString() + "】 延期?") != DialogResult.OK) {
                return;
            }
            LP_Record currRecord = new LP_Record();
            foreach (DataColumn dc in gridtable.Columns) {
                if (dc.ColumnName != "Image") {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }
            if (currRecord.Status != "确认") {
                MsgBox.ShowTipMessageBox("当前节点不能延期,延期失败!");
                return;
            }
            DataTable dt = RecordWorkTask.GetRecordWorkFlowData(dr["ID"].ToString(), MainHelper.User.UserID);
            if (dt.Rows.Count > 0) {
                string strmes = RecordWorkTask.RunGZPWorkFlowChange(MainHelper.User.UserID, currRecord, dt.Rows[0]["OperatorInsId"].ToString(), dt.Rows[0]["WorkTaskInsId"].ToString(), "延期");
                if (strmes.IndexOf("未提交至任何人") > -1) {
                    MsgBox.ShowTipMessageBox("未提交至任何人,创建失败,请检查流程模板和组织机构配置是否正确!");
                    return;
                } else {


                    InitData(strSQL);
                    MsgBox.ShowTipMessageBox(strmes);

                }
            } else {
                MsgBox.ShowTipMessageBox("无当前用户可以操作此记录的流程信息,延期失败!");
            }
        }
        private void barReExport_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) {
            if (gridView1.FocusedRowHandle < 0) return;
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            LP_Record currRecord = new LP_Record();
            int i = 0;
            //string exploreKind = "";
            foreach (DataColumn dc in gridtable.Columns) {
                if (dc.ColumnName != "Image") {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }
            DataTable dt = RecordWorkTask.GetRecordWorkFlowData(dr["ID"].ToString(), MainHelper.User.UserID);
            IList<WFP_RecordWorkTaskIns> wf = MainHelper.PlatformSqlMap.GetList<WFP_RecordWorkTaskIns>("SelectWFP_RecordWorkTaskInsList", "where RecordID='" + currRecord.ID + "'");
            if (currRecord.Status != "存档") {

                if (dt.Rows.Count > 0) {
                    if (!RecordWorkTask.HaveWorkFlowAllExploreRole(dt.Rows[0]["WorkTaskId"].ToString(), dt.Rows[0]["WorkFlowId"].ToString())) {
                        if (!RecordWorkTask.HaveRunRecordRole(currRecord.ID, MainHelper.User.UserID)) {
                            MsgBox.ShowWarningMessageBox("没有运行权限,导出失败!");
                            return;
                        }
                        if (!RecordWorkTask.HaveWorkFlowExploreRole(dt.Rows[0]["WorkTaskId"].ToString(), dt.Rows[0]["WorkFlowId"].ToString())) {
                            MsgBox.ShowWarningMessageBox("没有导出权限,导出失败!");
                            return;
                        }

                    }
                } else {
                    MsgBox.ShowTipMessageBox("无当前用户可以操作此记录的流程信息,导出失败!");
                    return;
                }
            }//流程没结束
            else if (!RecordWorkTask.HaveFlowEndExploreRole(currRecord.Kind)) {
                MsgBox.ShowTipMessageBox("流程结束后不允许导出,导出失败!");
                return;

            }//流程结束
            if (currRecord.ID.IndexOf("N") == -1 || parentObj.FlowCaption.IndexOf("定期分析") > -1 || parentObj.FlowCaption.IndexOf("专题分析") > -1) {
                SaveFileDialog saveFileDialog1 = new SaveFileDialog();
                string fname = "";
                saveFileDialog1.Filter = "Microsoft Excel (*.xls)|*.xls";
                if (saveFileDialog1.ShowDialog() == DialogResult.OK) {
                    fname = saveFileDialog1.FileName;
                    try {

                        DSOFramerControl ds1 = new DSOFramerControl();

                        ds1.FileDataGzip = currRecord.DocContent;
                        ds1.FileSave(fname, true);
                        ds1.FileClose();
                        if (MsgBox.ShowAskMessageBox("导出成功,是否打开该文档?") != DialogResult.OK)
                            return;

                        System.Diagnostics.Process.Start(fname);
                    } catch (Exception ex) {
                        Console.WriteLine(ex.Message);
                        MsgBox.ShowWarningMessageBox("无法保存" + fname + "。请用其他文件名保存文件,或将文件存至其他位置。");

                    }
                }
                return;
            }//是旧记录
            Hashtable templehs = RecordWorkTask.GetExploerLP_TempleList(dt, currRecord);

            if (templehs.Count > 1) {
                DataTable templedt = new DataTable();
                templedt.Columns.Add("Checked", typeof(bool));
                templedt.Columns.Add("Index", typeof(string));
                templedt.Columns.Add("Name", typeof(string));
                ArrayList akeys = new ArrayList(templehs.Keys);
                for (i = 0; i < akeys.Count; i++) {
                    object obj = akeys[i];
                    DataRow templedr = templedt.NewRow();
                    if (obj is LP_Temple) {
                        WF_WorkTask wt = MainHelper.PlatformSqlMap.GetOneByKey<WF_WorkTask>(templehs[akeys[i]]);
                        if (wt != null) {
                            templedr["Name"] = wt.TaskCaption + "-申报表单";
                            templedr["Checked"] = 1;
                            templedr["Index"] = i;
                            templedt.Rows.Add(templedr);

                        }

                    } else if (obj is string) {

                        LP_Temple taskTemple = MainHelper.PlatformSqlMap.GetOneByKey<LP_Temple>(templehs[akeys[i]]);
                        if (taskTemple != null) {
                            templedr["Name"] = taskTemple.CellName;
                            templedr["Checked"] = 1;
                            templedr["Index"] = i;
                            templedt.Rows.Add(templedr);

                        }
                    }
                }
                frmExploreSelect frmes = new frmExploreSelect();
                frmes.SourceDt = templedt;
                if (frmes.ShowDialog() == DialogResult.OK && frmes.CheckIndehs.Count > 0) {

                    string fname = "";
                    FolderBrowserDialog fbd = new FolderBrowserDialog();
                    if (fbd.ShowDialog() == DialogResult.OK) {
                        fname = fbd.SelectedPath + "\\";
                        ArrayList checkkeys = new ArrayList(frmes.CheckIndehs.Keys);
                        for (i = 0; i < checkkeys.Count; i++) {
                            object obj = akeys[Convert.ToInt32(checkkeys[i])];
                            DSOFramerControl ds1 = new DSOFramerControl();
                            try {
                                if (obj is LP_Temple) {

                                    ds1.FileDataGzip = ((LP_Temple)obj).DocContent;
                                    //ds1.FileOpen(ds1.FileName);
                                    ds1.FileSave(CheckFileName(fname + frmes.CheckIndehs[checkkeys[i]]), true);
                                    ds1.FileClose();

                                } else if (obj is string) {

                                    LP_Temple taskTemple = MainHelper.PlatformSqlMap.GetOneByKey<LP_Temple>(templehs[akeys[i]]);
                                    if (taskTemple != null) {
                                        RecordWorkTask.iniTableRecordData(ref taskTemple, currRecord, wf[0].WorkFlowId, wf[0].WorkFlowInsId, true);
                                        ds1.FileDataGzip = taskTemple.DocContent;
                                        //ds1.FileOpen(ds1.FileName);
                                        ds1.FileSave(CheckFileName(fname + taskTemple.CellName), true);
                                        ds1.FileClose();

                                    }
                                }
                            } catch (Exception ex) {
                                Console.WriteLine(ex.Message);
                                MsgBox.ShowWarningMessageBox("无法保存" + frmes.CheckIndehs[checkkeys[i]] + "。请用其他文件名保存文件,或将文件存至其他位置。");

                            }


                        }//循环所有选择的表单
                        if (MsgBox.ShowAskMessageBox("导出成功,是否所在文件夹?") != DialogResult.OK)
                            return;
                        System.Diagnostics.Process.Start(fname);
                    }
                }
            }//表单不止一个
            else {
                ArrayList akeys = new ArrayList(templehs.Keys);
                SaveFileDialog saveFileDialog1 = new SaveFileDialog();
                string fname = "";
                saveFileDialog1.Filter = "Microsoft Excel (*.xls)|*.xls";
                if (saveFileDialog1.ShowDialog() == DialogResult.OK) {
                    fname = saveFileDialog1.FileName;
                    try {

                        DSOFramerControl ds1 = new DSOFramerControl();
                        if (akeys[0] is LP_Temple) {
                            ds1.FileDataGzip = ((LP_Temple)akeys[0]).DocContent;
                            ds1.FileSave(fname, true);
                            ds1.FileClose();
                        } else if (akeys[0] is string) {

                            LP_Temple taskTemple = MainHelper.PlatformSqlMap.GetOneByKey<LP_Temple>(akeys[0]);
                            if (taskTemple != null) {

                                WF_WorkTaskControls wtc = MainHelper.PlatformSqlMap.GetOne<WF_WorkTaskControls>(" where WorkflowId='" + wf[0].WorkFlowId
                                + "' and WorktaskId='" + wf[0].WorkTaskId + "'");
                                if (wtc != null) {

                                }
                                RecordWorkTask.iniTableRecordData(ref taskTemple, currRecord, wf[0].WorkFlowId, wf[0].WorkFlowInsId, true);
                                ds1.FileDataGzip = taskTemple.DocContent;
                                ds1.FileSave(fname, true);
                                ds1.FileClose();

                            }
                        }
                        if (MsgBox.ShowAskMessageBox("导出成功,是否打开该文档?") != DialogResult.OK)
                            return;

                        System.Diagnostics.Process.Start(fname);
                    } catch (Exception ex) {
                        Console.WriteLine(ex.Message);
                        MsgBox.ShowWarningMessageBox("无法保存" + fname + "。请用其他文件名保存文件,或将文件存至其他位置。");
                        return;
                    }
                }
            }

        }
        private void btEditfrm_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) {
            if (gridView1.FocusedRowHandle < 0) {
                return;
            }
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            LP_Record currRecord = new LP_Record();
            foreach (DataColumn dc in gridtable.Columns) {
                if (dc.ColumnName != "Image") {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }
            DataTable dt = RecordWorkTask.GetRecordWorkFlowData(currRecord.ID, MainHelper.User.UserID);

            if (!RecordWorkTask.HaveRunRecordRole(currRecord.ID, MainHelper.User.UserID)) return;
            object obj = RecordWorkTask.GetWorkTaskModle(dt);
            if (obj == null) {
                return;
            }

            if (obj is frmLP) {
                frmLP frm = new frmLP();
                frm.Status = "edit";


                frm.CurrRecord = currRecord;


                frm.ParentTemple = RecordWorkTask.GetWorkTaskTemple(dt, currRecord);
                if (frm.ParentTemple == null) {
                    MsgBox.ShowWarningMessageBox("出错,未找到该节点关联的表单,请检查模板设置!");
                    //return;
                }

                frm.Kind = strKind;
                frm.RecordWorkFlowData = dt;
                if (frm.ShowDialog() == DialogResult.OK) {
                    InitData(strSQL);
                }
            } else {



                if (obj.GetType().GetProperty("IsWorkflowCall") != null)
                    obj.GetType().GetProperty("IsWorkflowCall").SetValue(obj, true, null);
                else {
                    MsgBox.ShowWarningMessageBox("模块不支持,请咨询开发人员!");
                    return;
                }
                if (obj.GetType().GetProperty("CurrRecord") != null)
                    obj.GetType().GetProperty("CurrRecord").SetValue(obj, currRecord, null);
                else {
                    MsgBox.ShowWarningMessageBox("模块不支持,请咨询开发人员!");
                    return;
                }
                if (obj.GetType().GetProperty("RecordWorkFlowData") != null)
                    obj.GetType().GetProperty("RecordWorkFlowData").SetValue(obj, dt, null);
                else {
                    MsgBox.ShowWarningMessageBox("模块不支持,请咨询开发人员!");
                    return;
                }
                if (obj.GetType().GetProperty("ParentTemple") != null)
                    obj.GetType().GetProperty("ParentTemple").SetValue(obj, RecordWorkTask.GetWorkTaskTemple(dt, currRecord), null);
                else {
                    MsgBox.ShowWarningMessageBox("模块不支持,请咨询开发人员!");
                    return;
                }
                if (obj is UserControl) {

                    FormBase dlg = new FormBase();
                    dlg.Text = ((UserControl)obj).Name;
                    dlg.MdiParent = MainHelper.MainForm;
                    dlg.Controls.Add((UserControl)obj);
                    ((UserControl)obj).Dock = DockStyle.Fill;
                    dlg.Show();
                } else
                    if (obj is Form) {
                        if (obj is frmyxfxWorkFlowEdit) {
                            IList<WF_ModleRecordWorkTaskIns> li = MainHelper.PlatformSqlMap.GetListByWhere<WF_ModleRecordWorkTaskIns>(" where RecordID='" + currRecord.ID + "'"
                             + " and  WorkFlowId='" + dt.Rows[0]["WorkFlowId"].ToString() + "'"
                               + " and  WorkFlowInsId='" + dt.Rows[0]["WorkFlowInsId"].ToString() + "' order by CreatTime desc");
                            PJ_03yxfx yxfx = new PJ_03yxfx();
                            if (li.Count > 0) {
                                yxfx = MainHelper.PlatformSqlMap.GetOneByKey<PJ_03yxfx>(li[0].ModleRecordID);

                            } else {
                                yxfx = new PJ_03yxfx();
                                yxfx.OrgCode = MainHelper.UserOrg.OrgCode;
                                yxfx.OrgName = MainHelper.UserOrg.OrgName;
                                if (parentObj.FlowCaption.IndexOf("定期分析") > 0)
                                    yxfx.type = "定期分析";
                                else
                                    if (parentObj.FlowCaption.IndexOf("专题分析") > 0)
                                        yxfx.type = "专题分析";
                                ((frmyxfxWorkFlowEdit)obj).RecordStatus = 0;
                                yxfx.rq = DateTime.Now;
                                ((frmyxfxWorkFlowEdit)obj).RowData = yxfx;
                            }
                            switch (dt.Rows[0]["TaskInsCaption"].ToString()) {
                                case "填写":
                                    ((frmyxfxWorkFlowEdit)obj).RecordStatus = 0;
                                    break;
                                case "领导检查":
                                    ((frmyxfxWorkFlowEdit)obj).RecordStatus = 1;
                                    break;
                                case "检查人检查":
                                    ((frmyxfxWorkFlowEdit)obj).RecordStatus = 2;
                                    break;

                            }
                            yxfx.rq = DateTime.Now;
                            ((frmyxfxWorkFlowEdit)obj).RowData = yxfx;

                        } else if (obj is frmsbqxWorkFlowEdit) {
                            IList<WF_ModleRecordWorkTaskIns> li = MainHelper.PlatformSqlMap.GetListByWhere<WF_ModleRecordWorkTaskIns>(" where RecordID='" + currRecord.ID + "'"
                             + " and  WorkFlowId='" + dt.Rows[0]["WorkFlowId"].ToString() + "'"
                               + " and  WorkFlowInsId='" + dt.Rows[0]["WorkFlowInsId"].ToString() + "' order by CreatTime desc");
                            PJ_qxfl qxfl = new PJ_qxfl();
                            if (li.Count > 0) {
                                qxfl = MainHelper.PlatformSqlMap.GetOneByKey<PJ_qxfl>(li[0].ModleRecordID);

                            } else {
                                qxfl = new PJ_qxfl();
                                qxfl.OrgCode = MainHelper.UserOrg.OrgCode;
                                qxfl.OrgName = MainHelper.UserOrg.OrgName;

                            }

                            ((frmsbqxWorkFlowEdit)obj).RowData = qxfl;

                        }
                        ((Form)obj).ShowDialog();
                    }
                InitData(strSQL);
            }
            //获得编辑按钮的状态
            this.btEditfrm.Caption = currRecord.Status;
        }
        private void barBack_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) {
            if (gridView1.FocusedRowHandle < 0) return;
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            //请求确认
            if (MsgBox.ShowAskMessageBox("是否确认退回 【" + dr["Number"].ToString() + "】?") != DialogResult.OK) {
                return;
            }
            LP_Record currRecord = new LP_Record();
            foreach (DataColumn dc in gridtable.Columns) {
                if (dc.ColumnName != "Image") {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }

            DataTable dt = RecordWorkTask.GetRecordWorkFlowData(dr["ID"].ToString(), MainHelper.User.UserID);

            if (dt.Rows.Count > 0) {
                if (!RecordWorkTask.HaveWorkFlowBackRole(dt.Rows[0]["WorkTaskId"].ToString(), dt.Rows[0]["WorkFlowId"].ToString())) {
                    MsgBox.ShowWarningMessageBox("当前节点不能退回.设置里没有允许退回,退回失败!");
                    return;
                }

                if (RecordWorkTask.CheckOnRiZhi(dt)) {

                    RecordWorkTask.CreatRiZhi(dt, null, currRecord.ID, new object[] { currRecord });

                }
                string strmes = RecordWorkTask.RunWorkFlowBack(MainHelper.User.UserID, dt.Rows[0]["OperatorInsId"].ToString(), dt.Rows[0]["WorkTaskInsId"].ToString());
                if (strmes.IndexOf("未提交至任何人") > -1) {
                    MsgBox.ShowTipMessageBox("未提交至任何人,创建失败,请检查流程模板和组织机构配置是否正确!");
                    return;
                } else {

                    currRecord.LastChangeTime = DateTime.Now.ToString();
                    currRecord.Status = RecordWorkTask.GetWorkFlowTaskCaption(dt.Rows[0]["WorkTaskInsId"].ToString());
                    if (currRecord.ImageAttachment == null) currRecord.ImageAttachment = new byte[0];
                    if (currRecord.SignImg == null) currRecord.SignImg = new byte[0];
                    MainHelper.PlatformSqlMap.Update("UpdateLP_Record", currRecord);
                    InitData(strSQL);
                    MsgBox.ShowTipMessageBox(strmes);

                }
                this.btEditfrm.Caption = currRecord.Status;
            } else {
                MsgBox.ShowTipMessageBox("无当前用户可以操作此记录的流程信息,退回失败!");
            }
        }
Exemple #6
0
        private void barView_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (gridView1.FocusedRowHandle < 0) return;
            frmTemplate fm = new frmTemplate();
            LP_Record currRecord = new LP_Record();
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            DataTable dt = RecordWorkTask.GetRecordWorkFlowData2(dr["ID"].ToString());
            fm.RecordWorkFlowData = dt;
            foreach (DataColumn dc in gridtable.Columns)
            {
                if (dc.ColumnName != "Image")
                {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }

            fm.ParentTemple = ParentObj;
            fm.pjobject = currRecord;
            fm.ShowDialog();
            InitData(parentObj.Kind);
        }
Exemple #7
0
        private void barReExport_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (gridView1.FocusedRowHandle < 0) return;

            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            
            LP_Record currRecord = new LP_Record();
            foreach (DataColumn dc in gridtable.Columns)
            {
                if (dc.ColumnName != "Image")
                {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }
            if (currRecord.ID.IndexOf("N") > -1)
            {
                MsgBox.ShowTipMessageBox("此记录由新模块创建,请使用新模块操作!");
                return;
            }
            if (currRecord.Status != "存档")
            {
                MsgBox.ShowTipMessageBox("安监未审核,不能导出!");
                return;
            }
            SaveFileDialog saveFileDialog1 = new SaveFileDialog();
            string fname = "";
            saveFileDialog1.Filter = "Microsoft Excel (*.xls)|*.xls";
            if (saveFileDialog1.ShowDialog() == DialogResult.OK)
            {
                fname = saveFileDialog1.FileName;
                try
                {
                    DSOFramerControl ds1 = new DSOFramerControl();
                    ds1.FileDataGzip = currRecord.DocContent ;
                    //ds1.FileOpen(ds1.FileName);
                    ds1.FileSave(fname,true);
                    ds1.FileClose();
                    ExcelAccess ea = new ExcelAccess();
                    ea.Open(fname);
                    char pchar = '|';
                    Excel.Workbook wb = ds1.AxFramerControl.ActiveDocument as Excel.Workbook;
                    Excel.Worksheet xx = wb.Application.Sheets[1] as Excel.Worksheet;
                    IList<LP_Temple> templeList = MainHelper.PlatformSqlMap.GetList<LP_Temple>("SelectLP_TempleList", "where ParentID ='" + ParentObj.LPID + "' and isExplorer='1' Order by SortID");
                    LockExcel(ea);
                    unLockExcel(ea);

                    foreach (LP_Temple lp in templeList)
                    {
                        string[] arrCellpos = lp.CellPos.Split(pchar);
                        for (int i = 0; i < arrCellpos.Length && arrCellpos[i] != ""; i++)
                        {
                            ea.SetCellValue("", GetCellPos(arrCellpos[i])[0], GetCellPos(arrCellpos[i])[1]);

                        }

                    }
                    ea.ShowExcel();
                    ds1.FileClose();
                    ds1.Dispose ();
                }
                catch(Exception ex)
                {
                    Console.WriteLine(ex.Message ); 
                    MsgBox.ShowWarningMessageBox ("无法保存" + fname + "。请用其他文件名保存文件,或将文件存至其他位置。");
                    return;
                }
            }


        }
Exemple #8
0
        private void btEditfrm_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (gridView1.FocusedRowHandle<0)
            {
                return;
            }
           
            frmLP frm = new frmLP();
            frm.Status = "edit";
            frm.ParentTemple = ParentObj;
            frm.Kind = ParentObj.Kind;         
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            LP_Record currRecord = new LP_Record();
            foreach (DataColumn dc in gridtable.Columns)
            {
                if (dc.ColumnName != "Image")
                {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "") 
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }
            frm.CurrRecord = currRecord;
            if (currRecord.ID.IndexOf("N") > -1)
            {
                MsgBox.ShowWarningMessageBox("此记录由新模块创建,请使用新模块操作!");
                return;
            }
            if (!RecordWorkTask.HaveRunRecordRole(currRecord.ID, MainHelper.User.UserID)) return;
            DataTable dt = RecordWorkTask.GetRecordWorkFlowData(currRecord.ID, MainHelper.User.UserID);
            frm.RecordWorkFlowData = dt;
            if (frm.ShowDialog() == DialogResult.OK)
            {
                InitData(ParentObj.Kind);
            }
        }
Exemple #9
0
        private void btDeletefrm_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (MainHelper.UserOrg == null) return;

            if (gridView1.FocusedRowHandle < 0) return;
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            LP_Record currRecord = new LP_Record();
            foreach (DataColumn dc in gridtable.Columns)
            {
                if (dc.ColumnName != "Image")
                {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }
            currRecord = MainHelper.PlatformSqlMap.GetOneByKey<LP_Record>(currRecord.ID);
            if (currRecord.ImageAttachment == null) currRecord.ImageAttachment = new byte[0];
            if (currRecord.SignImg == null) currRecord.SignImg = new byte[0];
            if (currRecord.DocContent == null) currRecord.DocContent = new byte[0];
            if (currRecord.OrgName != MainHelper.User.OrgName && MainHelper.User.OrgName != "局领导")
            {
                MsgBox.ShowWarningMessageBox("删除出错,不是本单位的记录,无权删除!");
                return;
            }
            //请求确认
            if (MsgBox.ShowAskMessageBox("是否确认删除 【" + dr["Number"].ToString() + "】?") != DialogResult.OK)
            {
                return;
            }

            try
            {


                RecordWorkTask.DeleteRecord(dr["ID"].ToString());
                MainHelper.PlatformSqlMap.DeleteByWhere<LP_Record>(" where id ='" + dr["ID"].ToString() + "'");
                InitData(strKind);
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Exemple #10
0
        private void btEditfrm_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (gridView1.FocusedRowHandle < 0)
            {
                return;
            }
            DataRow dr = gridView1.GetDataRow(gridView1.FocusedRowHandle);
            LP_Record currRecord = new LP_Record();
            foreach (DataColumn dc in gridtable.Columns)
            {
                if (dc.ColumnName != "Image")
                {
                    if (dc.DataType.FullName.IndexOf("Byte[]") < 0)
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);
                    else if (dc.DataType.FullName.IndexOf("Byte[]") > -1 && DBNull.Value != dr[dc.ColumnName] && dr[dc.ColumnName].ToString() != "")
                        currRecord.GetType().GetProperty(dc.ColumnName).SetValue(currRecord, dr[dc.ColumnName], null);

                }
            }
            currRecord = MainHelper.PlatformSqlMap.GetOneByKey<LP_Record>(currRecord.ID);
            if (currRecord.ImageAttachment == null) currRecord.ImageAttachment = new byte[0];
            if (currRecord.SignImg == null) currRecord.SignImg = new byte[0];
            if (currRecord.DocContent == null) currRecord.DocContent = new byte[0];
            workFlowFormShow(currRecord);
        }