using DBUtility;
using Model;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Windows.Forms;
using WebAPI.Models;
namespace WebAPI.Controllers.项目管理.项目阶段
{
public class Gy_ProjectStageController : ApiController
{
public DBUtility.ClsPub.Enum_BillStatus BillStatus;//单据状态(新增,修改,浏览,更新单价,变更)
private json objJsonResult = new json();
public DataSet ds = new DataSet();
public SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
public DAL.ClsSc_ICMOBill BillOld = new DAL.ClsSc_ICMOBill();
string user_LongShan = "";
string HName_LongShan = "";
#region 项目阶段 新增/编辑
#region 项目阶段 新增/编辑 信息列表
public class Gy_ProjectStage_eidt_add
{
public long HItemID;
public string HNumber;
public string HName;
public long HParentID;
public bool HStopflag;
public string HRemark;
public string HHelpCode;
public int HUSEORGID;
public string HStageNote;
public string HRelationGoods;
public bool HIsKey;
public double HRate;
}
#endregion
///
/// 保存按钮
///参数:string sql。
///返回值:object。
///
[Route("Gy_ProjectStage/AddNewProjectStage")]
[HttpPost]
public object AddNewProjectStage([FromBody] JObject oMain)
{
try
{
//DAL.ClsGy_Process_Ctl oDept = new DAL.ClsGy_Process_Ctl();
//DAL.ClsGy_Process_View oDeptHlp = new DAL.ClsGy_Process_View();
var _value = oMain["oMain"].ToString();
string msg1 = _value.ToString();
string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
string msg2 = sArray[0].ToString();
string user = sArray[1].ToString();//用户名
//判断是否有编辑权限
if (!DBUtility.ClsPub.Security_Log("PM_ProjectStage_edit", 1, false, user))
{
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "无权限编辑!";
objJsonResult.data = null;
return objJsonResult;
}
//string msg3 = sArray[1].ToString();
//string msg4 = sArray[2].ToString();
//string msg5 = sArray[3].ToString();
//反序列化
msg2 = "[" + msg2.ToString() + "]";
List list = Newtonsoft.Json.JsonConvert.DeserializeObject>(msg2);
long HItemID = list[0].HItemID;
string HNumber = list[0].HNumber;
string HName = list[0].HName;
string HShortNumber = list[0].HNumber;
long HParentID = list[0].HParentID;
long HLevel = ClsPub.GetLevel(list[0].HNumber.Trim());
bool HEndFlag = true;
bool HStopflag = list[0].HStopflag;
string HRemark = list[0].HRemark;
string HHelpCode = list[0].HHelpCode;
string HMakeEmp = user;
string HModifyEmp = user;
int HUSEORGID = list[0].HUSEORGID;
string HStageNote = list[0].HStageNote;
string HRelationGoods = list[0].HRelationGoods;
bool HIsKey = list[0].HIsKey;
double HRate = list[0].HRate;
//保存
//保存完毕后处理
if (HItemID == 0)
{
oCN.BeginTran();
string sql = "Insert into Gy_ProjectStage" +
" (HNumber,HName,HShortNumber,HParentID,HLevel,HEndFlag,HStopflag,HRemark,HHelpCode,HMakeEmp,HUSEORGID,HStageNote,HRelationGoods,HIsKey,HRate) " +
" Values(" +
"'" + HNumber + "'" +
",'" + HName + "'" +
",'" + HShortNumber + "'" +
"," + HParentID.ToString() + "" +
"," + HLevel.ToString() + "" +
"," + Convert.ToString(HEndFlag ? 1 : 0) + "" +
"," + Convert.ToString(HStopflag ? 1 : 0) + "" +
",'" + HRemark + "'" +
",'" + HHelpCode + "'" +
",'" + HMakeEmp + "'" +
"," + HUSEORGID + "" +
",'" + HStageNote + "'" +
",'" + HRelationGoods + "'" +
"," + Convert.ToString(HIsKey ? 1 : 0) + "" +
"," + HRate + "" +
")";
oCN.RunProc(sql, ref DBUtility.ClsPub.sExeReturnInfo);
//修改上级为非末级代码
oCN.RunProc("Update Gy_ProjectStage set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
oCN.Commit();
}
else
{
////若MAINDI重复则重新获取
oCN.BeginTran();
string sql = "Update Gy_ProjectStage set " +
"HNumber='" + HNumber + "'" +
",HName='" + HName + "'" +
",HShortNumber='" + HShortNumber + "'" +
",HParentID=" + HParentID.ToString() + "" +
",HLevel=" + HLevel.ToString() + "" +
",HEndFlag=" + Convert.ToString(HEndFlag ? 1 : 0) + "" +
",HStopflag=" + Convert.ToString(HStopflag ? 1 : 0) + "" +
",HRemark='" + HRemark + "'" +
",HHelpCode='" + HHelpCode + "'" +
",HMakeEmp='" + HMakeEmp + "'" +
",HModifyEmp = '" + HModifyEmp + "'" +
",HModifyTime = getDate()" +
",HUSEORGID=" + HUSEORGID + "" +
",HStageNote='" + HStageNote + "'" +
",HRelationGoods='" + HRelationGoods + "'" +
",HIsKey=" + Convert.ToString(HIsKey ? 1 : 0) + "" +
",HRate=" + HRate + "" +
" where HItemID=" + HItemID;
oCN.RunProc(sql, ref DBUtility.ClsPub.sExeReturnInfo);
//修改上级为非末级代码
oCN.RunProc("Update Gy_ProjectStage set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
//
oCN.Commit();
}
objJsonResult.code = "0";
objJsonResult.count = 1;
objJsonResult.Message = "保存成功!";
//WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
objJsonResult.data = 1;
return objJsonResult;
}
catch (Exception e)
{
oCN.RollBack();
objJsonResult.code = "0";
objJsonResult.count = 0;
objJsonResult.Message = "Exception!" + e.Message;
objJsonResult.data = null;
return objJsonResult;
}
}
#endregion
#region 项目阶段 查询
///
/// 返回项目阶段列表
///参数:string sql。
///返回值:object。
///
[Route("Gy_ProjectStage/list")]
[HttpGet]
public object getProjectStageList(string sWhere, string user)
{
try
{
List