409 lines
13 KiB
C#
409 lines
13 KiB
C#
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
|
|
{
|
|
/// <summary>
|
|
/// 定义项
|
|
/// </summary>
|
|
public string URLToken
|
|
{
|
|
get
|
|
{
|
|
return (string)ViewState["URLToken"];
|
|
}
|
|
set
|
|
{
|
|
ViewState["URLToken"] = value;
|
|
}
|
|
}
|
|
|
|
|
|
#region 加载
|
|
/// <summary>
|
|
/// 加载页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
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 绑定数据
|
|
/// <summary>
|
|
/// 绑定数据
|
|
/// </summary>
|
|
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<SqlParameter> listStr = new List<SqlParameter>();
|
|
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
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
|
{
|
|
BindGrid();
|
|
}
|
|
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
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
|
|
|
|
|
|
/// <summary>
|
|
/// 右键编辑事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
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 获取按钮权限
|
|
/// <summary>
|
|
/// 获取按钮权限
|
|
/// </summary>
|
|
/// <param name="button"></param>
|
|
/// <returns></returns>
|
|
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 查询
|
|
/// <summary>
|
|
/// 查询
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
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();
|
|
}
|
|
}
|
|
} |