public string PostUpdateProc([FromBody] ProcRequestModel requestModel) { if (requestModel == null || requestModel.ProcModels == null || requestModel.ProcModels.Count == 0) { return(DCHelper.ErrorMessage("审批流程对象为空!")); } if (requestModel.ApprovalTypeId == 0) { return(DCHelper.ErrorMessage("审批类型id为空!")); } if (string.IsNullOrEmpty(requestModel.BillType)) { return(DCHelper.ErrorMessage("单据类型为空!")); } if (string.IsNullOrEmpty(requestModel.ProcCode)) { return(DCHelper.ErrorMessage("审批流程编码为空!")); } if (requestModel.OrgIds == null || requestModel.OrgIds.Count == 0) { return(DCHelper.ErrorMessage("启用组织id为空!")); } try { //if (requestModel.Ucode != "Admin" && requestModel.ProcModels != null && requestModel.ProcModels.Count > 0) //{ // foreach(var proc in requestModel.ProcModels) // { // if(proc.IsSystem == (byte)1) // { // return DCHelper.ErrorMessage("普通用户没有权限修改内置流程!"); // } // } //} SavedResult <Int64> savedResult = GAppvalProcService.PostUpdateProc(requestModel.ApprovalTypeId, requestModel.BillType, requestModel.ProcCode, requestModel.OrgIds, requestModel.ProcModels, requestModel.Ucode); if (savedResult != null && savedResult.SaveRows > 0) { return(DCHelper.SuccessMessage("修改成功!")); } else { return(DCHelper.ErrorMessage("修改失败!")); } } catch (Exception e) { return(DCHelper.ErrorMessage(e.Message)); } }
public string PostAddPayMent([FromBody] GAppvalRecordModel recordModel) { if (recordModel == null || recordModel.RefbillPhid == 0) { return(DCHelper.ErrorMessage("单据id为空!")); } try { GAppvalRecordService.PostAddPayMent(recordModel); return(DCHelper.SuccessMessage("生成支付单成功!")); } catch (Exception e) { return(DCHelper.ErrorMessage(e.Message)); } }
public string PostDeleteProcType([FromBody] ProcRequestModel requestModel) { if (requestModel == null || requestModel.ApprovalTypeIds == null || requestModel.ApprovalTypeIds.Count == 0) { return(DCHelper.ErrorMessage("审批类型id为空!")); } try { //判断审批流程是否被引用 foreach (long id in requestModel.ApprovalTypeIds) { bool symbol = GAppvalProcService.ProcIsUsed(id); //bool symbol = GAppvalProcService.ProcIsUsed(requestModel.ApprovalTypeId); if (symbol) { return(DCHelper.ErrorMessage("删除失败,已有审批流程被引用!")); } var procs = this.GAppvalProcService.Find(t => t.SPLXPhid == id).Data; if (procs != null && procs.Count > 0) { throw new Exception("此类型下已存在审批流,不能删除此审批流类型!"); } } DeletedResult deletedResult = GAppvalProcService.PostDeleteProcTypes(requestModel.ApprovalTypeIds); if (deletedResult != null && deletedResult.DelRows > 0) { return(DCHelper.SuccessMessage("删除成功!")); } else { return(DCHelper.ErrorMessage("删除失败!")); } } catch (Exception e) { return(DCHelper.ErrorMessage(e.Message)); } }
public async Task <string> PostRefreshAllPaymentsState() { //获取支付中且FSeqno不为空的数据 var dicWhere = new Dictionary <string, object>(); new CreateCriteria(dicWhere).Add(ORMRestrictions <byte> .Eq("FState", (byte)EnumPaymentState.DuringPayment)); new CreateCriteria(dicWhere).Add(ORMRestrictions <string> .Gt("FSeqno", " ")); var result = GKPaymentMstService.Find(dicWhere, new string[] { "NgInsertDt asc" }); //LoadWithPage(parameters.pageindex, parameters.pagesize, dicWhere, new string[] { "NgInsertDt asc" }); if (result.IsError == false && result.Data != null) { IList <GKPaymentMstModel> list = result.Data; string errMsg = string.Empty; foreach (var mst in list) { GKPaymentMstService.RefreshPaymentState(mst.PhId, out errMsg); } } return(DCHelper.SuccessMessage("批量刷新支付状态提交成功,后台处理中!")); }
public string PostAddProc([FromBody] InfoBaseModel <List <GAppvalProcModel> > infoBase) { if (infoBase == null || infoBase.infoData == null || infoBase.infoData.Count == 0) { return(DCHelper.ErrorMessage("审批流程对象为空!")); } try { SavedResult <Int64> savedResult = GAppvalProcService.PostAddProcs(infoBase.infoData); if (savedResult != null && savedResult.SaveRows > 0) { return(DCHelper.SuccessMessage("新增审批流程成功!")); } else { return(DCHelper.ErrorMessage("新增审批流程失败!")); } } catch (Exception e) { return(DCHelper.ErrorMessage(e.Message)); } }
public string PostApprovalRecord([FromBody] GAppvalRecordModel recordModel) { if (recordModel == null) { return(DCHelper.ErrorMessage("审批数据为空!")); } if (recordModel.ProcPhid == 0) { return(DCHelper.ErrorMessage("审批流程id为空!")); } if (recordModel.PostPhid == 0) { return(DCHelper.ErrorMessage("审批岗位id为空!")); } if (string.IsNullOrEmpty(recordModel.FBilltype)) { return(DCHelper.ErrorMessage("单据类型为空!")); } if (recordModel.RefbillPhid == 0) { return(DCHelper.ErrorMessage("关联单据为空!")); } if (recordModel.PhId == 0) { return(DCHelper.ErrorMessage("审批记录的id为空!")); } try { GAppvalRecordService.PostApprovalRecord(recordModel); return(DCHelper.SuccessMessage("审批成功!")); } catch (Exception e) { return(DCHelper.ErrorMessage(e.Message)); } }
public string PostUpdateProcType([FromBody] ProcRequestModel requestModel) { if (requestModel == null || requestModel.ApprovalTypeId == 0) { return(DCHelper.ErrorMessage("审批类型id为空!")); } if (string.IsNullOrEmpty(requestModel.ApprovalTypeName)) { return(DCHelper.ErrorMessage("审批类型名称为空!")); } if (string.IsNullOrEmpty(requestModel.BillType)) { return(DCHelper.ErrorMessage("单据类型为空!")); } try { QTSysSetModel sysSetModel = new QTSysSetModel(); sysSetModel.PhId = requestModel.ApprovalTypeId; sysSetModel.TypeName = requestModel.ApprovalTypeName; sysSetModel.Value = requestModel.BillType; sysSetModel.TypeCode = int.Parse(sysSetModel.Value).ToString();//与001,002等相对应,与添加顺序无关 SavedResult <Int64> savedResult = QTSysSetService.PostUpdateProcType(sysSetModel); if (savedResult != null && savedResult.SaveRows > 0) { return(DCHelper.SuccessMessage("修改成功!")); } else { return(DCHelper.ErrorMessage("修改失败!")); } } catch (Exception e) { return(DCHelper.ErrorMessage(e.Message)); } }
public async Task <string> PostApprovalRecordList() { List <QtAttachmentModel> attachmentModels = new List <QtAttachmentModel>(); try { GAppvalRecordModel recordModel = new GAppvalRecordModel(); recordModel.PersistentState = PersistentState.Added; //判断form表单类型是否正确 if (!Request.Content.IsMimeMultipartContent()) { var data1 = new { Status = ResponseStatus.Error, Msg = "请求数据不是multipart/form-data类型", Data = "" }; return(DataConverterHelper.SerializeObject(data1)); } //I6WebAppInfo i6AppInfo = (I6WebAppInfo)HttpContext.Current.Session["NGWebAppInfo"] ?? null; //获取AppInfo值 头部信息记录 var base64EncodedBytes = Convert.FromBase64String(HttpContext.Current.Request.Headers.GetValues("AppInfo").First()); var jsonText = Encoding.UTF8.GetString(base64EncodedBytes); var AppInfo = JsonConvert.DeserializeObject <AppInfoBase>(jsonText); //如果路径不存在,创建路径 var root = System.Web.Hosting.HostingEnvironment.MapPath("~/UpLoadFiles/ApprovalRecord/"); string date = DateTime.Now.ToString("yyyy-MM-dd"); string filePath = Path.Combine(root, date); if (!Directory.Exists(filePath)) { Directory.CreateDirectory(filePath); } var multipartMemoryStreamProvider = await Request.Content.ReadAsMultipartAsync(); var contentsList = multipartMemoryStreamProvider.Contents; foreach (var content in contentsList) { //通过判断fileName是否为空,是否为文件 if (!string.IsNullOrEmpty(content.Headers.ContentDisposition.FileName)) { //处理文件名字符串 string fileName = content.Headers.ContentDisposition.FileName.Replace("\"", string.Empty); using (Stream stream = await content.ReadAsStreamAsync()) { //文件如果大于100MB 提示不允许 if (stream.Length > 104857600) { return(DCHelper.ErrorMessage("上传的文件不能大于100MB!")); } byte[] bytes = new byte[stream.Length]; stream.Read(bytes, 0, bytes.Length); stream.Seek(0, SeekOrigin.Begin); //获取对应文件后缀名 string extension = Path.GetExtension(fileName); //获取文件名 string b_name = Path.GetFileName(fileName); //修改文件名 string newFileName = Guid.NewGuid().ToString("N") + extension; string uploadPath = Path.Combine(filePath, newFileName); //保存文件 MemoryStream ms = new MemoryStream(bytes); FileStream fs = new FileStream(uploadPath, FileMode.Create); ms.WriteTo(fs); ms.Close(); fs.Close(); string b_urlpath = "/UpLoadFiles/ApprovalRecord/" + date + "/" + newFileName; QtAttachmentModel attachmentModel = new QtAttachmentModel(); attachmentModel.BName = b_name; attachmentModel.BSize = decimal.Round((decimal)stream.Length / 1024, 2); attachmentModel.BTable = "SP3_APPVAL_RECORD"; attachmentModel.BType = extension; attachmentModel.BUrlpath = b_urlpath; attachmentModel.PersistentState = PersistentState.Added; attachmentModels.Add(attachmentModel); } } else { //获取键值对值,并通过反射获取对象中的属性 string key = content.Headers.ContentDisposition.Name.Replace("\"", string.Empty); string value = await content.ReadAsStringAsync(); var item = typeof(GAppvalRecordModel).GetProperty(key); if (item != null) { //获取数据的类型 var propertyType = item.PropertyType; object v; if (key == "NextOperators") { var value2 = JsonConvert.DeserializeObject <List <long> >(value); v = Convert.ChangeType(value2, propertyType); } else if (key == "RecordPhids") { var value3 = JsonConvert.DeserializeObject <List <long> >(value); v = Convert.ChangeType(value3, propertyType); } else { //转换数据的类型 v = Convert.ChangeType(value, propertyType); } item.SetValue(recordModel, v); } } } if (AppInfo != null) { MultiDelegatingDbProvider.CurrentDbProviderName = AppInfo.DbName; } if (recordModel == null) { return(DCHelper.ErrorMessage("审批数据为空!")); } if (recordModel.ProcPhid == 0) { return(DCHelper.ErrorMessage("审批流程id为空!")); } if (recordModel.PostPhid == 0) { return(DCHelper.ErrorMessage("审批岗位id为空!")); } if (string.IsNullOrEmpty(recordModel.FBilltype)) { return(DCHelper.ErrorMessage("单据类型为空!")); } if (recordModel.RefbillPhid == 0) { return(DCHelper.ErrorMessage("关联单据为空!")); } if (recordModel.PhId == 0) { return(DCHelper.ErrorMessage("审批记录的id为空!")); } //批量审批 if (recordModel.RecordPhids != null && recordModel.RecordPhids.Count > 0) { var records = this.GAppvalRecordService.Find(t => recordModel.RecordPhids.Contains(t.PhId)).Data; if (records != null && records.Count > 0) { //对批量审批的数据进行判别 foreach (var record in records) { if (!record.ProcPhid.Equals(recordModel.ProcPhid) || !record.PostPhid.Equals(recordModel.PostPhid)) { return(DCHelper.ErrorMessage("只有审批流与审批岗位相同的审批记录可以批量审批!")); } if (record.FApproval != (byte)Approval.Wait) { return(DCHelper.ErrorMessage("只有待审批的记录审批!")); } } //进行批量审批 foreach (var record in records) { GAppvalRecordModel pAppvalRecordModel = new GAppvalRecordModel(); pAppvalRecordModel = recordModel; pAppvalRecordModel.PhId = record.PhId; pAppvalRecordModel.RefbillPhid = record.RefbillPhid; GAppvalRecordService.PostApprovalRecordList(pAppvalRecordModel, attachmentModels); } } } else { GAppvalRecordService.PostApprovalRecordList(recordModel, attachmentModels); } return(DCHelper.SuccessMessage("审批成功!")); } catch (Exception e) { return(DCHelper.ErrorMessage(e.Message)); } }