Bläddra i källkod

财务应收款项 已收款 应收款 数据更改

leiy 1 år sedan
förälder
incheckning
30794358f2

+ 28 - 1
OASystem/OASystem.Api/Controllers/FinancialController.cs

@@ -51,7 +51,7 @@ namespace OASystem.API.Controllers
         /// <returns></returns>
         [HttpPost]
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
-        public async Task<IActionResult> PostPageSearchDailyPaymentPriceTypeData(DtoBase dto)
+        public async Task<IActionResult> PostPageSearchDailyPaymentPriceTypeData(PortDtoBase dto)
         {
             var result = await _daiRep.GetPagePriceTypeData(dto);
 
@@ -426,6 +426,33 @@ namespace OASystem.API.Controllers
                 throw;
             }
         }
+
+        /// <summary>
+        /// 对外收款账单 
+        /// 添加 Or 更新
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostGroupReceivablesUpdate(ForForeignReceivablesInfoDto dto)
+        {
+            try
+            {
+                Result ffrData = await _ForForeignReceivablesRep.GetGroupReceivablesInfoByDiId(dto);
+                if (ffrData.Code != 0)
+                {
+                    return Ok(JsonView(false, ffrData.Msg));
+                }
+                return Ok(JsonView(true, ffrData.Msg, ffrData.Data));
+            }
+            catch (Exception ex)
+            {
+                return Ok(JsonView(false, ex.Message));
+                throw;
+            }
+        }
+
         #endregion
     }
 }

+ 36 - 0
OASystem/OASystem.Domain/Dtos/Financial/ForForeignReceivablesDto.cs

@@ -17,4 +17,40 @@ namespace OASystem.Domain.Dtos.Financial
         /// </summary>
         public int DiId { get; set; }
     }
+
+    /// <summary>
+    /// 财务模块
+    /// 对外收款
+    /// </summary>
+    public class ForForeignReceivablesUpdateDto : PortDtoBase
+    {
+        /// <summary>
+        /// 用户Id
+        /// </summary>
+        public int UserId { get; set; }
+
+        /// <summary>
+        /// 团组Id
+        /// </summary>
+        public int DiId { get; set; }
+
+        /// 付款方
+        /// </summary>
+        public string? To { get; set; }
+
+        /// <summary>
+        /// 付款方电话
+        /// </summary>
+        public string? ToTel { get; set; }
+
+        /// <summary>
+        /// 付款日期
+        /// </summary>
+        public string? PayDate { get; set; }
+
+        /// <summary>
+        /// 备注
+        /// </summary>
+        public string? Remark { get; set; }
+    }
 }

+ 11 - 5
OASystem/OASystem.Domain/Entities/Financial/Fin_ForeignReceivables.cs

@@ -50,23 +50,29 @@ namespace OASystem.Domain.Entities.Financial
         public decimal ItemSumPrice { get; set; }
 
         /// <summary>
-        /// 付款方
+        /// 付款方 弃用 数据保留
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(200)")]
         public string? To { get; set; }
 
         /// <summary>
-        /// 付款方电话
+        /// 付款方电话 弃用 数据保留
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string? ToTel { get; set; }
 
         /// <summary>
-        /// 付款日期
+        /// 付款日期 弃用 数据保留
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string? PayDate { get; set; }
 
+        /// <summary>
+        /// 付款注意事项 弃用 数据保留
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
+        public string? Attention { get; set; }
+
         /// <summary>
         /// 汇率
         /// </summary>
@@ -76,8 +82,8 @@ namespace OASystem.Domain.Entities.Financial
         /// <summary>
         /// 币种
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(20)")]
-        public string? Currency { get; set; }
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int Currency { get; set; }
 
         /// <summary>
         /// 添加方式   

+ 16 - 4
OASystem/OASystem.Domain/Entities/Financial/Fin_ProceedsReceived.cs

@@ -13,8 +13,8 @@ namespace OASystem.Domain.Entities.Financial
     public class Fin_ProceedsReceived:EntityBase
     {
         /// <summary>
-       /// 团组Id
-       /// </summary>
+        /// 团组Id
+        /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int Diid { get; set; }
 
@@ -33,8 +33,8 @@ namespace OASystem.Domain.Entities.Financial
         /// <summary>
         /// 币种
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(20)")]
-        public string? Currency { get; set; }
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int Currency { get; set; }
 
         /// <summary>
         /// 收款类型
@@ -48,6 +48,18 @@ namespace OASystem.Domain.Entities.Financial
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(200)")]
         public string? Client { get; set; }
 
+        /// <summary>
+        /// 收款单位 负责人 姓名
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(100)")]
+        public string? CustomerName { get; set; }
+
+        /// <summary>
+        /// 收款单位 负责人 姓名
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(30)")]
+        public string? CustomerTel { get; set; }
+
         /// <summary>
         /// 应付项id
         /// </summary>

+ 8 - 0
OASystem/OASystem.Domain/ViewModels/Financial/Fin_DailyFeePaymentView.cs

@@ -304,4 +304,12 @@ namespace OASystem.Domain.ViewModels.Financial
         /// </summary>
         public List<CompanyNameView>? CompanyNameData { get; set; }
     }
+
+    /// <summary>
+    /// 类型数据源
+    /// </summary>
+    public class DailyFeePaymentDataSourceView : Fin_DailyFeePaymentPagePriceTypeView
+    {
+        public List<Fin_DailyFeePaymentPagePriceSubTypeView> SubDatas { get; set; }
+    }
 }

+ 103 - 0
OASystem/OASystem.Domain/ViewModels/Financial/Fin_ForeignReceivablesView.cs

@@ -13,4 +13,107 @@ namespace OASystem.Domain.ViewModels.Financial
     public class Fin_ForeignReceivablesView:Fin_ForeignReceivables
     {
     }
+
+    /// <summary>
+    /// 团组应收款项 info View
+    /// </summary>
+    public class ForeignReceivablesInfoView 
+    {
+        /// <summary>
+        /// 主键ID
+        /// </summary>
+        public int Id { get; set; }
+
+        /// <summary>
+        /// 团组Id
+        /// </summary>
+        public int Diid { get; set; }
+
+        /// <summary>
+        /// 费用名称
+        /// </summary>
+        public string? PriceName { get; set; }
+
+        /// <summary>
+        /// 费用
+        /// </summary>
+        public decimal Price { get; set; }
+
+        /// <summary>
+        /// 数量
+        /// </summary>
+        public int Count { get; set; }
+
+        /// <summary>
+        /// 单位
+        /// </summary>
+        public string? Unit { get; set; }
+
+        /// <summary>
+        /// 单项总和
+        /// </summary>
+        public decimal ItemSumPrice { get; set; }
+
+        /// <summary>
+        /// 付款方
+        /// </summary>
+        public string? To { get; set; }
+
+        /// <summary>
+        /// 付款方电话
+        /// </summary>
+        public string? ToTel { get; set; }
+
+        /// <summary>
+        /// 付款日期
+        /// </summary>
+        public string? PayDate { get; set; }
+
+        /// <summary>
+        /// 付款注意事项
+        /// </summary>
+        public string? Attention { get; set; }
+
+        /// <summary>
+        /// 汇率
+        /// </summary>
+        public decimal Rate { get; set; }
+
+        /// <summary>
+        /// 币种
+        /// </summary>
+        public string? Currency { get; set; }
+
+        /// <summary>
+        /// 添加方式   
+        /// 0 - 账单页面添加   1 - 预算成本页面添加
+        /// </summary>
+        public int AddingWay { get; set; }
+
+        /// <summary>
+        /// 添加方式描述
+        /// </summary>
+        public string? AddingModeName
+        {
+            get
+            {
+
+                string str = "";
+                if (AddingWay == 0) str = "账单模块";
+                else if (AddingWay == 1) str = "成本预算模块";
+
+                return str;
+            }
+        }
+
+        /// <summary>
+        /// 备注
+        /// </summary>
+        public string? Remark { get; set; }
+
+        /// <summary>
+        /// 创建时间
+        /// </summary>
+        public DateTime? CreateTime { get; set; }
+    }
 }

+ 50 - 0
OASystem/OASystem.Domain/ViewModels/Financial/Fin_ProceedsReceivedView.cs

@@ -14,4 +14,54 @@ namespace OASystem.Domain.ViewModels.Financial
     {
     }
 
+    /// <summary>
+    /// 团组已收款项Info View
+    /// </summary>
+    public class ProceedsReceivedView
+    {
+        /// <summary>
+        /// 团组Id
+        /// </summary>
+        public int Diid { get; set; }
+
+        /// <summary>
+        /// 到款时间
+        /// </summary>
+        public string? SectionTime { get; set; }
+
+        /// <summary>
+        /// 费用
+        /// </summary>
+        public decimal Price { get; set; }
+
+        /// <summary>
+        /// 币种
+        /// </summary>
+        public int Currency { get; set; }
+
+        /// <summary>
+        /// 收款类型
+        /// </summary>
+        public int ReceivablesType { get; set; }
+
+        /// <summary>
+        /// 收款单位
+        /// </summary>
+        public string? Client { get; set; }
+
+        /// <summary>
+        /// 收款单位 负责人 姓名
+        /// </summary>
+        public string? CustomerName { get; set; }
+
+        /// <summary>
+        /// 收款单位 负责人 姓名
+        /// </summary>
+        public string? CustomerTel { get; set; }
+
+        /// <summary>
+        /// 应付项id
+        /// </summary>
+        public int FID { get; set; }
+    }
 }

+ 46 - 14
OASystem/OASystem.Infrastructure/Repositories/Financial/DailyFeePaymentRepository.cs

@@ -40,25 +40,27 @@ namespace OASystem.Infrastructure.Repositories.Financial
         /// </summary>
         /// <param name="dto"></param>
         /// <returns></returns>
-        public async Task<Result> GetPagePriceTypeData(DtoBase dto)
+        public async Task<Result> GetPagePriceTypeData(PortDtoBase dto)
         {
             Result result = new Result() { Code = -2 };
 
             dynamic? DailyFeePaymentList = null;
-            if (dto.PortType == 1 || dto.PortType == 2) //web
+
+            var setTypeData = _setDataTypeRep.QueryDto<Sys_SetDataType, Fin_DailyFeePaymentPagePriceTypeView>().ToList();
+            var setData = _setDataTypeRep.QueryDto<Sys_SetData, Fin_DailyFeePaymentPagePriceSubTypeView>().ToList();
+
+            //48人员费用  49办公费用 50 销售费用 51 其他费用 55 大运会
+            var priceTypeData = setTypeData.Where(s => s.Id == 48 || s.Id == 49 || s.Id == 50 || s.Id == 51 || s.Id == 55).ToList();
+            var priceSubTypeData = setData.Where(s => s.STid == 48 || s.STid == 49 || s.STid == 50 || s.STid == 51 || s.STid == 55).ToList();
+            //员工姓名列表
+            var userNameData = await _UsersRep.GetUserNameList(dto.PortType);
+            //62 公转 63 私转
+            var feeMarkTypeData = setTypeData.Where(s => s.Id == 62 || s.Id == 63).ToList();
+            var feeMarkSubTypeData = setData.Where(s => s.STid == 62 || s.STid == 63).ToList();
+            var companyNameData = await _CompanyRep.GetCompanyNameData();
+
+            if (dto.PortType == 1) //web
             {
-                var setTypeData = _setDataTypeRep.QueryDto<Sys_SetDataType, Fin_DailyFeePaymentPagePriceTypeView>().ToList();
-                var setData = _setDataTypeRep.QueryDto<Sys_SetData, Fin_DailyFeePaymentPagePriceSubTypeView>().ToList();
-
-                //48人员费用  49办公费用 50 销售费用 51 其他费用 55 大运会
-                var priceTypeData = setTypeData.Where(s => s.Id == 48 || s.Id == 49 || s.Id == 50 || s.Id == 51 || s.Id == 55).ToList();
-                var priceSubTypeData = setData.Where(s => s.STid == 48 || s.STid == 49 || s.STid == 50 || s.STid == 51 || s.STid == 55).ToList();
-                //员工姓名列表
-                var userNameData = await _UsersRep.GetUserNameList(dto.PortType);
-                //62 公转 63 私转
-                var feeMarkTypeData = setTypeData.Where(s => s.Id == 62 || s.Id == 63).ToList();
-                var feeMarkSubTypeData = setData.Where(s => s.STid == 62 || s.STid == 63).ToList();
-                var companyNameData = await _CompanyRep.GetCompanyNameData();
                 DailyFeePaymentList = new Fin_DailyFeePaymentPagePriceTypeDataView
                 {
                     FeeTypeData = priceTypeData,
@@ -69,6 +71,36 @@ namespace OASystem.Infrastructure.Repositories.Financial
                     CompanyNameData = companyNameData.Data
                 };
             }
+            else if (dto.PortType == 2) //安卓
+            {
+                //DailyFeePaymentPagePriceTypeView
+
+                List<DailyFeePaymentDataSourceView> priceTypeDatas = new List<DailyFeePaymentDataSourceView>();
+                foreach (Fin_DailyFeePaymentPagePriceTypeView item in priceTypeData) 
+                {
+                    List<Fin_DailyFeePaymentPagePriceSubTypeView> data1 = setData.Where(s => s.STid == item.Id).ToList();
+
+                    priceTypeDatas.Add(new DailyFeePaymentDataSourceView { Id = item.Id,Name=item.Name,SubDatas= data1 });
+                }
+
+                List<DailyFeePaymentDataSourceView> feeMarkTypeDatas = new List<DailyFeePaymentDataSourceView>();
+
+                foreach (Fin_DailyFeePaymentPagePriceTypeView item in feeMarkTypeData)
+                {
+                    List<Fin_DailyFeePaymentPagePriceSubTypeView> data1 = feeMarkSubTypeData.Where(s => s.STid == item.Id).ToList();
+
+                    feeMarkTypeDatas.Add(new DailyFeePaymentDataSourceView { Id = item.Id, Name = item.Name, SubDatas = data1 });
+                }
+
+
+                DailyFeePaymentList = new
+                {
+                    CompanyNameData = companyNameData.Data,
+                    UserNameData = userNameData.Data,
+                    FeeTypeData = priceTypeDatas,
+                    FeeMarkTypeData = feeMarkTypeDatas
+                };
+            }
 
             result.Code = 0;
             result.Msg = "查询成功!";

+ 13 - 5
OASystem/OASystem.Infrastructure/Repositories/Financial/ForeignReceivablesRepository.cs

@@ -42,7 +42,7 @@ namespace OASystem.Infrastructure.Repositories.Financial
             Result result = new() { Code = -2 };
 
             var groupNameData = await _delegationRep.GetGroupNameList(new GroupNameDto());
-            var currencyData = await _setDataRep.GetSetDataBySTId(_setDataRep,66); //币种
+            var currencyData = await _setDataRep.GetSetDataBySTId(_setDataRep,13); //币种
             var remittanceMethodData = await _setDataRep.GetSetDataBySTId(_setDataRep, 14); //汇款方式
 
             result.Code = 0;
@@ -66,8 +66,15 @@ namespace OASystem.Infrastructure.Repositories.Financial
             Result result = new() { Code = -2 };
 
             var groupInfoData = await _delegationRep.GetGroupInfo(new GroupInfoDto() { Id = dto.DiId });
-            string sql = string.Format(@"Select * From Fin_ForeignReceivables Where IsDel=0 And Diid={0}", dto.DiId);
-            var groupReceivedList = await _sqlSugar.SqlQueryable<Fin_ForeignReceivables>(sql).ToListAsync();
+
+            //应收款项
+            string groupReceivedSql = string.Format(@"Select * From Fin_ForeignReceivables Where IsDel=0 And Diid={0}", dto.DiId);
+            var groupReceivedList = await _sqlSugar.SqlQueryable<ForeignReceivablesInfoView>(groupReceivedSql).ToListAsync();
+
+            //已收款项
+            string groupProceedsReceivedSql = string.Format(@"Select * From Fin_ForeignReceivables Where IsDel=0 And Diid={0}", dto.DiId);
+            var groupProceedsReceivedList = await _sqlSugar.SqlQueryable<ForeignReceivablesInfoView>(groupReceivedSql).ToListAsync();
+
 
             if (dto.PortType == 1 )
             {
@@ -76,9 +83,10 @@ namespace OASystem.Infrastructure.Repositories.Financial
 
             result.Code = 0;
             result.Msg = "查询成功!";
-            result.Data = new {
+            result.Data = new
+            {
                 GroupInfo = groupInfoData.Data,
-                GroupReceivedData=groupReceivedList
+                GroupReceivedData = groupReceivedList
             };
 
             return result;