1.入库记录删除
2.畅捷通T+反写产成品入库单(直接写表)
3.erp同步基础资料和订单改为根据配置取T+或者T8
4.通用基础资料仓库资料放出erpid
5.生产入库查询信息接口调整字段(T+和T8共用)
| | |
| | | [HttpPost] |
| | | public JsonResult DeleteStorageRecord(List<StorageRecord> json) |
| | | { |
| | | var token = HttpContext.Request.Headers["Token"].ToString(); |
| | | //var token = HttpContext.Request.Headers["Token"].ToString(); |
| | | var token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyY29kZSI6Ijk5OTkiLCJ1c2VybmFtZSI6Iuezu-e7n-euoeeQhuWRmCIsInN0b3JnX2NvZGUiOiIiLCJzdG9yZ19uYW1lIjoiIiwiaXNfc3lzdGVtX2FkbWluIjoiWSIsInJvbGVfY29kZSI6IiIsInJvbGVfZGF0YXBlcm1pc3Npb25zIjoiIiwidXNlcnR5cGUiOiJQQyIsInJlZGlza2V5IjoiTmV3TUVTTG9naW5Vc2VySURQQzk5OTkiLCJtZXNTZXR0aW5nIjoie1wicm91dGVcIjp0cnVlLFwiaXNPcmRlclwiOnRydWUsXCJkZXZpY2VcIjp0cnVlLFwidGVjaFwiOnRydWUsXCJ3b3JrT3JkZXJcIjp0cnVlLFwiZXZlcnlcIjpmYWxzZSxcImxhc3RcIjpmYWxzZX0iLCJ0aW1lb3V0IjoiMjAyNC0xMC0yNFQxMjozNTo1MC4zNDI1NzE2KzA4OjAwIn0.Nbc-1sXd4QLLsnj8wH9XC7iWEmP0wDG82gwLxIh94e4"; |
| | | User us = JwtTools.Denocode(token.ToString()); |
| | | mes = ReportManagerBLL.DeleteStorageRecord(json, us); |
| | | return Json(mes); |
| | |
| | | return Json(mes); |
| | | } |
| | | #endregion |
| | | |
| | | #region[畅捷通T+生产入库提交-存储过程版(适用同一台服务器,同一个数据库)] |
| | | /// <summary> |
| | | /// 畅捷通T+生产入库提交-存储过程版(适用同一台服务器,同一个数据库) |
| | | /// </summary> |
| | | /// <param name="data">提交数据</param> |
| | | /// <returns></returns> |
| | | [Route(template: "TProductInHouseOrderSpSeave")] |
| | | [HttpPost] |
| | | public JsonResult TProductInHouseOrderSpSeave(InReptModel data) |
| | | { |
| | | var token = HttpContext.Request.Headers["Token"].ToString(); |
| | | User us = JwtTools.Denocode(token.ToString()); |
| | | mes = WorkOrderBLL.TProductInHouseOrderSpSeave(data, us); |
| | | return Json(mes); |
| | | } |
| | | #endregion |
| | | } |
| | | } |
| | |
| | | return WorkOrderDAL.ProductInHouseOrderSpSeave(data, us); |
| | | } |
| | | #endregion |
| | | |
| | | #region[畅捷通T+生产入库提交-存储过程版(适用同一台服务器,同一个数据库)] |
| | | public static ToMessage TProductInHouseOrderSpSeave(InReptModel data, User us) |
| | | { |
| | | return WorkOrderDAL.TProductInHouseOrderSpSeave(data, us); |
| | | } |
| | | #endregion |
| | | } |
| | | } |
| | |
| | | public static string strProcName = ""; //定义全局sql变量 |
| | | public static List<SqlParameter> listStr = new List<SqlParameter>(); //定义全局参数集合 |
| | | public static SqlParameter[] parameters; //定义全局SqlParameter参数数组 |
| | | public static string ErpPath = AppSetting.GetAppSetting("ErpPath"); //获取ERP配置 |
| | | |
| | | #region[物料管理:计量单位同步] |
| | | public static ToMessage SaveSearchUnit(User us) |
| | |
| | | try |
| | | { |
| | | //存储过程名 |
| | | switch (ErpPath) |
| | | { |
| | | case "T+": |
| | | sql = @"h_p_IFCLD_TCloundERPUnit"; |
| | | break; |
| | | case "T8": |
| | | sql = @"h_p_IFCLD_T8ERPUnit"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | dynamicParams.Add("@username", us.usercode); |
| | | bool a = DapperHelper.IsProcedure(sql, dynamicParams); |
| | | if (a) |
| | |
| | | try |
| | | { |
| | | //存储过程名 |
| | | switch (ErpPath) |
| | | { |
| | | case "T+": |
| | | sql = @"h_p_IFCLD_TCloundERPInventory"; |
| | | break; |
| | | case "T8": |
| | | sql = @"h_p_IFCLD_T8ERPInventory"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | dynamicParams.Add("@username", us.usercode); |
| | | bool a = DapperHelper.IsProcedure(sql, dynamicParams); |
| | | if (a) |
| | |
| | | try |
| | | { |
| | | //存储过程名 |
| | | switch (ErpPath) |
| | | { |
| | | case "T+": |
| | | sql = @"h_p_IFCLD_TCloundERPWhareHousesLocation"; |
| | | break; |
| | | case "T8": |
| | | sql = @"h_p_IFCLD_T8ERPWhareHousesLocation"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | dynamicParams.Add("@username", us.usercode); |
| | | bool a = DapperHelper.IsProcedure(sql, dynamicParams); |
| | | if (a) |
| | |
| | | try |
| | | { |
| | | //存储过程名 |
| | | switch (ErpPath) |
| | | { |
| | | case "T+": |
| | | sql = @"h_p_IFCLD_TCloundERPPartner"; |
| | | break; |
| | | case "T8": |
| | | sql = @"h_p_IFCLD_T8ERPPartner"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | dynamicParams.Add("@username", us.usercode); |
| | | bool a = DapperHelper.IsProcedure(sql, dynamicParams); |
| | | if (a) |
| | |
| | | try |
| | | { |
| | | //存储过程名 |
| | | switch (ErpPath) |
| | | { |
| | | case "T+": |
| | | sql = @"h_p_IFCLD_TCloundERPMO"; |
| | | break; |
| | | case "T8": |
| | | sql = @"h_p_IFCLD_T8ERPMO"; |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | dynamicParams.Add("@username", us.usercode); |
| | | bool a = DapperHelper.IsProcedure(sql, dynamicParams); |
| | | if (a) |
| | |
| | | try |
| | | { |
| | | //获取仓库数据 |
| | | sql = @"select code,name from TSecStck"; |
| | | sql = @"select noid,code,name from TSecStck"; |
| | | var data = DapperHelper.selecttable(sql); |
| | | mes.code = "200"; |
| | | mes.message = "查询成功!"; |
| | |
| | | if (data.Rows.Count > 0 && data.Rows.Count == groupedRecords[i].count) |
| | | { |
| | | //删除入库单主表 |
| | | sql = @"delete TK_WMS_Inwh_Main where hbillno=@hbillno"; |
| | | sql = @"delete from TK_WMS_Inwh_Main where hbillno=@hbillno"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | |
| | | for (int i = 0; i < json.Count; i++) |
| | | { |
| | | //删除入库单子表 |
| | | sql = @"delete TK_WMS_Inwh_Sub where hbillno=@hbillno and inbarcode=@inbarcode"; |
| | | sql = @"delete from TK_WMS_Inwh_Sub where hbillno=@hbillno and inbarcode=@inbarcode"; |
| | | list.Add(new |
| | | { |
| | | str = sql, |
| | |
| | | var total = 0; //总条数 |
| | | var sql = @"select * from( |
| | | select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,M.id as wo_id,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname, |
| | | A.step_code,T.stepname,M.wkshp_code,O.torg_name as wkshp_name,K.code as stockcode,k.name as stockname, |
| | | E.saleOrderqty,E.qty,M.plan_qty,A.good_qty,isnull(A.inhouseqty,0) as inhouseqty,A.good_qty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style |
| | | A.step_code,T.stepname,M.wkshp_code,O.torg_name as wkshp_name,COALESCE(K.noid, E.stck_id) as stockid,COALESCE(K.code, E.stck_code) as stockcode,k.name as stockname,E.dept_id,E.dept_code, |
| | | E.saleOrderqty,E.qty,M.plan_qty,A.good_qty,isnull(A.inhouseqty,0) as inhouseqty,A.good_qty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style,E.voucherdate |
| | | from TK_Wrk_Record A |
| | | inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code |
| | | inner join TK_Wrk_Man M on S.wo_code=M.wo_code |
| | | inner join TMateriel_Info P on M.materiel_code=P.partcode |
| | | left join TKimp_Ewo E on M.m_po=E.wo and M.sourceid= E.id |
| | | left join TSecStck K on P.idwarehouse=K.code |
| | | left join TSecStck K on COALESCE(P.idwarehouse, E.stck_code)=K.code |
| | | left join TStep T on A.step_code=T.stepcode |
| | | left join TOrganization O on M.wkshp_code=O.torg_code |
| | | where A.style='B' and A.inbarcode<>'' and S.isend='Y' and A.good_qty>0 |
| | | union all |
| | | select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,M.id as wo_id,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname, |
| | | A.step_code,T.stepname,M.wkshp_code,O.torg_name as wkshp_name,K.code as stockcode,k.name as stockname, |
| | | E.saleOrderqty,E.qty,M.plan_qty,A.sqty as sqty,isnull(A.inhouseqty,0) as inhouseqty,A.sqty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style |
| | | A.step_code,T.stepname,M.wkshp_code,O.torg_name as wkshp_name,COALESCE(K.noid, E.stck_id) as stockid,COALESCE(K.code, E.stck_code) as stockcode,k.name as stockname,E.dept_id,E.dept_code, |
| | | E.saleOrderqty,E.qty,M.plan_qty,A.sqty as sqty,isnull(A.inhouseqty,0) as inhouseqty,A.sqty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style,E.voucherdate |
| | | from TK_Wrk_OutRecord A |
| | | inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code |
| | | inner join TK_Wrk_Man M on S.wo_code=M.wo_code |
| | | inner join TMateriel_Info P on M.materiel_code=P.partcode |
| | | left join TKimp_Ewo E on M.m_po=E.wo and M.sourceid= E.id |
| | | left join TSecStck K on P.idwarehouse=K.code |
| | | left join TSecStck K on COALESCE(P.idwarehouse, E.stck_code)=K.code |
| | | left join TStep T on A.step_code=T.stepcode |
| | | left join TOrganization O on M.wkshp_code=O.torg_code |
| | | where A.style='S' and A.inbarcode<>'' and S.isend='Y' and A.sqty>0 |
| | |
| | | return mes; |
| | | } |
| | | #endregion |
| | | |
| | | #region[畅捷通T+生产入库提交-存储过程版(适用同一台服务器,同一个数据库)] |
| | | public static ToMessage TProductInHouseOrderSpSeave(InReptModel data, User us) |
| | | { |
| | | var sql = ""; |
| | | var dynamicParams = new DynamicParameters(); |
| | | try |
| | | { |
| | | //存储过程名 |
| | | sql = @"h_p_IFCLD_TCloudInProductOrder"; |
| | | dynamicParams.Add("@RecordMin", dbType: DbType.Object, value: data.TableData[0]); |
| | | dynamicParams.Add("@RecordSub", dbType: DbType.Object, value: data.TableData[1]); |
| | | dynamicParams.Add("@rightcode", data.rightcode); |
| | | dynamicParams.Add("@incbit", data.incbit); |
| | | dynamicParams.Add("@username", us.usercode); |
| | | // 添加输出参数 |
| | | dynamicParams.Add("@StatusCode", dbType: DbType.Int32, direction: ParameterDirection.Output); |
| | | dynamicParams.Add("@Message", dbType: DbType.String, size: 255, direction: ParameterDirection.Output); |
| | | bool a = DapperHelper.IsProcedure(sql, dynamicParams); |
| | | // 获取输出参数的值 |
| | | var statusCode = dynamicParams.Get<int>("@StatusCode"); |
| | | var message = dynamicParams.Get<string>("@Message"); |
| | | if (a) |
| | | { |
| | | mes.code = statusCode.ToString(); |
| | | mes.count = 0; |
| | | mes.message = message; |
| | | mes.data = null; |
| | | } |
| | | else |
| | | { |
| | | mes.code = statusCode.ToString(); |
| | | mes.count = 0; |
| | | mes.message = message; |
| | | mes.data = null; |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | mes.code = "300"; |
| | | mes.count = 0; |
| | | mes.message = e.Message; |
| | | mes.data = null; |
| | | } |
| | | return mes; |
| | | } |
| | | #endregion |
| | | } |
| | | } |
| | |
| | | //服务器环境 |
| | | "ConnectionStrings": { |
| | | "DBServer": "Data Source=121.196.36.24,1533;Initial Catalog=vmes_tf;User ID=sa;Password=xkd@20230101;pooling=false", |
| | | //erp对接配置(T8,T+) |
| | | "ErpPath": "T+", |
| | | //企业编码 |
| | | "CompanyCode": "000", |
| | | //企业名称 |