using BLL; using FineUIPro.Web.BaseInfo; using Microsoft.Office.Interop.Word; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; using System.Collections; using System.Collections.Generic; using System.Configuration; using System.Data; using System.Data.SqlClient; using System.Linq; using static System.Windows.Forms.AxHost; namespace FineUIPro.Web.ProjectData { public partial class MainDataProjectList : PageBase { /// /// 定义项 /// public string URLToken { get { return (string)ViewState["URLToken"]; } set { ViewState["URLToken"] = value; } } #region 加载 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { ////权限按钮方法 this.GetButtonPower(); Funs.DropDownPageSize(this.ddlPageSize); if (this.CurrUser != null && this.CurrUser.PageSize.HasValue) { Grid1.PageSize = this.CurrUser.PageSize.Value; } this.ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); // 绑定表格 this.BindGrid(); } } #endregion #region 绑定数据 /// /// 绑定数据 /// private void BindGrid() { string strSql = @"SELECT [project_id] ,[project_name] ,[project_code] ,[project_short_name] ,[project_category_code] ,[project_category] ,[project_type] ,[project_state_code] ,[project_state] ,[configuration_project_manager] ,[project_planned_start_time] ,[project_planned_complete_time] ,[sysdataid] ,[createtime] ,[modifytime] ,[version] ,[isusedcode] ,[sourceappcode] ,[state] FROM [dbo].[MainData_Project] "; List listStr = new List(); if (!string.IsNullOrEmpty(this.txtProjectName.Text.Trim())) { strSql += "where ProjectName LIKE @ProjectName"; listStr.Add(new SqlParameter("@ProjectName", "%" + this.txtProjectName.Text.Trim() + "%")); } strSql += " order by createtime desc"; SqlParameter[] parameter = listStr.ToArray(); System.Data.DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); Grid1.RecordCount = tb.Rows.Count; Grid1.DataSource = this.GetPagedDataTable(Grid1, tb); Grid1.DataBind(); } #endregion #region Grid /// /// /// /// /// protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(); } /// /// /// /// /// protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) { Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); BindGrid(); } protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e) { BindGrid(); } #endregion /// /// 右键编辑事件 /// /// /// protected void btnMenuEnable_Click(object sender, EventArgs e) { if (Grid1.SelectedRowIndexArray.Length > 0) { bool isShow = false; if (Grid1.SelectedRowIndexArray.Length == 1) { isShow = true; } foreach (int rowIndex in Grid1.SelectedRowIndexArray) { string rowID = Grid1.DataKeys[rowIndex][0].ToString(); var getBaseProject = Funs.DB.MainData_Project.FirstOrDefault(x => x.Project_id == rowID); if (getBaseProject != null) { var getProject = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectCode == getBaseProject.Project_code || x.ProjectName == getBaseProject.Project_name); if (getProject != null) { getProject.ProjectName = getBaseProject.Project_name; getProject.ProjectCode = getBaseProject.Project_code; getProject.ShortName = getBaseProject.Project_short_name; getProject.StartDate = getBaseProject.Project_planned_start_time ; getProject.EndDate = getBaseProject.Project_planned_complete_time; if (getBaseProject.Project_state == "完工") { getProject.ProjectState = "3"; getProject.ProjectState2 = "5"; } else if (getBaseProject.Project_state == "暂停") { getProject.ProjectState = "2"; getProject.ProjectState2 = "9"; } else if (getBaseProject.Project_state == "运行") { getProject.ProjectState = "1"; getProject.ProjectState2 = "3"; } else if (getBaseProject.Project_state == "立项") { getProject.ProjectState = "2"; getProject.ProjectState2 = "1"; } else if (getBaseProject.Project_state == "关闭") { getProject.ProjectState = "3"; getProject.ProjectState2 = "7"; } getProject.DataSource = "数据同步"; Funs.DB.SubmitChanges(); } else { Model.Base_Project newProject = new Model.Base_Project { ProjectId = getBaseProject.Project_id }; newProject.ProjectName = getBaseProject.Project_name; newProject.ShortName = getBaseProject.Project_short_name; newProject.ProjectCode = getBaseProject.Project_code; newProject.StartDate = getBaseProject.Project_planned_start_time; newProject.EndDate = getBaseProject.Project_planned_complete_time; newProject.ProjectAttribute = "GONGCHENG"; if (getBaseProject.Project_state == "完工") { newProject.ProjectState = "3"; newProject.ProjectState2 = "5"; } else if (getBaseProject.Project_state == "暂停") { newProject.ProjectState = "2"; newProject.ProjectState2 = "9"; } else if (getBaseProject.Project_state == "运行") { newProject.ProjectState = "1"; newProject.ProjectState2 = "3"; } else if (getBaseProject.Project_state == "立项") { newProject.ProjectState = "2"; newProject.ProjectState2 = "1"; } else if (getBaseProject.Project_state == "关闭") { newProject.ProjectState = "3"; newProject.ProjectState2 = "7"; } newProject.DataSource = "数据同步"; Funs.DB.Base_Project.InsertOnSubmit(newProject); Funs.DB.SubmitChanges(); } } } BindGrid(); } } protected string ConvertEnable(object projectId) { string res = ""; var project = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectId == projectId.ToString()); if (project != null) { res = "已启用"; } return res; } #region 获取按钮权限 /// /// 获取按钮权限 /// /// /// private void GetButtonPower() { if (Request.Params["value"] == "0") { return; } var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.SeverProjectListMenuId); if (buttonList.Count() > 0) { } } #endregion #region 查询 /// /// 查询 /// /// /// protected void TextBox_TextChanged(object sender, EventArgs e) { this.BindGrid(); } #endregion protected void btnImport_Click(object sender, EventArgs e) { //同步项目 int total = 10; int pageSize = 20; int pageIndex = 0; while (pageSize * pageIndex <= total) { string pushContent = string.Empty; var dictTypeCode = new { criteria = new { _expr = new[] { new { _property = "project_state_code", _value = "1", _op = "=" }, new { _property = "isusedcode", _value = "0", _op = "=" } } }, pageSize = pageSize, pageIndex = pageIndex }; Hashtable newToken = new Hashtable { { "userName", "nuobida_construction" }, { "password", "nuobida@2023" }, { "ClientId", "com.tcc.pm.sggl" }, { "OperationCode", "com.tcc.dm.mdm.pm.basicinfo" } }; pushContent = JsonConvert.SerializeObject(dictTypeCode); string returndata = APIGetHttpService.OutsideHttp("https://esb.china-tcc.com:9090/com/tcc/dm/mdm/TCC_TM_PM_BASIC_INFO", "POST", "application/json;charset=utf-8", newToken, pushContent); if (!string.IsNullOrEmpty(returndata)) { JObject obj = JObject.Parse(returndata); total = int.Parse(obj["total"].ToString()); string datas = obj["datas"].ToString(); JArray arr = JArray.Parse(datas); foreach (var item in arr) { string project_name = item["project_name"] != null ? item["project_name"].ToString():""; string project_code = item["project_code"] != null ? item["project_code"].ToString():""; string project_short_name = item["project_short_name"] != null ? item["project_short_name"].ToString():""; string project_category_code = item["project_category_code"] != null ? item["project_category_code"].ToString():""; string project_category = item["project_category"] != null ? item["project_category"].ToString():""; string project_type = item["project_type"] != null ? item["project_type"].ToString():""; string project_state_code = item["project_state_code"] != null ? item["project_state_code"].ToString():""; string project_state = item["project_state"] != null ? item["project_state"].ToString():""; string configuration_project_manager = item["configuration_project_manager"] != null ? item["configuration_project_manager"].ToString():""; string project_planned_start_time = item["project_planned_start_time"] != null ? item["project_planned_start_time"].ToString():""; string project_planned_complete_time = item["project_planned_complete_time"] != null ? item["project_planned_complete_time"].ToString():""; string sysdataid = item["sysdataid"] != null ? item["sysdataid"].ToString():""; string createtime = item["createtime"] != null ? item["createtime"].ToString():""; string modifytime = item["modifytime"] != null ? item["modifytime"].ToString():""; string version = item["version"] != null ? item["version"].ToString():""; string isusedcode = item["isusedcode"] != null ? item["isusedcode"].ToString():""; string sourceappcode = item["sourceappcode"] != null ? item["sourceappcode"].ToString():""; string state = item["state"]!=null?item["state"].ToString():""; if (!string.IsNullOrEmpty(project_code)) { var getProject = Funs.DB.MainData_Project.FirstOrDefault(x => x.Project_code == project_code || x.Project_name == project_name); if (getProject != null) { getProject.Project_name = project_name; getProject.Project_code = project_code; getProject.Project_short_name = project_short_name; getProject.Project_category_code = project_category_code; getProject.Project_category = project_category; getProject.Project_type = project_type; getProject.Project_state_code = project_state_code; getProject.Project_state = project_state; getProject.Configuration_project_manager = configuration_project_manager; getProject.Project_planned_start_time = Funs.GetNewDateTime(project_planned_start_time); getProject.Project_planned_complete_time = Funs.GetNewDateTime(project_planned_complete_time); getProject.Sysdataid = sysdataid; getProject.Createtime = Funs.GetNewDateTime(createtime); getProject.Modifytime = Funs.GetNewDateTime(modifytime); getProject.Version = version; getProject.Isusedcode = isusedcode; getProject.Sourceappcode = sourceappcode; getProject.State = state; Funs.DB.SubmitChanges(); } else { var baseProject = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectCode == project_code || x.ProjectName == project_name); getProject = new Model.MainData_Project { Project_id = SQLHelper.GetNewID(), }; if (baseProject != null) { getProject.Project_id = baseProject.ProjectId; } getProject.Project_name = project_name; getProject.Project_code = project_code; getProject.Project_short_name = project_short_name; getProject.Project_category_code = project_category_code; getProject.Project_category = project_category; getProject.Project_type = project_type; getProject.Project_state_code = project_state_code; getProject.Project_state = project_state; getProject.Configuration_project_manager = configuration_project_manager; getProject.Project_planned_start_time = Funs.GetNewDateTime(project_planned_start_time); getProject.Project_planned_complete_time = Funs.GetNewDateTime(project_planned_complete_time); getProject.Sysdataid = sysdataid; getProject.Createtime = Funs.GetNewDateTime(createtime); getProject.Modifytime = Funs.GetNewDateTime(modifytime); getProject.Version = version; getProject.Isusedcode = isusedcode; getProject.Sourceappcode = sourceappcode; getProject.State = state; Funs.DB.MainData_Project.InsertOnSubmit(getProject); Funs.DB.SubmitChanges(); } } } } pageIndex++; } BindGrid(); } } }