123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- using Cksoft.Data;
- using Cksoft.Data.Repository;
- using Cksoft.Unity;
- using DllEapDal.OFILM;
- using DllEapEntity;
- using DllEapEntity.OFILM;
- using Microsoft.AspNetCore.Mvc;
- using System;
- using System.Collections.Generic;
- using System.Text;
- namespace DllEapBll.OFILM
- {
- [Route("eap/api/[controller]/[action]")]
- public class ProductPlanController : ControllerBase
- {
- [HttpPost]
- public EapResponse Upload([FromBody] WorkingProcedureDto str)
- {
- string usercode = Request.Headers["usercode"];
- List<Productionplan> wps = new List<Productionplan>();
- List<string> columns = new List<string>();
- if (str.Sheet1.Count > 0)
- {
- foreach (string it in str.Sheet1[0])
- {
- columns.Add(it);
- }
- }
- foreach (List<string> it in str.Sheet1)
- {
- if (it.Count > 7 && it[1] != "楼层")
- {
- for (int i = 6; i < it.Count; i++)
- {
- Productionplan workingProcedure = new Productionplan();
- workingProcedure.Park = it[0]?.Trim();
- workingProcedure.Floor = it[1]?.Trim();
- workingProcedure.MachineType = it[2]?.Trim();
- workingProcedure.Customer = it[3]?.Trim();
- workingProcedure.Technology = it[4]?.Trim();
- workingProcedure.TechnologyCode = it[5]?.Trim();
- //workingProcedure.MonthPlan = it[6]?.Trim().Replace('-', '0').Replace(",", "");
- workingProcedure.DayPlan = it[i]?.Trim().Replace('-', '0').Replace(",", "");
- workingProcedure.PlanTime = DateTime.Now.ToString("yyyy") + "-" + DateFormat( columns[i]);
- workingProcedure.RecCode = usercode;
- workingProcedure.ModCode = usercode;
- workingProcedure.RecTime = DateTime.Now;
- workingProcedure.ModTime = DateTime.Now;
- wps.Add(workingProcedure);
- }
- }
- }
- IDatabase db = null;
- string errormsg = string.Empty;
- Object er = null;
- try
- {
- db = DbFactory.Base("eap");
- var dal = new ProductPlanDal(db);
- db.BeginTrans();
- int ck = dal.CheckSame(wps, ref er);
- var res = dal.Adds(wps, usercode, ref errormsg);
- //上传成功,上传机种未包含在UPH及工序
- if (ck < 0 && res > 0)
- {
- db.Commit();
- return new EapResponse()
- {
- Code = -2,
- Data = er
- };
- }
- //上传失败,上传机种未包含在UPH及工序
- if (ck < 0 && res < 0)
- {
- db.Rollback();
- return new EapResponse()
- {
- Code = -3,
- Msg = errormsg,
- Data = er
- };
- }
- //上传失败,上传机种已经包含在UPH及工序
- if (ck > 0 && res < 0)
- {
- db.Rollback();
- return new EapResponse()
- {
- Code = -1,
- Msg = errormsg
- };
- }
- db.Commit();
- return new EapResponse()
- {
- Code = 1,
- Msg = ""
- };
- }
- catch (Exception e)
- {
- errormsg = e.Message;
- return new EapResponse
- {
- Code = -1,
- Msg = errormsg
- };
- }
- finally
- {
- if (db != null)
- db.Close();
- }
- }
- public string DateFormat(string str)
- {
- try
- {
- string dt = str?.Replace("月", "-").Replace("日", "");
- dt = dt.Split('-')[0].PadLeft(2, '0')+"-"+ dt.Split('-')[1].PadLeft(2,'0');
- return dt;
- }
- catch (Exception ex)
- {
- return "";
- }
- }
- }
- }
|