You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
720 lines
22 KiB
720 lines
22 KiB
using NFine.Application.SRM;
|
|
using NFine.Code;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.Mvc;
|
|
|
|
namespace NFine.Web.Areas.SRM.Controllers
|
|
{
|
|
public class PerFormanceController : ControllerBase
|
|
{
|
|
PerFormanceApp App = new PerFormanceApp();
|
|
//
|
|
// GET: /SRM/PerFormance/
|
|
public ActionResult PerFormanceMark()
|
|
{
|
|
return View();
|
|
}
|
|
public ActionResult PerFormanceType()
|
|
{
|
|
return View();
|
|
}
|
|
|
|
public ActionResult PerFormanceTypeAdd()
|
|
{
|
|
return View();
|
|
}
|
|
public ActionResult PerFormanceTypeRel()
|
|
{
|
|
return View();
|
|
}
|
|
public ActionResult PerFormanceMarkSearch()
|
|
{
|
|
return View();
|
|
}
|
|
public ActionResult PerFormanceTargetAdd()
|
|
{
|
|
return View();
|
|
}
|
|
public ActionResult PerFormanceTarget()
|
|
{
|
|
return View();
|
|
}
|
|
/// <summary>
|
|
/// 打分界面
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
public ActionResult PerFormanceMarkAdd()
|
|
{
|
|
return View();
|
|
}
|
|
|
|
public ActionResult PerFormanceMarkAddInv()
|
|
{
|
|
return View();
|
|
}
|
|
//供应商维护界面
|
|
public ActionResult PerFormanceMarkByVendor()
|
|
{
|
|
return View();
|
|
}
|
|
//维护详情页面
|
|
public ActionResult PerFormanceMarkMaintenance()
|
|
{
|
|
return View();
|
|
}
|
|
/// <summary>
|
|
/// 获取绩效类型管理
|
|
/// </summary>
|
|
/// <param name="pagination"></param>
|
|
/// <param name="queryJson"></param>
|
|
/// <returns></returns>
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetGridJson(Pagination pagination, string queryJson)
|
|
{
|
|
DataTable ListData = App.GetGridJson(queryJson, ref pagination);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
/// <summary>
|
|
/// 获取绩效打分
|
|
/// </summary>
|
|
/// <param name="pagination"></param>
|
|
/// <param name="queryJson"></param>
|
|
/// <returns></returns>
|
|
//[HttpGet]
|
|
//[HandlerAjaxOnly]
|
|
//public ActionResult GetPerFormanceMark(Pagination pagination, string queryJson)
|
|
//{
|
|
// DataTable ListData = App.GetPerFormanceMark(queryJson, ref pagination);
|
|
// var JsonData = new
|
|
// {
|
|
// total = pagination.total,
|
|
// page = pagination.page,
|
|
// records = pagination.records,
|
|
// rows = ListData,
|
|
// };
|
|
// return Content(JsonData.ToJson());
|
|
//}
|
|
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceMark(Pagination pagination, string BidCode)
|
|
{
|
|
DataTable ListData = App.GetPerFormanceMark(BidCode, ref pagination);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceMarkByMain(Pagination pagination, string objArr,string WorkPoint)
|
|
{
|
|
DataTable ListData = App.GetPerFormanceMarkByMain( ref pagination, objArr, WorkPoint);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceMarkByMainUpdate(Pagination pagination, string objArr, string WorkPoint)
|
|
{
|
|
DataTable ListData = App.GetPerFormanceMarkByMainUpdate(ref pagination, objArr, WorkPoint);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceMarkGrid(Pagination pagination, string queryJson)
|
|
{
|
|
DataTable ListData = App.GetPerFormanceMarkGrid(queryJson, ref pagination);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceMarkGridByVendor(Pagination pagination, string queryJson)
|
|
{
|
|
DataTable ListData = App.GetPerFormanceMarkGridByVendor(queryJson, ref pagination);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
|
|
|
|
|
|
|
|
public ActionResult GetPerFormanceMarkBYColumn(string BidCode)
|
|
{
|
|
var data = App.GetPerFormanceMarkBYColumn(BidCode);
|
|
return Content(data.ToJson());
|
|
}
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetEMSCORE()
|
|
{
|
|
try
|
|
{
|
|
DataRow dr = App.GetEMSCORE();
|
|
var JsonData = new
|
|
{
|
|
MITEMSCORE = dr["MITEMSCORE"].ToString(),
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetList(string MITEMCODE, string WorkPoint)
|
|
{
|
|
try
|
|
{
|
|
DataRow dr = App.GetList(MITEMCODE, WorkPoint);
|
|
var JsonData = new
|
|
{
|
|
//CERTIFICATEITEMNAME = dr["CERTIFICATEITEMNAME"].ToString(),
|
|
WorkPoint = dr["WorkPoint"].ToString(),
|
|
MITEMCODE = dr["MITEMCODE"].ToString(),
|
|
//CERTIFICATEITEMCODE = dr["CERTIFICATEITEMCODE"].ToString(),
|
|
MITEMNAME = dr["MITEMNAME"].ToString(),
|
|
MITEMDESCRIPTION = dr["MITEMDESCRIPTION"].ToString(),
|
|
MITEMSCORE = dr["MITEMSCORE"].ToString(),
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 保存绩效类型
|
|
/// </summary>
|
|
/// <param name="keyValue"></param>
|
|
/// <param name="ID"></param>
|
|
/// <returns></returns>
|
|
[HttpPost]
|
|
[HandlerAjaxOnly]
|
|
[ValidateAntiForgeryToken]
|
|
public ActionResult SubmitPERFTEMPLATEMItem(string keyValue, string ID)
|
|
{
|
|
try
|
|
{
|
|
App.SubmitPERFTEMPLATEMItem(keyValue, ID);
|
|
return Success("保存成功!");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
[HttpPost]
|
|
[HandlerAjaxOnly]
|
|
[ValidateAntiForgeryToken]
|
|
public ActionResult SavePerFormance(string keyValue)
|
|
{
|
|
try
|
|
{
|
|
App.SavePerFormance(keyValue);
|
|
return Success("保存成功!");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
|
|
[HttpGet]
|
|
//[HandlerAjaxOnly]
|
|
public ActionResult GetICSPERFTEMPLATEMITEM(string queryJson)
|
|
{
|
|
DataTable dt = App.GetICSPERFTEMPLATEMITEM(queryJson);
|
|
return Content(dt.ToJson());
|
|
}
|
|
/// <summary>
|
|
/// 绩效类别和供应商绑定
|
|
/// </summary>
|
|
/// <param name="keyValue"></param>
|
|
/// <param name="keyValue2"></param>
|
|
/// <returns></returns>
|
|
[HttpPost]
|
|
[HandlerAjaxOnly]
|
|
[ValidateAntiForgeryToken]
|
|
public ActionResult SubmitICSPERFTEMPLATEMITEM(string keyValue, string keyValue2)
|
|
{
|
|
try
|
|
{
|
|
App.SubmitICSPERFTEMPLATEMITEM(keyValue, keyValue2);
|
|
return Success("保存成功!");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 删除认绩效类别
|
|
/// </summary>
|
|
/// <param name="keyValue"></param>
|
|
/// <returns></returns>
|
|
[HttpPost]
|
|
[HandlerAjaxOnly]
|
|
[ValidateAntiForgeryToken]
|
|
public ActionResult DeletePerFormanceType(string keyValue)
|
|
{
|
|
string msg = App.DeletePerFormanceType(keyValue);
|
|
if (string.IsNullOrWhiteSpace(msg))
|
|
{
|
|
return Success("删除成功!");
|
|
}
|
|
else
|
|
{
|
|
return Error("删除失败");
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 绩效查询
|
|
/// </summary>
|
|
/// <param name="pagination"></param>
|
|
/// <param name="queryJson"></param>
|
|
/// <returns></returns>
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceMarkSearch(Pagination pagination, string queryJson)
|
|
{
|
|
DataTable ListData = App.GetPerFormanceMarkSearch(queryJson, ref pagination);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
/// 绩效查询
|
|
/// </summary>
|
|
/// <param name="pagination"></param>
|
|
/// <param name="queryJson"></param>
|
|
/// <returns></returns>
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceTarget(Pagination pagination, string queryJson)
|
|
{
|
|
DataTable ListData = App.GetPerFormanceTarget(queryJson, ref pagination);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
/// <summary>
|
|
/// 绩效指标维护
|
|
/// </summary>
|
|
/// <param name="MITEMCODE"></param>
|
|
/// <param name="WorkPoint"></param>
|
|
/// <returns></returns>
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceTargetAdd(string ID)
|
|
{
|
|
try
|
|
{
|
|
DataRow dr = App.GetPerFormanceTargetAdd(ID);
|
|
var JsonData = new
|
|
{
|
|
NORMALTARGETCATEGORY = dr["NORMALTARGETCATEGORY"].ToString(),
|
|
NORMALTARGETValue = dr["NORMALTARGETValue"].ToString(),
|
|
TARGETSCORE = dr["TARGETSCORE"].ToString(),
|
|
EffDate = dr["EffDate"].ToString(),
|
|
DisDate = dr["DisDate"].ToString(),
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 保存绩效权值
|
|
/// </summary>
|
|
/// <param name="keyValue"></param>
|
|
/// <returns></returns>
|
|
[HttpPost]
|
|
[HandlerAjaxOnly]
|
|
[ValidateAntiForgeryToken]
|
|
public ActionResult SubmitPerFormanceTarget(string keyValue,string ID)
|
|
{
|
|
try
|
|
{
|
|
App.SubmitPerFormanceTarget(keyValue, ID);
|
|
return Success("保存成功!");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
[HttpPost]
|
|
[HandlerAjaxOnly]
|
|
[ValidateAntiForgeryToken]
|
|
public ActionResult DeletePerFormance(string keyValue)
|
|
{
|
|
string msg = App.DeletePerFormance(keyValue);
|
|
if (string.IsNullOrWhiteSpace(msg))
|
|
{
|
|
return Success("删除成功!");
|
|
}
|
|
else
|
|
{
|
|
return Error("删除失败");
|
|
}
|
|
}
|
|
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetScore(string WorkPoint)
|
|
{
|
|
try
|
|
{
|
|
decimal msg = App.GetScore(WorkPoint);
|
|
var JsonData = new
|
|
{
|
|
SumScore = msg,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
public ActionResult GetScoreByTarget(string EffDate, string DisDate)
|
|
{
|
|
try
|
|
{
|
|
string msg = App.GetScoreByTarget(EffDate, DisDate);
|
|
var JsonData = new
|
|
{
|
|
SumScore = msg,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetEMSCOREByTarget(string EffDate, string DisDate)
|
|
{
|
|
try
|
|
{
|
|
DataRow dr = App.GetEMSCOREByTarget(EffDate, DisDate);
|
|
var JsonData = new
|
|
{
|
|
MITEMSCORE = dr["MITEMSCORE"].ToString(),
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 删除打分明细
|
|
/// </summary>
|
|
/// <param name="keyValue"></param>
|
|
/// <param name="WorkPoint"></param>
|
|
/// <returns></returns>
|
|
[HttpPost]
|
|
[HandlerAjaxOnly]
|
|
[ValidateAntiForgeryToken]
|
|
public ActionResult DeleteICSPERFCHECKRESULT(string keyValue)
|
|
{
|
|
string msg = App.DeleteICSPERFCHECKRESULT(keyValue);
|
|
if (string.IsNullOrEmpty(msg))
|
|
{
|
|
return Success("删除成功!");
|
|
}
|
|
else
|
|
{
|
|
return Error(msg);
|
|
}
|
|
}
|
|
|
|
public ActionResult SaveFormTiJiaoZB(string arrayShellFabricDetail,string Type)
|
|
{
|
|
try
|
|
{
|
|
App.SaveFormTiJiaoZB(arrayShellFabricDetail, Type);
|
|
return Success("保存成功");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
|
|
}
|
|
|
|
public ActionResult SaveFormMarkMaintenance(string queryJson)
|
|
{
|
|
try
|
|
{
|
|
App.SaveFormMarkMaintenance(queryJson);
|
|
return Success("保存成功");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
|
|
}
|
|
|
|
public ActionResult SaveFormOK(string json)
|
|
{
|
|
try
|
|
{
|
|
App.SaveFormOK(json);
|
|
return Success("保存成功");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
|
|
}
|
|
public ActionResult SaveFormNG(string json)
|
|
{
|
|
try
|
|
{
|
|
App.SaveFormOK(json);
|
|
return Success("保存成功");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
return Error(ex.Message);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public ActionResult PERFPublish(string json)
|
|
{
|
|
return Content(App.PERFPublish(json));
|
|
|
|
}
|
|
|
|
public ActionResult PERFClose(string json)
|
|
{
|
|
return Content(App.PERFClose(json));
|
|
|
|
}
|
|
public ActionResult PERFDELETE(string json)
|
|
{
|
|
|
|
string msg = App.PERFdelete(json);
|
|
if (string.IsNullOrEmpty(msg))
|
|
{
|
|
return Success("删除成功!");
|
|
}
|
|
else
|
|
{
|
|
return Error(msg);
|
|
}
|
|
|
|
}
|
|
|
|
//[HttpGet]
|
|
//[HandlerAjaxOnly]
|
|
public ActionResult GetPerFormanceMarkInfo(string objArr, string WorkPoint)
|
|
{
|
|
DataTable ListData = App.GetPerFormanceMarkInfo(objArr, WorkPoint);
|
|
var JsonData = new
|
|
{
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
|
|
/// <summary>
|
|
/// 上传完文件
|
|
/// </summary>
|
|
/// <param name="BidCode"></param>
|
|
/// <param name="ID"></param>
|
|
/// <returns></returns>
|
|
[HttpPost]
|
|
public ActionResult UpLoadFileImport(string VENDORCODE, string CERTIFICATEITEMCODE)
|
|
{
|
|
string MUSER = NFine.Code.OperatorProvider.Provider.GetCurrent().UserCode;
|
|
|
|
string FileName = "";
|
|
string PathName = "";
|
|
//获取上传的文件集合
|
|
try
|
|
{
|
|
HttpFileCollection httpFile = System.Web.HttpContext.Current.Request.Files;
|
|
for (int i = 0; i < httpFile.Count; i++)
|
|
{
|
|
//获取送货单号
|
|
//string STNO = Request.Form["STNO"].ToString();
|
|
string fileName = Path.GetFileNameWithoutExtension(httpFile[i].FileName)
|
|
+ CERTIFICATEITEMCODE + Path.GetExtension(httpFile[i].FileName);
|
|
string Paths = System.Web.HttpContext.Current.Server.MapPath("~\\File\\PerFormanceFile\\" + VENDORCODE + "\\");
|
|
if (!Directory.Exists(Paths))
|
|
{
|
|
Directory.CreateDirectory(Paths);
|
|
}
|
|
string filePath = System.Web.HttpContext.Current.Server.MapPath("~\\File\\PerFormanceFile\\" + VENDORCODE + "\\" + fileName);
|
|
|
|
int iLen = httpFile[0].ContentLength;
|
|
byte[] bData = new byte[iLen];
|
|
httpFile[0].InputStream.Read(bData, 0, iLen);
|
|
FileStream fs = new FileStream(filePath, FileMode.OpenOrCreate);
|
|
fs.Write(bData, 0, bData.Length);
|
|
fs.Flush();
|
|
fs.Close();
|
|
fs.Dispose();
|
|
FileName += "" + fileName + ";";
|
|
PathName += "" + filePath + ";";
|
|
}
|
|
return Success("上传成功!");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
return Error(ex.Message);
|
|
}
|
|
}
|
|
|
|
[HttpPost]
|
|
/// <summary>
|
|
/// 文件上传到本地
|
|
/// </summary>
|
|
public ActionResult UploadFile()
|
|
{
|
|
string mess = "";
|
|
try
|
|
{
|
|
HttpFileCollection hpFiles = System.Web.HttpContext.Current.Request.Files;
|
|
if (hpFiles != null && hpFiles.Count > 0)
|
|
{
|
|
|
|
string IsXls = System.IO.Path.GetExtension(hpFiles[0].FileName).ToString().ToLower();//System.IO.Path.GetExtension获得文件的扩展名
|
|
if (IsXls != ".xls" && IsXls != ".xlsx")
|
|
{
|
|
|
|
mess = "只可以选择Excel(.xls .xlsx)文件";//当选择的不是Excel文件时,返回
|
|
}
|
|
string filename = DateTime.Now.ToString("yyyyMMddhhmmss") + Guid.NewGuid() + IsXls; //获取Execle文件名 DateTime日期函数
|
|
string savePath = System.Web.HttpContext.Current.Server.MapPath("~\\File\\UPLoadFile\\" + filename);//Server.MapPath 获得虚拟服务器相对路径
|
|
|
|
int iLen = hpFiles[0].ContentLength;
|
|
if (Directory.Exists(savePath)) mess = "文件已存在";
|
|
byte[] bData = new byte[iLen];
|
|
hpFiles[0].InputStream.Read(bData, 0, iLen);
|
|
|
|
|
|
FileStream newFile = new FileStream(savePath, FileMode.OpenOrCreate);
|
|
newFile.Write(bData, 0, bData.Length);
|
|
newFile.Flush();
|
|
int _FileSizeTemp = hpFiles[0].ContentLength;
|
|
|
|
newFile.Close();
|
|
newFile.Dispose();
|
|
//bool del = false;
|
|
mess = App.SetData_PR(savePath);
|
|
if (System.IO.File.Exists(savePath))//删除文件
|
|
{
|
|
|
|
System.IO.File.Delete(savePath);
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
mess = "获取文件失败";
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
|
|
mess = ex.Message;
|
|
}
|
|
var JsonData = new
|
|
{
|
|
mass = mess,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
|
|
[HttpGet]
|
|
[HandlerAjaxOnly]
|
|
public ActionResult GetVendorList(Pagination pagination, string queryJson, string WorkPoint,string year,string Moth,string Day)
|
|
{
|
|
DataTable ListData = App.GetVendorList(queryJson, ref pagination, WorkPoint, year, Moth, Day);
|
|
var JsonData = new
|
|
{
|
|
total = pagination.total,
|
|
page = pagination.page,
|
|
records = pagination.records,
|
|
rows = ListData,
|
|
};
|
|
return Content(JsonData.ToJson());
|
|
}
|
|
|
|
|
|
}
|
|
}
|