public string UploadDeductImage(string base64ImageCode, string DeductId) { using (var db = new RepositoryBase().BeginTrans()) { if (string.IsNullOrEmpty(base64ImageCode)) { throw new Exception("图片编码为空!"); } string imageId = string.Empty; string uploadDate = DateTime.Now.ToString("yyyyddMM"); string filePath = string.Empty; filePath = string.Format(@"{0}\{1}{2}", uploadDate, Guid.NewGuid().ToString(), ".png"); string path = imageFolderPath + filePath; string directoryPath = Path.GetDirectoryName(path); Directory.CreateDirectory(directoryPath); if (!File.Exists(path)) { byte[] b = Convert.FromBase64String(base64ImageCode); MemoryStream m = new MemoryStream(b); using (FileStream fs = File.Open(path, System.IO.FileMode.Create)) { m.WriteTo(fs); m.Close(); fs.Close(); } } var deduimgEnity = new ProfileDeducImgEntiy() { DeducImg_Id = Guid.NewGuid().ToString(), DeducIns_Id = DeductId, DeducImgPath = filePath }; db.Insert <ProfileDeducImgEntiy>(deduimgEnity); return(deduimgEnity.DeducImg_Id); } }
public bool InsertDeductIns(ApiDeductUploadContracts deductsInsEntity) { using (var db = new RepositoryBase().BeginTrans()) { var sNormEntity = db.IQueryable <ProfileScireCriteria_NormEntity>().FirstOrDefault(d => d.SNormId == deductsInsEntity.SCNorm_Id); var sClassifyEntiy = db.IQueryable <ProfileScoreCriteria_ClassifyEntity>().FirstOrDefault(d => d.SClassifyId == sNormEntity.SClassifyId); var sTypeEntiy = db.IQueryable <ProfileScoreCriteria_TypeEntity>().FirstOrDefault(d => d.STypeId == sClassifyEntiy.STypeId); var sEntiyEntity = db.IQueryable <ProfileScoreCriteria_EntryEntity>().FirstOrDefault(d => d.SEntryId == sTypeEntiy.SEntryId); var userEntity = db.IQueryable <UserEntity>().FirstOrDefault(d => d.F_Id == deductsInsEntity.CreatorUserId); if (sNormEntity == null) { throw new Exception("未找到对应扣分标准!"); } if (userEntity == null) { throw new Exception("未找到上传用户!"); } //验证判断还能不能扣分 //查询当前所有的扣分 ProfileDeducInsEntity dbDeductIndesEntry = new ProfileDeducInsEntity() { DeducIns_Id = Guid.NewGuid().ToString(), TaskEntry_Id = deductsInsEntity.TaskEntry_Id, SCNorm_Id = deductsInsEntity.SCNorm_Id, SCEntryName = sEntiyEntity.Name, SCTypeName = sTypeEntiy.Name, SCClassifyName = sClassifyEntiy.SClassifyName, SCNormProjectName = sNormEntity.SNormProjectName, SCNormStandardName = sNormEntity.SNormStandardName, DeductionSeveral = deductsInsEntity.DeductionSeveral, DeductionScore = deductsInsEntity.DeductionScore, DeductionDescribe = deductsInsEntity.DeductionDescribe, CreateTime = DateTime.Now, CreatorUserId = deductsInsEntity.CreatorUserId, CreatorUserName = userEntity.F_RealName, SCNormIsDeduct = sNormEntity.IsDeduct }; db.Insert <ProfileDeducInsEntity>(dbDeductIndesEntry); deductsInsEntity.images = js.Deserialize <string[]>(deductsInsEntity.imagesStr); //上传图片 if (deductsInsEntity.images != null) { string imageId = string.Empty; string uploadDate = DateTime.Now.ToString("yyyyddMM"); string filePath = string.Empty; foreach (var item in deductsInsEntity.images) { filePath = string.Format(@"{0}\{1}{2}", uploadDate, Guid.NewGuid().ToString(), ".png"); string path = imageFolderPath + filePath; string directoryPath = Path.GetDirectoryName(path); Directory.CreateDirectory(directoryPath); if (!File.Exists(path)) { byte[] b = Convert.FromBase64String(item); MemoryStream m = new MemoryStream(b); using (FileStream fs = File.Open(path, System.IO.FileMode.Create)) { m.WriteTo(fs); m.Close(); fs.Close(); } } var deduimgEnity = new ProfileDeducImgEntiy() { DeducImg_Id = Guid.NewGuid().ToString(), DeducIns_Id = dbDeductIndesEntry.DeducIns_Id, DeducImgPath = filePath }; db.Insert <ProfileDeducImgEntiy>(deduimgEnity); } } try { db.Commit(); } catch { return(false); } } return(true); }